diff options
author | Ruey-Cherng Yu <rcyu@FreeBSD.org> | 2019-12-03 17:05:41 +0000 |
---|---|---|
committer | Ruey-Cherng Yu <rcyu@FreeBSD.org> | 2019-12-03 17:05:41 +0000 |
commit | 45d720938ef32c8820d3085522eb05b543511ee0 (patch) | |
tree | ffa6e884fddd5ef842a9b635c32eb4c2a7cd60bc | |
parent | a7a1ed89df4c11bf7db17e79ca0e7cd0559e5778 (diff) | |
download | doc-45d720938e.tar.gz doc-45d720938e.zip |
- Update po file with newest handbook document.
- Traditional Chinese translation of the following sections:
27.4 PPPoE
29.5 LDAP
29.11 NTP
Submitted by: Chien Wei Lin <cwlin at gmail.com>
Differential Revision: https://reviews.freebsd.org/D22570
Notes
Notes:
svn path=/head/; revision=53653
-rw-r--r-- | zh_TW.UTF-8/books/handbook/book.xml | 3080 | ||||
-rw-r--r-- | zh_TW.UTF-8/books/handbook/zh_TW.po | 26614 |
2 files changed, 16178 insertions, 13516 deletions
diff --git a/zh_TW.UTF-8/books/handbook/book.xml b/zh_TW.UTF-8/books/handbook/book.xml index 70a94c5b1b..2c09efdcb8 100644 --- a/zh_TW.UTF-8/books/handbook/book.xml +++ b/zh_TW.UTF-8/books/handbook/book.xml @@ -67,6 +67,8 @@ <!ENTITY pgpkey.bar SYSTEM "bar.key"> <!ENTITY pgpkey.barner SYSTEM "barner.key"> <!ENTITY pgpkey.bcr SYSTEM "bcr.key"> +<!ENTITY pgpkey.bcran SYSTEM "bcran.key"> +<!ENTITY pgpkey.bdragon SYSTEM "bdragon.key"> <!ENTITY pgpkey.bdrewery SYSTEM "bdrewery.key"> <!ENTITY pgpkey.beat SYSTEM "beat.key"> <!ENTITY pgpkey.beech SYSTEM "beech.key"> @@ -91,7 +93,6 @@ <!ENTITY pgpkey.brix SYSTEM "brix.key"> <!ENTITY pgpkey.brnrd SYSTEM "brnrd.key"> <!ENTITY pgpkey.brooks SYSTEM "brooks.key"> -<!ENTITY pgpkey.brucec SYSTEM "brucec.key"> <!ENTITY pgpkey.brueffer SYSTEM "brueffer.key"> <!ENTITY pgpkey.bruno SYSTEM "bruno.key"> <!ENTITY pgpkey.bryanv SYSTEM "bryanv.key"> @@ -103,10 +104,12 @@ <!ENTITY pgpkey.bwidawsk SYSTEM "bwidawsk.key"> <!ENTITY pgpkey.bz SYSTEM "bz.key"> <!ENTITY pgpkey.carl SYSTEM "carl.key"> +<!ENTITY pgpkey.carlavilla SYSTEM "carlavilla.key"> <!ENTITY pgpkey.cel SYSTEM "cel.key"> <!ENTITY pgpkey.ceri SYSTEM "ceri.key"> <!ENTITY pgpkey.cherry SYSTEM "cherry.key"> <!ENTITY pgpkey.chinsan SYSTEM "chinsan.key"> +<!ENTITY pgpkey.chs SYSTEM "chs.key"> <!ENTITY pgpkey.chuck SYSTEM "chuck.key"> <!ENTITY pgpkey.cjc SYSTEM "cjc.key"> <!ENTITY pgpkey.cjh SYSTEM "cjh.key"> @@ -150,13 +153,15 @@ <!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"> <!ENTITY pgpkey.dhw SYSTEM "dhw.key"> <!ENTITY pgpkey.dim SYSTEM "dim.key"> <!ENTITY pgpkey.dinoex SYSTEM "dinoex.key"> +<!ENTITY pgpkey.dmgk SYSTEM "dmgk.key"> +<!ENTITY pgpkey.doceng-secretary SYSTEM "doceng-secretary.key"> +<!ENTITY pgpkey.dougm SYSTEM "dougm.key"> <!ENTITY pgpkey.dru SYSTEM "dru.key"> <!ENTITY pgpkey.dryice SYSTEM "dryice.key"> <!ENTITY pgpkey.dteske SYSTEM "dteske.key"> @@ -186,6 +191,7 @@ <!ENTITY pgpkey.flo SYSTEM "flo.key"> <!ENTITY pgpkey.fluffy SYSTEM "fluffy.key"> <!ENTITY pgpkey.flz SYSTEM "flz.key"> +<!ENTITY pgpkey.fox SYSTEM "fox.key"> <!ENTITY pgpkey.foxfair SYSTEM "foxfair.key"> <!ENTITY pgpkey.fsu SYSTEM "fsu.key"> <!ENTITY pgpkey.gabor SYSTEM "gabor.key"> @@ -264,6 +270,7 @@ <!ENTITY pgpkey.jmmv SYSTEM "jmmv.key"> <!ENTITY pgpkey.joe SYSTEM "joe.key"> <!ENTITY pgpkey.joerg SYSTEM "joerg.key"> +<!ENTITY pgpkey.johalun SYSTEM "johalun.key"> <!ENTITY pgpkey.johans SYSTEM "johans.key"> <!ENTITY pgpkey.jon SYSTEM "jon.key"> <!ENTITY pgpkey.jonathan SYSTEM "jonathan.key"> @@ -278,7 +285,9 @@ <!ENTITY pgpkey.jwb SYSTEM "jwb.key"> <!ENTITY pgpkey.jylefort SYSTEM "jylefort.key"> <!ENTITY pgpkey.kadesai SYSTEM "kadesai.key"> +<!ENTITY pgpkey.kai SYSTEM "kai.key"> <!ENTITY pgpkey.kaiw SYSTEM "kaiw.key"> +<!ENTITY pgpkey.kaktus SYSTEM "kaktus.key"> <!ENTITY pgpkey.kami SYSTEM "kami.key"> <!ENTITY pgpkey.kan SYSTEM "kan.key"> <!ENTITY pgpkey.karels SYSTEM "karels.key"> @@ -361,6 +370,7 @@ <!ENTITY pgpkey.metal SYSTEM "metal.key"> <!ENTITY pgpkey.mfechner SYSTEM "mfechner.key"> <!ENTITY pgpkey.mheinen SYSTEM "mheinen.key"> +<!ENTITY pgpkey.mhorne SYSTEM "mhorne.key"> <!ENTITY pgpkey.mi SYSTEM "mi.key"> <!ENTITY pgpkey.mich SYSTEM "mich.key"> <!ENTITY pgpkey.mikeh SYSTEM "mikeh.key"> @@ -435,6 +445,7 @@ <!ENTITY pgpkey.pizzamig SYSTEM "pizzamig.key"> <!ENTITY pgpkey.pjd SYSTEM "pjd.key"> <!ENTITY pgpkey.pkelsey SYSTEM "pkelsey.key"> +<!ENTITY pgpkey.pkubaj SYSTEM "pkubaj.key"> <!ENTITY pgpkey.plosher SYSTEM "plosher.key"> <!ENTITY pgpkey.pluknet SYSTEM "pluknet.key"> <!ENTITY pgpkey.portmgr-secretary SYSTEM "portmgr-secretary.key"> @@ -478,6 +489,7 @@ <!ENTITY pgpkey.ryusuke SYSTEM "ryusuke.key"> <!ENTITY pgpkey.sahil SYSTEM "sahil.key"> <!ENTITY pgpkey.sam SYSTEM "sam.key"> +<!ENTITY pgpkey.samm SYSTEM "samm.key"> <!ENTITY pgpkey.sanpei SYSTEM "sanpei.key"> <!ENTITY pgpkey.sat SYSTEM "sat.key"> <!ENTITY pgpkey.sbruno SYSTEM "sbruno.key"> @@ -486,6 +498,7 @@ <!ENTITY pgpkey.schweikh SYSTEM "schweikh.key"> <!ENTITY pgpkey.scop SYSTEM "scop.key"> <!ENTITY pgpkey.scottl SYSTEM "scottl.key"> +<!ENTITY pgpkey.scottph SYSTEM "scottph.key"> <!ENTITY pgpkey.se SYSTEM "se.key"> <!ENTITY pgpkey.seanc SYSTEM "seanc.key"> <!ENTITY pgpkey.secteam-secretary SYSTEM "secteam-secretary.key"> @@ -496,6 +509,7 @@ <!ENTITY pgpkey.sepotvin SYSTEM "sepotvin.key"> <!ENTITY pgpkey.sergei SYSTEM "sergei.key"> <!ENTITY pgpkey.sevan SYSTEM "sevan.key"> +<!ENTITY pgpkey.sg SYSTEM "sg.key"> <!ENTITY pgpkey.sgalabov SYSTEM "sgalabov.key"> <!ENTITY pgpkey.shaun SYSTEM "shaun.key"> <!ENTITY pgpkey.sheldonh SYSTEM "sheldonh.key"> @@ -698,6 +712,7 @@ <year>2016</year> <year>2017</year> <year>2018</year> + <year>2019</year> <holder>The FreeBSD Documentation Project</holder> </copyright> @@ -775,15 +790,9 @@ </legalnotice> <abstract> - <para xml:lang="en">Welcome to FreeBSD! This handbook covers the installation - and day to day use of - <emphasis>FreeBSD 12.0-RELEASE</emphasis> and - <emphasis>FreeBSD 11.2-RELEASE</emphasis>. This book is - the result of ongoing work by many individuals. Some sections - might be outdated. Those interested in helping to update and - expand this document should send email to the <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc">FreeBSD documentation project mailing list</link>.</para> - - <para>在 <link xlink:href="https://www.FreeBSD.org/">FreeBSD 網站</link> 可以找到本文件的最新版本,舊版文件可從 <uri xlink:href="https://docs.FreeBSD.org/doc/">https://docs.FreeBSD.org/doc/</uri> 取得。本文件也提供各種格式與不同壓縮方式的版本可自 <link xlink:href="https://download.freebsd.org/ftp/doc/">FreeBSD FTP 伺服器</link> 或是其中一個 <link linkend="mirrors-ftp">鏡像網站</link> 下載。 列印出來的實體書面資料可在 <link xlink:href="http://www.freebsdmall.com/">FreeBSD 商城</link> 購買。 此外,您可在 <link xlink:href="@@URL_RELPREFIX@@/search/index.html">搜尋頁面</link> 中搜尋本文件或其他文件的資料。</para> + <para>歡迎使用 FreeBSD! 本使用手冊涵蓋範圍包括了 <emphasis>FreeBSD 12.0-RELEASE</emphasis> 與 <emphasis>FreeBSD 11.3-RELEASE</emphasis> 的安裝與平日操作的說明。 這份使用手冊是很多人的集體創作,而且仍然『持續不斷』的進行中,因此部份章節可能尚未仍未完成,如果您有興趣協助本計畫的話,請寄電子郵件至 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc">FreeBSD 文件專案郵遞論壇</link>。</para> + + <para>在 <link xlink:href="https://www.FreeBSD.org/">FreeBSD 網站</link> 可以找到本手冊的最新版本,舊版文件可從 <uri xlink:href="https://docs.FreeBSD.org/doc/">https://docs.FreeBSD.org/doc/</uri> 取得。本文件也提供各種格式與不同壓縮方式的版本可自 <link xlink:href="https://download.freebsd.org/ftp/doc/">FreeBSD FTP 伺服器</link> 或是其中一個 <link linkend="mirrors-ftp">鏡像網站</link> 下載。 列印出來的實體書面資料可在 <link xlink:href="https://www.freebsdmall.com/">FreeBSD 商城</link> 購買。 此外,您可在 <link xlink:href="@@URL_RELPREFIX@@/search/index.html">搜尋頁面</link> 中搜尋本文件或其他文件的資料。</para> </abstract> </info> @@ -876,7 +885,7 @@ <bridgehead xml:id="preface-changes" renderas="sect1">自第一版後的主要修訂 (2001)</bridgehead> - <para>本手冊的第二版是 FreeBSD 文件計劃的成員歷時兩年完成的心血之作。第二版包的主要變動如下︰</para> + <para>本手冊的第二版是 FreeBSD 文件計劃的成員歷時兩年完成的心血之作。第二版包的主要變動如下:</para> <!-- Talk a little about justification and other stylesheet changes? --> @@ -1234,7 +1243,7 @@ <bridgehead xml:id="preface-conv" renderas="sect1">本書的編排體裁</bridgehead> - <para>為方便閱讀本書,以下是一些本書所遵循的編排體裁:</para> + <para>為了提供有一致性且易於閱讀的內容,以下是一些本書所遵循的編排體裁。</para> <bridgehead xml:id="preface-conv-typographic" renderas="sect2">文字編排體裁</bridgehead> @@ -1373,7 +1382,7 @@ <para>非常感謝您對 FreeBSD 感興趣!以下章節涵蓋 FreeBSD 計劃的各方面:比如它的歷史、目標、開發模式等等。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -1403,123 +1412,56 @@ <indexterm xml:lang="en"><primary>4.4BSD-Lite</primary></indexterm> - <para xml:lang="en">FreeBSD is an Open Source, standards-compliant Unix-like - operating system for x86 (both 32 and 64 bit), <trademark class="registered">ARM</trademark>, AArch64, - <trademark class="registered">RISC-V</trademark>, <trademark class="registered">MIPS</trademark>, <trademark class="registered">POWER</trademark>, <trademark class="registered">PowerPC</trademark>, and Sun <trademark class="registered">UltraSPARC</trademark> - computers. It provides all the features that are - nowadays taken for granted, such as preemptive multitasking, - memory protection, virtual memory, multi-user facilities, SMP - support, all the Open Source development tools for different - languages and frameworks, and desktop features centered around - X Window System, KDE, or GNOME. Its particular strengths - are:</para> + <para>FreeBSD 是一套開源、符合標準的類 Unix 的作業系統,適用於 x86 (32 與 64 位元), <trademark class="registered">ARM</trademark>, AArch64, <trademark class="registered">RISC-V</trademark>, <trademark class="registered">MIPS</trademark>, <trademark class="registered">POWER</trademark>, <trademark class="registered">PowerPC</trademark> 以及 Sun <trademark class="registered">UltraSPARC</trademark> 的電腦。它提供了現代作業系統所應具備的所有功能,例如:先佔式多工、記憶體保護、虛擬記憶體、多使用者架構、對稱多工處理 (SMP)、各種針對不同語言和框架的開源開發工具以及以 X Window 系統、KDE 及 GNOME 為主的桌面功能,而它有以下優勢:</para> <itemizedlist> <listitem> - <para xml:lang="en"><emphasis>Liberal Open Source license</emphasis>, - which grants you rights to freely modify and extend - its source code and incorporate it in both Open Source - projects and closed products without imposing - restrictions typical to copyleft licenses, as well - as avoiding potential license incompatibility - problems.</para> + <para><emphasis>自由的開放原始碼授權</emphasis>,授予您自由修改和擴充其原始碼並將其合併到開放原始碼專案或封閉的產品中的權力,不會對 Copyleft 授權施加典型的限制,也避免了授權不相容的潛在問題。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Strong TCP/IP networking</emphasis> - <indexterm xml:lang="en"> <primary>TCP/IP - networking</primary></indexterm> - FreeBSD - implements industry standard protocols with ever - increasing performance and scalability. This makes - it a good match in both server, and routing/firewalling - roles - and indeed many companies and vendors use it - precisely for that purpose.</para> + <para><emphasis>強大的 TCP/IP 網路</emphasis> <indexterm> <primary>TCP/IP + networking</primary></indexterm> - FreeBSD 以工業標準實作通訊協定並不斷改善效能與擴展性,這使得 FreeBSD 非常適合應用在伺服器、路由器/防火牆的角色 - 這也是許多公司和供應商使用它的原因。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Fully integrated OpenZFS support</emphasis>, - including root-on-ZFS, ZFS Boot Environments, fault - management, administrative delegation, support for jails, - FreeBSD specific documentation, and system installer - support.</para> + <para><emphasis>完全整合 OpenZFS</emphasis>,包含 root-on-ZFS、ZFS 開機環境、故障管理、委託管理、對 Jail 的支援、FreeBSD 專屬的文件以及系統安裝程式的支援。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Extensive security features</emphasis>, - from the Mandatory Access Control framework to Capsicum - capability and sandbox mechanisms.</para> + <para><emphasis>鉅細靡遺的安全性功能</emphasis>,從強制存取控制 (Mandatory Access Control, MAC) 框架到 Capsicum 功能以及沙盒機制。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Over 30 thousand prebuilt - packages</emphasis> for all supported architectures, - and the Ports Collection which makes it easy to build your - own, customized ones.</para> + <para><emphasis>超過 3 萬個預編的套件</emphasis>供所有支援的架構以及可簡單編譯依您的需求所客製的 Port 套件集。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Documentation</emphasis> - in addition - to Handbook and books from different authors that cover - topics ranging from system administration to kernel - internals, there are also the <citerefentry><refentrytitle>man</refentrytitle><manvolnum>1</manvolnum></citerefentry> pages, not only - for userspace daemons, utilities, and configuration files, - but also for kernel driver APIs (section 9) and individual - drivers (section 4).</para> + <para><emphasis>說明文件</emphasis> - 除了操作手冊及由許多作者著作從系統管理到核心內部主題的書籍外,也有不僅只針對 Userspace Daemon、工具及設定檔,同樣也有針對核心驅動程式 APIs (第 9 節) 及各別驅動程式 (第 4 節) 的操作說明頁 ( <citerefentry><refentrytitle>man</refentrytitle><manvolnum>1</manvolnum></citerefentry> page)。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Simple and consistent repository structure - and build system</emphasis> - FreeBSD uses a single - repository for all of its components, both kernel and - userspace. This, along with an unified and easy to - customize build system and a well thought out development - process makes it easy to integrate FreeBSD with build - infrastructure for your own product.</para> + <para><emphasis>簡單且具一致性的檔案庫架構與編譯系統</emphasis> - FreeBSD 對所有的元件、核心與 Userspace 使用單一的檔案庫,加上統一、易於客製的編譯系統以及嚴謹的開發流程,讓 FreeBSD 的編譯基礎架構更容易與您產品的整合。</para> </listitem> <listitem> - <para xml:lang="en"><emphasis>Staying true to Unix philosophy</emphasis>, - preferring composability instead of monolithic <quote>all - in one</quote> daemons with hardcoded behavior.</para> + <para><emphasis>忠於 Unix 哲學</emphasis>,偏好可組合而非具寫死的 <quote>多合一</quote> 單一 Daemon。</para> </listitem> <listitem> - <para xml:lang="en"><indexterm xml:lang="en"> <primary>binary compatibility</primary> - <secondary>Linux</secondary></indexterm> - <emphasis>Binary compatibility</emphasis> with Linux, - which makes it possible to run many Linux binaries without - the need for virtualisation.</para> + <para><indexterm> <primary>binary compatibility</primary> + <secondary>Linux</secondary></indexterm> <emphasis>Linux 執行檔 (Binary) 相容性</emphasis>,無需虛擬化即可執行許多 Linux 執行檔。</para> </listitem> </itemizedlist> - <para xml:lang="en">FreeBSD is based on the 4.4BSD-Lite<indexterm xml:lang="en"> + <para>FreeBSD 系統是基於美國加州大學柏克萊分校的電腦系統研究組 (Computer Systems Research Group 也就是 CSRG) 所發行的 4.4BSD-Lite<indexterm> <primary>4.4BSD-Lite</primary> - </indexterm> release from Computer - Systems Research Group (CSRG)<indexterm xml:lang="en"> - <primary>Computer Systems Research Group (CSRG)</primary> - </indexterm> at the University of California at Berkeley, and - carries on the distinguished tradition of BSD systems - development. In addition to the fine work provided by CSRG, - the FreeBSD Project has put in many thousands of man-hours - into extending the functionality and fine-tuning the system - for maximum performance and reliability - in real-life load situations. FreeBSD offers performance and - reliability on par with other Open Source and commercial - offerings, combined with cutting-edge features not available - anywhere else.</para> + </indexterm>,繼承了 BSD 系統開發的優良傳統。 除了由 CSRG 所提供的高品質的成果外,FreeBSD 計劃也投入了上千人時在擴充及微調,來讓系統在真實情境下能達到最大的效能與可靠性。 FreeBSD 提供了其他開源與商業產品的效能及穩定性,並結合其他產品所沒有的尖端功能。</para> <sect2 xml:id="os-overview"> <title>FreeBSD 能做什麼?</title> - <para xml:lang="en">The applications to which FreeBSD can be put are truly - limited only by your own imagination. From software - development to factory automation, inventory control to - azimuth correction of remote satellite antennae; if it can be - done with a commercial <trademark class="registered">UNIX</trademark> product then it is more than - likely that you can do it with FreeBSD too! FreeBSD also benefits - significantly from literally thousands of high quality - applications developed by research centers and universities - around the world, often available at little to no cost.</para> + <para>FreeBSD 能應用的情境完全限制在你的想像力上。 從軟體開發到工廠自動化,庫存管控到遠程衛星天線的方位角校正;若您的需求可以用商用的 <trademark class="registered">UNIX</trademark> 產品來達成,那麼極有可能使用 FreeBSD 也能辦到! FreeBSD 也受益於來自於全球各研究中心及大學所開發的數千個高品質的軟體 ,這些通常只需要花費很少的費用或根本就是免費的。</para> <para>由於每個人都可以取得 FreeBSD 的原始程式碼, 這個系統可以被量身訂做成能執行任何原本完全無法想像的功能或計劃, 而對於從各廠商取得的作業系統通常沒有辦法這樣地被修改。 以下提供一些人們使用 FreeBSD 的例子:</para> @@ -1529,7 +1471,7 @@ <itemizedlist> <listitem> - <para xml:lang="en">Web servers</para> + <para>網頁伺服器</para> </listitem> <listitem> @@ -1541,7 +1483,7 @@ <primary>firewall</primary> </indexterm>以及 NAT<indexterm> <primary>NAT</primary> - </indexterm> (<quote>IP 偽裝</quote>) 通訊閘。</para> + </indexterm> (<quote>IP 偽裝</quote>) 通訊閘</para> </listitem> <listitem> @@ -1551,15 +1493,12 @@ </listitem> <listitem> - <para xml:lang="en"> - <indexterm xml:lang="en"> + <para><indexterm> <primary>electronic mail</primary> <see>email</see> - </indexterm> - <indexterm xml:lang="en"> + </indexterm> <indexterm> <primary>email</primary> - </indexterm> - Email servers</para> + </indexterm> 電子郵件伺服器</para> </listitem> <listitem> @@ -1569,7 +1508,7 @@ </listitem> <listitem> - <para><emphasis>教育:</emphasis>若您是資工相關領域的學生,再也沒有比使用 FreeBSD 能學到更多作業系統、計算機結構、及網路的方法了。 另外如果你想利用電腦來處理一些<emphasis>其他</emphasis>的工作,還有一些如 CAD、 數學運算以及圖形處理軟體等可以免費地取得使用。</para> + <para><emphasis>教育:</emphasis>您是電腦科學相關領域的學生嗎?再也沒有比使用 FreeBSD 能學到更多作業系統、計算機結構、及網路的方法了。其中許多免費提供的 CAD,數學和圖形設計套件對於那些需要在電腦完成 <emphasis>其他</emphasis> 工作的人也非常有用!</para> </listitem> <listitem> @@ -1615,18 +1554,7 @@ <indexterm><primary>使用者</primary> <secondary>執行 FreeBSD 的大型站台</secondary></indexterm> - <para xml:lang="en">FreeBSD has been known for its web serving capabilities - - sites that run on FreeBSD include - <link xlink:href="https://news.ycombinator.com/">Hacker News</link>, - <link xlink:href="http://www.netcraft.com/">Netcraft</link>, - <link xlink:href="http://www.163.com/">NetEase</link>, - <link xlink:href="https://signup.netflix.com/openconnect">Netflix</link>, - <link xlink:href="http://www.sina.com/">Sina</link>, - <link xlink:href="http://www.sony.co.jp/">Sony Japan</link>, - <link xlink:href="http://www.rambler.ru/">Rambler</link>, - <link xlink:href="http://www.yahoo.com/">Yahoo!</link>, and - <link xlink:href="http://www.yandex.ru/">Yandex</link>. - </para> + <para>FreeBSD 以其網頁 (Web) 服務功能而聞名 - 在 FreeBSD 上運作的網站包括 <link xlink:href="https://news.ycombinator.com/">Hacker News</link>, <link xlink:href="http://www.netcraft.com/">Netcraft</link>, <link xlink:href="http://www.163.com/">NetEase</link>, <link xlink:href="https://signup.netflix.com/openconnect">Netflix</link>, <link xlink:href="http://www.sina.com/">Sina</link>, <link xlink:href="http://www.sony.co.jp/">Sony Japan</link>, <link xlink:href="http://www.rambler.ru/">Rambler</link>, <link xlink:href="http://www.yahoo.com/">Yahoo!</link> 及 <link xlink:href="http://www.yandex.ru/">Yandex</link>。</para> <para>FreeBSD 先進的功能、成熟的安全性、可預測的發佈週期以及自由的授權條款,讓 FreeBSD 已經被用來做為建立許多商業、開源應用、裝置以及產品的平台,有許多世界上最大的資訊公司使用 FreeBSD:</para> @@ -1657,20 +1585,15 @@ </listitem> <listitem> - <para xml:lang="en"><link xlink:href="https://www.emc.com/isilon">Dell EMC Isilon</link> - <indexterm xml:lang="en"> + <para><link xlink:href="https://www.emc.com/isilon">Dell EMC Isilon</link> <indexterm> <primary>Isilon</primary> - </indexterm> - Isilon's enterprise storage appliances - are based on FreeBSD. The extremely liberal FreeBSD license - allowed Isilon to integrate their intellectual property - throughout the kernel and focus on building their product - instead of an operating system.</para> + </indexterm> - Isilon 的企業存儲設備是以 FreeBSD 為基礎。非常自由的 FreeBSD 授權條款讓 Isilon 整合了它們的智慧財產到整個核心,並專注打造自己的產品,而不是一個作業系統。</para> </listitem> <listitem> - <para><link xlink:href="http://www.dell.com/KACE">Dell KACE</link> <indexterm> - <primary>Dell KACE</primary> - </indexterm> - KACE 系統管理設備中運作了 FreeBSD,因為 FreeBSD 的可靠性、可擴展性以及支持其持續發展的社群。</para> + <para><link xlink:href="http://www.quest.com/KACE">Quest KACE</link> <indexterm> + <primary>Quest KACE</primary> + </indexterm> - KACE 系統管理設備中運作了 FreeBSD,是因為 FreeBSD 的可靠性、可擴展性以及支持其持續發展的社群。</para> </listitem> <listitem> @@ -1827,8 +1750,7 @@ </listitem> </itemizedlist> - <para xml:lang="en">Wikipedia also maintains a <link xlink:href="https://en.wikipedia.org/wiki/List_of_products_based_on_FreeBSD">list - of products based on FreeBSD</link>.</para> + <para>在 FreeBSD 基金會網站上可以找到<link xlink:href="https://www.freebsdfoundation.org/about/testimonials/">以 FreeBSD 為基礎的產品與服務的公司的推薦</link> 清單。 Wikipedia 也維護了一份<link xlink:href="https://en.wikipedia.org/wiki/List_of_products_based_on_FreeBSD">以 FreeBSD 為基礎的產品清單</link>。</para> </sect2> </sect1> @@ -1927,7 +1849,7 @@ <para>FreeBSD 的開發是一個非常開放且具彈性的過程,就像從 <link xlink:href="@@URL_RELPREFIX@@/doc/zh_TW.UTF-8/articles/contributors/article.html">貢獻者名單</link> 所看到的,是由全世界成千上萬的貢獻者發展起來的。 FreeBSD 的開發基礎架構允許數以百計的開發者透過網際網路協同工作。 我們也經常關注著那些對我們的計畫感興趣的新開發者和新的創意, 那些有興趣更進一步參與計劃的人只需要在 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers">FreeBSD 技術討論郵遞論壇</link> 連繫我們。 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce">FreeBSD 公告郵遞論壇</link> 對那些希望了解我們進度的人也是相當有用的。</para> - <para>無論是單獨開發者或者封閉式的團隊合作,多瞭解 FreeBSD 計劃和它的開發過程會是不錯的︰</para> + <para>無論是單獨開發者或者封閉式的團隊合作,多瞭解 FreeBSD 計劃和它的開發過程會是不錯的:</para> <variablelist> <varlistentry> @@ -1964,20 +1886,9 @@ <term>FreeBSD 核心團隊<anchor xml:id="development-core"/></term> <listitem> - <para xml:lang="en">The <firstterm>FreeBSD core team</firstterm> - <indexterm xml:lang="en"> + <para>如果把 FreeBSD 看成是一家公司的話, <firstterm>FreeBSD 核心團隊 (FreeBSD core team)</firstterm><indexterm> <primary>core team</primary> - </indexterm> would be equivalent to the board of - directors if the FreeBSD Project were a company. The - primary task of the core team is to make sure the - project, as a whole, is in good shape and is heading in - the right directions. Inviting dedicated and - responsible developers to join our group of committers - is one of the functions of the core team, as is the - recruitment of new core team members as others move on. - The current core team was elected from a pool of - committer candidates in July 2018. Elections are held - every 2 years.</para> + </indexterm> 就相當於公司的董事會。 核心團隊的主要職責在於確保此計劃的整體有良好的架構,以朝著正確的方向發展。 此外,邀請敬業且負責的開發者加入提交者的行列也是核心團隊的職責之一,隨著其他新成員的加入也招募新的核心團隊成員。 目前的核心團隊是在 2018 年 7 月從提交者候選人之中選出來的,這個選舉每兩年會舉辦一次。</para> <note> <para>如同多數的開發者,核心團隊大部分成員加入 FreeBSD 開發都是志工性質而已, 並未從本計劃中獲得任何薪酬,所以這只是一個 <quote>承諾</quote> 不應該被誤解為 <quote>保證支援</quote> 才對。 前面用 <quote>董事會</quote> 來舉例可能不是很恰當,或許我們應該說: 他們是一群自願放棄原本的優渥生活、個人其他領域成就, 而選擇投入 FreeBSD 開發的熱血有為者才對!</para> @@ -2014,15 +1925,7 @@ <sect2> <title>其他文件</title> - <para xml:lang="en">All supported FreeBSD versions provide an option in the - installer to - install additional documentation under - <filename>/usr/local/share/doc/freebsd</filename> during the - initial system setup. Documentation may also be installed at - any later time using packages as described in - <xref linkend="doc-ports-install-package"/>. You may view the - locally installed manuals with any HTML capable browser using - the following URLs:</para> + <para>所有支援的 FreeBSD 版本都會在安裝程式中提供一個選項,讓您可以在初始化系統安裝的階段安裝額外的說明文件到 <filename>/usr/local/share/doc/freebsd</filename>。說明文件也可在往後隨時使用套件安裝,詳細說明於 <xref linkend="doc-ports-install-package"/>。您也可以使用任何支援 HTML 的瀏覽器進入下列 URL 檢視已安裝在本機的手冊:</para> <variablelist> <varlistentry> @@ -2119,53 +2022,27 @@ <indexterm><primary>安裝</primary></indexterm> - <para xml:lang="en">There are several different ways of getting FreeBSD to run, - depending on the environment. Those are:</para> + <para>有多種不同的方法可以執行 FreeBSD,根據所在環境,包含:</para> <itemizedlist> <listitem> - <para xml:lang="en">Virtual Machine images, to download and import on a - virtual environment of choice. These can be downloaded from - the <link xlink:href="https://www.freebsd.org/where.html">Download - FreeBSD</link> page. There are images for KVM - (<quote>qcow2</quote>), VMWare (<quote>vmdk</quote>), - Hyper-V (<quote>vhd</quote>), and raw device images that are - universally supported. These are not installation images, - but rather the preconfigured (<quote>already - installed</quote>) instances, ready to run and perform - post-installation tasks.</para> + <para>一般虛擬機映像檔,可下載並匯入到您所選擇的虛擬環境。映像檔可從 <link xlink:href="https://www.freebsd.org/where.html">Download FreeBSD</link> 頁面下載,KVM (<quote>qcow2</quote>), VMWare (<quote>vmdk</quote>), Hyper-V (<quote>vhd</quote>) 及原始裝置的映像檔都支援。這些並非安裝程式的映像檔,而是已經預先設定好 (<quote>已安裝好</quote>) 的實例,可直接使用並執行安裝後的作業。</para> </listitem> <listitem> - <para xml:lang="en">Virtual Machine images available at Amazon's <link xlink:href="https://aws.amazon.com/mp/solutions/freebsd/">AWS - Marketplace</link>, <link xlink:href="https://azuremarketplace.microsoft.com/en-us/marketplace/apps?search=freebsd&page=1">Microsoft - Azure Marketplace</link>, and <link xlink:href="https://console.cloud.google.com/launcher/details/freebsd-cloud/freebsd-11">Google - Cloud Platform</link>, to run on their respective hosting - services. For more information on deploying FreeBSD on Azure - please consult the relevant chapter in the <link xlink:href="https://docs.microsoft.com/en-us/azure/virtual-machines/linux/freebsd-intro-on-azure">Azure - Documentation</link>.</para> + <para>託管服務虛擬機映像檔,可在 Amazon 的 <link xlink:href="https://aws.amazon.com/mp/solutions/freebsd/">AWS Marketplace</link>, <link xlink:href="https://azuremarketplace.microsoft.com/en-us/marketplace/apps?search=freebsd&page=1">Microsoft Azure Marketplace</link> 和 <link xlink:href="https://console.cloud.google.com/launcher/details/freebsd-cloud/freebsd-11">Google Cloud Platform</link> 等託管服務上運行的虛擬機映像檔。有關如何在 Azure 上部署 FreeBSD 的資訊可查詢 <link xlink:href="https://docs.microsoft.com/en-us/azure/virtual-machines/linux/freebsd-intro-on-azure">Azure 說明文件</link>中的相關章節。</para> </listitem> <listitem> - <para xml:lang="en">SD card images, for embedded systems such as Raspberry - Pi or BeagleBone Black. These can be downloaded from the - <link xlink:href="https://www.freebsd.org/where.html">Download - FreeBSD</link> page. These files must be uncompressed and - written as a raw image to an SD card, from which the board - will then boot.</para> + <para>SD 卡映像檔,供嵌入式系統,如 Raspberry Pi 或 BeagleBone Black 使用的映像檔,可從 <link xlink:href="https://www.freebsd.org/where.html">Download FreeBSD</link> 頁面下載,這些檔案必須先解壓縮後以原始映像檔的格式寫入 SD 卡以讓這些開發電路板能夠啟動。</para> </listitem> <listitem> - <para xml:lang="en">Installation images, to install FreeBSD on - a hard drive for the usual desktop, laptop, or server - systems.</para> + <para>安裝程式映像檔,用來安裝 FreeBSD 到硬碟,供一般的桌機、筆電或伺服器系統使用。</para> </listitem> </itemizedlist> - <para xml:lang="en">The rest of this chapter describes the fourth case, - explaining how to install FreeBSD using the text-based - installation program named - <application>bsdinstall</application>.</para> + <para>此章接下來的部份會介紹第四個案例,說明如何使用文字介面為基礎的安裝程式 <application>bsdinstall</application> 安裝 FreeBSD。</para> <para>一般來說,本章所寫的安裝說明是針對 <trademark>i386</trademark> 和 <acronym>AMD64</acronym> 架構。如果可以用於其他平台,將會列表說明。 安裝程式和本章所敘述的內容可能會有些微差異,所以請將本章視為通用的指引,而不是完全照著來做。</para> @@ -2173,7 +2050,7 @@ <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> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -2201,7 +2078,7 @@ </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -2337,15 +2214,7 @@ <step> <title>檢查 FreeBSD 勘誤表</title> - <para xml:lang="en">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 rare occasions - those bugs affect the installation process. As these - problems are discovered and fixed, they are noted in the - FreeBSD Errata (<link xlink:href="@@URL_RELPREFIX@@/releases/12.0R/errata.html">https://www.freebsd.org/releases/12.0R/errata.html</link>) - on the FreeBSD web site. Check the errata before installing to - make sure that there are no problems that might affect the - installation.</para> + <para>儘管 FreeBSD 計劃努力確保每個 FreeBSD 發行版能夠儘可能地穩定,但臭蟲偶爾還是會悄悄出現,並有極小的可能會發生影響安裝流程的錯誤,當這些問題被發現並修正後,會被紀錄在 FreeBSD 網站的 FreeBSD 勘誤表 (<link xlink:href="@@URL_RELPREFIX@@/releases/12.0R/errata.html">https://www.freebsd.org/releases/12.0R/errata.html</link>)。 安裝前先檢查勘誤表,以確保沒有會影響到安裝的問題。</para> <para>所有發行版的資訊和勘誤表可以在 FreeBSD 網站的發行資訊找到 (<link xlink:href="@@URL_RELPREFIX@@/releases/index.html">https://www.freebsd.org/releases/index.html</link>)。</para> </step> @@ -2411,7 +2280,7 @@ <screen xml:lang="en"><prompt>#</prompt> <userinput>dd if=<replaceable>FreeBSD-10.2-RELEASE-amd64-memstick.img</replaceable> of=/dev/<replaceable>da0</replaceable> bs=1M conv=sync</userinput></screen> - <para>若這個指示執行失敗,請確認 <acronym>USB</acronym> 隨身碟是否未掛載,以及該裝置名稱是否為這個隨身碟,而非一個分割區。部份作業系統可能需要使用 <citerefentry><refentrytitle>sudo</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來執行這個指令。像 <trademark class="registered">Linux</trademark> 這類的系統可能會暫存寫入動作,要強制完成所有寫入動作,可使用 <citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</manvolnum></citerefentry>。</para> + <para>若這個指示執行失敗,請確認 <acronym>USB</acronym> 隨身碟是否還未掛載,以及該裝置名稱是否指向這個隨身碟,而不是一個分割區。有些作業系統可能需要使用 <citerefentry><refentrytitle>sudo</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來執行這個指令。且 <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></citerefentry> 的指令語法在不同的作業系統上有些不同,例如在 <trademark class="registered">Mac OS</trademark> 需要使用小寫的 <option>bs=1m</option>,而在 <trademark class="registered">Linux</trademark> 這類的系統可能會暫存寫入動作,要強制完成所有寫入動作,需使用 <citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</manvolnum></citerefentry>。</para> </step> </procedure> @@ -2742,17 +2611,7 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen> <sect1 xml:id="bsdinstall-partitioning"> <title>配置磁碟空間</title> - <para>接下來的選單用來決定配置磁碟空間的方式,選單中可用的選項會依安裝的 FreeBSD 版本而有所不同。</para> - - <figure xml:id="bsdinstall-part-guided-manual"> - <title>FreeBSD 9.x 的磁碟分割選項</title> - - <mediaobject> - <imageobject> - <imagedata fileref="bsdinstall/bsdinstall-part-guided-manual"/> - </imageobject> - </mediaobject> - </figure> + <para>接下來的選單用來決定配置磁碟空間的方式。</para> <figure xml:id="bsdinstall-zfs-partmenu"> <title>FreeBSD 10.x 或更新版本的磁碟分割選項</title> @@ -2922,7 +2781,7 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen> </tgroup> </table> - <para>選擇完分割區表格式並建立之後,再選擇 <guibutton>[ Create ]</guibutton> 一次來建立分割區。</para> + <para>選擇完分割區表格式並建立之後,再選擇 <guibutton>[ Create ]</guibutton> 一次來建立分割區。<keycap>Tab</keycap> 鍵可用來在欄位間移動游標。</para> <figure xml:id="bsdinstall-part-manual-addpart"> <title>手動建立分割區</title> @@ -3759,7 +3618,7 @@ Starting sshd.</screen> <note> <para>部份安裝問題可以透過更各種硬體元件的韌體來避免或緩解,特別是主機板。主機板的韌體通常稱為 <acronym>BIOS</acronym>,大部份主機板與電腦製造商會有網站可以取得升級程式與升級資訊。</para> - <para>製造商通常會建議若沒有特殊原因盡量避免升級主機板 <acronym>BIOS</acronym></para> + <para>製造商通常會建議若沒有特殊原因盡量避免升級主機板 <acronym>BIOS</acronym>,例如:重大更新,升級的程多<emphasis>可能會</emphasis>出錯,導致未更新完成的 <acronym>BIOS</acronym> 並讓電腦無法運作。</para> </note> <para>若系統在開機偵測硬體時卡住或安裝時運作異常,可能主因為 <acronym>ACPI</acronym>,FreeBSD 在 i386, amd64 及 ia64 平台廣泛的使用了系統 <acronym>ACPI</acronym> 服務來協助設定系統組態,若在開機時有偵測到該功能。不幸的是,<acronym>ACPI</acronym> 驅動程式與系統主機板及 <acronym>BIOS</acronym> 韌體之間仍存在部份問題。可於開機載入程式的第三階段設定 <literal>hint.acpi.0.disabled</literal> Hint 來關閉 <acronym>ACPI</acronym>:</para> @@ -3817,7 +3676,7 @@ Starting sshd.</screen> <para>接下來的這一章將涵蓋 FreeBSD 作業系統的基本指令及功能。 大部份的內容在 <trademark class="registered">UNIX</trademark>-like 作業系統中都是相通的。 如果您對這些內容熟悉的話,可以放心的跳過。 如果您剛接觸 FreeBSD,那您一定要仔細的讀完這章。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -3900,7 +3759,7 @@ login:</screen> <para>FreeBSD 預設提供多個虛擬 Console 可輸入指令,每個虛擬 Console 都有自己的登入提示及 Shell 並且可以輕易的在虛擬 Console 間切換。 這實際上讓指令輸入有了類似於圖型化環境中可以同時開啟多個視窗的功能。</para> - <para>組合鍵 <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> 至 <keycombo><keycap>Alt</keycap><keycap>F8</keycap></keycombo> 被 FreeBSD 保留用來切換虛擬 Console,使用 <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> 可切換至系統 Console (<filename>ttyv0</filename>),<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> 可存取第一個虛擬 Console (<filename>ttyv1</filename>),<keycombo><keycap>Alt</keycap><keycap>F3</keycap></keycombo> 可存取第二個虛擬 Console (<filename>ttyv2</filename>),以此類推。</para> + <para>組合鍵 <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> 至 <keycombo><keycap>Alt</keycap><keycap>F8</keycap></keycombo> 被 FreeBSD 保留用來切換虛擬 Console,使用 <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> 可切換至系統 Console (<filename>ttyv0</filename>),<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> 可存取第一個虛擬 Console (<filename>ttyv1</filename>),<keycombo><keycap>Alt</keycap><keycap>F3</keycap></keycombo> 可存取第二個虛擬 Console (<filename>ttyv2</filename>),以此類推。當使用 <application>Xorg</application> 作為圖型化 Console 時,組合鍵則改使用 <keycombo> <keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap> </keycombo> 來切換回文字介面的虛擬 Console。</para> <para>當您從一個 Console 切換到下一個的時候,FreeBSD 會切換畫面顯示的內容, 這就好像有很多虛擬的螢幕和鍵盤可以讓您輸入指令到 FreeBSD 執行。 在某一個虛擬 Console 上執行的程式並不會因為使用者切到別的 Console 而停止執行。</para> @@ -3985,7 +3844,7 @@ console none unknown off secure</programlisting> <para>FreeBSD 允許多使用者同時使用電腦,在一次只能有一位使用者坐在電腦螢幕前使用鍵盤操作的同時,可讓任何數量的使用者透過網路登入到系統。每一位要使用該系統的使用者應有自己的帳號。</para> - <para>本章介紹︰</para> + <para>本章介紹:</para> <itemizedlist> <listitem> @@ -4416,7 +4275,7 @@ Other information:</screen> <secondary>changing password</secondary> </indexterm> - <para>任何使用者皆可簡單的使用 <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry> 更改自己的密碼。要避免意外或未授權的變更,這個指令在設定新密碼之前會提示使用者輸入原來的密碼。</para> + <para>任何使用者皆可簡單的使用 <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry> 更改自己的密碼。要避免意外或未授權的變更,這個指令在設定新密碼之前會提示使用者輸入原來的密碼:</para> <example> <title>更改您的密碼</title> @@ -4693,7 +4552,7 @@ total 530 <row> <entry>(動作)</entry> <entry xml:lang="en">+</entry> - <entry> 增加權限</entry> + <entry>增加權限</entry> </row> <row> @@ -4745,7 +4604,7 @@ total 530 <screen xml:lang="en"><prompt>%</prompt> <userinput>chmod go= FILE</userinput></screen> - <para>若有兩個以上的符號表示可以使用逗號 (,) 區隔。 例如,下列指令將會移除群組及其他人對檔案 <replaceable>FILE</replaceable> 的寫入權限, 並使全部人 (<quote>world</quote>) 對該檔有執行權限。</para> + <para>若有兩個以上的權限更改可以使用逗號 (,) 區隔。 例如,下列指令將會移除群組及全部人 (<quote>world</quote>) 對檔案 <replaceable>FILE</replaceable> 的寫入權限, 並使全部人對該檔有執行權限:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>chmod go-w,a+x <replaceable>FILE</replaceable></userinput></screen> @@ -5223,7 +5082,7 @@ root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd</screen> <para>FreeBSD 也會使用磁碟空間作為<firstterm>交換空間 (Swap space)</firstterm> 來提供<firstterm>虛擬記憶體 (Virtual memory)</firstterm>。 這讓您的電腦好像擁有比實際更多的記憶體。 當 FreeBSD 的記憶體用完的時候,它會把一些目前沒用到的資料移到交換空間,然後在用到的時候移回去 (同時移出部份沒用到的)。</para> - <para>部份分區有使用的慣例如下:</para> + <para>有些分割區有特定的使用慣例。</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> @@ -5240,12 +5099,12 @@ root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd</screen> <tbody valign="top"> <row> <entry xml:lang="en"><literal>a</literal></entry> - <entry>通常內含根檔案系統</entry> + <entry>通常含有根檔案系統。</entry> </row> <row> <entry xml:lang="en"><literal>b</literal></entry> - <entry>通常內含交換空間</entry> + <entry>通常含有交換空間。</entry> </row> <row> @@ -5577,7 +5436,7 @@ root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd</screen> <secondary>unmounting</secondary> </indexterm> - <para>要缺載檔案系統可使用 umount(8) 指令。該指令需要一個參數可以是掛載點 (mountpoint),裝置名稱,以及 -a 或是 -A 等選項。 </para> + <para>要卸載檔案系統可使用 <citerefentry><refentrytitle>umount</refentrytitle><manvolnum>8</manvolnum></citerefentry> 指令。該指令需要一個參數可以是掛載點 (mountpoint),裝置名稱,以及 <option>-a</option> 或是 <option>-A</option> 等選項。</para> <para>加上 <option>-f</option> 可以強制卸載,加上 <option>-v</option> 則是會顯示詳細資訊。 要注意的是一般來說用 <option>-f</option> 並不是個好主意,強制卸載檔案系統有可能會造成電腦當機, 或者損壞檔案系統內的資料。</para> @@ -5680,7 +5539,7 @@ Swap: 2048M Total, 2048M Free <para>對大多數 <trademark class="registered">UNIX</trademark> 指令來講,<citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></citerefentry> 執行成功時並不會輸出任何訊息。 假設您送一個信號給某個不是使用者所擁有的程序, 那麼就會顯示這個錯誤訊息: <errorname>kill: <replaceable>PID</replaceable>: Operation not permitted</errorname>。 若打錯 <acronym>PID</acronym> 的話,那就會把信號送給錯誤的程序,並把該程序關閉,或者是把信號送給一個非使用中的 <acronym>PID</acronym>,那您就會看到錯誤:<errorname>kill: <replaceable>PID</replaceable>: No such process</errorname>。</para> <note> - <title>為何要使用 <command>/bin/kill</command>? </title> + <title>為何要使用 <command>/bin/kill</command>?</title> <para>多數 Shell 都有提供內建的 <command>kill</command> 指令。 也就是說這種 shell 會直接發送信號,而不是執行 <filename>/bin/kill</filename>。 但要小心不同的 shell 會有不同的語法來指定信號的名稱等。 與其嘗試去把它們通通學會,不如就單純的直接用 <command>/bin/kill</command>。</para> </note> @@ -6027,7 +5886,7 @@ Swap: 2048M Total, 2048M Free <indexterm><primary>套件</primary></indexterm> <para>FreeBSD 內建豐富的系統工具集,此外 FreeBSD 提供了兩種安裝第三方軟體的套件管理技術︰由原始碼安裝的 FreeBSD Port 套件集,以及由預先編譯好的 Binary 安裝的 Binary 套件集。兩種方法都可使用本地的媒體或網路來安裝軟體。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -6142,10 +6001,7 @@ Swap: 2048M Total, 2048M Free <para>要持續追蹤 Port 的更新可以訂閱 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ports">FreeBSD Port 郵遞論壇</link> 與 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ports-bugs">FreeBSD Port 問題郵遞論壇</link>。</para> <warning> - <para xml:lang="en">Before installing any application, check <link xlink:href="https://vuxml.freebsd.org/"/> - for security issues related to the application or type - <command>pkg audit -F</command> to check all installed - applications for known vulnerabilities.</para> + <para>在安裝任何應用程式之前,請先查看 <link xlink:href="https://vuxml.freebsd.org/"/> 是否有與該應用程式相關的安全性問題或輸入 <command>pkg audit -F</command> 來檢查所有已安裝的應用程式是否有已知的漏洞。</para> </warning> <para>本章接下來的部份將說明如何在 FreeBSD 使用 Binary 套件及 Port 套件安裝與管理第三方軟體。</para> @@ -6277,12 +6133,7 @@ Info: Lists information about open files (similar to fstat(1))</screen> <para>FreeBSD 內建啟動 (Bootstrap) 工具可用來下載並安裝 <application>pkg</application> 及其操作手冊。這個工具是設計在 FreeBSD 版本 10.<replaceable>X</replaceable> 之後使用。</para> <note> - <para xml:lang="en">Not all FreeBSD versions and architectures - support this bootstrap process. The current list is at - <link xlink:href="https://pkg.freebsd.org/"/>. - For other cases, - <application>pkg</application> must instead be installed - from the Ports Collection or as a binary package.</para> + <para>不是所有 FreeBSD 版本及架構支援此啟動程序,目前支援的清單列於 <link xlink:href="https://pkg.freebsd.org/"/>,對不支援的版本,必須改透過 Port 套件集或者 Binary 套件來安裝 <application>pkg</application>。</para> </note> @@ -6412,9 +6263,9 @@ Proceed with deleting packages [y/N]: <userinput>y</userinput> </sect2> <sect2 xml:id="pkgng-autoremove"> - <title>自動移除不使用的相依</title> + <title>自動移除未使用的套件</title> - <para>移除一個套件可能會留下不再需要使用的相依套件。不再需要的相依套件可以使用以下指令自動偵測並移除:</para> + <para>移除一個套件可能會留下不再需要使用的相依套件。不再需要的相依套件是當初隨著其套件所安裝的套件 (枝葉套件),可以使用以下指令自動偵測並移除:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg autoremove</userinput> Packages to be autoremoved: @@ -6424,6 +6275,33 @@ The autoremoval will free 723 kB Proceed with autoremoval of packages [y/N]: <userinput>y</userinput> Deinstalling ca_root_nss-3.15.1_1... done</screen> + + <para>因為相依所安裝的套件稱作 <emphasis>自動 (Automatic)</emphasis> 套件,而非自動套件即套件被安裝的原因不是因為其他套件所相依,可以使用以下方式查詢:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg prime-list</userinput> +nginx +openvpn +sudo</screen> + + <para><command>pkg prime-list</command> 是一個別名指令,定義在 <filename>/usr/local/etc/pkg.conf</filename>,尚還有許多其他相關指令可以用來查詢系統的套件資料庫,例如,指令 <command>pkg prime-origins</command> 可用來取得上述清單的來源 Port 目錄:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg prime-origins</userinput> +www/nginx +security/openvpn +security/sudo</screen> + + <para>這份清單可以用來重新編譯所有安裝在系統中的套件,使用 <package> ports-mgmt/poudriere</package> 或 <package> ports-mgmt/synth</package> 這類的編譯工具。</para> + + <para>要將一個安裝好的套件註記成為 "自動" 可以用:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg set -A 1 devel/cmake</userinput></screen> + + <para>當套件為末端套件 (Leaf Package) 且被註記為 "自動",則會被 <command>pkg autoremove</command> 挑選出來。</para> + + <para>要註記一個安裝好的套件為 "<emphasis>非</emphasis>自動" 可以用:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg set -A 0 devel/cmake</userinput></screen> + </sect2> <sect2 xml:id="pkgng-backup"> @@ -6592,18 +6470,7 @@ Deinstalling ca_root_nss-3.15.1_1... done</screen> <para>下面我們會介紹如何使用 Port 套件集來安裝、移除軟體的基本用法。 <command>make</command> 可用的目標及環境變數詳細說明可參閱 <citerefentry><refentrytitle>ports</refentrytitle><manvolnum>7</manvolnum></citerefentry>。</para> <warning> - <para xml:lang="en">Before compiling any port, be sure to update the Ports - Collection as described in the previous section. Since - the installation of any third-party software can introduce - security vulnerabilities, it is recommended to first check - <link xlink:href="https://vuxml.freebsd.org/"/> - for known security issues related to the port. Alternately, - run <command>pkg audit -F</command> before installing a new - port. This command can be configured to automatically - perform a security audit and an update of the vulnerability - database during the daily security system check. For more - information, refer to <citerefentry><refentrytitle>pkg-audit</refentrytitle><manvolnum>8</manvolnum></citerefentry> and - <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> + <para>在編譯任何 Port 套件前,請先確認已經如前章節所敘述之方法更新 Port 套件集。安裝任何第三方軟體皆可能會導致安全性漏洞,建議在安裝前先閱讀 <link xlink:href="https://vuxml.freebsd.org/"/> 了解 Port 已知的安全性問題。或者在每次安裝新 Port 前執行 <command>pkg audit -F</command>。此指令可以設定在每日系統安全性檢查時自動完成安全性稽查以及更新漏洞資料庫。要取得更多資訊,請參考 <citerefentry><refentrytitle>pkg-audit</refentrytitle><manvolnum>8</manvolnum></citerefentry> 及 <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</manvolnum></citerefentry>。</para> </warning> <para>使用 Port 套件集會假設您擁有可正常連線的網路,同時也會需要超級使用者的權限。</para> @@ -6745,7 +6612,7 @@ The deinstallation will free 229 kB </important> <sect3 xml:id="ports-upgrading-tools"> - <title xml:lang="en">Tools to Upgrade and Manage Ports</title> + <title>升級與管理 Port 的工具</title> <indexterm><primary>ports</primary> <secondary>upgrading-tools</secondary></indexterm> @@ -7061,7 +6928,7 @@ ports-mgmt/pkg </listitem> <listitem> - <para>自行修正看看!<link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/porters-handbook/index.html">Porter's Handbook</link> 中含有 Port 基礎架構的詳細資訊,可提供資訊讓您可修正偶然損壞的 Port 或甚至您可以提交之自己的 Port。</para> + <para>自行修正看看!<link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/porters-handbook/index.html">Porter's Handbook</link> 中含有 Port 基礎架構的詳細資訊,可提供資訊讓您可修正偶然損壞的 Port 或甚至您可以提交之自己的 Port!</para> </listitem> <listitem> @@ -7107,7 +6974,7 @@ ports-mgmt/pkg <para>更多有關 <application>Xorg</application> 支援影像硬體資訊,請參考 <link xlink:href="http://www.x.org/">x.org</link> 網站。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -7131,7 +6998,7 @@ ports-mgmt/pkg </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -7319,37 +7186,28 @@ ports-mgmt/pkg <sect2 xml:id="x-config-video-cards"> <title>顯示卡</title> - <para xml:lang="en">Because of changes made in recent versions of FreeBSD, it - is now possible to use graphics drivers provided by the Ports - framework or as packages. As such, users can use one of the - following drivers available from - <package>graphics/drm-kmod</package>.</para> + <para>由於最近 FreeBSD 版本所做的變更,現在可以使用由 Port 或套件所提供的繪圖驅動程式,所以使用者可以使用下列來自 <package>graphics/drm-kmod</package> 的驅動程式。</para> <variablelist> <varlistentry xml:id="x-config-video-cards-ports"> - <term xml:lang="en">Intel KMS driver</term> - <term xml:lang="en">Radeon KMS driver</term> - <term xml:lang="en">AMD KMS driver</term> + <term>Intel KMS 驅動程式</term> + <term>Radeon KMS 驅動程式</term> + <term>AMD KMS 驅動程式</term> <listitem> - <para xml:lang="en">2D and 3D acceleration is supported on most - Intel KMS driver graphics cards provided by Intel.</para> + <para>大多數使用 Intel KMS 驅動程式的 Intel 顯示卡支援 2D 與 3D 加速。</para> - <para xml:lang="en">Driver name: <literal>i915kms</literal></para> + <para>驅動程式名稱:<literal>i915kms</literal></para> - <para xml:lang="en">2D and 3D acceleration is supported on most older - Radeon KMS driver graphics cards provided by AMD.</para> + <para>大多數使用 Radeon KMS 驅動程式的舊 AMD 顯示卡支援 2D 與 3D 加速。</para> - <para xml:lang="en">Driver name: <literal>radeonkms</literal></para> + <para>驅動程式名稱:<literal>radeonkms</literal></para> - <para xml:lang="en">2D and 3D acceleration is supported on most newer - AMD KMS driver graphics cards provided by AMD.</para> + <para>大多數使用 AMD KMS 驅動程式的新 AMD 顯示卡支援 2D 與 3D 加速。</para> - <para xml:lang="en">Driver name: <literal>amdgpu</literal></para> + <para>驅動程式名稱:<literal>amdgpu</literal></para> - <para xml:lang="en">For reference, please see <link xlink:href="https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units"/> - or <link xlink:href="https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units"/> - for a list of supported GPUs.</para> + <para>參考文獻請至 <link xlink:href="https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units"/> 或至 <link xlink:href="https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units"/> 取得支援的 GPU 清單。</para> </listitem> </varlistentry> @@ -7761,14 +7619,14 @@ EndSection</programlisting> <programlisting xml:lang="en">Load "freetype"</programlisting> - <para>現在要建立一個儲存 <trademark class="registered">TrueType</trademark> 字型的目錄 (例如,<filename>/usr/local/share/fonts/TrueType</filename>) 然後複製所有 <trademark class="registered">TrueType</trademark> 字型到這個目錄。要注意 <trademark class="registered">TrueType</trademark> 字型並無法直接取自 <trademark class="registered">Apple</trademark> <trademark class="registered">Mac</trademark>,<application>Xorg</application> 使用的字型必須為 <trademark class="registered">UNIX</trademark>/<trademark class="registered">MS-DOS</trademark>/<trademark class="registered">Windows</trademark> 的格式。檔案複製到讓目錄之後,使用 <application>mkfontdir</application> 來建立 <filename>fonts.dir</filename> 來讓 X 字型繪製程式知道安裝了新的檔案。<command>mkfontdir</command> 可用套件的方式安裝:</para> + <para>現在要建立一個儲存 <trademark class="registered">TrueType</trademark> 字型的目錄 (例如,<filename>/usr/local/share/fonts/TrueType</filename>) 然後複製所有 <trademark class="registered">TrueType</trademark> 字型到這個目錄。要注意 <trademark class="registered">TrueType</trademark> 字型並無法直接取自 <trademark class="registered">Apple</trademark> <trademark class="registered">Mac</trademark>,<application>Xorg</application> 使用的字型必須為 <trademark class="registered">UNIX</trademark>/<trademark class="registered">MS-DOS</trademark>/<trademark class="registered">Windows</trademark> 的格式。檔案複製到讓目錄之後,使用 <application>mkfontscale</application> 來建立 <filename>fonts.dir</filename> 來讓 X 字型繪製程式知道安裝了新的檔案。<command>mkfontscale</command> 可用套件的方式安裝:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install mkfontdir</userinput></screen> + <screen><prompt>#</prompt> <userinput>pkg install mkfontscale</userinput></screen> <para>然後在目錄中建立 X 字型檔的索引:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/local/share/fonts/TrueType</userinput> -<prompt>#</prompt> <userinput>mkfontdir</userinput></screen> +<prompt>#</prompt> <userinput>mkfontscale</userinput></screen> <para>接著加入 <trademark class="registered">TrueType</trademark> 目錄到字型路徑。這個動作與 <xref linkend="type1"/> 中所介紹的方式相同:</para> @@ -7941,14 +7799,7 @@ EndSection</programlisting> <para>更改關 (<literal>off</literal>) 為開 (<literal>on</literal>) 然後儲存編輯。在此項目中的 <literal>ttyv8</literal> 代表 <application>XDM</application> 會在第 9 個虛擬終端機執行。</para> - <para xml:lang="en">The <application>XDM</application> configuration directory - is located in <filename>/usr/local/etc/X11/xdm</filename>. - This directory contains several files used to change the - behavior and appearance of <application>XDM</application>, as - well as a few scripts and programs used to set up the desktop - when <application>XDM</application> is running. <xref linkend="xdm-config-files"/> summarizes the function of each - of these files. The exact syntax and usage of these files is - described in <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> + <para><application>XDM</application> 的設定目錄位於 <filename>/usr/local/etc/X11/xdm</filename>。此目錄中包含數個可用來更改 <application>XDM</application> 行為與外觀的檔案以及在 <application>XDM</application> 執行時用來設定桌面的一些 Script 及程式,<xref linkend="xdm-config-files"/> 摘要了每個檔案的功能。這些檔案正確的語法與用法在 <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> 有說明。</para> <table frame="none" pgwide="1" xml:id="xdm-config-files"> <title>XDM 設定檔</title> @@ -7979,10 +7830,7 @@ EndSection</programlisting> <row> <entry xml:lang="en"><filename>Xsession</filename></entry> - <entry xml:lang="en">Default session script for logins which is run by - <application>XDM</application> after a user has logged - in. This points to a customized session - script in <filename>~/.xsession</filename>.</entry> + <entry>預設的登入階段 Script,使用者登入之後由 <application>XDM</application> 執行。這會指向使用者自訂的登入階段 Script 於 <filename>~/.xsession</filename>。</entry> </row> <row> @@ -8014,20 +7862,13 @@ EndSection</programlisting> <para>預設只有同系統的使用者可以使用 <application>XDM</application> 登入。要開啟讓其他系統的使用者可連線到顯示伺服器,需編輯存取控制規則及開啟連線傾聽程式。</para> - <para xml:lang="en">To configure <application>XDM</application> to listen for - any remote connection, comment out the - <literal>DisplayManager.requestPort</literal> line in - <filename>/usr/local/etc/X11/xdm/xdm-config</filename> by - putting a <literal>!</literal> in front of it:</para> + <para>要設定 <application>XDM</application> 傾聽任何遠端的連線,在 <filename>/usr/local/etc/X11/xdm/xdm-config</filename> 中的 <literal>DisplayManager.requestPort</literal> 行前加上 <literal>!</literal> 來註解該行:</para> <screen xml:lang="en">! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0</screen> - <para xml:lang="en">Save the edits and restart <application>XDM</application>. - To restrict remote access, look at the example entries in - <filename>/usr/local/etc/X11/xdm/Xaccess</filename> and refer - to <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> for further information.</para> + <para>儲存編輯並重新啟動 <application>XDM</application>,要限制遠端存取,請看 <filename>/usr/local/etc/X11/xdm/Xaccess</filename> 中的範例項目,並參考 <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> 取得進一步資訊。</para> </sect2> </sect1> @@ -8064,7 +7905,7 @@ DisplayManager.requestPort: 0</screen> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/x11/gnome3</userinput> <prompt>#</prompt> <userinput>make install clean</userinput></screen> - <para><application>GNOME</application> 需要掛載 <filename>/proc</filename>。加入下行到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統。</para> + <para><application>GNOME</application> 需要掛載 <filename>/proc</filename>。加入下行到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統:</para> <programlisting xml:lang="en">proc /proc procfs rw 0 0</programlisting> @@ -8101,11 +7942,11 @@ hald_enable="YES"</programlisting> <para>要安裝 <application>KDE</application> 套件,請輸入:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install x11/kde4</userinput></screen> + <screen><prompt>#</prompt> <userinput>pkg install x11/kde5</userinput></screen> <para>或者要使用 <application>KDE</application> Port 編譯,可使用以下指令,採用 Port 方式安裝會有選單可以選擇要安裝的元件。<application>KDE</application> 是一個大型的應用程式,即使在較快的電腦上仍需要花費一段時間來編譯。</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/x11/kde4</userinput> + <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11/kde5</userinput> <prompt>#</prompt> <userinput>make install clean</userinput></screen> <indexterm xml:lang="en"> @@ -8122,17 +7963,21 @@ hald_enable="YES"</programlisting> <programlisting xml:lang="en">dbus_enable="YES" hald_enable="YES"</programlisting> - <para><application>KDE</application> 的安裝包含了 KDE Display Manager, <application>KDM</application>,要開啟這個顯示管理程式,需加入下行到 <filename>/etc/rc.conf</filename>:</para> + <para>自 KDE Plasma 5 開始,KDE Display Manager, <application>KDM</application> 便停止開發,可能的替代方案為 <application>SDDM</application>,要安裝該套件可輸入:</para> + + <screen><prompt>#</prompt> <userinput>pkg install x11/sddm</userinput></screen> - <programlisting xml:lang="en">kdm4_enable="YES"</programlisting> + <para>加入下行到 <filename>/etc/rc.conf</filename>:</para> + + <programlisting xml:lang="en">sddm_enable="YES"</programlisting> <para>第二種執行 <application>KDE</application> 的方法是在在指令列輸入 <command>startx</command>。要採用這個方式,需要加入下行到 <filename>~/.xinitrc</filename>:</para> - <programlisting xml:lang="en">exec /usr/local/bin/startkde</programlisting> + <programlisting xml:lang="en">exec ck-launch-session startkde</programlisting> <para>第三種啟動 <application>KDE</application> 的方式是透過 <application>XDM</application>,要使用這個方法需要建立一個可執行的 <filename>~/.xsession</filename> 如下:</para> - <screen xml:lang="en"><prompt>%</prompt> <userinput>echo "exec /usr/local/bin/startkde" > ~/.xsession</userinput></screen> + <screen xml:lang="en"><prompt>%</prompt> <userinput>echo "exec ck-launch-session startkde" > ~/.xsession</userinput></screen> <para>啟動 <application>KDE</application> 之後,請參考內建的說明系統來取得更多有關如何使用各種選單及應用程式的資訊。</para> </sect2> @@ -8151,22 +7996,11 @@ hald_enable="YES"</programlisting> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/x11-wm/xfce4</userinput> <prompt>#</prompt> <userinput>make install clean</userinput></screen> - <para xml:lang="en"><application>Xfce</application> uses - <application>D-Bus</application> for a message bus. This - application is automatically installed as dependency of - <application>Xfce</application>. Enable it in - <filename>/etc/rc.conf</filename> so it will be started when - the system boots:</para> + <para><application>Xfce</application> 使用了 <application>D-Bus</application> 作為 Message bus,由於是 <application>Xfce</application> 的相依,因此會自動安裝,但仍要在 <filename>/etc/rc.conf</filename> 中開啟該程式才會在系統開機時啟動:</para> <programlisting xml:lang="en">dbus_enable="YES"</programlisting> - <para xml:lang="en">Unlike <application>GNOME</application> or - <application>KDE</application>, - <application>Xfce</application> does not provide its own login - manager. In order to start <application>Xfce</application> - from the command line by typing <command>startx</command>, - first create <filename>~/.xinitrc</filename> with this - command:</para> + <para>不像 <application>GNOME</application> 或 <application>KDE</application>,<application>Xfce</application> 並沒有自己的登入管理程式,要能用 <command>startx</command> 指令列啟動 <application>Xfce</application> 之前需先加入其項目到 <filename>~/.xinitrc</filename>:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>echo ". /usr/local/etc/xdg/xfce4/xinitrc" > ~/.xinitrc</userinput></screen> @@ -8660,12 +8494,7 @@ EndSection</programlisting> <primary><application>Firefox</application></primary> </indexterm> - <para xml:lang="en"><application>Firefox</application> is an open source - browser that features a - standards-compliant HTML display engine, tabbed browsing, - popup blocking, extensions, improved security, and more. - <application>Firefox</application> is based on the - <application>Mozilla</application> codebase.</para> + <para><application>Firefox</application> 是一套開放源始碼的瀏覽器,它具備符合 HTML 標準的顯示引擎、頁籤瀏覽、彈出視窗封鎖、擴充套件、強化安全性及其他更多功能。<application>Firefox</application> 的基礎使用了 <application>Mozilla</application> 的程式庫。</para> <para>要安裝最新釋出版本的 <application>Firefox</application> 套件可輸入:</para> @@ -8696,18 +8525,14 @@ EndSection</programlisting> <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install opera</userinput></screen> - <para>或者,可安裝 Port 套件集中的版本,以下範例會編譯原生的版本。</para> + <para>或者,可安裝 Port 套件集中的版本,以下範例會編譯原生的版本:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/www/opera</userinput> <prompt>#</prompt> <userinput>make install clean</userinput></screen> <para>要安裝 <trademark class="registered">Linux</trademark> 則替換 <literal>opera</literal> 為 <literal>linux-opera</literal>。</para> - <para xml:lang="en">To install <trademark class="registered">Adobe</trademark> <trademark class="registered">Flash</trademark> plugin support, first compile - the <package role="port">www/linux-flashplayer</package> - port. Licensing restrictions prevent making a package - available. Then install <package role="port">www/opera-linuxplugins</package>. This example - compiles both applications from ports:</para> + <para>要安裝 <trademark class="registered">Adobe</trademark> <trademark class="registered">Flash</trademark> 附加元件,需先編譯 <package role="port">www/linux-flashplayer</package> Port,因受到授權條款限制無法事先編譯為 Binary 套件。然後再安裝 <package role="port">www/opera-linuxplugins</package>。以下範例示範如何編譯 Port 中的這兩個應用程式:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/www/linux-flashplayer</userinput> <prompt>#</prompt> <userinput>make install clean</userinput> @@ -8716,9 +8541,7 @@ EndSection</programlisting> <para>安裝完成後,開啟瀏覽器檢查附加元件是否存在,在網址列輸入 <literal>opera:plugins</literal> 並按下 <keycap>Enter</keycap> 鍵,便會有清單顯示目前可用的附加元件。</para> - <para xml:lang="en">To add the <application><trademark>Java</trademark></application> plugin, - follow install - <package role="port">java/icedtea-web</package>.</para> + <para>若要安裝 <application><trademark>Java</trademark></application> 附加元件請接著安裝 <package role="port">java/icedtea-web</package>。</para> </sect2> <sect2> @@ -8771,15 +8594,9 @@ EndSection</programlisting> <sect1 xml:id="desktop-productivity"> <title>辦工工具</title> - <para xml:lang="en">When it comes to productivity, users often look for an - office suite or an easy-to-use word processor. While some - <link linkend="x11-wm">desktop environments</link> like - <application>KDE</application> provide an office suite, there - is no default productivity package. Several office suites and - graphical word processors are available for FreeBSD, regardless - of the installed window manager.</para> + <para>當開始進行辦公,使用者通常會找好用的辦公軟體或是好上手的文書處理程式。 雖然有些 <link linkend="x11-wm">桌面環境</link> 像是 <application>KDE</application> 已經提供了辦公軟體,但並沒有預設的辦公軟體,FreeBSD 提供多套辦公軟體以及圖型化文書處理程式,不論您用那種的視窗管理程式都能使用。</para> - <para>本章節元範如何安裝以下熱門的辦工軟體以及說明該應用程式所需的資源、自 Port 編譯的時間或者是否有其他主要相依套件。</para> + <para>本章節元範如何安裝以下熱門的辦公軟體以及說明該應用程式所需的資源、自 Port 編譯的時間或者是否有其他主要相依套件。</para> <informaltable frame="none" pgwide="1"> <tgroup cols="4"> @@ -9282,7 +9099,7 @@ EndSection</programlisting> <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> + <para>FreeBSD 也能播放一般的視訊檔和 <acronym>DVD</acronym>。 FreeBSD Port 套件集中含有可編碼、轉換以及播放格種影像媒體的應用程式。</para> <para>本章會說明如何設定 FreeBSD 上的音效卡、影像播放器、電視卡及掃描器。同時會說明有那些應用程式可以使用這些裝置。</para> @@ -9318,15 +9135,19 @@ EndSection</programlisting> </listitem> <listitem> - <para>在 FreeBSD 安裝 MythTV 。</para> + <para>在 FreeBSD 安裝 MythTV</para> </listitem> <listitem> <para>設定影像掃描機。</para> </listitem> + + <listitem> + <para>設定藍芽耳機。</para> + </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem><para>知道如何安裝應用程式如 <xref linkend="ports"/> 所敘述。</para></listitem> @@ -9360,19 +9181,14 @@ EndSection</programlisting> <indexterm xml:lang="en"><primary>PCI</primary></indexterm> <indexterm xml:lang="en"><primary>sound cards</primary></indexterm> - <para xml:lang="en">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 the supported audio devices - list of the <link xlink:href="https://www.FreeBSD.org/releases/12.0R/hardware.html">Hardware - Notes</link> to see if the card is supported and which FreeBSD - driver it uses.</para> + <para>開始設定之前,必須先知道你的音效卡型號、晶片為何。 FreeBSD 支援許多種音效卡,請檢查支援的音效硬體表 <link xlink:href="https://www.FreeBSD.org/releases/12.0R/hardware.html">Hardware Notes</link>,以確認你的音效卡是否支援以及如何在 FreeBSD 上驅動。</para> <indexterm xml:lang="en"> <primary>kernel</primary> <secondary>configuration</secondary> </indexterm> - <para>要使用音效裝置,必須要載入正確的驅動程式才行。最簡單方式就是以 <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來載入核心模組。以下範例示範載入 Intel 規格內建的音效晶片驅動程式。</para> + <para>要使用音效裝置,必須要載入正確的驅動程式才行。最簡單方式就是以 <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來載入核心模組。以下範例示範載入 Intel 規格內建的音效晶片驅動程式:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>kldload snd_hda</userinput></screen> @@ -9509,6 +9325,46 @@ pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen> </note> </sect2> + <sect2 xml:id="bluetooth-headset"> + <title>設定藍芽音效裝置</title> + + <indexterm><primary>藍牙音訊</primary></indexterm> + + <para xml:lang="en">Connecting to a Bluetooth device is out of scope for this + chapter. Refer to <xref linkend="network-bluetooth"/> for more information.</para> + + <para xml:lang="en">To get Bluetooth sound sink working with FreeBSD's sound + system, users have to install + <package>audio/virtual_oss</package> first:</para> + + <screen><prompt>#</prompt> <userinput>pkg install virtual_oss</userinput></screen> + + <para xml:lang="en"><package>audio/virtual_oss</package> requires + <literal>cuse</literal> to be loaded into the kernel:</para> + + <screen><prompt>#</prompt> <userinput>kldload cuse</userinput></screen> + + <para xml:lang="en">To load <literal>cuse</literal> during system startup, run + this command:</para> + + <screen><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf cuse_load=yes</userinput></screen> + + <para xml:lang="en">To use headphones as a sound sink with + <package>audio/virtual_oss</package>, users need to create a + virtual device after connecting to a Bluetooth audio + device:</para> + + <screen><prompt>#</prompt> <userinput>virtual_oss -C 2 -c 2 -r 48000 -b 16 -s 768 -R /dev/null -P /dev/bluetooth/<replaceable>headphones</replaceable> -d dsp</userinput></screen> + + <note> + <para xml:lang="en"><replaceable>headphones</replaceable> in this example is + a hostname from <filename>/etc/bluetooth/hosts</filename>. + <literal>BT_ADDR</literal> could be used instead.</para> + </note> + + <para>請參考 <citerefentry vendor="ports"><refentrytitle>virtual_oss</refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得更多資訊。</para> + </sect2> + <sect2 xml:id="troubleshooting"> <title>疑難排解音效</title> @@ -10683,7 +10539,7 @@ Re-scan of bus 3 was successful</screen> <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install xsane sane-frontends</userinput></screen> - <para>或由 Port 套件集安裝:</para> + <para>或由 Port 套件集安裝</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/graphics/sane-frontends</userinput> <prompt>#</prompt> <userinput>make install clean</userinput> @@ -10853,7 +10709,7 @@ add path usb/0.2.0 mode 0666 group usb</programlisting> <para>核心 (Kernel) 是 FreeBSD 作業系統最重要的部份之一。它負責記憶體管理、安全控管、網路、硬碟存取等等。 儘管目前 FreeBSD 大多可以用動態設定, 但有時仍需要設定並編譯自訂的核心。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -10893,7 +10749,7 @@ add path usb/0.2.0 mode 0666 group usb</programlisting> <para>儘管如此,還是有一些功能因使用到靜態的核心設定須要編譯,因為這些功能與核心緊密結合,無法將做成可動態載入的模組。且部份強調安全性的環境會盡量避免載入與卸載核心模組,且只要將需要的功能靜態的編譯到核心當中。</para> - <para>編譯自訂的核心幾乎是每位進階的 BSD 使用者所必須經歷的過程。儘管這項工作可能比較耗時,但在 FreeBSD 的使用上會有許多好處。 跟必須支援大多數各式硬體的 <filename>GENERIC</filename> 核心相比的話, 自訂的核心可以更『體貼』,只支援『自己硬體』的部分就好。 自訂核心有許多項優點,如︰</para> + <para>編譯自訂的核心幾乎是每位進階的 BSD 使用者所必須經歷的過程。儘管這項工作可能比較耗時,但在 FreeBSD 的使用上會有許多好處。 跟必須支援大多數各式硬體的 <filename>GENERIC</filename> 核心相比的話, 自訂的核心可以更『體貼』,只支援『自己硬體』的部分就好。 自訂核心有許多項優點,如:</para> <itemizedlist> <listitem> @@ -10992,19 +10848,7 @@ ath_hal(4) - Atheros Hardware Access Layer (HAL)</screen> <para>若 <filename>/usr/src/</filename> 目錄不存在或者是空的,代表尚未安裝。原始碼可以使用 <application>Subversion</application> 並依據 <xref linkend="svn"/> 中的操作說明來安裝。</para> - <para xml:lang="en">Once source is installed, review the contents of - <filename>/usr/src/sys</filename>. This directory contains a - number of subdirectories, including those which represent the - following supported architectures: <filename>amd64</filename>, - <filename>i386</filename>, <filename>ia64</filename>, - <filename>powerpc</filename>, and - <filename>sparc64</filename>. Everything inside a particular - architecture's directory deals with that architecture only and - the rest of the code is machine independent code common to all - platforms. Each supported architecture has a - <filename>conf</filename> subdirectory which contains the - <filename>GENERIC</filename> kernel configuration file for that - architecture.</para> + <para>完成原始碼安裝完成後,需檢查 <filename>/usr/src/sys</filename> 內的檔案。該目錄內包含數個子目錄,這些子目錄代表著支援的硬體架構 (Architecture) 如下:<filename>amd64</filename>, <filename>i386</filename>, <filename>ia64</filename>, <filename>powerpc</filename> 以及 <filename>sparc64</filename>。在指定架構目錄中的內容只對該架構有效,其餘部份的程式碼與硬體架構無關,可通用所有平台。每個支援的硬體架構中會有 <filename>conf</filename> 子目錄,裡面含有供該架構使用的 <filename>GENERIC</filename> 核心設定檔。</para> <para>請不要直接對 <filename>GENERIC</filename> 檔案做編輯。複製該檔案為另一個名稱,並對複製出來的檔案做編輯,習慣上檔名會全部使用大寫字元。當維護多台安裝不同的硬體的 FreeBSD 機器時,將檔名後方加上機器的主機名稱 (Host name) 是個不錯的方法。以下範例使用 <literal>amd64</literal> 架構的 <filename>GENERIC</filename> 設定檔建立了一個複本名稱為 <filename>MYKERNEL</filename>:</para> @@ -11958,7 +11802,7 @@ device fwe # Ethernet over FireWire (non-standard!)</programl <para>使用好的核心開機之後,檢查設定檔並嘗試再編譯一次。<filename>/var/log/messages</filename> 是有用的資源,它在每次成功開機時會記錄核心訊息。同樣的,<citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></citerefentry> 也會印出自本次開機後的核心訊息。</para> <note> - <para>在排除核心問題時,請確定留有 <filename>GENERIC</filename> 的複本,或者其他已知可以運作的核心,並使用不同的名稱來確保下次編譯時不會被刪除,這很重要,因此每當新的核心被安裝之後,<filename>kernel.old</filename> 都會被最後安裝的核心覆寫,有可能會無法開機。盡快,透過重新命名將可運作的核心目錄移動到目前運作的核心目錄。</para> + <para>在排除核心問題時,請確定留有 <filename>GENERIC</filename> 的複本,或者其他已知可以運作的核心,並使用不同的名稱來確保下次編譯時不會被刪除,這很重要,因此每當新的核心被安裝之後,<filename>kernel.old</filename> 都會被最後安裝的核心覆寫,有可能會無法開機。盡快,透過重新命名將可運作的核心目錄移動到目前運作的核心目錄:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>mv /boot/kernel <replaceable>/boot/kernel.bad</replaceable></userinput> <prompt>#</prompt> <userinput>mv /boot/<replaceable>kernel.good</replaceable> /boot/kernel</userinput></screen> @@ -12026,7 +11870,7 @@ device fwe # Ethernet over FireWire (non-standard!)</programl <calloutlist> <callout arearefs="printing-qs-co-printcap"> - <para>此行是針對連接到 <acronym>USB</acronym> 埠的印表機:</para> + <para>此行是針對連接到 <acronym>USB</acronym> 埠的印表機。</para> <para>連接到並列或 <quote>印表器 (Printer)</quote> 埠的印表機要使用:</para> @@ -12196,19 +12040,19 @@ Starting lpd.</screen> <tbody> <row> <entry><acronym>PCL</acronym> 或 <acronym>PCL5</acronym></entry> - <entry xml:lang="en"><package role="port">print/ghostscript9</package></entry> + <entry xml:lang="en"><package role="port">print/ghostscript9-base</package></entry> <entry>單色使用 <literal>-sDEVICE=ljet4</literal>、彩色使用 <literal>-sDEVICE=cljet5</literal></entry> </row> <row> <entry><acronym>PCLXL</acronym> 或 <acronym>PCL6</acronym></entry> - <entry xml:lang="en"><package role="port">print/ghostscript9</package></entry> + <entry xml:lang="en"><package role="port">print/ghostscript9-base</package></entry> <entry>單色使用 <literal>-sDEVICE=pxlmono</literal>、彩色使用 <literal>-sDEVICE=pxlcolor</literal></entry> </row> <row> <entry xml:lang="en"><acronym>ESC/P2</acronym></entry> - <entry xml:lang="en"><package role="port">print/ghostscript9</package></entry> + <entry xml:lang="en"><package role="port">print/ghostscript9-base</package></entry> <entry xml:lang="en"><literal>-sDEVICE=uniprint</literal></entry> </row> @@ -12225,9 +12069,9 @@ Starting lpd.</screen> <sect2 xml:id="print-pdls-summary"> <title>摘要</title> - <para>要最簡單可以列印,可選擇支援 <trademark class="registered">PostScript</trademark> 的印表機。其次則為支援 <acronym>PCL</acronym> 的印表機,有了 <package role="port">print/ghostscript</package> 這些印表機也可像原生支援 <trademark class="registered">PostScript</trademark> 的印表機一般使用。有直接支援 <trademark class="registered">PostScript</trademark> 或 <acronym>PCL</acronym> 的印表機通常也會直接支援純 <acronym>ASCII</acronym> 文字檔案。</para> + <para>要可以列印最簡單的方式就是選擇支援 <trademark class="registered">PostScript</trademark> 的印表機,再來是支援 <acronym>PCL</acronym> 的印表機,有了 <package role="port">print/ghostscript9-base</package> 這些印表機也可像原生支援 <trademark class="registered">PostScript</trademark> 的印表機一般使用。有直接支援 <trademark class="registered">PostScript</trademark> 或 <acronym>PCL</acronym> 的印表機通常也會直接支援純 <acronym>ASCII</acronym> 文字檔案。</para> - <para>行列式印表機如同典型的噴墨式印表機通常不支援 <trademark class="registered">PostScript</trademark> 或 <acronym>PCL</acronym>,這種印表機通常可以列印純 <acronym>ASCII</acronym> 文字檔案。<package role="port">print/ghostscript</package> 支援部份這種印表機使用的 <acronym>PDL</acronym>,不過要在這種印表機上列印完全以圖型為基礎的頁面通常會非常緩慢,由於需要傳送大量的資料並列印。</para> + <para>行列式印表機如同典型的噴墨式印表機通常不支援 <trademark class="registered">PostScript</trademark> 或 <acronym>PCL</acronym>,這種印表機通常可以列印純 <acronym>ASCII</acronym> 文字檔案。<package role="port">print/ghostscript9-base</package> 支援部份這種印表機使用的 <acronym>PDL</acronym>,不過要在這種印表機上列印完全以圖型為基礎的頁面通常會非常緩慢,由於需要傳送大量的資料並列印。</para> <para>以主機為基礎的印表機通常較難設定,有些會因為用了專用的 <acronym>PDL</acronym> 而無法使用,盡可能避免使用這類的印表機。</para> @@ -12513,9 +12357,7 @@ CR=$'\r' <trademark class="registered">PostScript</trademark> files to <acronym>PCL</acronym> before sending them to the printer.</para> - <para xml:lang="en">Install the Ghostscript <trademark class="registered">PostScript</trademark> interpreter, - <package role="port">print/ghostscript9</package>, from the - Ports Collection.</para> + <para>由 Port 套件集安裝 Ghostscript <trademark class="registered">PostScript</trademark> 直譯器,<package role="port">print/ghostscript9-base</package>。</para> <para xml:lang="en">Create <filename>/usr/local/libexec/ps2pcl</filename> with these contents:</para> @@ -12719,7 +12561,7 @@ cfA005smithy dequeued</screen> instead of a specific printer name, and the command will be applied to all printers. Normal users can view status with <citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Only - <systemitem> class="username">root</systemitem> can use + <systemitem class="username">root</systemitem> can use commands which modify printer status.</para> <para xml:lang="en">Show the status of all printers:</para> @@ -12967,7 +12809,7 @@ lp: <para>FreeBSD 10.3 後支援 64 位元的 <trademark class="registered">Linux</trademark> Binary 相容性。</para> </note> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -12987,7 +12829,7 @@ lp: </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -13031,10 +12873,10 @@ lp: <indexterm><primary>核心選項</primary> <secondary>COMPAT_LINUX</secondary></indexterm> - <para xml:lang="en">Since the Linux binary compatibility layer has gained support - for running both 32- and 64-bit Linux binaries (on 64-bit x86 hosts), - it is no longer possible to link the emulation functionality statically - into a custom kernel.</para> + <para xml:lang="en">Since the <trademark class="registered">Linux</trademark> binary compatibility layer has gained + support for running both 32- and 64-bit <trademark class="registered">Linux</trademark> binaries (on + 64-bit x86 hosts), it is no longer possible to link the + emulation functionality statically into a custom kernel.</para> <sect2 xml:id="linuxemu-libs-manually"> <title>手動安裝其他程式庫</title> @@ -13500,8 +13342,7 @@ FEATURE Maple maplelmg 2000.0831 permanent 1 XXXXXXXXXXXX \ </step> <step> - <para> - When asked for the <application>&matlab;</application> + <para>When asked for the <application>&matlab;</application> root directory, type: <userinput>/compat/linux/usr/local/matlab</userinput>.</para> @@ -14036,8 +13877,8 @@ export PATH</programlisting> FreeBSD, system call entry points.</para> <para xml:lang="en"><trademark class="registered">Linux</trademark> mode dynamically <emphasis>reroots</emphasis> - lookups. This is, in effect, equivalent to the - <option>union</option> option to file system mounts. First, an + lookups. This is, in effect, equivalent to + <option>union</option> to file system mounts. First, an attempt is made to lookup the file in <filename>/compat/linux/<replaceable>original-path</replaceable></filename>. If that fails, the lookup is done in @@ -14139,7 +13980,7 @@ export PATH</programlisting> <para>在 FreeBSD 使用過程中,相當重要的環節之一就是如何正確設定系統。 本章著重於介紹 FreeBSD 的設定流程,包括一些可以調整 FreeBSD 效能的參數設定。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -14167,7 +14008,7 @@ export PATH</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -14707,7 +14548,7 @@ lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 <para>加入這行之後,接著依據 <xref linkend="config-network-testing"/> 指示操作。</para> <note> - <para>若網路在安裝時已設定,可能會已經有 <acronym>NIC</acronym> 的設定項目。在加入任何設定前請再次檢查 <filename>/etc/rc.conf</filename>。 </para> + <para>若網路在安裝時已設定,可能會已經有 <acronym>NIC</acronym> 的設定項目。在加入任何設定前請再次檢查 <filename>/etc/rc.conf</filename>。</para> </note> <para>在這個例中,沒有 <acronym>DHCP</acronym> 伺服器,必須手動設定 <acronym>NIC</acronym>。提每一個在系統上的 <acronym>NIC</acronym> 加入一行設定,如此例:</para> @@ -17219,9 +17060,7 @@ console none unknown off <replaceable>insecure</repla <para>系統開機之後,啟動畫面預設會作為螢幕保護程式,一段時間未使用便會顯示啟動畫面,並且會循環更改影像的亮度,從明亮到非常暗,然後再繼續循環。啟動螢幕保護程式的設定可在 <filename>/etc/rc.conf</filename> 增加一行 <literal>saver=</literal> 來更改。有許多內建的螢幕保護程式可用,在 <citerefentry><refentrytitle>splash</refentrytitle><manvolnum>4</manvolnum></citerefentry> 中有說明。<literal>saver=</literal> 的選項只會套用至虛擬 Console,對圖型化顯示管理程式並不會有任何影響。</para> - <para>範例啟動畫面檔可到位於 <link xlink:href="http://artwork.freebsdgr.org/node/3/">http://artwork.freebsdgr.org</link> 的圖庫下載。安裝 <package>sysutils/bsd-splash-changer</package> 套件或 Port,可以在開機時隨機顯示圖片集中的啟動畫面。</para> - - <para>啟動畫面功能支援 256 色的點陣圖 (<filename>.bmp</filename>)、ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>) 或 TheDraw (<filename>.bin</filename>) 格式。<filename>.bmp</filename>, <filename>.pcx</filename> 或 <filename>.bin</filename> 圖片必須放在根分割區,例如於 <filename>/boot</filename>。啟動圖片檔必須使用 320x200 像素或更低的解析度以能夠在標準 <acronym>VGA</acronym> 介面卡上運作,要在預設 256 色、 320x200 像素或更低的解析度設定開機啟動圖片,可加入下行到 <filename>/boot/loader.conf</filename>,並替換 <replaceable>splash.bmp</replaceable> 為實際要使用的點陣圖檔:</para> + <para>透過安裝 <package>sysutils/bsd-splash-changer</package> 套件或 Port,可在開機時顯示隨機挑選的啟動畫面。啟動畫面功能支援 256 色的點陣圖 (<filename>.bmp</filename>)、ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>) 或 TheDraw (<filename>.bin</filename>) 格式。<filename>.bmp</filename>, <filename>.pcx</filename> 或 <filename>.bin</filename> 圖片必須放在根分割區,例如於 <filename>/boot</filename>。啟動圖片檔必須使用 320x200 像素或更低的解析度以能夠在標準 <acronym>VGA</acronym> 介面卡上運作,要在預設 256 色、320x200 像素或更低的解析度設定開機啟動圖片,可加入下行到 <filename>/boot/loader.conf</filename>,並替換 <replaceable>splash.bmp</replaceable> 為實際要使用的點陣圖檔:</para> <programlisting xml:lang="en">splash_bmp_load="YES" bitmap_load="YES" @@ -17256,7 +17095,7 @@ bitmap_name="/boot/<replaceable>splash.bin</replaceable>"</programlisting> <varlistentry><term xml:lang="en"><literal>loader_logo="beastie"</literal></term> <listitem> - <para>這個選項會替換預設與上色的小惡魔圖示一起顯示於開機選項選單右側的 <quote>FreeBSD</quote> 文字,</para> + <para>這個選項會替換預設與上色的小惡魔圖示一起顯示於開機選項選單右側的 <quote>FreeBSD</quote> 文字。</para> </listitem> </varlistentry> </variablelist> @@ -17382,7 +17221,7 @@ bitmap_name="/boot/<replaceable>splash.bin</replaceable>"</programlisting> <para>在此章會討論幾個基本原理及技術。FreeBSD 系統的安全性有許多層面,且有許多第三方工具可以用來增加安全性。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -17410,7 +17249,7 @@ bitmap_name="/boot/<replaceable>splash.bin</replaceable>"</programlisting> </listitem> <listitem> - <para>如何在 FreeBSD 設定並使用 <application>OpenSSH</application></para> + <para>如何在 FreeBSD 設定並使用 <application>OpenSSH</application>。</para> </listitem> <listitem> @@ -17434,7 +17273,7 @@ bitmap_name="/boot/<replaceable>splash.bin</replaceable>"</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -17467,11 +17306,11 @@ bitmap_name="/boot/<replaceable>splash.bin</replaceable>"</programlisting> <para>要確保一個系統的安全最好的起點便是做好帳號的稽查,確保 <systemitem class="username">root</systemitem> 使用了一個強而有力的密碼,並這個密碼未在其他地方使用過,然後關閉任何無須登入存取權的帳號。</para> - <para>要關閉帳號的存取權登入有兩種方法,第一種是鎖定帳號,以下範例會鎖定 <systemitem class="username">toor</systemitem> 帳號:</para> + <para>要防止登入存取帳號有兩種方法,第一種是鎖定帳號,以下範例會鎖定 <systemitem class="username">toor</systemitem> 帳號:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pw lock <replaceable>toor</replaceable></userinput></screen> - <para>第二個關閉登入存取權的方式是更改 Shell 為 <filename>/sbin/nologin</filename>,只有超級使用者可以更改其他使用者的 Shell:</para> + <para>第二種防止登入存取的方式是狀 Shell 更改為 <filename>/usr/sbin/nologin</filename>,只有超級使用者可以更改其他使用者的 Shell:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>chsh -s /usr/sbin/nologin <replaceable>toor</replaceable></userinput></screen> @@ -18626,7 +18465,7 @@ kadmind5_server_enable="YES"</programlisting> </listitem> <listitem> - <para xml:lang="en"><link xlink:href="http://www.ietf.org/rfc/rfc4120.txt?number=4120">RFC + <para xml:lang="en"><link xlink:href="https://www.ietf.org/rfc/rfc4120.txt">RFC 4120, The <application>Kerberos</application> Network Authentication Service (V5)</link></para> </listitem> @@ -18638,7 +18477,7 @@ kadmind5_server_enable="YES"</programlisting> </listitem> <listitem> - <para xml:lang="en"><link xlink:href="http://www.pdc.kth.se/heimdal/">Heimdal + <para xml:lang="en"><link xlink:href="https://www.h5l.org/">Heimdal <application>Kerberos</application> home page</link></para> </listitem> @@ -18669,38 +18508,27 @@ kadmind5_server_enable="YES"</programlisting> services.</para> <para xml:lang="en">The version of <application>OpenSSL</application> included - in FreeBSD supports the Secure Sockets Layer v2/v3 (SSLv2/SSLv3) - and Transport Layer Security v1 (TLSv1) network security + in FreeBSD supports the Secure Sockets Layer 3.0 (SSLv3) + and Transport Layer Security 1.0/1.1/1.2 (TLSv1/TLSv1.1/TLSv1.2) + network security protocols and can be used as a general cryptographic - library.</para> + library. In FreeBSD 12.0-RELEASE and above, OpenSSL also supports + Transport Layer Security 1.3 (TLSv1.3).</para> <para xml:lang="en"><application>OpenSSL</application> is often used to encrypt authentication of mail clients and to secure web based transactions such as credit card payments. Some ports, such as <package>www/apache24</package> and - <package>databases/postgresql91-server</package>, include a + <package>databases/postgresql11-server</package>, include a compile option for building with - <application>OpenSSL</application>.</para> - - <para xml:lang="en">FreeBSD provides two versions of - <application>OpenSSL</application>: one in the base system and - one in the Ports Collection. Users can choose which version to - use by default for other ports using the following knobs:</para> + <application>OpenSSL</application>. If selected, the port will + add support using <application>OpenSSL</application> from the + base system. To instead have the port compile against + <application>OpenSSL</application> from the + <package>security/openssl</package> port, add the following to + <filename>/etc/make.conf</filename>:</para> - <itemizedlist> - <listitem> - <para xml:lang="en">WITH_OPENSSL_PORT: when set, the port will use - <application>OpenSSL</application> from the - <package>security/openssl</package> port, even if the - version in the base system is up to date or newer.</para> - </listitem> - - <listitem> - <para xml:lang="en">WITH_OPENSSL_BASE: when set, the port will compile - against <application>OpenSSL</application> provided by the - base system.</para> - </listitem> - </itemizedlist> + <programlisting xml:lang="en">DEFAULT_VERSIONS+= ssl=openssl</programlisting> <para xml:lang="en">Another common use of <application>OpenSSL</application> is to provide certificates for use with software applications. @@ -19616,8 +19444,7 @@ user@unfirewalled-system.example.org's password: <userinput>*******</userinput>< <programlisting xml:lang="en">AllowUsers root@192.168.1.32 admin</programlisting> - <para>在對 <filename>/etc/ssh/sshd_config</filename> 做完變更後,執行以下指令告訴 <application>sshd</application> 重新載入設定檔: - </para> + <para>在對 <filename>/etc/ssh/sshd_config</filename> 做完變更後,執行以下指令告訴 <application>sshd</application> 重新載入設定檔:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service sshd reload</userinput></screen> @@ -20213,10 +20040,20 @@ UWWemqWuz3lAZuORQ9KX <para xml:lang="en">Before using process accounting, it must be enabled using the following commands:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>touch /var/account/acct</userinput> -<prompt>#</prompt> <userinput>chmod 600 /var/account/acct</userinput> -<prompt>#</prompt> <userinput>accton /var/account/acct</userinput> -<prompt>#</prompt> <userinput>sysrc accounting_enable=yes</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc accounting_enable=yes</userinput> +<prompt>#</prompt> <userinput>service accounting start</userinput></screen> + + <para xml:lang="en">The accounting information is stored in files located in + <filename>/var/account</filename>, which is automatically created, + if necessary, the first time the accounting service starts. + These files contain sensitive information, including all the + commands issued by all users. Write access to the files is + limited to <systemitem class="username">root</systemitem>, + and read access is limited to <systemitem class="username">root</systemitem> and members of the + <systemitem class="groupname">wheel</systemitem> group. + To also prevent members of <systemitem class="groupname">wheel</systemitem> from reading the files, + change the mode of the <filename>/var/account</filename> + directory to allow access only by <systemitem class="username">root</systemitem>.</para> <para xml:lang="en">Once enabled, accounting will begin to track information such as <acronym>CPU</acronym> statistics and executed @@ -20661,7 +20498,7 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> <para>這個目錄會在記錄功能設定之後自動建立,最好讓系統以預設的權限來建立目錄比較保險,除此之外,這個設定項目也會記錄使用 <application>sudoreplay</application> 指令的管理者,要更改設定請閱讀並取消在 <filename>sudoers</filename> 中記錄選項的註解。</para> </tip> - <para>一旦這個設定加入至 <filename>sudoers</filename> 檔案之後,所有的使用者設定項目便可加上記錄存取動作的項目,在 <replaceable>webteam</replaceable> 項目加入額外設定之後的範例如下: </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> @@ -20733,7 +20570,7 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> <para>本章將提供 FreeBSD Jail 術語及管理指令的概述,Jail 對系統管理者及進階的使用者來二者來說皆是強大的工具。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -20813,17 +20650,26 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> <para>當使用安裝 ISO 時,可依 <citerefentry><refentrytitle>mdconfig</refentrytitle><manvolnum>8</manvolnum></citerefentry> 中的說明掛載安裝媒體:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt</userinput> +<prompt>#</prompt> <userinput>cd /mnt/usr/freebsd-dist/</userinput></screen> + + <para>或者自鏡像站下載 Tarball 壓縮檔:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>sh</userinput> +<prompt>#</prompt> <userinput>export DESTRELEASE=<replaceable>12.0-RELEASE</replaceable></userinput> +<prompt>#</prompt> <userinput>export DESTARCH=<replaceable>`uname -m`</replaceable></userinput> +<prompt>#</prompt> <userinput>export SOURCEURL=<replaceable>http://ftp.freebsd.org/pub/</replaceable>FreeBSD/releases/$DESTARCH/$DESTRELEASE/</userinput> +<prompt>#</prompt> <userinput>for set in base ports; do fetch $SOURCEURL/$set.txz ; done</userinput></screen> <para>從安裝媒體上的 Tarball 中取出 Binary 並放到宣告的位置,至少需要取出 Base set 的部份,若需要也可完整安裝。</para> <para>只安裝基礎系統 (Base system):</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>tar -xf /mnt/usr/freebsd-dist/base.txz -C $DESTDIR</userinput></screen> + <screen><prompt>#</prompt> <userinput>tar -xf base.txz -C $DESTDIR</userinput></screen> <para>安裝全部不含核心:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>for set in base ports; do tar -xf /mnt/usr/freebsd-dist/$set.txz -C $DESTDIR ; done</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>for set in base ports; do tar -xf $set.txz -C $DESTDIR ; done</userinput></screen> <para>依 <citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></citerefentry> 操作手冊說明的程序建置 Jail:</para> @@ -20857,14 +20703,13 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> </callout> </calloutlist> - <para>Jail 安裝完成之後,便可使用 <citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具來啟動。<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具需要四個必要參數,在 <xref linkend="jails-synopsis"/> 有說明。其他參數也可能需要指定,例如要使用特定使用者的身份來執行要 Jail 的程序。<option><replaceable>command</replaceable></option> 參數依 Jail 的類型所需而定,對一個 <emphasis>虛擬系統</emphasis> 來說,<filename>/etc/rc</filename> 是不錯的選擇,因為該檔案可以模仿真實 FreeBSD 的啟動順序。對於 <emphasis>服務的</emphasis> Jail 來說,則看在 Jail 中要執行的服務或應用程式來決定。</para> + <para>Jail 安裝完成之後,便可使用 <citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具來啟動。<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具需要四個必要參數,在 <xref linkend="jails-synopsis"/> 有說明。其他參數也可能需要指定,例如要使用特定使用者的身份來執行要 Jail 的程序。<option><replaceable>command</replaceable></option> 參數依 Jail 的類型所需而定,對一個 <emphasis>虛擬系統</emphasis> 來說,<filename>/etc/rc</filename> 是不錯的選擇,因為該檔案可以模仿真實 FreeBSD 的啟動順序。對於 <emphasis>服務型</emphasis> 的 Jail 來說,則看在 Jail 中要執行的服務或應用程式來決定。</para> <para>Jail 通常會需要隨著開機執行,使用 FreeBSD <filename>rc</filename> 機制可讓以簡單的達成這件事。</para> <procedure> <step> - <para xml:lang="en">Configure jail parameters in - <filename>jail.conf</filename>:</para> + <para>在 <filename>jail.conf</filename> 中設定 jail 參數:</para> <programlisting xml:lang="en"><replaceable>www</replaceable> { host.hostname = <replaceable>www.example.org</replaceable>; # Hostname ip4.addr = <replaceable>192.168.0.10</replaceable>; # IP address of the jail @@ -20875,29 +20720,19 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> exec.stop = "/bin/sh /etc/rc.shutdown"; # Stop command }</programlisting> - <para xml:lang="en">Configure jails to start at boot time in - <filename>rc.conf</filename>:</para> + <para>在 <filename>rc.conf</filename> 中設定開機時啟動 Jail:</para> <programlisting xml:lang="en">jail_enable="YES" # Set to NO to disable starting of any jails</programlisting> - <para xml:lang="en">The default startup of jails configured in - <citerefentry><refentrytitle>jail.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, will run the <filename>/etc/rc</filename> - script of the jail, which assumes the jail is a complete - virtual system. For service jails, the default startup - command of the jail should be changed, by setting the - <varname>exec.start</varname> - option appropriately.</para> + <para>預設要啟動的 Jail 可在 <citerefentry><refentrytitle>jail.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 設定,會把 Jail 當作是一個完全虛擬的系統,然後執行 Jail 中的 <filename>/etc/rc</filename> Script。針對服務型的 Jail 則需透過設定 <varname>exec.start</varname> 選項來適當更改 Jail 的預設啟動指令。</para> <note> - <para xml:lang="en">For a full list of available options, please see the - <citerefentry><refentrytitle>jail.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> manual page.</para> + <para>要取得完整可用選項的清單,請參考 <citerefentry><refentrytitle>jail.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>操作手冊。</para> </note> </step> </procedure> - <para xml:lang="en"><citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</manvolnum></citerefentry> can be used to start or stop a jail by hand, - if an entry for it exists in - <filename>jail.conf</filename>:</para> + <para>若 Jail 項目已經在 <filename>jail.conf</filename> 中設定好,可以手動用 <citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來啟動或停止某個 Jail 項目:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service jail start <replaceable>www</replaceable></userinput> <prompt>#</prompt> <userinput>service jail stop <replaceable>www</replaceable></userinput></screen> @@ -22196,7 +22031,7 @@ Starting named. and the set of pluggable security policy modules FreeBSD provides for enabling various security mechanisms.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -22232,7 +22067,7 @@ Starting named. </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -23961,7 +23796,7 @@ requirements. --> of event auditing. It explains audit policies and provides an example audit configuration.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -23979,7 +23814,7 @@ requirements. --> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -24674,7 +24509,7 @@ fi</programlisting> <para>本章涵蓋如何在 FreeBSD 下使用磁碟及儲存媒體,這包含 <acronym>SCSI</acronym> 及 <acronym>IDE</acronym> 磁碟、<acronym>CD</acronym> 及 <acronym>DVD</acronym> 媒體、記憶體磁碟及 <acronym>USB</acronym> 儲存裝置。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -24718,7 +24553,7 @@ fi</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -24848,20 +24683,13 @@ ada0 recovered</screen> 79691810 4194236 3 freebsd-swap (2G) 83886046 18513921 - free - (8.8G)</screen> - <para xml:lang="en">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 one that needs to be resized. Swap - partitions only contain temporary data, so it can safely be - unmounted, deleted, and then recreate the third partition after - resizing the second partition.</para> + <para>分割區只能在連續的未使用空間上重設大小。在這個例子中,磁碟上最後的分割區為交換 (Swap) 分割區,而第二個分割區才是需要重設大小的分割區。由於交換分割區中只會有暫存的資料,所以此時可以安全的卸載、刪除,然後在重設第二個分割區大小之後再重建最後一個分割區。</para> - <para xml:lang="en">Disable the swap partition:</para> + <para>停用交換分割區:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>swapoff <replaceable>/dev/ada0p3</replaceable></userinput></screen> - <para xml:lang="en">Delete the third partition, specified by the - <option>-i</option> flag, from the disk - <replaceable>ada0</replaceable>.</para> + <para>刪除 <replaceable>ada0</replaceable> 磁碟上的第三個分割區,可使用 <option>-i</option> 參數來指定分割區。</para> <screen xml:lang="en"> <prompt>#</prompt> <userinput>gpart delete -i <replaceable>3</replaceable> <replaceable>ada0</replaceable></userinput> @@ -24878,13 +24706,7 @@ ada0p3 deleted <screen xml:lang="en"><prompt>#</prompt> <userinput>sysctl kern.geom.debugflags=16</userinput></screen> </warning> - <para xml:lang="en">Resize the partition, leaving room to recreate a swap - partition of the desired size. The partition to resize is - specified with <option>-i</option>, and the new desired size - with <option>-s</option>. Optionally, alignment of the - partition is controlled with <option>-a</option>. This only - modifies the size of the partition. The file system in the - partition will be expanded in a separate step.</para> + <para>重設分割區大小並保留要用來重建交換分割區的空間,要重設大小的分割區可以用 <option>-i</option> 來指定,而要重設的大小可用 <option>-s</option> 來指定,若要對齊分割區可以使用 <option>-a</option>。這個動作只會修改分割區大小,分割區中的檔案系統需在另一個步驟擴增。</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>gpart resize -i <replaceable>2</replaceable> -s <replaceable>47G</replaceable> -a 4k <replaceable>ada0</replaceable></userinput> ada0p2 resized @@ -24894,9 +24716,7 @@ ada0p2 resized 162 98566144 2 freebsd-ufs (47G) 98566306 3833661 - free - (1.8G)</screen> - <para xml:lang="en">Recreate the swap partition and activate it. If no size - is specified with <option>-s</option>, all remaining space is - used:</para> + <para>重建交換分割區並且啟動,若不使用 <option>-s</option> 指定大小則會使用所有剩餘的空間:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>gpart add -t freebsd-swap -a 4k <replaceable>ada0</replaceable></userinput> ada0p3 added @@ -24917,11 +24737,9 @@ super-block backups (for fsck -b #) at: 80781312, 82063552, 83345792, 84628032, 85910272, 87192512, 88474752, 89756992, 91039232, 92321472, 93603712, 94885952, 96168192, 97450432</screen> - <para xml:lang="en">If the file system is <acronym>ZFS</acronym>, the resize is - triggered by running the <option>online</option> subcommand with - <option>-e</option>:</para> + <para>若檔案系統使用 <acronym>ZFS</acronym>,重設大小需執行 <option>online</option> 子指令並使用 <option>-e</option> 來觸發動作:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>zpool online -e <replaceable>zroot</replaceable> <replaceable>/dev/ada0p2</replaceable></userinput></screen> + <screen><prompt>#</prompt> <userinput>zpool online -e <replaceable>zroot</replaceable> <replaceable>/dev/ada0p2</replaceable></userinput></screen> <para>現在分割區與檔案系統已透過重設大小來使用新增加的磁碟空間。</para> </sect1> @@ -26275,7 +26093,7 @@ scsibus1: <para>在安全的地方保存這份列印結果與安裝媒體的複本,在緊急還原時可能會需要,接著開機進入安裝媒體並選擇 <literal>Live CD</literal> 以存取救援 Shell (Rescue shell),這個救援模式可以用來檢視目前系統的狀態,若有需要,可重新格式化磁碟然後自備份還原資料。</para> <note> - <para>FreeBSD/i386 10.4-RELEASE 的安裝媒體未含救援 Shell,針對該版本,可改自 <uri xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/10.4/FreeBSD-10.4-RELEASE-i386-livefs.iso">ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/10.4/FreeBSD-10.4-RELEASE-i386-livefs.iso</uri> 下載 Livefs <acronym>CD</acronym> 映像檔並燒錄。</para> + <para>FreeBSD/i386 11.2-RELEASE 的安裝媒體未內含救援 Shell,針對該版本,可改自 <uri xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/11.2/FreeBSD-11.2-RELEASE-i386-livefs.iso">ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/11.2/FreeBSD-11.2-RELEASE-i386-livefs.iso</uri> 下載 Livefs <acronym>CD</acronym> 映像檔並燒錄。</para> </note> <para>然後,測試救援 Shell 下的備份。記錄下整個程序,將這份記錄隨媒體、列印結果、備份檔一併保存,這份記錄可以避免在緊張壓力下做緊急還原時因不慎造成備份的毀壞。</para> @@ -26395,7 +26213,7 @@ Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md1 4718 4 4338 0% /mnt</screen> <para xml:lang="en">To create a new file-backed memory disk, first allocate an - area of disk to use. This example creates an empty 5K file + area of disk to use. This example creates an empty 5MB file named <filename>newimage</filename>:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>newimage</replaceable> bs=1k count=<replaceable>5</replaceable>k</userinput> @@ -26409,7 +26227,7 @@ Filesystem 1K-blocks Used Avail Capacity Mounted on <screen xml:lang="en"><prompt>#</prompt> <userinput>mdconfig -f <replaceable>newimage</replaceable> -u <replaceable>0</replaceable></userinput> <prompt>#</prompt> <userinput>bsdlabel -w md<replaceable>0</replaceable> auto</userinput> -<prompt>#</prompt> <userinput>newfs md<replaceable>0</replaceable>a</userinput> +<prompt>#</prompt> <userinput>newfs -U md<replaceable>0</replaceable>a</userinput> /dev/md0a: 5.0MB (10224 sectors) block size 16384, fragment size 2048 using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes. super-block backups (for fsck -b #) at: @@ -27955,7 +27773,7 @@ esac</programlisting> <acronym>GEOM</acronym>-supported <acronym>RAID</acronym> classifications are discussed.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -27980,7 +27798,7 @@ esac</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -30352,7 +30170,7 @@ SHA1 (/healer) = 2753eff56d77d9a536ece6694bf0a82740344d1f</screen> <para>寫入隨機的資料到鏡像的第一個磁碟來模擬資料損毀的情況。要避免 <acronym>ZFS</acronym> 偵測到錯誤時馬上做修復,接著要將儲存池匯出,待模擬資料損毀之後再匯入。</para> <warning> - <para>這是一個危險的操作,會破壞重要的資料。在這裡使用僅為了示範用,不應在儲存池正常運作時嘗試使用,也不應將這個故意損壞資料的例子用在任何其他的檔案系統上,所以請勿使用任何不屬於該儲存池的其他磁碟裝置名稱並確定在執行指令前已對儲存池做正確的備份。</para> + <para>這是一個危險的操作,會破壞重要的資料。在這裡使用僅為了示範用,不應在儲存池正常運作時嘗試使用,也不應將這個故意損壞資料的例子用在任何其他的檔案系統上,所以請勿使用任何不屬於該儲存池的其他磁碟裝置名稱並確定在執行指令前已對儲存池做正確的備份!</para> </warning> <screen xml:lang="en"><prompt>#</prompt> <userinput>zpool export <replaceable>healer</replaceable></userinput> @@ -30598,26 +30416,17 @@ Enabled the following features on 'mypool': filesystem_limits</screen> <warning> - <para xml:lang="en">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 that - contains the boot code. There are two types of bootcode - available, depending on way the system boots: - <acronym>GPT</acronym> (the most common option) and - <acronym>EFI</acronym> (for more modern systems).</para> + <para>在使用儲存池來開機的系統上的 Boot code 也必須一併更新來支援新的儲存池版本,可在含有 Boot code 的分割區使用 <command>gpart bootcode</command> 來更新。目前有兩種 Boot code 可使用,需視系統開機的方式使用:<acronym>GPT</acronym> (最常用的選項) 以及 <acronym>EFI</acronym> (較新的系統)。</para> - <para xml:lang="en">For legacy boot using GPT, use the following - command:</para> + <para>針對傳統使用 GPT 開機的系統,可以使用以下指令:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i <replaceable>1</replaceable> <replaceable>ada1</replaceable></userinput></screen> - <para xml:lang="en">For systems using EFI to boot, execute the following - command:</para> + <para>針對使用 EFI 開機的系統可以執行以下指令:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>gpart bootcode -p /boot/boot1.efifat -i <replaceable>1</replaceable> <replaceable>ada1</replaceable></userinput></screen> - <para xml:lang="en">Apply the bootcode to all bootable disks in the pool. - See <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry> for more information.</para> + <para>套用 Boot code 到所有儲存池中可開機的磁碟。請參考 <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry> 以取得更多資訊。</para> </warning> </sect2> @@ -31274,19 +31083,7 @@ mypool@replica2 0 - 55.0M -</screen> <sect3 xml:id="zfs-send-ssh"> <title>透過 <application>SSH</application> 傳送加密的備份</title> - <para xml:lang="en">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 encrypted, allowing anyone to - intercept and transform the streams back into data without - the knowledge of the sending user. This is undesirable, - especially when sending the streams over the internet to a - remote host. <application>SSH</application> can be used to - securely encrypt data send over a network connection. Since - <acronym>ZFS</acronym> only requires the stream to be - redirected from standard output, it is relatively easy to - pipe it through <application>SSH</application>. To keep the - contents of the file system encrypted in transit and on the - remote system, consider using <link xlink:href="https://wiki.freebsd.org/PEFS">PEFS</link>.</para> + <para>透過網路來傳送串流是一個做遠端備份不錯的方式,但是也有一些缺點,透過網路連線傳送的資料沒有加密,這會讓任何人都可以在未告知傳送方的情況下攔截並轉換串流回資料,這是我們所不想見到的情況,特別是在使用網際網路傳送串流到遠端的主機時。<application>SSH</application> 可用來加密要透過網路連線傳送的資料,在 <acronym>ZFS</acronym> 只需要將串流重新導向到標準輸出,如此一來便可簡單的轉接到 <application>SSH</application>。若要讓檔案系統內容在傳送或在遠端系統中也維持在加密的狀態可考慮使用 <link xlink:href="https://wiki.freebsd.org/PEFS">PEFS</link>。</para> <para>有一些設定以及安全性注意事項必須先完成,只有對 <command>zfs send</command> 操作必要的步驟才會在此說明,要取得更多有關 <application>SSH</application> 的資訊請參考 <xref linkend="openssh"/>。</para> @@ -31532,8 +31329,8 @@ dedup = 1.05, compress = 1.11, copies = 1.00, dedup * compress / copies = 1.16</ <listitem> <para xml:id="zfs-advanced-tuning-arc_max" xml:lang="en"><emphasis><varname>vfs.zfs.arc_max</varname></emphasis> - Maximum size of the <link linkend="zfs-term-arc"><acronym>ARC</acronym></link>. - The default is all <acronym>RAM</acronym> less 1 GB, - or one half of <acronym>RAM</acronym>, whichever is more. + The default is all <acronym>RAM</acronym> but 1 GB, + or 5/8 of all <acronym>RAM</acronym>, whichever is more. However, a lower value should be used if the system will be running any other daemons or processes that may require memory. This value can be adjusted at runtime with @@ -31774,7 +31571,7 @@ dedup = 1.05, compress = 1.11, copies = 1.00, dedup * compress / copies = 1.16</ <!-- These sections will be added in the future <sect2 xml:id="zfs-advanced-booting"> - <title>Booting Root on <acronym>ZFS</acronym> </title> + <title>Booting Root on <acronym>ZFS</acronym></title> <para></para> </sect2> @@ -31816,15 +31613,14 @@ dedup = 1.05, compress = 1.11, copies = 1.00, dedup * compress / copies = 1.16</ <sect3> <title>載入程式可調參數</title> - <para>在所有的 FreeBSD 架構上均可增加 <filename>kmem</filename> 位址空間,經測試在一個 1 GB 實體記憶體的測試系統上,加入以下選項到 <filename>/boot/loader.conf</filename>,重新開啟系統,可成功設定。</para> + <para>在所有的 FreeBSD 架構上均可增加 <filename>kmem</filename> 位址空間,經測試在一個 1 GB 實體記憶體的測試系統上,加入以下選項到 <filename>/boot/loader.conf</filename>,重新開啟系統,可成功設定:</para> <programlisting xml:lang="en">vm.kmem_size="330M" vm.kmem_size_max="330M" vfs.zfs.arc_max="40M" vfs.zfs.vdev.cache.size="5M"</programlisting> - <para xml:lang="en">For a more detailed list of recommendations for - <acronym>ZFS</acronym>-related tuning, see <link xlink:href="https://wiki.freebsd.org/ZFSTuningGuide"/>.</para> + <para>要取得更多詳細的 <acronym>ZFS</acronym> 相關調校的建議清單,請參考 <link xlink:href="https://wiki.freebsd.org/ZFSTuningGuide"/>。</para> </sect3> </sect2> </sect1> @@ -31873,17 +31669,7 @@ vfs.zfs.vdev.cache.size="5M"</programlisting> <row> <entry xml:id="zfs-term-pool">儲存池 (Pool)</entry> - <entry xml:lang="en">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 underlying devices - that store the data. A pool is then used to create one - or more file systems (datasets) or block devices - (volumes). These datasets and volumes share the pool of - remaining free space. Each pool is uniquely identified - by a name and a <acronym>GUID</acronym>. The features - available are determined by the <acronym>ZFS</acronym> - version number on the pool. - </entry> + <entry><emphasis>儲存池 (Pool)</emphasis> 是建構 <acronym>ZFS</acronym> 最基礎的單位。一個儲存池可由一個或多個 vdev 所組成,是用來儲存資料的底層裝置。儲存池會被拿來建立一個或多個檔案系統 (資料集 Dataset) 或區塊裝置 (磁碟區 Volume),這些資料集與磁碟區會共用儲存池的剩餘可用空間。每一個儲存池可由名稱與 <acronym>GUID</acronym> 來辨識。可用的功能會依儲存池上的 <acronym>ZFS</acronym> 版本而有不同。</entry> </row> <row> @@ -32187,7 +31973,7 @@ vfs.zfs.vdev.cache.size="5M"</programlisting> file system support is full read-write while others are read-only.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -32205,7 +31991,7 @@ vfs.zfs.vdev.cache.size="5M"</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -32251,10 +32037,15 @@ vfs.zfs.vdev.cache.size="5M"</programlisting> read and write to ext2 file systems.</para> <note> - <para xml:lang="en"> - 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 is read-only.</para> + <para xml:lang="en">This driver can also be used to access ext3 and ext4 + file systems. The <citerefentry><refentrytitle>ext2fs</refentrytitle><manvolnum>5</manvolnum></citerefentry> filesystem has full read + and write support for ext4 as of FreeBSD 12.0-RELEASE. + Additionally, extended attributes and ACLs are also + supported, while journalling and encryption are not. + Starting with FreeBSD 12.1-RELEASE, a DTrace provider will + be available as well. Prior versions of FreeBSD can access + ext4 in read and write mode using + <package>sysutils/fusefs-ext2</package>.</para> </note> <para xml:lang="en">To access an ext file system, first @@ -32360,7 +32151,7 @@ https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html <para>虛擬化軟體可以讓同一台機器得以同時執行多種作業系統。在 <acronym>PC</acronym> 上的這類軟體系統通常涉及的角色有執行虛擬化軟體的主端 (Host) 作業系統以及數個安裝在其中的客端 (Guest) 作業系統。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -32385,7 +32176,7 @@ https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -32546,7 +32337,7 @@ https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html <para>給 <trademark class="registered">Windows</trademark> 使用的 <application>Virtual PC</application> 是一套可免費下載的 <trademark class="registered">Microsoft</trademark> 軟體產品,請參考此網站取得<link xlink:href="http://www.microsoft.com/windows/downloads/virtualpc/sysreq.mspx">系統需求</link>。<application>Virtual PC</application> 在 <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> 上安裝完成之後,使用者可以設定一台虛擬機器然後安裝想要的客端作業系統。</para> <sect2 xml:id="virtualization-guest-virtualpc-install"> - <title>在 <application>Virtual PC</application> 安裝 FreeBSD </title> + <title>在 <application>Virtual PC</application> 安裝 FreeBSD</title> <para>安裝 FreeBSD 到 <application>Virtual PC</application> 的第一個步驟是建立新的虛擬機器來安裝 FreeBSD。當提示畫面出現時,請選擇 <guimenuitem>Create a virtual machine</guimenuitem>:</para> @@ -32819,7 +32610,7 @@ https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html </sect1> <sect1 xml:id="virtualization-guest-virtualbox"> - <title>在 <trademark>VirtualBox</trademark> 使用 FreeBSD 作為客端</title> + <title>在 <trademark>VirtualBox</trademark> 安裝 FreeBSD 作為客端</title> <para>在 <application><trademark>VirtualBox</trademark></application> 中使用 FreeBSD 做為客端系統也可運作的很好,虛擬化軟體可支援最常見的幾個作業系統,這當然也包含 FreeBSD。</para> @@ -32914,10 +32705,27 @@ EndSection</programlisting> </match> </device> </deviceinfo></programlisting> + + <para xml:lang="en">Shared folders for file transfers between host and VM are + accessible by mounting them using + <literal>mount_vboxvfs</literal>. A shared folder can be created + on the host using the VirtualBox GUI or via + <command>vboxmanage</command>. For example, to create a shared + folder called <replaceable>myshare</replaceable> under + <filename><replaceable>/mnt/bsdboxshare</replaceable></filename> + for the VM named <replaceable>BSDBox</replaceable>, run:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>vboxmanage sharedfolder add '<replaceable>BSDBox</replaceable>' --name <replaceable>myshare</replaceable> --hostpath <replaceable>/mnt/bsdboxshare</replaceable></userinput></screen> + + <para xml:lang="en">Note that the shared folder name must not contain spaces. + Mount the shared folder from within the guest system like + this:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>mount_vboxvfs -w <replaceable>myshare</replaceable> <replaceable>/mnt</replaceable></userinput></screen> </sect1> <sect1 xml:id="virtualization-host-virtualbox"> - <title>以 FreeBSD 作為主端安裝 <application>VirtualBox</application> </title> + <title>以 FreeBSD 作為主端使用 <trademark>VirtualBox</trademark></title> <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> @@ -32987,12 +32795,11 @@ perm vboxnetctl 0660</programlisting> <programlisting xml:lang="en">[system=10] add path 'usb/*' mode 0660 group operator</programlisting> - <para xml:lang="en">To load these new rules, add the following to - <filename>/etc/rc.conf</filename>:</para> + <para>若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>:</para> <programlisting xml:lang="en">devfs_system_ruleset="system"</programlisting> - <para xml:lang="en">Then, restart devfs:</para> + <para>然後重新啟動 devfs:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service devfs restart</userinput></screen> @@ -33021,7 +32828,7 @@ perm pass* 0660</programlisting> </sect1> <sect1 xml:id="virtualization-host-bhyve"> - <title>以 FreeBSD 作為主端安裝 <application>bhyve</application> </title> + <title>以 FreeBSD 作為主端安裝 <application>bhyve</application></title> <para xml:lang="en">The <application>bhyve</application> <acronym>BSD</acronym>-licensed hypervisor became part of the @@ -33046,7 +32853,7 @@ perm pass* 0660</programlisting> E3/E5/E7, support these features. <acronym>UG</acronym> support was introduced with Intel's Westmere micro-architecture. For a complete list of <trademark class="registered">Intel</trademark> processors that support - <acronym>EPT</acronym>, refer to <link xlink:href="http://ark.intel.com/search/advanced?s=t&ExtendedPageTables=true"/>. + <acronym>EPT</acronym>, refer to <link xlink:href="https://ark.intel.com/content/www/us/en/ark/search/featurefilter.html?productType=873&0_ExtendedPageTables=True"/>. <acronym>RVI</acronym> is found on the third generation and later of the <trademark>AMD Opteron</trademark> (Barcelona) processors. The easiest way to tell if a processor supports @@ -33262,7 +33069,7 @@ grub> <userinput>boot</userinput></screen> </sect2> <sect2 xml:id="virtualization-bhyve-framebuffer"> - <title>供 <application>bhyve</application> 客端用的圖型化 <acronym>UEFI</acronym> Framebuffer </title> + <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 @@ -33441,24 +33248,30 @@ kld_list="nmdm vmm"</programlisting> supported on FreeBSD yet.</para> <sect2 xml:id="virtualization-host-xen-requirements"> - <title xml:lang="en">Hardware Requirements for <trademark>Xen</trademark> Dom0</title> + <title><trademark>Xen</trademark> Dom0 的硬體需求</title> <para xml:lang="en">To run the <trademark>Xen</trademark> hypervisor on a host, certain hardware functionality is required. Hardware virtualized domains require Extended Page Table (<link xlink:href="http://en.wikipedia.org/wiki/Extended_Page_Table">EPT</link>) and Input/Output Memory Management Unit (<link xlink:href="http://en.wikipedia.org/wiki/List_of_IOMMU-supporting_hardware">IOMMU</link>) support in the host processor.</para> + + <note> + <para xml:lang="en">In order to run a FreeBSD <trademark>Xen</trademark> Dom0 the box must be + booted using legacy boot (BIOS).</para> + </note> + </sect2> <sect2 xml:id="virtualization-host-xen-dom0-setup"> - <title xml:lang="en"><trademark>Xen</trademark> Dom0 Control Domain Setup</title> + <title><trademark>Xen</trademark> Dom0 控制領域安裝</title> <para xml:lang="en">Users of FreeBSD 11 should install the <package>emulators/xen-kernel47</package> and <package>sysutils/xen-tools47</package> packages that are - based on Xen version 4.7. Systems running on FreeBSD-CURRENT - with at least revision r336475 or higher, can use Xen 4.11 - provided by <package>emulators/xen-kernel411</package> and + based on Xen version 4.7. Systems running on FreeBSD-12.0 or + newer can use Xen 4.11 provided by + <package>emulators/xen-kernel411</package> and <package>sysutils/xen-tools411</package>, respectively.</para> <para xml:lang="en">Configuration files must be edited to prepare the host @@ -33468,7 +33281,7 @@ kld_list="nmdm vmm"</programlisting> Otherwise, DomU VMs with higher memory requirements will not run.</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc -f /etc/sysctl.conf vm.max_wired=-1</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>echo 'vm.max_wired=-1' >> /etc/sysctl.conf</userinput></screen> <para xml:lang="en">Another memory-related setting involves changing <filename>/etc/login.conf</filename>, setting the @@ -33487,7 +33300,7 @@ kld_list="nmdm vmm"</programlisting> <para xml:lang="en">Add an entry for the <trademark>Xen</trademark> console to <filename>/etc/ttys</filename>:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>echo 'xc0 "/usr/libexec/getty Pc" xterm on secure' >> /etc/ttys</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>echo 'xc0 "/usr/libexec/getty Pc" xterm onifconsole secure' >> /etc/ttys</userinput></screen> <para xml:lang="en">Selecting a <trademark>Xen</trademark> kernel in <filename>/boot/loader.conf</filename> activates the Dom0. @@ -33502,29 +33315,23 @@ kld_list="nmdm vmm"</programlisting> <para xml:lang="en">The following command is used for Xen 4.7 packages:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf hw.pci.mcfg=0</userinput> +<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf if_tap_load="YES"</userinput> <prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_kernel="/boot/xen"</userinput> <prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_cmdline="dom0_mem=<replaceable>8192M</replaceable> dom0_max_vcpus=<replaceable>4</replaceable> dom0pvh=1 console=com1,vga com1=115200,8n1 guest_loglvl=all loglvl=all"</userinput></screen> <para xml:lang="en">For Xen versions 4.11 and higher, the following command should be used instead:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf hw.pci.mcfg=0</userinput> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf if_tap_load="YES"</userinput> <prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_kernel="/boot/xen"</userinput> <prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_cmdline="dom0_mem=<replaceable>8192M</replaceable> dom0_max_vcpus=<replaceable>4</replaceable> dom0=pvh console=com1,vga com1=115200,8n1 guest_loglvl=all loglvl=all"</userinput></screen> - <para xml:lang="en">Log files that <trademark>Xen</trademark> creates for the Dom0 and DomU VMs - are stored in <filename>/var/log/xen</filename>. This - directory does not exist by default and must be - created.</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>mkdir -p /var/log/xen</userinput> -<prompt>#</prompt> <userinput>chmod 644 /var/log/xen</userinput></screen> - - <para xml:lang="en"><trademark>Xen</trademark> provides a boot menu to activate and de-activate - the hypervisor on demand in - <filename>/boot/menu.rc.local</filename>:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>echo "try-include /boot/xen.4th" >> /boot/menu.rc.local</userinput></screen> + <tip> + <para xml:lang="en">Log files that <trademark>Xen</trademark> creates for the DomU VMs + are stored in <filename>/var/log/xen</filename>. Please + be sure to check the contents of that directory if + experiencing issues.</para> + </tip> <para xml:lang="en">Activate the xencommons service during system startup:</para> @@ -33536,12 +33343,12 @@ kld_list="nmdm vmm"</programlisting> DomU machines. To fix that, define a bridged interface with the main NIC of the system which the DomU VMs can use to connect to the network. Replace - <replaceable>igb0</replaceable> with the host network + <replaceable>em0</replaceable> with the host network interface name.</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc autobridge_interfaces=bridge0</userinput> -<prompt>#</prompt> <userinput>sysrc autobridge_bridge0=<replaceable>igb0</replaceable></userinput> -<prompt>#</prompt> <userinput>sysrc ifconfig_bridge0=SYNCDHCP</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc cloned_interfaces="bridge0"</userinput> +<prompt>#</prompt> <userinput>sysrc ifconfig_bridge0="addm <replaceable>em0</replaceable> SYNCDHCP"</userinput> +<prompt>#</prompt> <userinput>sysrc ifconfig_<replaceable>em0</replaceable>="up"</userinput></screen> <para xml:lang="en">Restart the host to load the <trademark>Xen</trademark> kernel and start the Dom0.</para> @@ -33579,7 +33386,7 @@ Domain-0 0 8192 4 r----- 962.0< retrieved with <citerefentry><refentrytitle>fetch</refentrytitle><manvolnum>1</manvolnum></citerefentry> and saved locally in a file called <filename>freebsd.iso</filename>.</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>fetch <replaceable>ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.3/FreeBSD-10.3-RELEASE-amd64-bootonly.iso</replaceable> -o <replaceable>freebsd.iso</replaceable></userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>fetch <replaceable>ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/<replaceable>12.0</replaceable>/FreeBSD-<replaceable>12.0</replaceable>-RELEASE-amd64-bootonly.iso</replaceable> -o <replaceable>freebsd.iso</replaceable></userinput></screen> <para xml:lang="en">A ZFS volume of 20 GB called <filename>xendisk0</filename> is created to serve as the disk @@ -33722,6 +33529,108 @@ freebsd 1 1024 1 -b---- 663.9</s the operating system has been installed and can be used as a virtual machine.</para> </sect2> + + <sect2 xml:id="virtualization-host-xen-troubleshooting"> + <title>疑難排解</title> + + <para xml:lang="en">This section contains basic information in order to help + troubleshoot issues found when using FreeBSD as a <trademark>Xen</trademark> host or + guest.</para> + + <sect3 xml:id="virtualization-host-xen-troubleshooting-host"> + <title>主端開機疑難排解</title> + + <para xml:lang="en">Please note that the following troubleshooting tips + are intended for <trademark>Xen</trademark> 4.11 or newer. If you are still + using <trademark>Xen</trademark> 4.7 and having issues consider migrating to + a newer version of <trademark>Xen</trademark>.</para> + + <para xml:lang="en">In order to troubleshoot host boot issues you will + likely need a serial cable, or a debug USB cable. Verbose + <trademark>Xen</trademark> boot output can be obtained by adding options to the + <literal>xen_cmdline</literal> option found in + <filename>loader.conf</filename>. A couple of relevant + debug options are:</para> + + <itemizedlist> + <listitem> + <para xml:lang="en"><literal>iommu=debug</literal>: can be used to print + additional diagnostic information about the + iommu.</para> + </listitem> + <listitem> + <para xml:lang="en"><literal>dom0=verbose</literal>: can be used to + print additional diagnostic information about the + dom0 build process.</para> + </listitem> + <listitem> + <para xml:lang="en"><literal>sync_console</literal>: flag to force + synchronous console output. Useful for debugging to + avoid losing messages due to rate limiting. + Never use this option in production environments since + it can allow malicious guests to perform DoS attacks + against <trademark>Xen</trademark> using the console.</para> + </listitem> + </itemizedlist> + + <para xml:lang="en">FreeBSD should also be booted in verbose mode in order + to identify any issues. To activate verbose booting, run + this command:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf boot_verbose="YES"</userinput></screen> + + <para xml:lang="en">If none of these options help solving the problem, + please send the serial boot log to + <email>freebsd-xen@FreeBSD.org</email> and + <email>xen-devel@lists.xenproject.org</email> + for further analysis.</para> + </sect3> + + <sect3 xml:id="virtualization-host-xen-troubleshooting-guest"> + <title>客端建立疑難排解</title> + + <para xml:lang="en">Issues can also arise when creating guests, the + following attempts to provide some help for those trying + to diagnose guest creation issues.</para> + + <para xml:lang="en">The most common cause of guest creation failures is the + <literal>xl</literal> command spitting some error and + exiting with a return code different than 0. If the error + provided is not enough to help identify the issue, more + verbose output can also be obtained from + <literal>xl</literal> by using the <literal>v</literal> + option repeatedly.</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>xl -vvv create freebsd.cfg</userinput> +Parsing config from freebsd.cfg +libxl: debug: libxl_create.c:1693:do_domain_create: Domain 0:ao 0x800d750a0: create: how=0x0 callback=0x0 poller=0x800d6f0f0 +libxl: debug: libxl_device.c:397:libxl__device_disk_set_backend: Disk vdev=xvda spec.backend=unknown +libxl: debug: libxl_device.c:432:libxl__device_disk_set_backend: Disk vdev=xvda, using backend phy +libxl: debug: libxl_create.c:1018:initiate_domain_create: Domain 1:running bootloader +libxl: debug: libxl_bootloader.c:328:libxl__bootloader_run: Domain 1:not a PV/PVH domain, skipping bootloader +libxl: debug: libxl_event.c:689:libxl__ev_xswatch_deregister: watch w=0x800d96b98: deregister unregistered +domainbuilder: detail: xc_dom_allocate: cmdline="", features="" +domainbuilder: detail: xc_dom_kernel_file: filename="/usr/local/lib/xen/boot/hvmloader" +domainbuilder: detail: xc_dom_malloc_filemap : 326 kB +libxl: debug: libxl_dom.c:988:libxl__load_hvm_firmware_module: Loading BIOS: /usr/local/share/seabios/bios.bin +...</screen> + + <para xml:lang="en">If the verbose output does not help diagnose the issue + there are also QEMU and <trademark>Xen</trademark> toolstack logs in + <filename>/var/log/xen</filename>. Note that the name of + the domain is appended to the log name, so if the domain + is named <literal>freebsd</literal> you should find a + <filename>/var/log/xen/xl-freebsd.log</filename> and likely + a <filename>/var/log/xen/qemu-dm-freebsd.log</filename>. + Both log files can contain useful information for debugging. + If none of this helps solve the issue, please send the + description of the issue you are facing and as much + information as possible to + <email>freebsd-xen@FreeBSD.org</email> and + <email>xen-devel@lists.xenproject.org</email> in order to + get help.</para> + </sect3> + </sect2> </sect1> </chapter> @@ -33788,7 +33697,7 @@ freebsd 1 1024 1 -b---- 663.9</s </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem><para>了解如何 <link linkend="ports">安裝其他第三方應用程式</link>。</para></listitem> @@ -33925,7 +33834,7 @@ me:\ :lang=de_DE.ISO8859-1:\ :tc=default:</programlisting> - <para>請參考 <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 以取得更多有關這些變數的詳細資訊。</para> + <para>請參考 <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 以取得更多有關這些變數的詳細資訊。請注意,它已經含有預先定義的 <replaceable>russian</replaceable> class。</para> <para>每次編輯 <filename>/etc/login.conf</filename> 之後,請記得要執行以下指令來更新登入類別的能力資料庫(Capability database):</para> @@ -33968,6 +33877,13 @@ me:\ <para>若使用 <command>pw</command> 來新增使用者,則可指定語系如下:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pw useradd <replaceable>user_name</replaceable> -L <replaceable>language</replaceable></userinput></screen> + + <para xml:lang="en">To change the login class of an existing user, + <command>chpass</command> can be used. Invoke it as + superuser and provide the username to edit as the + argument.</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>chpass <replaceable>user_name</replaceable></userinput></screen> </sect4> </sect3> @@ -34617,7 +34533,7 @@ Option "XkbOptions" "grp:toggle"</programlisting> <para>FreeBSD 在每次的發佈之間持續在開發。有些人偏好正式發佈的版本,也有另一群人喜歡使用最新的開發版本。然而,即使是正式發佈的版本也時常會有安全性與其他緊急修復的更新,因此,無論使用哪種版本,FreeBSD 都提供所有必要的工具來讓系統能維持最新的版本,且讓各種版本都能簡單的升級。本章將說明如何追蹤開發版本的系統及讓 FreeBSD 系統維持最新版本的基本工具。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -34641,7 +34557,7 @@ Option "XkbOptions" "grp:toggle"</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -34654,7 +34570,7 @@ Option "XkbOptions" "grp:toggle"</programlisting> </itemizedlist> <note> - <para>本章會經常使用 <command>svn</command> 來取得與更新 FreeBSD 原始碼。要使用該指令請先安裝 <package>devel/subversion</package> Port 或套件。</para> + <para>本章會經常使用 <command>svnlite</command> 來取得與更新 FreeBSD 原始碼。您也可以使用 <package>devel/subversion</package> Port 或套件。</para> </note> </sect1> @@ -34772,7 +34688,7 @@ Uninstalling updates... done.</screen> <para>再次強調,若核心或任何核心模組有做過修改應重新啟動系統,以及任何受影響的 Binary 應重新執行。</para> - <para>只有 <filename>GENERIC</filename> 核心可使用 <command>freebsd-update</command> 自動更新。 如果有安裝自訂的核心,在 <command>freebsd-update</command> 完成安裝更新後,需要重新編譯和重新安裝。 雖然如此,如果 <filename>/boot/GENERIC</filename> 存在,<command>freebsd-update</command> 仍會偵測並更新 <filename>GENERIC</filename> 核心,即使該核心並非目前系統正在執行的核心。</para> + <para>只有 <filename>GENERIC</filename> 核心可使用 <command>freebsd-update</command> 自動更新。 如果有安裝自訂的核心,在 <command>freebsd-update</command> 完成安裝更新後,需要重新編譯和重新安裝。 預設的核心名稱為 <emphasis>GENERIC</emphasis>,可使用 <citerefentry><refentrytitle>uname</refentrytitle><manvolnum>1</manvolnum></citerefentry> 指令來檢查安裝的核心。</para> <note> <para>隨時在 <filename>/boot/GENERIC</filename> 保留一份 <filename>GENERIC</filename> 核心的複本將有助於診斷各種問題及執行版本升級。請參考 <xref linkend="freebsd-update-custom-kernel-9x"/> 來了解有關如何取得 <filename>GENERIC</filename> 核心的複本說明。</para> @@ -34908,7 +34824,7 @@ before running "/usr/sbin/freebsd-update install"</screen> <para>已安裝的 FreeBSD 版本狀態可以使用 <command>freebsd-update IDS</command> 與另一個已知良好的複本來做比對測試。 這個指令會評估目前版本的系統工具,程式庫和設定檔,可做為內建的入侵偵測系統來使用 (Intrusion Detection System, <acronym>IDS</acronym>)。</para> <warning> - <para>這個指令並非用來取代真正的 <acronym>IDS</acronym>,如 <package>security/snort</package>。由於 <command>freebsd-update</command> 儲存在磁碟上,被竄改的可能性是顯而易見的,雖然這個可能性會因使用 <varname>kern.securelevel</varname> 以及將 <command>freebsd-update</command> 在不使用時以唯讀儲存而降低,最好的解決方案是能夠與安全的磁碟,如 <acronym>DVD</acronym> 或儲存在外部的 <acronym>USB</acronym> 磁碟裝置比對系統。替代的方式是使用內建工具的 <acronym>IDS</acronym> 功能,在 <xref linkend="security-ids"/> 有詳細說明。</para> + <para>這個指令並非用來取代真正的 <acronym>IDS</acronym>,如 <package>security/snort</package>。由於 <command>freebsd-update</command> 儲存在磁碟上,被竄改的可能性是顯而易見的,雖然這個可能性會因使用 <varname>kern.securelevel</varname> 以及將 <command>freebsd-update</command> 在不使用時以唯讀儲存而降低,最好的解決方案是能夠與安全的磁碟,如 <acronym>DVD</acronym> 或儲存在外部的 <acronym>USB</acronym> 磁碟裝置比對系統。替代的方式是使用內建工具的 <acronym>IDS</acronym> 功能,在 <xref linkend="security-ids"/> 有詳細說明</para> </warning> <para>要開始比對,需指定輸出的檔案來儲存結果:</para> @@ -34948,17 +34864,17 @@ before running "/usr/sbin/freebsd-update install"</screen> <sect2 xml:id="updating-installed-documentation"> <title>自原始碼更新說明文件</title> - <para>從原始碼重新編譯 FreeBSD 文件需要一些不屬於 FreeBSD 基礎系統的工具。需要的工具包括 <application>svn</application> 可透過由 FreeBSD 文件計劃所開發的 <package>textproc/docproj</package> 套件或 Port 安裝。</para> + <para>從原始碼重新編譯 FreeBSD 文件需要一些不屬於 FreeBSD 基礎系統的工具。需要的工具可安裝由 FreeBSD 文件計劃所開發的 <package>textproc/docproj</package> 套件或 Port。</para> - <para>安裝完成之後,可使用 <application>svn</application> 來取得乾淨的文件原始碼複本:</para> + <para>安裝完成之後,可使用 <application>svnlite</application> 來取得乾淨的文件原始碼複本:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>svn checkout https://svn.FreeBSD.org/doc/head /usr/doc</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>svnlite checkout https://svn.FreeBSD.org/doc/head /usr/doc</userinput></screen> <para>第一次下載文件原始碼需要一些時間,請耐心等候執行完畢。</para> <para>往後更新文件原始碼可執行:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>svn update /usr/doc</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>svnlite update /usr/doc</userinput></screen> <para>下載最新的文件原始碼到 <filename>/usr/doc</filename> 之後,便完成要更新已安裝文件的準備動作。</para> @@ -35171,7 +35087,7 @@ before running "/usr/sbin/freebsd-update install"</screen> </listitem> <listitem> - <para>同步 FreeBSD-CURRENT 原始碼。 通常會使用 <link linkend="svn">svn</link> 自列於 <xref linkend="svn-mirrors"/> 中的其中一個 Subversion 鏡像站的 <literal>head</literal> 分支中取出 -CURRENT 的程式碼。</para> + <para>同步 FreeBSD-CURRENT 原始碼。 通常會使用 <link linkend="svn">svnlite</link> 自列於 <xref linkend="svn-mirrors"/> 中的其中一個 Subversion 鏡像站的 <literal>head</literal> 分支中取出 -CURRENT 的程式碼。</para> </listitem> <listitem> @@ -35184,95 +35100,45 @@ before running "/usr/sbin/freebsd-update install"</screen> </listitem> <listitem> - <para>積極!很鼓勵 FreeBSD-CURRENT 使用者發表他們對加強哪些功能或是修復哪些錯誤的建議。 如果您在建議時能附上相關程式碼的話, 那真是太棒了!</para> + <para>要活躍!我們非常鼓勵 FreeBSD-CURRENT 的使用者發表他們對加強哪些功能或是修復哪些錯誤的建議。 如果您在建議時能附上相關程式碼的話,是最好的。</para> </listitem> </orderedlist> </sect2> <sect2 xml:id="stable"> - <title xml:lang="en">Using FreeBSD-STABLE</title> - - <para xml:lang="en">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.</para> + <title>使用 FreeBSD-STABLE</title> - <para xml:lang="en">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.</para> + <para>FreeBSD-STABLE 是一個開發分支,會在主要的版本更新後產生,進入這個分支的步伐會比較緩慢,而且通常會假定已經在 FreeBSD-CURRENT 中做過測試,所以問題會比較少,但這<emphasis>仍然</emphasis>是一個開發分支,在任何時間點,FreeBSD-STABLE 中的原始碼不能保証能供一般使用,它只是另一個開發支線,並不是供最終使用者使用的資源,若沒有任何資源可以做測試的使用者應改使用最新版本的 FreeBSD 發佈版。</para> - <para xml:lang="en">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.</para> + <para>對於那些有興趣追蹤或為 FreeBSD 開發流程提供一些貢獻的人,特別是針對下一個主要發佈版的 FreeBSD,應該考慮追蹤 FreeBSD-STABLE。</para> - <para xml:lang="en">To track FreeBSD-STABLE:</para> + <para>雖然 FreeBSD-STABLE 分支應該已經做過編譯並執行過,但這仍然無法保証不會出任何問題。由於使用 FreeBSD-STABLE 的人比 FreeBSD-CURRENT 更多,因此不可避免的,有時仍會在 FreeBSD-STABLE 中發現未在 FreeBSD-CURRENT 中出現的問題與特殊狀況。基於這個原因,任何人都不應盲目的追蹤 FreeBSD-STABLE,特別重要的是 <emphasis>不</emphasis> 要將任何產線上的伺服器更新成未經開發或測試環境中測試過的 FreeBSD-STABLE。</para> - <indexterm xml:lang="en"> - <primary>-STABLE</primary> - <secondary>using</secondary> - </indexterm> + <para>若要追蹤 FreeBSD-STABLE:</para> + + <indexterm><primary>-STABLE</primary> <secondary>使用</secondary></indexterm> <orderedlist> <listitem> - <para xml:lang="en">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.</para> - - <para xml:lang="en">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.</para> - - <para xml:lang="en">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>.</para> - </listitem> - - <listitem> - <para xml:lang="en">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.</para> - - <para xml:lang="en">To compile or upgrade to an existing FreeBSD system to - FreeBSD-STABLE, use <link linkend="svn">svn</link> - <indexterm xml:lang="en"> + <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> 點選要訂閱的郵遞論壇,並依照網頁指示的步驟操作。要追蹤整個原始碼樹的變更,可訂閱 <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 發佈版或使用每月使用 FreeBSD-STABLE 所編譯的快照 (Snapshot),請參考 <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> 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>.</para> + </indexterm> 來取出欲升級的分支程式碼,可用分支的名稱如:<literal>stable/9</literal> 會列在 <link xlink:href="@@URL_RELPREFIX@@/releng/">www.freebsd.org/releng</link>。</para> </listitem> <listitem> - <para xml:lang="en">Before compiling or upgrading to FreeBSD-STABLE - <indexterm xml:lang="en"> + <para>編譯 FreeBSD-STABLE <indexterm> <primary>-STABLE</primary> <secondary>compiling</secondary> - </indexterm>, read <filename>/usr/src/Makefile</filename> - carefully and follow the instructions in <xref linkend="makeworld"/>. Read the <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.</para> + </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> @@ -35292,7 +35158,7 @@ before running "/usr/sbin/freebsd-update install"</screen> <step> <title>更新並編譯</title> - <screen xml:lang="en"><prompt>#</prompt> <userinput>svn update /usr/src</userinput> <co xml:id="updating-src-qs-svnup"/> + <screen xml:lang="en"><prompt>#</prompt> <userinput>svnlite 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"/> @@ -35359,14 +35225,14 @@ before running "/usr/sbin/freebsd-update install"</screen> <para>FreeBSD 的原始碼位於 <filename>/usr/src/</filename>,較建議透過 <application>Subversion</application> 版本控制系統來更新這份原始碼,要確認原始碼已在版本控制系統的管控下可:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>svn info /usr/src</userinput> + <screen xml:lang="en"><prompt>#</prompt> <userinput>svnlite info /usr/src</userinput> Path: /usr/src Working Copy Root Path: /usr/src ...</screen> - <para>此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使用 <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來更新:</para> + <para>此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使用 <citerefentry><refentrytitle>svnlite</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來更新:</para> - <screen xml:id="synching" xml:lang="en"><prompt>#</prompt> <userinput>svn update /usr/src</userinput></screen> + <screen xml:id="synching" xml:lang="en"><prompt>#</prompt> <userinput>svnlite update /usr/src</userinput></screen> <para>若該目錄最近沒有更新過,可能會需要一些時間來完成更新動作。在更新完成之後,原始碼便為最新版本,並可開始依下一章節的說明來編譯程序。</para> @@ -35421,7 +35287,7 @@ Working Copy Root Path: /usr/src <para>根據 <xref linkend="updating-src-obtaining-src-repopath"/>,要更新 <literal>10.3-RELEASE</literal> 需使用的原始碼檔案庫路徑為 <literal>base/releng/10.3</literal>,在取出 (checkout) 原始碼時便要使用這個路徑:</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> +<prompt>#</prompt> <userinput>svnlite checkout https://svn.freebsd.org/base/<replaceable>releng/10.3</replaceable> /usr/src</userinput> <co xml:id="updating-src-obtaining-src-checkout-cmd"/></screen> <calloutlist> <callout arearefs="updating-src-obtaining-src-mv"> @@ -35686,7 +35552,7 @@ that might make this chapter too large. project at <uri xlink:href="http://dtrace.org/guide">DTrace Guide</uri>.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -35703,7 +35569,7 @@ that might make this chapter too large. </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -36060,7 +35926,7 @@ Elapsed Times for processes csh, <acronym>USB</acronym> host was already connected to the <acronym>USB</acronym> <acronym>OTG</acronym> socket.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -36091,10 +35957,10 @@ Elapsed Times for processes csh, </sect1> <sect1 xml:id="usb-device-mode-terminals"> - <title xml:lang="en"><acronym>USB</acronym> Virtual Serial Ports</title> + <title><acronym>USB</acronym> 虛擬序列埠</title> <sect2> - <title xml:lang="en">Configuring USB Device Mode Serial Ports</title> + <title>設定 USB 裝置模式序列埠</title> <para xml:lang="en">Virtual serial port support is provided by templates number 3, 8, and 10. Note that template 3 works with @@ -36141,8 +36007,7 @@ hw.usb.template=3</screen> </sect2> <sect2> - <title xml:lang="en">Connecting to USB Device Mode Serial Ports from - FreeBSD</title> + <title>自 FreeBSD 連線到 USB 裝置模式序列埠</title> <para xml:lang="en">To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, to @@ -36158,8 +36023,7 @@ hw.usb.template=3</screen> </sect2> <sect2> - <title xml:lang="en">Connecting to USB Device Mode Serial Ports from - macOS</title> + <title>自 macOS 連線到 USB 裝置模式序列埠</title> <para xml:lang="en">To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, @@ -36170,8 +36034,7 @@ hw.usb.template=3</screen> </sect2> <sect2> - <title xml:lang="en">Connecting to USB Device Mode Serial Ports from - Linux</title> + <title>自 Linux 連線到 USB 裝置模式序列埠</title> <para xml:lang="en">To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, @@ -36182,8 +36045,7 @@ hw.usb.template=3</screen> </sect2> <sect2> - <title xml:lang="en">Connecting to USB Device Mode Serial Ports from - Microsoft Windows 10</title> + <title>自 Microsoft Windows 10 連線到 USB 裝置模式序列埠</title> <para xml:lang="en">To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, @@ -36202,8 +36064,7 @@ hw.usb.template=3</screen> <sect1 xml:id="usb-device-mode-network"> - <title xml:lang="en"><acronym>USB</acronym> Device Mode Network - Interfaces</title> + <title><acronym>USB</acronym> 裝置模式網路介面</title> <para xml:lang="en">Virtual network interfaces support is provided by templates number 1, 8, and 10. Note that none of them works with @@ -36227,7 +36088,7 @@ hw.usb.template=1</screen> </sect1> <sect1 xml:id="usb-device-mode-storage"> - <title xml:lang="en"><acronym>USB</acronym> Virtual Storage Device</title> + <title><acronym>USB</acronym> 虛擬儲存裝置</title> <note> <para><citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</manvolnum></citerefentry> 驅動程式是一個在 FreeBSD 12.0 之後才可用的 <acronym>USB</acronym> 裝置模式驅動程式。</para> @@ -36243,8 +36104,7 @@ hw.usb.template=1</screen> <acronym>LUN</acronym> 0.</para> <sect2> - <title xml:lang="en">Configuring USB Mass Storage Target Using the cfumass - Startup Script</title> + <title>使用 cfumass 啟動 Script 設定 USB 大容量儲存目標</title> <para xml:lang="en">The simplest way to set up a read-only USB storage target is to use the <filename>cfumass</filename> rc script. To @@ -36268,7 +36128,7 @@ hw.usb.template=1</screen> when started.</para> </sect2> <sect2> - <title xml:lang="en">Configuring USB Mass Storage Using Other Means</title> + <title>使用其他方式設定 USB 大容量存儲目標</title> <para xml:lang="en">The rest of this chapter provides detailed description of setting the target without using the cfumass rc file. This is @@ -36401,7 +36261,7 @@ hw.usb.template=1</screen> <para><trademark class="registered">UNIX</trademark> 從最早的第一台 <trademark class="registered">UNIX</trademark> 仰賴序列線路來讓使用者輸入與輸出以來一直都支援序列通訊,雖與每秒 10 個字元的序列印表機及鍵盤組成的終端機時代比起已改變很多。本章將說明幾種可在 FreeBSD 使用的序列通訊方式。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -36418,7 +36278,7 @@ hw.usb.template=1</screen> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -38585,7 +38445,7 @@ options DDB</programlisting> <para>FreeBSD 支援點對點 (Point-to-Point, <acronym>PPP</acronym>) 通訊協定,可透過撥號數據機用來建立網路或網際網路連線。本章將說明如何設定在 FreeBSD 中以數據機為基礎的通訊服務。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -38607,7 +38467,7 @@ options DDB</programlisting> <secondary>over Ethernet</secondary> </indexterm> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -39866,11 +39726,9 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting> <secondary>over Ethernet</secondary> </indexterm> - <para xml:lang="en">This section describes how to set up <acronym>PPP</acronym> - over Ethernet (<acronym>PPPoE</acronym>).</para> + <para>本節介紹如何設定在 乙太網路使用 <acronym>PPP</acronym> (<acronym>PPPoE</acronym>)。</para> - <para xml:lang="en">Here is an example of a working - <filename>ppp.conf</filename>:</para> + <para>以下有一個可用的的 <filename>ppp.conf</filename> 範例:</para> <programlisting xml:lang="en">default: set log Phase tun command # you can add more detailed logging if you wish @@ -39884,13 +39742,11 @@ name_of_service_provider: set login add default HISADDR</programlisting> - <para xml:lang="en">As <systemitem class="username">root</systemitem>, - run:</para> + <para>以 <systemitem class="username">root</systemitem> 身份執行:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>ppp -ddial name_of_service_provider</userinput></screen> - <para xml:lang="en">Add the following to - <filename>/etc/rc.conf</filename>:</para> + <para>將以下參數加到 <filename>/etc/rc.conf</filename>:</para> <programlisting xml:lang="en">ppp_enable="YES" ppp_mode="ddial" @@ -39900,64 +39756,38 @@ ppp_profile="name_of_service_provider"</programlisting> <sect2> <title>使用 PPPoE 服務標籤</title> - <para xml:lang="en">Sometimes it will be necessary to use a service tag to - establish the connection. Service tags are used to - distinguish between different PPPoE servers attached to a - given network.</para> - - <para xml:lang="en">Any required service tag information should be in the - documentation provided by the <acronym>ISP</acronym>.</para> - - <para xml:lang="en">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 modem and render it useless, - so think twice before doing it. Simply install the program - shipped with the modem. Then, access the - <guimenu>System</guimenu> menu from the program. The name of - the profile should be listed there. It is usually - <emphasis>ISP</emphasis>.</para> - - <para xml:lang="en">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 device</command>. Refer to - <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> for full details. It should look like - this:</para> + <para>有時需要使用服務標籤 (Service Tag) 才能建立連線,服務標籤用來區別不同網路要各自連線的 PPPoE 伺服器。</para> + + <para>所需的服務標籤資訊應該會在 <acronym>ISP</acronym> 所提供的文件中說明。</para> + + <para>最後的手段是嘗試安裝 <package>net/rr-pppoe</package> 套件或 Port。但是請注意,這可能會解除安裝數據機中的程式並使其無法運作,所以請三思而為。只需要安裝數據機所提供的程式,然後由該程式進入 <guimenu>System</guimenu> 選單,基本資料 (Profile name) 的名稱應該會列出來,通常是 <emphasis>ISP</emphasis> 的名稱。</para> + + <para>基本資料名稱 (Profile Name) 即服務標籤,會被用在 <filename>ppp.conf</filename> 中的 PPPoE 設定項目,<command>set device</command> 的提供商 (Provider) 部份。請參考 <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> 以取得詳細說明,結果應如下:</para> <programlisting xml:lang="en">set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable></programlisting> - <para xml:lang="en">Do not forget to change <replaceable>xl1</replaceable> to - the proper device for the Ethernet card.</para> + <para>別忘記更改 <replaceable>xl1</replaceable> 為乙太網路卡的裝置名稱。</para> - <para xml:lang="en">Do not forget to change <replaceable>ISP</replaceable> to - the profile.</para> + <para>別忘記更改 <replaceable>ISP</replaceable> 為基本資料名稱。</para> - <para xml:lang="en">For additional information, refer to <link xlink:href="http://renaud.waldura.com/doc/freebsd/pppoe/">Cheaper - Broadband with FreeBSD on DSL</link> by Renaud Waldura.</para> + <para>要取得更進一步資訊,請參考 Renaud Waldura 所著的 <link xlink:href="http://renaud.waldura.com/doc/freebsd/pppoe/">Cheaper Broadband with FreeBSD on DSL</link>。</para> </sect2> <sect2 xml:id="ppp-3com"> <title>在 <trademark class="registered">3Com</trademark> <trademark class="registered">HomeConnect</trademark> ADSL Modem Dual Link 使用 PPPoE</title> - <para xml:lang="en">This modem does not follow the PPPoE specification defined - in <link xlink:href="http://www.faqs.org/rfcs/rfc2516.html">RFC - 2516</link>.</para> + <para>這台數據機並不採用 <link xlink:href="http://www.faqs.org/rfcs/rfc2516.html">RFC 2516</link> 所定義的規格。</para> - <para xml:lang="en">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 - <filename>/etc/sysctl.conf</filename>:</para> + <para>為了要讓 FreeBSD 能夠與這台裝置通訊,必須設定 sysctl,這可以透過更新 <filename>/etc/sysctl.conf</filename> 來讓開機時自動設定。</para> <programlisting xml:lang="en">net.graph.nonstandard_pppoe=1</programlisting> - <para xml:lang="en">or can be done immediately with the command:</para> + <para>或可以執行以下指令立即更改:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>sysctl net.graph.nonstandard_pppoe=1</userinput></screen> - <para xml:lang="en">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">3Com</trademark> <trademark class="registered">HomeConnect</trademark> ADSL Modem at the - same time.</para> + <para>不幸的是,由於這是一個全系統的設定,這可能導致一般 PPPoE 客戶端或伺服器無法與 <trademark class="registered">3Com</trademark> <trademark class="registered">HomeConnect</trademark> ADSL 數據機同時使用。</para> </sect2> </sect1> @@ -40239,7 +40069,7 @@ tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 <para><quote>電子郵件</quote> 或稱 email,是現今使用最廣泛的溝通方式之一。本章主要介紹如何在 FreeBSD 上執行郵件伺服器,以及如何使用 FreeBSD 收發信件,若欲瞭解細節請參閱 <xref linkend="bibliography"/> 內的參考書籍。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -40291,7 +40121,7 @@ tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -42146,7 +41976,7 @@ alternate</programlisting> </listitem> <listitem> - <para>如何設定 FreeBSD 成為 <acronym>LDAP</acronym> 伺服器或客戶端。</para> + <para>如何設定 FreeBSD 成為 <acronym>LDAP</acronym> 伺服器或客戶端</para> </listitem> <listitem> @@ -43077,7 +42907,7 @@ Exports list on foobar: <para xml:lang="en">The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></citerefentry> map format is the same as in other operating systems. Information about this format from other - sources can be useful, like the <link xlink:href="http://web.archive.org/web/20160813071113/http://images.apple.com/business/docs/Autofs.pdf">Mac + sources can be useful, like the <link xlink:href="http://web.archive.org/web/20160813071113/http://images.apple.com/business/docs/Autofs.pdf">Mac OS X document</link>.</para> <para xml:lang="en">Consult the <citerefentry><refentrytitle>automount</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>automountd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, @@ -43869,19 +43699,19 @@ nis_client_enable="YES"</programlisting> <screen xml:lang="en">basie<prompt>#</prompt> <userinput>cat /etc/master.passwd</userinput> root:[password]:0:0::0:0:The super-user:/root:/bin/csh toor:[password]:0:0::0:0:The other super-user:/root:/bin/sh -daemon:*:1:1::0:0:Owner of many system processes:/root:/sbin/nologin -operator:*:2:5::0:0:System &:/:/sbin/nologin -bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/sbin/nologin -tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin -kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin -games:*:7:13::0:0:Games pseudo-user:/usr/games:/sbin/nologin -news:*:8:8::0:0:News Subsystem:/:/sbin/nologin -man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/sbin/nologin -bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin +daemon:*:1:1::0:0:Owner of many system processes:/root:/usr/sbin/nologin +operator:*:2:5::0:0:System &:/:/usr/sbin/nologin +bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/usr/sbin/nologin +tty:*:4:65533::0:0:Tty Sandbox:/:/usr/sbin/nologin +kmem:*:5:65533::0:0:KMem Sandbox:/:/usr/sbin/nologin +games:*:7:13::0:0:Games pseudo-user:/usr/games:/usr/sbin/nologin +news:*:8:8::0:0:News Subsystem:/:/usr/sbin/nologin +man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/usr/sbin/nologin +bind:*:53:53::0:0:Bind Sandbox:/:/usr/sbin/nologin uucp:*:66:66::0:0:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico -xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/sbin/nologin -pop:*:68:6::0:0:Post Office Owner:/nonexistent:/sbin/nologin -nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/sbin/nologin +xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/usr/sbin/nologin +pop:*:68:6::0:0:Post Office Owner:/nonexistent:/usr/sbin/nologin +nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/usr/sbin/nologin -bill::::::::: +::::::::: @@ -44140,18 +43970,18 @@ ellington<prompt>%</prompt> <userinput>ypcat -k netgroup.byuser</userinput></scr user entries without allowing them to login into the servers. This can be achieved by adding an extra line:</para> - <programlisting xml:lang="en">+:::::::::/sbin/nologin</programlisting> + <programlisting xml:lang="en">+:::::::::/usr/sbin/nologin</programlisting> <para xml:lang="en">This line configures the client to import all entries but to replace the shell in those entries with - <filename>/sbin/nologin</filename>.</para> + <filename>/usr/sbin/nologin</filename>.</para> <!-- Been there, done that, got the scars to prove it - ue --> <para xml:lang="en">Make sure that extra line is placed <emphasis>after</emphasis> <literal>+@IT_EMP:::::::::</literal>. Otherwise, all user accounts imported from <acronym>NIS</acronym> will have - <filename>/sbin/nologin</filename> as their login + <filename>/usr/sbin/nologin</filename> as their login shell and no one will be able to login to the system.</para> <para xml:lang="en">To configure the less important servers, replace the old @@ -44160,14 +43990,14 @@ ellington<prompt>%</prompt> <userinput>ypcat -k netgroup.byuser</userinput></scr <programlisting xml:lang="en">+@IT_EMP::::::::: +@IT_APP::::::::: -+:::::::::/sbin/nologin</programlisting> ++:::::::::/usr/sbin/nologin</programlisting> <para xml:lang="en">The corresponding lines for the workstations would be:</para> <programlisting xml:lang="en">+@IT_EMP::::::::: +@USERS::::::::: -+:::::::::/sbin/nologin</programlisting> ++:::::::::/usr/sbin/nologin</programlisting> <para xml:lang="en">NIS supports the creation of netgroups from other netgroups which can be useful if the policy regarding user @@ -44199,12 +44029,12 @@ USERBOX IT_EMP ITINTERN USERS</programlisting> system contains two lines starting with <quote>+</quote>. The first line adds a netgroup with the accounts allowed to login onto this machine and the second line adds all other - accounts with <filename>/sbin/nologin</filename> as shell. It - is recommended to use the <quote>ALL-CAPS</quote> version of - the hostname as the name of the netgroup:</para> + accounts with <filename>/usr/sbin/nologin</filename> as shell. + It is recommended to use the <quote>ALL-CAPS</quote> version + of the hostname as the name of the netgroup:</para> <programlisting xml:lang="en">+@<replaceable>BOXNAME</replaceable>::::::::: -+:::::::::/sbin/nologin</programlisting> ++:::::::::/usr/sbin/nologin</programlisting> <para xml:lang="en">Once this task is completed on all the machines, there is no longer a need to modify the local versions of @@ -44312,7 +44142,16 @@ TWO (,hotel,test-domain) <firstname>Tom</firstname> <surname>Rhodes</surname> </personname> - <contrib>Written by </contrib> + <contrib>Originally contributed by </contrib> + </author> + </authorgroup> + <authorgroup> + <author xml:lang="en"> + <personname> + <firstname>Rocky</firstname> + <surname>Hotas</surname> + </personname> + <contrib>Updates by </contrib> </author> </authorgroup> </info> @@ -44363,162 +44202,280 @@ result: 0 Success <indexterm xml:lang="en"><primary>LDAP Server</primary></indexterm> - <para>FreeBSD 並未提供內建的 <acronym>LDAP</acronym> 伺服器,因此要從安裝 <package role="port">net/openldap24-server</package> 套件或 Port 開始設置。由於 Port 有許多可以設定的選項,建議安裝套件使用預設的選項,若選項必須做修改才改用編譯 Port 的方式安裝,大多數的案例皆可使用預設值。然而,若需要支援 SQL,則必須開啟選項並依 <xref linkend="ports-using"/> 的指示編譯 Port。</para> + <para>FreeBSD 並未提供內建的 <acronym>LDAP</acronym> 伺服器,要開始設定前請先安裝 <package role="port">net/openldap-server</package> 套件或 Port:</para> - <para>接著,建立目錄來儲存資枓以及儲存憑證:</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install openldap-server</userinput></screen> - <screen xml:lang="en"><prompt>#</prompt> <userinput>mkdir /var/db/openldap-data</userinput> -<prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/private</userinput></screen> + <para>在<link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/linux-users/software.html">套件</link>中已開啟了許多的預設選項,可以透過執行 <command>pkg info openldap-server</command> 來查看已開啟的選項,若有不足的地方 (例如需要開啟 SQL 的支援),請考慮使用適當的<link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-using.html">方式</link>重新編譯該 Port。</para> - <para>複製資料庫設定檔:</para> + <para>安裝程序會建立目錄 <filename>/var/db/openldap-data</filename> 來儲存資料,同時需要建立儲存憑證的目錄:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>cp /usr/local/etc/openldap/DB_CONFIG.example /var/db/openldap-data/DB_CONFIG</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/private</userinput></screen> - <para>下一個階段是設定憑証機構 (Certificate authority)。以下指令必須在 <filename>/usr/local/etc/openldap/private</filename> 執行,這很重要是由於檔案權限須要被限制且使用者不應有這些檔案的存取權限。要建立憑証授權,需先輸人這個指令並依提示作業:</para> + <para>接下來是設定憑証機構 (Certificate authority)。以下指令必須在 <filename>/usr/local/etc/openldap/private</filename> 下執行,這很重要是由於檔案權限須要被限制且其他使用者不應有這些檔案的存取權限,更多有關憑証的詳細資訊以及相關的參數可在 <xref linkend="openssl"/> 中找到。要建立憑証授權,需先輸人這個指令並依提示操作:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -x509 -keyout ca.key -out ../ca.crt</userinput></screen> - <para>提示的輸入項目除了通用名稱 (<literal>Common Name</literal>) 其他是可以一樣的,這個項目必須使用與系統主機名稱 <emphasis>不同</emphasis> 的名稱。若這是一個自行簽署的憑証 (Self signed certificate),則在憑証機構 <literal>CA</literal> 的前面加上主機名稱。</para> + <para>提示輸入的項目<emphasis>除了</emphasis>通用名稱 (<literal>Common Name</literal>) 外其他是可以一樣的,這個項目必須使用跟系統主機名稱 <emphasis>不同</emphasis> 的名稱。若這是一個自行簽署的憑証 (Self signed certificate),則在憑証機構 <literal>CA</literal> 的前面加上主機名稱。</para> - <para>接下來的工作是建立一個憑証簽署的請求及私鑰。請輸入以下指令然後依提示操作:</para> + <para>接下來的工作是建立一個伺服器的憑証簽署請求與一個私鑰。請輸入以下指令然後依提示操作:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -keyout server.key -out server.csr</userinput></screen> - <para>在憑証產生程序的過程中請確認 <literal>Common Name</literal> 屬性設定正確。完成之後便可簽署金鑰:</para> + <para>在憑証產生程序的過程中請確認 <literal>Common Name</literal> 屬性設定正確。憑証簽署請求 (Certificate Signing Request) 必須經過憑証機構簽署後才會成為有效的憑証:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>openssl x509 -req -days <replaceable>365</replaceable> -in server.csr -out ../server.crt -CA ../ca.crt -CAkey ca.key -CAcreateserial</userinput></screen> - <para>在憑証產生程序的最後一步是產生並簽署用戶憑証:</para> + <para>在憑証產生程序的最後一步是產生並簽署客戶端憑証:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -keyout client.key -out client.csr</userinput> <prompt>#</prompt> <userinput>openssl x509 -req -days 3650 -in client.csr -out ../client.crt -CA ../ca.crt -CAkey ca.key</userinput></screen> - <para>要記得當提示是要使用同樣的 <literal>Common Name</literal> 屬性。完成之後,請確認執行的指令產生了共 8 個新檔案。若正確無誤,下個步驟便是編輯 <filename>/usr/local/etc/openldap/slapd.conf</filename> 並加入以下選項:</para> + <para>記得當提示時要使用同樣的 <literal>Common Name</literal> 屬性。完成之後,請確認執行的指令產生了 8 個新檔案。</para> - <programlisting xml:lang="en">TLSCipherSuite HIGH:MEDIUM:+SSLv3 -TLSCertificateFile /usr/local/etc/openldap/server.crt -TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key -TLSCACertificateFile /usr/local/etc/openldap/ca.crt</programlisting> + <para>OpenLDAP 伺服器所執行的 Daemon 為 <filename>slapd</filename>,OpenLDAP 是透過 <filename>slapd.ldif</filename> 來做設定, OpenLDAP 官方已停止採用舊的 <filename>slapd.conf</filename> 格式。</para> - <para>接著編輯 <filename>/usr/local/etc/openldap/ldap.conf</filename> 然後加入下行:</para> + <para>這裡有些 <filename>slapd.ldif</filename> 的 <link xlink:href="http://www.openldap.org/doc/admin24/slapdconf2.html">設定檔範例</link> 可以使用,同時您也可以在 <filename>/usr/local/etc/openldap/slapd.ldif.sample</filename> 找到範例資訊。相關可用的選項在 slapd-config(5) 文件會有說明。<filename>slapd.ldif</filename> 的每個段落,如同其他 LDAP 屬性設定一樣會透過獨一無二 DN 來辨識,並請確保 <literal>dn:</literal> 描述與其相關屬性之間沒有空行。以下的範例中會實作一個使用 TLS 的安全通道,首先是全域的設定:</para> - <programlisting xml:lang="en">TLS_CACERT /usr/local/etc/openldap/ca.crt -TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3</programlisting> + <programlisting xml:lang="en"># +# See slapd-config(5) for details on configuration options. +# This file should NOT be world readable. +# +dn: cn=config +objectClass: olcGlobal +cn: config +# +# +# Define global ACLs to disable default read access. +# +olcArgsFile: /var/run/openldap/slapd.args +olcPidFile: /var/run/openldap/slapd.pid +olcTLSCertificateFile: /usr/local/etc/openldap/server.crt +olcTLSCertificateKeyFile: /usr/local/etc/openldap/private/server.key +olcTLSCACertificateFile: /usr/local/etc/openldap/ca.crt +#olcTLSCipherSuite: HIGH +olcTLSProtocolMin: 3.1 +olcTLSVerifyClient: never</programlisting> - <para>在編輯這個檔案的時候,取消註解以下項目然後設定這些項目使用實際要使用的數值:<option>BASE</option>, <option>URI</option>, <option>SIZELIMIT</option> 以 <option>TIMELIMIT</option>。設定 <option>URI</option> 要包含 <option>ldap://</option> 及 <option>ldaps://</option>。然後加入兩個項目指向憑証機構。完成之後,所有的設定項目會如下:</para> + <para>這個檔案中必須指定憑証機構 (Certificate Authority)、伺服器憑証 (Server Certificate) 與伺服器私鑰 (Server Private Key),建議可讓客戶端決定使用的安全密碼 (Security Cipher),略過 <literal>olcTLSCipherSuite</literal> 選項 (此選項不相容 <filename>openssl</filename> 以外的 TLS 客戶端)。選項 <literal>olcTLSProtocolMin</literal> 讓伺服器可要求一個安全等級的最低限度,建議使用。伺服器有進行驗証的必要,但客戶端並不需要,因此可設定 <literal>olcTLSVerifyClient: never</literal>。</para> - <programlisting xml:lang="en">BASE dc=example,dc=com -URI ldap:// ldaps:// + <para>第二個部份是設定後端要採用的模組有那些,可使用以下方式設定:</para> + + <programlisting xml:lang="en"># +# Load dynamic backend modules: +# +dn: cn=module,cn=config +objectClass: olcModuleList +cn: module +olcModulepath: /usr/local/libexec/openldap +olcModuleload: back_mdb.la +#olcModuleload: back_bdb.la +#olcModuleload: back_hdb.la +#olcModuleload: back_ldap.la +#olcModuleload: back_passwd.la +#olcModuleload: back_shell.la</programlisting> + + <para>第三個部份要載入資料庫所需的 <literal>ldif</literal> 綱要 (Schema),這個動作是必要的。</para> + + <programlisting xml:lang="en">dn: cn=schema,cn=config +objectClass: olcSchemaConfig +cn: schema + +include: file:///usr/local/etc/openldap/schema/core.ldif +include: file:///usr/local/etc/openldap/schema/cosine.ldif +include: file:///usr/local/etc/openldap/schema/inetorgperson.ldif +include: file:///usr/local/etc/openldap/schema/nis.ldif</programlisting> + + <para>接下來是前端設定的部份:</para> + + <programlisting xml:lang="en"># Frontend settings +# +dn: olcDatabase={-1}frontend,cn=config +objectClass: olcDatabaseConfig +objectClass: olcFrontendConfig +olcDatabase: {-1}frontend +olcAccess: to * by * read +# +# Sample global access control policy: +# Root DSE: allow anyone to read it +# Subschema (sub)entry DSE: allow anyone to read it +# Other DSEs: +# Allow self write access +# Allow authenticated users read access +# Allow anonymous users to authenticate +# +#olcAccess: to dn.base="" by * read +#olcAccess: to dn.base="cn=Subschema" by * read +#olcAccess: to * +# by self write +# by users read +# by anonymous auth +# +# if no access controls are present, the default policy +# allows anyone and everyone to read anything but restricts +# updates to rootdn. (e.g., "access to * by * read") +# +# rootdn can always read and write EVERYTHING! +# +olcPasswordHash: {SSHA} +# {SSHA} is already the default for olcPasswordHash</programlisting> -SIZELIMIT 12 -TIMELIMIT 15 + <para>再來是<emphasis>設定後端</emphasis>的部份,之後唯一能夠存取 OpenLDAP 伺服器設定的方式是使用全域超級使用者。</para> -TLS_CACERT /usr/local/etc/openldap/ca.crt -TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3</programlisting> + <programlisting xml:lang="en">dn: olcDatabase={0}config,cn=config +objectClass: olcDatabaseConfig +olcDatabase: {0}config +olcAccess: to * by * none +olcRootPW: {SSHA}iae+lrQZILpiUdf16Z9KmDmSwT77Dj4U</programlisting> - <para>給伺服器用的預設密碼應該要更換:</para> + <para>預設的管理者使用者名稱是 <literal>cn=config</literal>,可在 Shell 中輸入 <filename>slappasswd</filename>,決定要使用的密碼並將其產生的編碼放到 <literal>olcRootPW</literal> 欄位中。若這個選項在這時沒有設定好,在匯入 <filename>slapd.ldif</filename> 之後將沒有任何人有辦法修改<emphasis>全域的設定</emphasis>。</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>slappasswd -h "{SHA}" >> /usr/local/etc/openldap/slapd.conf</userinput></screen> + <para>最後一個部份是有關資料庫後端的設定:</para> - <para>這個指令會提示輸入密碼,若程序沒有失敗,便會將編碼過的密碼加到 <filename>slapd.conf</filename> 的最後。支援的編碼格式有許多種,請參考 <command>slappasswd</command> 的操作手冊以取得更多資訊。</para> + <programlisting xml:lang="en">####################################################################### +# LMDB database definitions +####################################################################### +# +dn: olcDatabase=mdb,cn=config +objectClass: olcDatabaseConfig +objectClass: olcMdbConfig +olcDatabase: mdb +olcDbMaxSize: 1073741824 +olcSuffix: dc=domain,dc=example +olcRootDN: cn=mdbadmin,dc=domain,dc=example +# Cleartext passwords, especially for the rootdn, should +# be avoided. See slappasswd(8) and slapd-config(5) for details. +# Use of strong authentication encouraged. +olcRootPW: {SSHA}X2wHvIWDk6G76CQyCMS1vDCvtICWgn0+ +# The database directory MUST exist prior to running slapd AND +# should only be accessible by the slapd and slap tools. +# Mode 700 recommended. +olcDbDirectory: /var/db/openldap-data +# Indices to maintain +olcDbIndex: objectClass eq</programlisting> - <para>接著編輯 <filename>/usr/local/etc/openldap/slapd.conf</filename> 並加入下行:</para> + <para>這裡指定的資料庫即<emphasis>實際用來保存</emphasis> <acronym>LDAP</acronym> 目錄的資料,也可以使用 <literal>mdb</literal> 以外的項目,資料庫的超級使用者可在這裡設定 (與全域的超級使用者是不同的東西):<literal>olcRootDN</literal> 需填寫使用者名稱 (可自訂),<literal>olcRootPW</literal> 需填寫該使用者編碼後的密碼,將密碼編碼可使用 <filename>slappasswd</filename> 如同前面所述。</para> - <programlisting xml:lang="en">password-hash {sha} -allow bind_v2</programlisting> + <para>這裡有個<link xlink:href="http://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=tree;f=tests/data/regressions/its8444;h=8a5e808e63b0de3d2bdaf2cf34fecca8577ca7fd;hb=HEAD">檔案庫</link>內有四個 <filename>slapd.ldif</filename> 的範例,要將現有的 <filename>slapd.conf</filename> 轉換成 <filename>slapd.ldif</filename> 格式,可參考<link xlink:href="http://www.openldap.org/doc/admin24/slapdconf2.html">此頁</link> (注意,這裡面的說明也會介紹一些不常用的選項)。</para> - <para>在這個設定檔的 <option>suffix</option> 必須更新為與在 <filename>/usr/local/etc/openldap/ldap.conf</filename> 及 <option>rootdn</option> 使用的 <option>BASE</option> 相同。<option>rootdn</option> 建議的值為 <option>cn=Manager</option>。在儲存這個檔案之前,將 <option>rootpw</option> 放到由 <command>slappasswd</command> 產生的密碼之前,然後刪除原有的 <option>rootpw</option>。最後的結果應該如下:</para> + <para>當設定完成之後,需將 <filename>slapd.ldif</filename> 放在一個空的目錄當中,建議如以下方式建立:</para> - <programlisting xml:lang="en">TLSCipherSuite HIGH:MEDIUM:+SSLv3 -TLSCertificateFile /usr/local/etc/openldap/server.crt -TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key -TLSCACertificateFile /usr/local/etc/openldap/ca.crt -rootpw {SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/slapd.d/</userinput></screen> - <para>最後,在 <filename>/etc/rc.conf</filename> 開啟 <application>OpenLDAP</application> 服務並設定 <acronym>URI</acronym>:</para> + <para>匯入設定資料庫:</para> - <programlisting xml:lang="en">slapd_enable="YES" -slapd_flags="-4 -h ldaps:///"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>/usr/local/sbin/slapadd -n0 -F /usr/local/etc/openldap/slapd.d/ -l /usr/local/etc/openldap/slapd.ldif</userinput></screen> - <para>此時便可啟動並測試伺服器:</para> + <para>啟動 <filename>slapd</filename> Daemon:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>service slapd start</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>/usr/local/libexec/slapd -F /usr/local/etc/openldap/slapd.d/</userinput></screen> - <para>若所有的設定均正確,搜尋目錄應會如此範例顯示成功連線並有一筆回應:</para> + <para>選項 <literal>-d</literal> 可以用來除錯使用,如同 slapd(8) 中所說明的,若要檢驗伺服器是否正常執行與運作可以:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>ldapsearch -Z</userinput> + <screen xml:lang="en"><prompt>#</prompt> <userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput> # extended LDIF # # LDAPv3 -# base <dc=example,dc=com> (default) with scope subtree +# base <> with scope baseObject # filter: (objectclass=*) -# requesting: ALL +# requesting: namingContexts +# + # +dn: +namingContexts: dc=domain,dc=example # search result -search: 3 -result: 32 No such object +search: 2 +result: 0 Success -# numResponses: 1</screen> +# numResponses: 2 +# numEntries: 1</screen> - <note> - <para>若指令失敗且設定看起來沒有問題,可先停止 <command>slapd</command> 服務並開啟除錯選項並重新啟動:</para> + <para>伺服器端仍必須受到信任,若在此之前未做過這個動作,請依照以下指示操作。安裝 OpenSSL 套件或 Port:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>service slapd stop</userinput> -<prompt>#</prompt> <userinput>/usr/local/libexec/slapd -d -1</userinput></screen> - </note> + <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install openssl</userinput></screen> - <para>服務有回應之後,便可使用 <command>ldapadd</command> 匯入資料到目錄。在此例中,會先建立一個含有使用者清單的檔案,每位使用者應使用以下格式定義:</para> + <para>進入 <filename>ca.crt</filename> 所在的目錄 (以這邊使用的例子來說則是 <filename>/usr/local/etc/openldap</filename>),執行:</para> - <programlisting xml:lang="en">dn: dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable> -objectclass: dcObject -objectclass: organization -o: <replaceable>Example</replaceable> -dc: <replaceable>Example</replaceable> + <screen xml:lang="en"><prompt>#</prompt> <userinput>c_rehash .</userinput></screen> -dn: cn=<replaceable>Manager</replaceable>,dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable> -objectclass: organizationalRole -cn: <replaceable>Manager</replaceable></programlisting> + <para>現在 CA 與伺服器憑証可以依其用途被辨識,可進入 <filename>server.crt</filename> 所在的目錄執行以下指令來檢查:</para> - <para>要匯入這個檔案,可指定檔案名稱。以下指令會提示輸入先前設定過的密碼然後輸入如下的結果:</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>openssl verify -verbose -CApath . server.crt</userinput></screen> - <screen xml:lang="en"><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> -Enter LDAP Password: -adding new entry "dc=example,dc=com" + <para>若 <filename>slapd</filename> 已正在執行,就重新啟動它。如同 <filename>/usr/local/etc/rc.d/slapd</filename> 所述,要讓 <filename>slapd</filename> 開機時可正常執行,須要加入以下行到 <filename>/etc/rc.conf</filename>:</para> -adding new entry "cn=Manager,dc=example,dc=com"</screen> + <programlisting xml:lang="en">lapd_enable="YES" +slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ +ldap://0.0.0.0/"' +slapd_sockets="/var/run/openldap/ldapi" +slapd_cn_config="YES"</programlisting> - <para>使用 <command>ldapsearch</command> 發出一個查詢到伺服器來確認資料已新增:</para> + <para>開機啟動 <filename>slapd</filename> 並不會提供除錯的功能,您可以檢查 <filename>/var/log/debug.log</filename>, <filename>dmesg -a</filename> 及 <filename>/var/log/messages</filename> 檢確認是否有正常運作。</para> - <screen xml:lang="en"><prompt>%</prompt> <userinput>ldapsearch -Z</userinput> -# extended LDIF -# -# LDAPv3 -# base <dc=example,dc=com> (default) with scope subtree -# filter: (objectclass=*) -# requesting: ALL -# + <para>以下範例會新增群組 <literal>team</literal> 及使用者 <literal>john</literal> 到 <systemitem class="systemname">domain.example</systemitem> <acronym>LDAP</acronym> 資料庫,而該資料庫目前是空的。首先要先建立 <filename>domain.ldif</filename> 檔:</para> -# example.com -dn: dc=example,dc=com + <screen xml:lang="en"><prompt>#</prompt> <userinput>cat domain.ldif</userinput> +dn: dc=domain,dc=example objectClass: dcObject objectClass: organization -o: Example -dc: Example +o: domain.example +dc: domain -# Manager, example.com -dn: cn=Manager,dc=example,dc=com -objectClass: organizationalRole -cn: Manager +dn: ou=groups,dc=domain,dc=example +objectClass: top +objectClass: organizationalunit +ou: groups -# search result -search: 3 -result: 0 Success +dn: ou=users,dc=domain,dc=example +objectClass: top +objectClass: organizationalunit +ou: users + +dn: cn=team,ou=groups,dc=domain,dc=example +objectClass: top +objectClass: posixGroup +cn: team +gidNumber: 10001 + +dn: uid=john,ou=users,dc=domain,dc=example +objectClass: top +objectClass: account +objectClass: posixAccount +objectClass: shadowAccount +cn: John McUser +uid: john +uidNumber: 10001 +gidNumber: 10001 +homeDirectory: /home/john/ +loginShell: /usr/bin/bash +userPassword: secret</screen> + + <para>請查看 OpenLDAP 說明文件取得更詳細的資訊,使用 <filename>slappasswd</filename> 來將純文字的密碼 <literal>secret</literal> 更改為已編碼的型式來填寫 <literal>userPassword</literal> 欄位。在 <literal>loginShell</literal> 所指定的路徑,必須在所有可讓 <literal>john</literal> 登入的系統中存在。最後是使用 <literal>mdb</literal> 管理者修改資料庫:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>ldapadd -W -D "cn=mdbadmin,dc=domain,dc=example" -f domain.ldif</userinput></screen> + + <para>要修改<emphasis>全域設定</emphasis>只能使用全域的超及使用者。例如,假設一開始採用了 <literal>olcTLSCipherSuite: HIGH:MEDIUM:SSLv3</literal> 選項,但最後想要把它移除,可以建立一個有以下內容的檔案:</para> -# numResponses: 3 -# numEntries: 2</screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>cat <replaceable>global_mod</replaceable></userinput> +dn: cn=config +changetype: modify +delete: olcTLSCipherSuite</screen> - <para>此時,伺服器應已設定完成並可正常運作。</para> + <para>然後套用修改內容:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>ldapmodify -f global_mod -x -D "cn=config" -W</userinput></screen> + + <para>當提示輸入密碼時,提供當時在<emphasis>設定後端</emphasis>一節所設定的密碼,在這裡無須填寫使用者名稱,<literal>cn=config</literal> 代表要修改資料庫資料的位置。也可以使用 <literal>ldapmodify</literal> 刪除其中一行屬性,或是 <literal>ldapdelete</literal> 刪除整筆資料。</para> + + <para>若有問題無法正常執行,或是全域的超級使用者無法存取後端的設定,可以刪除並重建整個後端設定:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>rm -rf /usr/local/etc/openldap/slapd.d/</userinput></screen> + + <para>可以修改 <filename>slapd.ldif</filename> 後再重新匯入一次。請注意,這個步驟只在沒有其他方式可用時才使用。</para> + + <para>本章節的設定說明只針對伺服器端的部份,在同一台主機中也可以同時有安裝 LDAP 客戶端但需要額外做設定。</para> </sect2> </sect1> @@ -44726,7 +44683,7 @@ dhcpd_ifaces="dc0"</programlisting> <listitem> <para xml:lang="en"><filename>/usr/local/etc/dhcpd.conf</filename></para> - <para>伺服器設定檔需要含有所有要提供給客戶端的資訊以及有關伺服器運作的資訊。在 dhcpd.conf(5) 有此設定檔的說明。 </para> + <para>伺服器設定檔需要含有所有要提供給客戶端的資訊以及有關伺服器運作的資訊。在 dhcpd.conf(5) 有此設定檔的說明。</para> </listitem> <listitem> @@ -44892,7 +44849,7 @@ dhcpd_ifaces="dc0"</programlisting> </sect2> <sect2> - <title xml:lang="en"><acronym>DNS</acronym> Server Configuration</title> + <title><acronym>DNS</acronym> 伺服器設定</title> <para><application>Unbound</application> 由 FreeBSD 基礎系統提供,預設只會提供本機的 <acronym>DNS</acronym> 解析,雖然基礎系統的套件可被設定提供本機以外的解析服務,但要解決這樣的需求仍建議安裝 FreeBSD Port 套件集中的 <application>Unbound</application>。</para> @@ -44912,7 +44869,7 @@ dhcpd_ifaces="dc0"</programlisting> <screen xml:lang="en"><prompt>#</prompt> <userinput>service local_unbound onestart</userinput></screen> - <para>這將會更新 <filename>/etc/resolv.conf</filename> 來讓查詢已用 <acronym>DNSSEC</acronym> 確保安全的網域現在可以運作。</para> + <para>這將會更新 <filename>/etc/resolv.conf</filename> 來讓查詢已用 <acronym>DNSSEC</acronym> 確保安全的網域現在可以運作,例如,執行以下指令來檢驗 FreeBSD.org <acronym>DNSSEC</acronym> 信任樹:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>drill -S FreeBSD.org</userinput> ;; Number of trusted keys: 1 @@ -45287,21 +45244,9 @@ AddModule mod_php5.c <para><application>Samba</application> 是熱門的開放源碼軟體套件,使用 <acronym>SMB/CIFS</acronym> 通訊協定提供檔案與列印服務,此通訊協定內建於 <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> 系統,在非 <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> 的系統可透過安裝 <application>Samba</application> 客戶端程式庫來支援此協定。此通訊協定讓客戶端可以存取共享的資料與印表機,這些共享的資源可掛載到一個本機的磁碟機,而共享的印表機則可以當做本機的印表機使用。</para> - <para xml:lang="en">On FreeBSD, the <application>Samba</application> client - libraries can be installed using the - <package>net/samba48</package> port or package. The - client provides the ability for a FreeBSD system to access - <acronym>SMB/CIFS</acronym> shares in a <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> - network.</para> - - <para xml:lang="en">A FreeBSD system can also be configured to act as a - <application>Samba</application> server by installing the same - <package>net/samba48</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</trademark> <trademark class="registered">Windows</trademark> or the <application>Samba</application> - client libraries.</para> + <para>在 FreeBSD 上,可以使用 <package>net/samba48</package> Port 或套件來安裝 <application>Samba</application> 客戶端程式庫,這個客戶端提供了讓 FreeBSD 系統能存取 <acronym>SMB/CIFS</acronym> 在 <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> 網路中共享的資源。</para> + + <para>FreeBSD 系統也可以透過安裝 <package>net/samba48</package> Port 或套件來設定成 <application>Samba</application> 伺服器,這讓管理者可以在 FreeBSD 系統上建立 <acronym>SMB</acronym>/<acronym>CIFS</acronym> 的共享資源,讓執行 <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> 或 <application>Samba</application> 客戶端程式庫的客戶端能夠存取。</para> <sect2> <title>伺服器設定</title> @@ -45458,71 +45403,125 @@ Starting smbd.</screen> <para>隨著使用時間,電腦的時鐘會逐漸偏移,這對需要網路上電腦有相同準確度時間的許多網路服務來說是一個大問題。準確的時間同樣能確保檔案時間戳記的一致性。網路時間協定 (Network Time Protocol, <acronym>NTP</acronym>) 是一種在網路上可以確保時間準確的方式。</para> - <para>FreeBSD 內建 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 可以設定來查詢其他 <acronym>NTP</acronym> 伺服器來同步在該主機的時間或者提供時間服務給其他在網路上的電腦,查詢的伺服器可以為在網路上的本地主機或者由 <acronym>ISP</acronym> 提供。除此之外也有 <link xlink:href="http://support.ntp.org/bin/view/Servers/WebHome">開放存取的 <acronym>NTP</acronym> 伺服器線上清單</link>,當要使用開放的 <acronym>NTP</acronym> 伺服器,請選擇地理位置較近的並檢查該服務的使用方針。</para> - - <para>建議選擇多個 <acronym>NTP</acronym> 伺服器,以避免萬一某一台伺服器無法連線,或者該伺服器的時間變的不可靠,當 <application>ntpd</application> 收到回應,會自動先選擇可靠的伺服器。</para> + <para>FreeBSD 內含 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 可設定來查詢其他 <acronym>NTP</acronym> 伺服器來同步電腦的時間或提供時間服務給其他在網路上的電腦。</para> <para>本節將會介紹如何設定 FreeBSD 上的 <application>ntpd</application>,更進一步的說明文件可於 <filename>/usr/share/doc/ntp/</filename> 找到 HTML 格式的版本。</para> <sect2> <title><acronym>NTP</acronym> 設定</title> - <indexterm xml:lang="en"><primary>NTP</primary> - <secondary>ntp.conf</secondary> - </indexterm> + <indexterm><primary>NTP</primary></indexterm> - <para>在 FreeBSD,內建的 <application>ntpd</application> 可用來同步系統的時間,要在開機時開啟 <application>ntpd</application>,可加入 <literal>ntpd_enable="YES"</literal> 到 <filename>/etc/rc.conf</filename>,也可在 <filename>/etc/rc.conf</filename> 設定其他的變數,請參考 <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 與 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 來了解詳情。</para> + <para>在 FreeBSD,內建的 <application>ntpd</application> 可用來同步系統的時間,<application>Ntpd</application> 要使用 <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 中的變數以及下一節會詳細說明的 <filename>/etc/ntp.conf</filename> 來設定。</para> - <para>該應用程式會讀取 <filename>/etc/ntp.conf</filename> 來得知要查詢那一個 <acronym>NTP</acronym> 伺服器,這裡有一個簡單的 <filename>/etc/ntp.conf</filename> 範例:</para> + <para><application>Ntpd</application> 與網路中各節點的通訊採用 UDP 封包,在伺服器與 NTP 各節點間的防火牆必須設定成可允許進/出埠 123 的 UDP 封包。</para> - <example> - <title><filename>/etc/ntp.conf</filename> 範例</title> + <sect3> + <title><filename>/etc/ntp.conf</filename> 檔</title> - <programlisting xml:lang="en">server ntplocal.example.com prefer -server timeserver.example.org -server ntp2a.example.net + <indexterm xml:lang="en"><primary>NTP</primary> + <secondary>ntp.conf</secondary> + </indexterm> -driftfile /var/db/ntp.drift</programlisting> - </example> + <para><application>Ntpd</application> 會讀取 <filename>/etc/ntp.conf</filename> 來得知要從那些 <acronym>NTP</acronym> 伺服器查詢時間,建議可設定多個 <acronym>NTP</acronym> 伺服器,來避免萬一其中一個伺服器無法連線或是時間不可靠的問題,當 <application>ntpd</application> 收到回應,它會偏好先採用較可信賴的伺服器。查詢的伺服器可以是來自本地網路的 <acronym>ISP</acronym> 所提供,也可從<link xlink:href="http://support.ntp.org/bin/view/Servers/WebHome">線上可公開存取的<acronym>NTP</acronym> 伺服器清單</link>中挑選,您可以選擇一個離您地理位置較近的伺服器並閱讀它的使用規則。也有 <link xlink:href="http://support.ntp.org/bin/view/Servers/NTPPoolServers">可公開存取的 <acronym>NTP</acronym> 池線上清單</link>可用,由一個地理區域所組織,除此之外 FreeBSD 提供了計劃贊助的伺服器池,<literal>0.freebsd.pool.ntp.org</literal>。</para> + + <example> + <title><filename>/etc/ntp.conf</filename> 範例</title> + <para>這份簡單的 <filename>ntp.conf</filename> 範例檔可以放心的使用,其中包含了建議的 <literal>restrict</literal> 選項可避免伺服器被公開存取。</para> + <programlisting xml:lang="en"> +# Disallow ntpq control/query access. Allow peers to be added only +# based on pool and server statements in this file. +restrict default limited kod nomodify notrap noquery nopeer +restrict source limited kod nomodify notrap noquery - <para>這個檔案的格式在 <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 有說明,<literal>server</literal> 選項設定了要查詢那一些伺服器,每一行列一個伺服器。若伺服項目中含有 <literal>prefer</literal>,則會較偏好使用該伺服器。從偏好伺服器收到的回應若明顯與他伺服器的回應差異過大則會被放棄,否則都會以偏好的伺服器為主。<literal>prefer</literal> 參數只應用在已知高度準確的 <acronym>NTP</acronym> 伺服器上,例如那些有特別在監控時間的硬體。</para> +# Allow unrestricted access from localhost for queries and control. +restrict 127.0.0.1 +restrict ::1 - <para><literal>driftfile</literal> 項目用來指定要使用那一個檔案儲存系統時間的頻率偏移量,<application>ntpd</application> 會使用這個檔來自動補償時間的自然偏移,讓時間即始在切斷所有外部時間來源一段時間時仍能夠保持合理的設定值。這個檔案也會儲存有關前次由 <acronym>NTP</acronym> 伺服器收到的回應,由於這個檔案包含供 <acronym>NTP</acronym> 使用的內部資訊,所以不應手動修改。</para> +# Add a specific server. +server ntplocal.example.com iburst - <para>預設,<acronym>NTP</acronym> 伺服器是開放給任何網路主機存取的,在 <filename>/etc/ntp.conf</filename> 中的 <literal>restrict</literal> 選項可以用來控制那些系統可以存取該伺服器。例如,要拒絕所有主機的存取,可加入下行到 <filename>/etc/ntp.conf</filename>:</para> +# Add FreeBSD pool servers until 3-6 good servers are available. +tos minclock 3 maxclock 6 +pool 0.freebsd.pool.ntp.org iburst - <programlisting xml:lang="en">restrict default ignore</programlisting> +# Use a local leap-seconds file. +leapfile "/var/db/ntpd.leap-seconds.list"</programlisting></example> - <note> - <para>這將會避免其他 <acronym>NTP</acronym> 伺服器的存取,若有需要與一個外部 <acronym>NTP</acronym> 伺服器同步,則可以只允許該伺服器。請參考 <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 來取得更多資訊。</para> - </note> + <para>這個檔案的格式在 <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 有詳細說明,以下的說明僅快速的帶過以上範例檔有用到的一些關鍵字。</para> - <para>要允許在網路內的主機與伺服器同步時間,但要確保這些主機不允許設定伺服器或者被這些主機當作同輩的主機相互同步,可改使用:</para> + <para>預設 <acronym>NTP</acronym> 伺服器是可以被任何網路主機所存取,<literal>restrict</literal> 關鍵字可以控制有那些系統可以存取伺服器。<literal>restrict</literal> 支援設定多項,每一項可再更進一步調整前面所做的設定。範例中的設定授權本地系統有完整的查詢及控制權限,而遠端系統只有查詢時間的權限。要了解更詳細的資訊請參考 <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 中的 <literal>Access Control Support</literal> 一節。</para> - <programlisting xml:lang="en">restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap</programlisting> + <para><literal>server</literal> 關鍵字可指定要查詢的伺服器,設定檔中可以使用多個 server 關鍵字,一個伺服器列一行。<literal>pool</literal> 關鍵字可指定伺服器池,<application>Ntpd</application> 會加入該伺服器池中的一或多台伺服器,直到數量滿足 <literal>tos minclock</literal> 的設定。<literal>iburst</literal> 關鍵字會指示 <application>ntpd</application> 在建立連線時執行 8 連發快速封包交換,可以更快的同步系統時間。</para> - <para>其中 <systemitem class="ipaddress">192.168.1.0</systemitem> 是本地網路的位址,而 <systemitem class="netmask">255.255.255.0</systemitem> 是網路的子遮罩。</para> + <para><literal>leapfile</literal> 關鍵字用來指定含有閏秒 (Leap second) 資訊的檔案位置,該檔案是由 <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</manvolnum></citerefentry> 自動更新。這個關鍵字指定的檔案位置必須與 <filename>/etc/rc.conf</filename> 中設定的 <literal>ntp_db_leapfile</literal> 相同。</para> + </sect3> - <para>也支援多個 <literal>restrict</literal> 項目,要取得詳細的資料,請參考 <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 的 <literal>Access Control Support</literal> 子章節。</para> + <sect3> + <title>在 <filename>/etc/rc.conf</filename> 中的 NTP 設定項目</title> - <para><literal>ntpd_enable="YES"</literal> 加入到 <filename>/etc/rc.conf</filename> 之後,<application>ntpd</application> 便可不需重新開機立即啟動,只要輸入:</para> + <indexterm><primary>NTP</primary> <secondary>rc.conf</secondary></indexterm> - <screen xml:lang="en"><prompt>#</prompt> <userinput>service ntpd start</userinput></screen> + <para>設定 <literal>ntpd_enable="YES"</literal> 可讓開機時會啟動 <application>ntpd</application>。將 <literal>ntpd_enable=YES</literal> 加到 <filename>/etc/rc.conf</filename> 之後,可輸入以下指令讓 <application>ntpd</application> 不需重新開機立即啟動:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>service ntpd start</userinput></screen> + + <para>要使用 ntpd 必須設定 <literal>ntpd_enable</literal>,以下所列的 <filename>rc.conf</filename> 變數可視所需請況設定。</para> + + <para>設定 <literal>ntpd_sync_on_start=YES</literal> 可讓 <application>ntpd</application> 可以在系統啟動時一次同步任何差距的時間,正常情況若時鐘的差距超過 1000 秒便會記錄錯誤並且中止。這個設定項目在沒有電池備援的時鐘上特別有用。</para> + + <para>設定 <literal>ntpd_oomprotect=YES</literal> 可保護 <application>ntpd</application> daemon 被系統中止並嘗試從記憶體不足 (Out Of Memory, <acronym>OOM</acronym>) 的情況恢復運作。</para> + + <para>設定 <literal>ntpd_config=</literal> 可更改 <filename>ntp.conf</filename> 檔案的位置。</para> + + <para>設定 <literal>ntpd_flags=</literal> 可設定使用任何其他所需 <application>ntpd</application> 參數,但要避免使用由 <filename>/etc/rc.d/ntpd</filename> 內部控管的參數如下:<itemizedlist spacing="compact"> + <listitem><para><literal>-p</literal> (pid 檔案位置)</para></listitem> + <listitem><para><literal>-c</literal> (改用<literal>ntpd_config=</literal> 設定)</para></listitem> + </itemizedlist></para> + </sect3> + + <sect3> + <title>使用無特權的 <literal>ntpd</literal> 使用者執行 <application>Ntpd</application></title> + + <para>在 FreeBSD 上的 <application>Ntpd</application> 現在可以使用無特權的使用者啟動並執行,要達到這個功能需要 <citerefentry><refentrytitle>mac_ntpd</refentrytitle><manvolnum>4</manvolnum></citerefentry> 規則模組。<filename>/etc/rc.d/ntpd</filename> 啟動 Script 會先檢查 NTP 的設定,若可以的話它會載入 <literal>mac_ntpd</literal> 模組,然後以無特權的使用者 <literal>ntpd</literal> (user id 123) 來啟動 <application>ntpd</application>。為了避免檔案與目錄存取權限的問題,當設定中有任何檔案相關的選項時,啟動 Script 不會自動以 <literal>ntpd</literal> 身份啟動 <application>ntpd</application>。</para> + + <para>在 <literal>ntpd_flags</literal> 若出現以下任何參數則需要以最下面的方式手動設定才能以 <literal>ntpd</literal> 使用者的身份執行:<itemizedlist spacing="compact"> + <listitem><para>-f 或 --driftfile</para></listitem> + <listitem><para>-i 或 --jaildir</para></listitem> + <listitem><para>-k 或 --keyfile</para></listitem> + <listitem><para>-l 或 --logfile</para></listitem> + <listitem><para>-s 或 --statsdir</para></listitem> + </itemizedlist></para> + + <para>在 <filename>ntp.conf</filename> 若出現以下任何關鍵字則需要以最下面的方式手動設定才能以 <literal>ntpd</literal> 使用者的身份執行:<itemizedlist spacing="compact"> + <listitem><para>crypto</para></listitem> + <listitem><para>driftfile</para></listitem> + <listitem><para>key</para></listitem> + <listitem><para>logdir</para></listitem> + <listitem><para>statsdir</para></listitem> + </itemizedlist></para> + + <para>要手動設定以使用者 <literal>ntpd</literal> 身份執行 <application>ntpd</application> 你必須:<itemizedlist mark="none" spacing="compact"> + <listitem><para>確保 <literal>ntpd</literal> 使用者有權限存取所有在設定檔中指定的檔案與目錄。</para></listitem> + <listitem><para>讓 <literal>mac_ntpd</literal> 模組載入或編譯至核心,請參考 <citerefentry><refentrytitle>mac_ntpd</refentrytitle><manvolnum>4</manvolnum></citerefentry> 取得詳細資訊。</para></listitem> + <listitem><para>在 <filename>/etc/rc.conf</filename> 中設定 <literal>ntpd_user="ntpd"</literal></para></listitem> + </itemizedlist></para> + </sect3> </sect2> <sect2> <title>在 <acronym>PPP</acronym> 連線使用 <acronym>NTP</acronym></title> - <para><application>ntpd</application> 並不需要永久的網際網路連線才能正常運作,若有一個 <acronym>PPP</acronym> 連線是設定成需要時撥號,那麼便需要避免 <acronym>NTP</acronym> 的流量觸發撥號或是保持連線不中斷,這可在 <filename>/etc/ppp/ppp.conf</filename> 使用 <literal>filter</literal> 項目設定,例如: </para> + <para><application>ntpd</application> 並不需要永久的網際網路連線才能正常運作,若有一個 <acronym>PPP</acronym> 連線是設定成需要時撥號,那麼便需要避免 <acronym>NTP</acronym> 的流量觸發撥號或是保持連線不中斷,這可在 <filename>/etc/ppp/ppp.conf</filename> 使用 <literal>filter</literal> 項目設定,例如:</para> - <programlisting xml:lang="en"> set filter dial 0 deny udp src eq 123 - # Prevent NTP traffic from initiating dial out - set filter dial 1 permit 0 0 - set filter alive 0 deny udp src eq 123 - # Prevent incoming NTP traffic from keeping the connection open - set filter alive 1 deny udp dst eq 123 - # Prevent outgoing NTP traffic from keeping the connection open - set filter alive 2 permit 0/0 0/0</programlisting> + <programlisting xml:lang="en">set filter dial 0 deny udp src eq 123 +# Prevent NTP traffic from initiating dial out +set filter dial 1 permit 0 0 +set filter alive 0 deny udp src eq 123 +# Prevent incoming NTP traffic from keeping the connection open +set filter alive 1 deny udp dst eq 123 +# Prevent outgoing NTP traffic from keeping the connection open +set filter alive 2 permit 0/0 0/0</programlisting> <para>要取得更詳細的資訊,請參考於 <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> 的 <literal>PACKET FILTERING</literal> 小節以及在 <filename>/usr/share/examples/ppp/</filename> 中的範例。</para> @@ -45749,7 +45748,7 @@ target iqn.2012-06.com.example:target0 { section demonstrates both types of connections.</para> <sect3> - <title>不使用設定檔連線到 Target </title> + <title>不使用設定檔連線到 Target</title> <para xml:lang="en">To connect an initiator to a single target, specify the <acronym>IP</acronym> address of the portal and the name of @@ -45808,7 +45807,7 @@ iqn.2012-06.com.example:target0 10.10.10.10 Authentication f </sect3> <sect3> - <title>使用設定檔連線到 Target </title> + <title>使用設定檔連線到 Target</title> <para xml:lang="en">To connect using a configuration file, create <filename>/etc/iscsi.conf</filename> with contents like @@ -45920,7 +45919,7 @@ iscsictl_flags="-Aa"</programlisting> <para>FreeBSD 提供多個防火牆是為了滿足不同的需求與各種使用者的偏好,每位使用者應評估那一種防火牆最能滿足其需求。</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -45944,7 +45943,7 @@ iscsictl_flags="-Aa"</programlisting> </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -45953,7 +45952,7 @@ iscsictl_flags="-Aa"</programlisting> </itemizedlist> <note> - <para>由於所有防火牆均是以監控所選封包的控制欄位值為基礎運作,所以防火牆規則集的建立者必須很明白 <acronym>TCP/IP</acronym> 是如何運作的,在封包的控制欄位中會有那些數值,這些數值會被如何用在一般的連線階段,要了解更多相關資訊,可參考 <link xlink:href="http://www.ipprimer.com/overview.cfm">Daryl's TCP/IP Primer</link>。</para> + <para>由於所有防火牆均是以監控所選封包的控制欄位值為基礎運作,所以防火牆規則集的建立者必須很明白 <acronym>TCP/IP</acronym> 是如何運作的,在封包的控制欄位中會有那些數值,這些數值會被如何用在一般的連線階段,要了解更多相關資訊,可參考 <link xlink:href="http://www.ipprimer.com">Daryl's TCP/IP Primer</link>。</para> </note> </sect1> @@ -45970,7 +45969,7 @@ iscsictl_flags="-Aa"</programlisting> <para>要查詢一個不清楚的埠號,可參考 <filename>/etc/services</filename>,或者至 <uri xlink:href="http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers">http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers</uri> 查詢埠號來找出特定埠號的用途。</para> - <para>查看這個連結來了解有那些埠號會被木馬程式使用 <uri xlink:href="http://www.sans.org/security-resources/idfaq/oddports.php">http://www.sans.org/security-resources/idfaq/oddports.php</uri>。</para> + <para>查看這個連結來了解有 <uri xlink:href="http://web.archive.org/web/20150803024617/http://www.sans.org/security-resources/idfaq/oddports.php">那些埠號會被木馬程式使用</uri>。</para> <para>FTP 有兩個模式:主動 (Active) 模式與被動 (Passive) 模式,兩者的差異在於取得資料通道的方式,被動模式會較安全,由於資料通道會取自 FTP 連線請求者。想要取得 FTP 與兩種模式更進一步的說明,詳見 <uri xlink:href="http://www.slacksite.com/other/ftp.html">http://www.slacksite.com/other/ftp.html</uri>。</para> @@ -46041,41 +46040,49 @@ iscsictl_flags="-Aa"</programlisting> <para>OpenBSD 計劃有維護一份官方參考文件於 <link xlink:href="http://www.openbsd.org/faq/pf/">PF FAQ</link> ,Peter Hansteen 有維一份詳盡的 <application>PF</application> 教學於 <link xlink:href="http://home.nuug.no/~peter/pf/">http://home.nuug.no/~peter/pf/</link>。</para> <warning> - <para>在閱讀 <link xlink:href="http://www.openbsd.org/faq/pf/">PF FAQ</link> 時,要注意 FreeBSD 採用與 OpenBSD 4.5 相同版本的 <application>PF</application>。</para> + <para xml:lang="en">When reading the <link xlink:href="http://www.openbsd.org/faq/pf/">PF FAQ</link>, + keep in mind that FreeBSD's version of + <application>PF</application> has diverged substantially from + the upstream OpenBSD version over the years. Not all features + work the same way on FreeBSD as they do in OpenBSD and vice + versa.</para> </warning> <para>要詢問有關設定與執行 <application>PF</application> 防火牆的問題可至 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-pf">FreeBSD packet filter 郵遞論壇</link>,在詢問問題之前請先查看該郵遞論壇的封存資料,因您的問題可能已有解答。</para> - <para>更多有關移植 <application>PF</application> 到 FreeBSD 的資訊可至 <uri xlink:href="http://pf4freebsd.love2party.net/">http://pf4freebsd.love2party.net/</uri> 取得。</para> - - <para>由於 FreeBSD 也支援 <application>PF</application> 因此操作手冊特別在此章節對此介紹,本節會示範如何開啟 <application>PF</application> 與 <application>ALTQ</application>,然後提供幾個在 FreeBSD 系統上建立規則集的例子。</para> + <para xml:lang="en">This section of the Handbook focuses on + <application>PF</application> as it pertains to FreeBSD. It + demonstrates how to enable <application>PF</application> and + <application>ALTQ</application>. It also provides several + examples for creating rulesets on a FreeBSD system.</para> <sect2> <title>開啟 <application>PF</application></title> - <para xml:lang="en">In order to use <application>PF</application>, its kernel + <para xml:lang="en">To use <application>PF</application>, its kernel module must be first loaded. This section describes the entries that can be added to <filename>/etc/rc.conf</filename> - in order to enable <application>PF</application>.</para> + to enable <application>PF</application>.</para> - <para xml:lang="en">Start by adding the following line to + <para xml:lang="en">Start by adding <literal>pf_enable=yes</literal> to <filename>/etc/rc.conf</filename>:</para> - <programlisting xml:lang="en">pf_enable="YES"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc pf_enable=yes</userinput></screen> <para xml:lang="en">Additional options, described in <citerefentry><refentrytitle>pfctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>, can be passed to <application>PF</application> when it is started. - Add this entry to <filename>/etc/rc.conf</filename> and - specify any required flags between the two quotes + Add or change this entry in <filename>/etc/rc.conf</filename> + and specify any required flags between the two quotes (<literal>""</literal>):</para> <programlisting xml:lang="en">pf_flags="" # additional flags for pfctl startup</programlisting> <para xml:lang="en"><application>PF</application> will not start if it cannot - find its ruleset configuration file. The default ruleset is - already created and is named - <filename>/etc/pf.conf</filename>. If a custom ruleset has - been saved somewhere else, add a line to + find its ruleset configuration file. By default, FreeBSD does + not ship with a ruleset and there is no + <filename>/etc/pf.conf</filename>. Example rulesets can be + found in <filename>/usr/share/examples/pf/</filename>. If a + custom ruleset has been saved somewhere else, add a line to <filename>/etc/rc.conf</filename> which specifies the full path to the file:</para> @@ -46083,14 +46090,14 @@ iscsictl_flags="-Aa"</programlisting> <para xml:lang="en">Logging support for <application>PF</application> is provided by <citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></citerefentry>. To enable logging support, add - this line to <filename>/etc/rc.conf</filename>:</para> + <literal>pflog_enable=yes</literal> to + <filename>/etc/rc.conf</filename>:</para> - <programlisting xml:lang="en">pflog_enable="YES"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc pflog_enable=yes</userinput></screen> - <para xml:lang="en">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 <citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></citerefentry> when it is - started:</para> + <para xml:lang="en">The following lines can also be added to change the + default location of the log file or to specify any additional + flags to pass to <citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></citerefentry> when it is started:</para> <programlisting xml:lang="en">pflog_logfile="/var/log/pflog" # where pflogd should store the logfile pflog_flags="" # additional flags for pflogd startup</programlisting> @@ -46098,7 +46105,7 @@ pflog_flags="" # additional flags for pflogd startup</programli <para xml:lang="en">Finally, if there is a <acronym>LAN</acronym> behind the firewall and packets need to be forwarded for the computers on the <acronym>LAN</acronym>, or <acronym>NAT</acronym> is - required, add the following option:</para> + required, enable the following option:</para> <programlisting xml:lang="en">gateway_enable="YES" # Enable as LAN gateway</programlisting> @@ -46240,92 +46247,6 @@ device pfsync</programlisting> similar to <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> </sect2> - <sect2> - <title>開啟 <application>ALTQ</application></title> - - <para xml:lang="en">On FreeBSD, <application>ALTQ</application> can be used with - <application>PF</application> to provide Quality of Service - (<acronym>QOS</acronym>). Once - <application>ALTQ</application> is enabled, queues can be - defined in the ruleset which determine the processing priority - of outbound packets.</para> - - <para xml:lang="en">Before enabling <application>ALTQ</application>, refer to - <citerefentry><refentrytitle>altq</refentrytitle><manvolnum>4</manvolnum></citerefentry> to determine if the drivers for the network cards - installed on the system support it.</para> - - <para xml:lang="en"><application>ALTQ</application> is not available as a - loadable kernel module. If the system's interfaces support - <application>ALTQ</application>, create a custom kernel using - the instructions in <xref linkend="kernelconfig"/>. The - following kernel options are available. The first is needed - to enable <application>ALTQ</application>. At least one of - the other options is necessary to specify the queueing - scheduler algorithm:</para> - - <programlisting xml:lang="en">options ALTQ -options ALTQ_CBQ # Class Based Queuing (CBQ) -options ALTQ_RED # Random Early Detection (RED) -options ALTQ_RIO # RED In/Out -options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) -options ALTQ_PRIQ # Priority Queuing (PRIQ)</programlisting> - - <para xml:lang="en">The following scheduler algorithms are available:</para> - - <variablelist> - <varlistentry> - <term xml:lang="en">CBQ</term> - <listitem> - <para xml:lang="en">Class Based Queuing (<acronym>CBQ</acronym>) is - used to divide a connection's bandwidth into different - classes or queues to prioritize traffic based on filter - rules.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term xml:lang="en">RED</term> - <listitem> - <para xml:lang="en">Random Early Detection (<acronym>RED</acronym>) is - used to avoid network congestion by measuring the length - of the queue and comparing it to the minimum and maximum - thresholds for the queue. When the queue is over the - maximum, all new packets are randomly dropped.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term xml:lang="en">RIO</term> - <listitem> - <para xml:lang="en">In Random Early Detection In and Out - (<acronym>RIO</acronym>) mode, <acronym>RED</acronym> - maintains multiple average queue lengths and multiple - threshold values, one for each - <acronym>QOS</acronym> level.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term xml:lang="en">HFSC</term> - <listitem> - <para xml:lang="en">Hierarchical Fair Service Curve Packet Scheduler - (<acronym>HFSC</acronym>) is described in <uri xlink:href="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html">http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html</uri>.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term xml:lang="en">PRIQ</term> - <listitem> - <para xml:lang="en">Priority Queuing (<acronym>PRIQ</acronym>) always - passes traffic that is in a higher queue first.</para> - </listitem> - </varlistentry> - </variablelist> - - <para xml:lang="en">More information about the scheduling - algorithms and example rulesets are available at <uri xlink:href="http://www.openbsd.org/faq/pf/queueing.html">http://www.openbsd.org/faq/pf/queueing.html</uri>.</para> - </sect2> - <sect2 xml:id="pf-tutorial"> <info> <title><application>PF</application> 規則集</title> @@ -46400,7 +46321,7 @@ pass proto udp to any port $udp_services keep state</programlisting> track some state information. For example, when a <acronym>UDP</acronym> request is passed which asks a name server about a domain name, <application>PF</application> will - watch for the response in order to pass it back.</para> + watch for the response to pass it back.</para> <para xml:lang="en">Whenever an edit is made to a ruleset, the new rules must be loaded so they can be used:</para> @@ -46438,7 +46359,7 @@ pass proto udp to any port $udp_services keep state</programlisting> connected to the Internet and <filename>xl0</filename> is connected to the internal network.</para> - <para xml:lang="en">First, enable the gateway in order to let the machine + <para xml:lang="en">First, enable the gateway to let the machine forward the network traffic it receives on one interface to another interface. This <application>sysctl</application> setting will forward <acronym>IPv4</acronym> packets:</para> @@ -46449,11 +46370,12 @@ pass proto udp to any port $udp_services keep state</programlisting> <screen xml:lang="en"><prompt>#</prompt> <userinput>sysctl net.inet6.ip6.forwarding=1</userinput></screen> - <para xml:lang="en">To enable these settings at system boot, add the - following to <filename>/etc/rc.conf</filename>:</para> + <para xml:lang="en">To enable these settings at system boot, use + <citerefentry><refentrytitle>sysrc</refentrytitle><manvolnum>8</manvolnum></citerefentry> to add them to + <filename>/etc/rc.conf</filename>:</para> - <programlisting xml:lang="en">gateway_enable="YES" #for ipv4 -ipv6_gateway_enable="YES" #for ipv6</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc gateway_enable=yes</userinput> +<prompt>#</prompt> <userinput>sysrc ipv6_gateway_enable=yes</userinput></screen> <para xml:lang="en">Verify with <command>ifconfig</command> that both of the interfaces are up and running.</para> @@ -46547,7 +46469,7 @@ pass from { lo0, $localnet } to any keep state</programlisting> flags S/SA keep state</programlisting> <para xml:lang="en">A few other pass rules may be needed. This one enables - <acronym>SSH</acronym> on the external interface::</para> + <acronym>SSH</acronym> on the external interface:</para> <programlisting xml:lang="en">pass in inet proto tcp to $ext_if port ssh</programlisting> @@ -46612,7 +46534,7 @@ pass quick inet proto { tcp, udp } to any port $udp_services keep state</program proxy program called <citerefentry><refentrytitle>ftp-proxy</refentrytitle><manvolnum>8</manvolnum></citerefentry>, which is included in the base system of FreeBSD. The role of the proxy is to dynamically insert and delete rules in the ruleset, using a - set of anchors, in order to correctly handle + set of anchors, to correctly handle <acronym>FTP</acronym> traffic.</para> <para xml:lang="en">To enable the <acronym>FTP</acronym> proxy, add this @@ -46725,7 +46647,7 @@ pass inet proto icmp from any to $ext_if keep state</programlisting> <para xml:lang="en">If other types of <acronym>ICMP</acronym> packets are needed, expand <literal>icmp_types</literal> to a list of those packet types. Type <command>more - /usr/src/contrib/pf/pfctl/pfctl_parser.c</command> to see + /usr/src/sbin/pfctl/pfctl_parser.c</command> to see the list of <acronym>ICMP</acronym> message types supported by <application>PF</application>. Refer to <link xlink:href="http://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml">http://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml</link> for an explanation of each message type.</para> @@ -46777,7 +46699,7 @@ pass out on $ext_if inet proto udp from any to any port 33433 >< 33626 kee <programlisting xml:lang="en">icmp_types = "{ echoreq, unreach }"</programlisting> <para xml:lang="en">Since the pass rule already uses that macro, it does - not need to be modified in order to support the new + not need to be modified to support the new <acronym>ICMP</acronym> type:</para> <programlisting xml:lang="en">pass inet proto icmp all icmp-type $icmp_types keep state</programlisting> @@ -47014,10 +46936,9 @@ pass inet proto tcp from any to $localnet port $tcp_services \ <step> <para xml:lang="en">Install the <package>mail/spamd</package> package - or port. In order to use - <application>spamd</application>'s greylisting - features, <citerefentry><refentrytitle>fdescfs</refentrytitle><manvolnum>5</manvolnum></citerefentry> must be mounted at <filename>/dev/fd</filename>. Add the - following line to + or port. To use <application>spamd</application>'s + greylisting features, <citerefentry><refentrytitle>fdescfs</refentrytitle><manvolnum>5</manvolnum></citerefentry> must be mounted at + <filename>/dev/fd</filename>. Add the following line to <filename>/etc/fstab</filename>:</para> <programlisting xml:lang="en"> fdescfs /dev/fd fdescfs rw 0 0</programlisting> @@ -47041,7 +46962,7 @@ rdr pass on $ext_if inet proto tcp from !<spamd-white> to \ <para xml:lang="en">The two tables <literal><spamd></literal> and <literal><spamd-white></literal> are essential. <acronym>SMTP</acronym> traffic from an address listed - in<literal> <spamd></literal> but not in + in <literal><spamd></literal> but not in <literal><spamd-white></literal> is redirected to the <application>spamd</application> daemon listening at port 8025.</para> @@ -47129,7 +47050,7 @@ rdr pass on $ext_if inet proto tcp from !<spamd-white> to \ <para xml:lang="en">When finished, reload the ruleset, start <application>spamd</application> by typing - <command>service start obspamd</command>, and complete + <command>service obspamd start</command>, and complete the configuration using <command>spamd-setup</command>. Finally, create a <citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></citerefentry> job which calls <command>spamd-setup</command> to update the tables at @@ -47154,8 +47075,8 @@ rdr pass on $ext_if inet proto tcp from !<spamd-white> to \ found at the <link xlink:href="http://www.greylisting.org/">greylisting.org</link> web site. The most amazing thing about greylisting, apart from its simplicity, is that it still works. Spammers and - malware writers have been very slow to adapt in order to - bypass this technique.</para> + malware writers have been very slow to adapt to bypass this + technique.</para> <para xml:lang="en">The basic procedure for configuring greylisting is as follows:</para> @@ -47183,8 +47104,8 @@ rdr pass on $ext_if inet proto tcp from !<spamd-white> to \ <step> <para xml:lang="en">To complete the greylisting setup:</para> - <programlisting xml:lang="en"><prompt>#</prompt> <userinput>service restart obspamd</userinput> -<prompt>#</prompt> <userinput>service start spamlogd</userinput></programlisting> + <programlisting xml:lang="en"><prompt>#</prompt> <userinput>service obspamd restart</userinput> +<prompt>#</prompt> <userinput>service obspamlogd start</userinput></programlisting> </step> </procedure> @@ -47286,6 +47207,92 @@ block drop in quick on $ext_if from $martians to any block drop out quick on $ext_if from any to $martians</programlisting> </sect3> </sect2> + + <sect2> + <title>開啟 <application>ALTQ</application></title> + + <para xml:lang="en">On FreeBSD, <application>ALTQ</application> can be used with + <application>PF</application> to provide Quality of Service + (<acronym>QOS</acronym>). Once + <application>ALTQ</application> is enabled, queues can be + defined in the ruleset which determine the processing priority + of outbound packets.</para> + + <para xml:lang="en">Before enabling <application>ALTQ</application>, refer to + <citerefentry><refentrytitle>altq</refentrytitle><manvolnum>4</manvolnum></citerefentry> to determine if the drivers for the network cards + installed on the system support it.</para> + + <para xml:lang="en"><application>ALTQ</application> is not available as a + loadable kernel module. If the system's interfaces support + <application>ALTQ</application>, create a custom kernel using + the instructions in <xref linkend="kernelconfig"/>. The + following kernel options are available. The first is needed + to enable <application>ALTQ</application>. At least one of + the other options is necessary to specify the queueing + scheduler algorithm:</para> + + <programlisting xml:lang="en">options ALTQ +options ALTQ_CBQ # Class Based Queuing (CBQ) +options ALTQ_RED # Random Early Detection (RED) +options ALTQ_RIO # RED In/Out +options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) +options ALTQ_PRIQ # Priority Queuing (PRIQ)</programlisting> + + <para xml:lang="en">The following scheduler algorithms are available:</para> + + <variablelist> + <varlistentry> + <term xml:lang="en">CBQ</term> + <listitem> + <para xml:lang="en">Class Based Queuing (<acronym>CBQ</acronym>) is + used to divide a connection's bandwidth into different + classes or queues to prioritize traffic based on filter + rules.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term xml:lang="en">RED</term> + <listitem> + <para xml:lang="en">Random Early Detection (<acronym>RED</acronym>) is + used to avoid network congestion by measuring the length + of the queue and comparing it to the minimum and maximum + thresholds for the queue. When the queue is over the + maximum, all new packets are randomly dropped.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term xml:lang="en">RIO</term> + <listitem> + <para xml:lang="en">In Random Early Detection In and Out + (<acronym>RIO</acronym>) mode, <acronym>RED</acronym> + maintains multiple average queue lengths and multiple + threshold values, one for each + <acronym>QOS</acronym> level.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term xml:lang="en">HFSC</term> + <listitem> + <para xml:lang="en">Hierarchical Fair Service Curve Packet Scheduler + (<acronym>HFSC</acronym>) is described in <uri xlink:href="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html">http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html</uri>.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term xml:lang="en">PRIQ</term> + <listitem> + <para xml:lang="en">Priority Queuing (<acronym>PRIQ</acronym>) always + passes traffic that is in a higher queue first.</para> + </listitem> + </varlistentry> + </variablelist> + + <para xml:lang="en">More information about the scheduling + algorithms and example rulesets are available at the <uri xlink:href="https://web.archive.org/web/20151109213426/http://www.openbsd.org/faq/pf/queueing.html">OpenBSD's web archive</uri>.</para> + </sect2> </sect1> <sect1 xml:id="firewalls-ipfw"> @@ -47301,7 +47308,7 @@ block drop out quick on $ext_if from any to $martians</programlisting> <para>FreeBSD 提供一個範本規則集於 <filename>/etc/rc.firewall</filename>,其定義了幾個常見情境會使用的防火牆類型來協助初學的使用者撰寫合適的規則集。<application>IPFW</application> 提供了強大的語法讓進階的使用者可以用來自訂符合環境安全性要求的規則集。</para> - <para>本節將介紹如何開啟 <application>IPFW</application>、規則語法的概要以及示範幾種常見情境所使用的規則集:</para> + <para>本節將介紹如何開啟 <application>IPFW</application>、規則語法的概要以及示範幾種常見情境所使用的規則集。</para> <sect2 xml:id="firewalls-ipfw-enable"> <title>開啟 <application>IPFW</application></title> @@ -47317,40 +47324,21 @@ block drop out quick on $ext_if from any to $martians</programlisting> custom kernel is not needed in order to enable <application>IPFW</application>.</para> - <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL</secondary></indexterm> - - <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE</secondary></indexterm> - - <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</secondary></indexterm> - - <indexterm xml:lang="en"> - <primary><application>IPFW</application></primary> - - <secondary>kernel options</secondary> - </indexterm> - <para xml:lang="en">For those users who wish to statically compile <application>IPFW</application> support into a custom kernel, - refer to the instructions in <xref linkend="kernelconfig"/>. - The following options are available for the - custom kernel configuration file:</para> - - <programlisting xml:lang="en">options IPFIREWALL # enables IPFW -options IPFIREWALL_VERBOSE # enables logging for rules with log keyword -options IPFIREWALL_VERBOSE_LIMIT=5 # limits number of logged packets per-entry -options IPFIREWALL_DEFAULT_TO_ACCEPT # sets default policy to pass what is not explicitly denied -options IPDIVERT # enables NAT</programlisting> + see <xref linkend="firewalls-ipfw-kernelconfig"/>.</para> <para xml:lang="en">To configure the system to enable - <application>IPFW</application> at boot time, add the - following entry to <filename>/etc/rc.conf</filename>:</para> + <application>IPFW</application> at boot time, add + <literal>firewall_enable="YES"</literal> to + <filename>/etc/rc.conf</filename>:</para> - <programlisting xml:lang="en">firewall_enable="YES"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc firewall_enable="YES"</userinput></screen> <para xml:lang="en">To use one of the default firewall types provided by FreeBSD, add another line which specifies the type:</para> - <programlisting xml:lang="en">firewall_type="open"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc firewall_type="open"</userinput></screen> <para xml:lang="en">The available types are:</para> @@ -47402,18 +47390,43 @@ options IPDIVERT # enables NAT</programlisting> <literal>firewall_script</literal> is set to <filename>/etc/ipfw.rules</filename>:</para> - <programlisting xml:lang="en">firewall_script="/etc/ipfw.rules"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc firewall_script="/etc/ipfw.rules"</userinput></screen> - <para xml:lang="en">To enable logging, include this line:</para> + <para xml:lang="en">To enable logging through <citerefentry><refentrytitle>syslogd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, include this + line:</para> - <programlisting xml:lang="en">firewall_logging="YES"</programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc firewall_logging="YES"</userinput></screen> + + <warning> + <para xml:lang="en">Only firewall rules with the <option>log</option> option will + be logged. The default rules do not include this option and it + must be manually added. Therefore it is advisable that the default + ruleset is edited for logging. In addition, log rotation may be + desired if the logs are stored in a separate file.</para> + </warning> <para xml:lang="en">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 attempt, specify the number using this line in <filename>/etc/sysctl.conf</filename>:</para> - <programlisting xml:lang="en">net.inet.ip.fw.verbose_limit=<replaceable>5</replaceable></programlisting> + <screen xml:lang="en"><prompt>#</prompt> <userinput>echo "net.inet.ip.fw.verbose_limit=<replaceable>5</replaceable>" >> /etc/sysctl.conf</userinput></screen> + + <para xml:lang="en">To enable logging through a dedicated interface named + <literal>ipfw0</literal>, add this line to + <filename>/etc/rc.conf</filename> instead:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc firewall_logif="YES"</userinput></screen> + + <para xml:lang="en">Then use <application>tcpdump</application> to see what is + being logged:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>tcpdump -t -n -i ipfw0</userinput></screen> + + <tip> + <para xml:lang="en">There is no overhead due to logging unless + <application>tcpdump</application> is attached.</para> + </tip> <para xml:lang="en">After saving the needed edits, start the firewall. To enable logging limits now, also set the @@ -47810,9 +47823,9 @@ $cmd 00499 deny log all from any to any in via $pif</programlisting> $cmd 00999 deny log all from any to any</programlisting> </sect2> - <sect2 xml:id="network-natd"> + <sect2 xml:id="in-kernel-nat"> <info> - <title>設定 <acronym>NAT</acronym></title> + <title>核心內 <acronym>NAT</acronym></title> <authorgroup> <author xml:lang="en"> @@ -47823,19 +47836,34 @@ $cmd 00999 deny log all from any to any</programlisting> <contrib>Contributed by </contrib> </author> </authorgroup> + + <authorgroup> + <author xml:lang="en"> + <personname> + <firstname>Dries</firstname> + <surname>Michiels</surname> + </personname> + <contrib>Rewritten and updated by </contrib> + </author> + </authorgroup> </info> + <indexterm xml:lang="en"> <primary>NAT</primary> <secondary>and <application>IPFW</application></secondary> </indexterm> - <para xml:lang="en">FreeBSD's built-in <acronym>NAT</acronym> daemon, - <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, works in conjunction with + <para xml:lang="en">FreeBSD's <application>IPFW</application> firewall has two + implementations of <acronym>NAT</acronym>: one being the + userland <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon, and the more recent + <application>IPFW</application>'s built-in + <acronym>NAT</acronym> facility also known as in-kernel + <acronym>NAT</acronym>. Both work in conjunction with <application>IPFW</application> to provide network address translation. This can be used to provide an Internet Connection Sharing solution so that several internal computers - can connect to the Internet using a single + can connect to the Internet using a single public <acronym>IP</acronym> address.</para> <para xml:lang="en">To do this, the FreeBSD machine connected to the Internet @@ -47845,91 +47873,143 @@ $cmd 00999 deny log all from any to any</programlisting> <acronym>LAN</acronym>. Each machine connected to the <acronym>LAN</acronym> should be assigned an <acronym>IP</acronym> address in the private network space, as - defined by <link xlink:href="ftp://ftp.isi.edu/in-notes/rfc1918.txt">RFC - 1918</link>, and have the default gateway set to the - <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> system's internal <acronym>IP</acronym> - address.</para> + defined by <link xlink:href="https://www.ietf.org/rfc/rfc1918.txt">RFC + 1918</link>.</para> - <para xml:lang="en">Some additional configuration is needed in order to - activate the <acronym>NAT</acronym> function of - <application>IPFW</application>. If the system has a custom - kernel, the kernel configuration file needs to include - <literal>option IPDIVERT</literal> along with the other - <literal>IPFIREWALL</literal> options described in <xref linkend="firewalls-ipfw-enable"/>.</para> + <para xml:lang="en">Some additional configuration is needed in order to enable + the in-kernel <acronym>NAT</acronym> function of + <application>IPFW</application>. To enable in-kernel + <acronym>NAT</acronym> support at boot time, the following + must be set in <filename>/etc/rc.conf</filename>:</para> - <para xml:lang="en">To enable <acronym>NAT</acronym> support at boot time, the - following must be in <filename>/etc/rc.conf</filename>:</para> - - <programlisting xml:lang="en">gateway_enable="YES" # enables the gateway -natd_enable="YES" # enables <acronym>NAT</acronym> -natd_interface="rl0" # specify interface name of NIC attached to Internet -natd_flags="-dynamic -m" # -m = preserve port numbers; additional options are listed in <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry></programlisting> + <programlisting xml:lang="en">gateway_enable="YES" +firewall_enable="YES" +firewall_nat_enable="YES"</programlisting> <note> - <para xml:lang="en">It is also possible to specify a configuration file - which contains the options to pass to <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>:</para> - - <programlisting xml:lang="en">natd_flags="-f /etc/natd.conf"</programlisting> - - <para xml:lang="en">The specified file must contain a list of configuration - options, one per line. For example:</para> - - <programlisting xml:lang="en">redirect_port tcp 192.168.0.2:6667 6667 -redirect_port tcp 192.168.0.3:80 80</programlisting> - - <para xml:lang="en">For more information about this configuration file, - consult <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - </note> - - <para xml:lang="en">Next, add the <acronym>NAT</acronym> rules to the firewall - ruleset. When the rulest contains stateful rules, the - positioning of the <acronym>NAT</acronym> rules is critical - and the <literal>skipto</literal> action is used. The + <para xml:lang="en">When <literal>firewall_enable</literal> is not set, + but <literal>firewall_nat_enable</literal> is, it will have + no effect and do nothing, because the in-kernel + <acronym>NAT</acronym> implementation is only compatible + with <application>IPFW</application>.</para></note> + + <para xml:lang="en">When the ruleset contains stateful rules, the positioning + of the <acronym>NAT</acronym> rule is critical and the + <literal>skipto</literal> action is used. The <literal>skipto</literal> action requires a rule number so - that it knows which rule to jump to.</para> + that it knows which rule to jump to. Furthermore, because + of the architecture of <citerefentry><refentrytitle>libalias</refentrytitle><manvolnum>3</manvolnum></citerefentry>, a library implemented + as a kernel module used for the in-kernel + <acronym>NAT</acronym> facility of + <application>IPFW</application>, it is necessary to disable + TCP segmentation offloading, or in short + <acronym>TSO</acronym>. <acronym>TSO</acronym> can be + disabled on a per network interface basis by using + <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</manvolnum></citerefentry> or on a system wide basis using + <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. To disable <acronym>TSO</acronym> system + wide, the following must be set in + <filename>/etc/sysctl.conf</filename>:</para> + + <programlisting xml:lang="en">net.inet.tcp.tso="0"</programlisting> - <para xml:lang="en">The following example builds upon the firewall ruleset + <para xml:lang="en">The example below builds upon the firewall ruleset shown in the previous section. It adds some additional entries and modifies some existing rules in order to configure - the firewall for <acronym>NAT</acronym>. It starts by adding - some additional variables which represent the rule number to - skip to, the <literal>keep-state</literal> option, and a list - of <acronym>TCP</acronym> ports which will be used to reduce - the number of rules:</para> + the firewall for in-kernel <acronym>NAT</acronym>. It starts + by adding some additional variables which represent the rule + number to skip to, the <literal>keep-state</literal> option, + and a list of <acronym>TCP</acronym> ports which will be used + to reduce the number of rules.</para> <programlisting xml:lang="en">#!/bin/sh ipfw -q -f flush cmd="ipfw -q add" -skip="skipto 500" +skip="skipto 1000" pif=dc0 ks="keep-state" good_tcpo="22,25,37,53,80,443,110"</programlisting> + <para xml:lang="en">A <acronym>NAT</acronym> instance will also be + configured. With in-kernel <acronym>NAT</acronym> it is + possible to have multiple <acronym>NAT</acronym> instances + each with their own configuration. Although, for this example + only one <acronym>NAT</acronym> instance is needed; + <acronym>NAT</acronym> instance number 1. The configuration + takes a few arguments and flags such as: <option>if</option> + which indicates the public interface, + <option>same_ports</option> which takes care that alliased + ports and local port numbers are mapped the same, + <option>unreg_only</option> will result in only unregistered + (private) address spaces to be processed by the + <acronym>NAT</acronym> instance, and <option>reset</option> + which will help to keep a functioning <acronym>NAT</acronym> + instance even when the public <acronym>IP</acronym> address of + the <application>IPFW</application> machine changes. For all + possible options that can be passed to a single + <acronym>NAT</acronym> instance configuration consult + <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Furthermore, because of the nature of a + stateful <acronym>NAT</acronym>ing firewall, it is neseccary + to allow translated packets to be reinjected in the firewall + for further processing, this can be achieved by disabling + <option>one_pass</option> behavior at the start of the + firewall script.</para> + + <programlisting xml:lang="en">ipfw disable one_pass +ipfw -q nat 1 config if $pif same_ports unreg_only reset</programlisting> + <para xml:lang="en">The inbound <acronym>NAT</acronym> rule is inserted <emphasis>after</emphasis> the two rules which allow all - traffic on the trusted internal interface and on the loopback - interface and <emphasis>before</emphasis> the + traffic on the trusted and loopback interfaces and after the + reassamble rule but <emphasis>before</emphasis> the <literal>check-state</literal> rule. It is important that the rule number selected for this <acronym>NAT</acronym> rule, in this example <literal>100</literal>, is higher than the first - two rules and lower than the <literal>check-state</literal> - rule:</para> + three rules and lower than the <literal>check-state</literal> + rule. Furthermore, because of the behavior of in-kernel + <acronym>NAT</acronym> it is advised to place a reassamble + rule just before the first <acronym>NAT</acronym> rule and + after the rules that allow traffic on trusted interface. + Normally, <acronym>IP</acronym> fragmentation should not + happen, but when dealing with <acronym>IPSEC/ESP/GRE</acronym> + tunneling traffic it might and the reassmabling of fragments + is necessary before handing the complete packet over to the + in-kernel <acronym>NAT</acronym> engine.</para> + + <note> + <para xml:lang="en">The reassemble rule was not needed with userland + <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> because the internal workings of the + <application>IPFW</application> <literal>divert</literal> + action already takes care of this automatically as also + stated in <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> + + <para xml:lang="en">The current <acronym>NAT</acronym> instance number and + <acronym>NAT</acronym> rule number does not match with the + default <acronym>NAT</acronym> instance number and rule + number created by <filename>rc.firewall</filename> which is + a script to set up the baked-in default firewall rulesets + present in FreeBSD.</para></note> <programlisting xml:lang="en">$cmd 005 allow all from any to any via xl0 # exclude LAN traffic $cmd 010 allow all from any to any via lo0 # exclude loopback traffic -$cmd 100 divert natd ip from any to any in via $pif # NAT any inbound packets +$cmd 099 reass all from any to any in # reassamble inbound packets +$cmd 100 nat 1 ip from any to any in via $pif # NAT any inbound packets # Allow the packet through if it has an existing entry in the dynamic rules table $cmd 101 check-state</programlisting> <para xml:lang="en">The outbound rules are modified to replace the <literal>allow</literal> action with the <literal>$skip</literal> variable, indicating that rule - processing will continue at rule <literal>500</literal>. The + processing will continue at rule <literal>1000</literal>. The seven <literal>tcp</literal> rules have been replaced by rule <literal>125</literal> as the <literal>$good_tcpo</literal> variable contains the seven allowed outbound ports.</para> + <note> + <para xml:lang="en">Remember that <application>IPFW</application>'s + firewall performance is largely determined by the number of + rules present in the ruleset.</para></note> + <programlisting xml:lang="en"># Authorized outbound packets $cmd 120 $skip udp from any to x.x.x.x 53 out via $pif $ks $cmd 121 $skip udp from any to x.x.x.x 67 out via $pif $ks @@ -47937,26 +48017,25 @@ $cmd 125 $skip tcp from any to any $good_tcpo out via $pif setup $ks $cmd 130 $skip icmp from any to any out via $pif $ks</programlisting> <para xml:lang="en">The inbound rules remain the same, except for the very - last rule which removes the <literal> via $pif</literal> in + last rule which removes the <literal>via $pif</literal> in order to catch both inbound and outbound rules. The <acronym>NAT</acronym> rule must follow this last outbound rule, must have a higher number than that last rule, and the rule number must be referenced by the <literal>skipto</literal> action. In this ruleset, rule - number <literal>500</literal> diverts all packets which match - the outbound rules to <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> for - <acronym>NAT</acronym> processing. The next rule allows any - packet which has undergone <acronym>NAT</acronym> processing - to pass.</para> + number <literal>1000</literal> handles passing all packets to + our configured instance for <acronym>NAT</acronym> processing. + The next rule allows any packet which has undergone + <acronym>NAT</acronym> processing to pass.</para> - <programlisting xml:lang="en">$cmd 499 deny log all from any to any -$cmd 500 divert natd ip from any to any out via $pif # skipto location for outbound stateful rules -$cmd 510 allow ip from any to any</programlisting> + <programlisting xml:lang="en">$cmd 999 deny log all from any to any +$cmd 1000 nat 1 ip from any to any out via $pif # skipto location for outbound stateful rules +$cmd 1001 allow ip from any to any</programlisting> <para xml:lang="en">In this example, rules <literal>100</literal>, <literal>101</literal>, <literal>125</literal>, - <literal>500</literal>, and <literal>510</literal> control the - address translation of the outbound and inbound packets so + <literal>1000</literal>, and <literal>1001</literal> control + the address translation of the outbound and inbound packets so that the entries in the dynamic state table always register the private <acronym>LAN</acronym> <acronym>IP</acronym> address.</para> @@ -47973,7 +48052,7 @@ $cmd 510 allow ip from any to any</programlisting> internal <acronym>LAN</acronym>. On matching this rule, two actions take place. First, the <literal>keep-state</literal> action adds an entry to the dynamic state table and the - specified action, <literal>skipto rule 500</literal>, is + specified action, <literal>skipto rule 1000</literal>, is executed. Next, the packet undergoes <acronym>NAT</acronym> and is sent out to the Internet. This packet makes its way to the destination web server, where a response packet is @@ -47992,22 +48071,50 @@ $cmd 510 allow ip from any to any</programlisting> generated as a response is recognized by the <literal>check-state</literal> rule as belonging to an existing session. It is then sent to rule - <literal>500</literal> to undergo + <literal>1000</literal> to undergo <acronym>NAT</acronym> before being released to the outbound interface.</para> + <note> + <para xml:lang="en">Transition from userland <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> to in-kernel + <acronym>NAT</acronym> might seem seamless at first but + there is small catch. When using the GENERIC kernel, + <application>IPFW</application> will load the + <filename>libalias.ko</filename> + kernel module, when <literal>firewall_nat_enable</literal> + is enabled in <filename>rc.conf</filename>. Although, the + loaded module only provides basic <acronym>NAT</acronym> + functionality, whereas the userland implementation + <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> has all functionality available without any + extra configuration from its userland library. All + functionality refers to the following kernel modules that + can additionally be loaded when needed besides the standard + <filename>libalias.ko</filename> kernel module: + <filename>alias_cuseeme.ko</filename>, + <filename>alias_ftp.ko</filename>, + <filename>alias_bbt.ko</filename>, + <filename>skinny.ko</filename>, <filename>irc.ko</filename>, + <filename>alias_pptp.ko</filename> and + <filename>alias_smedia.ko</filename> using the + <literal>kld_list</literal> directive in + <filename>rc.conf</filename> to mimic the full functionality + of the userland implementation. If a custom kernel is used, + the full functionality of the userland library can be + compiled in, in the kernel, using the <option>option + LIBALIAS</option>.</para></note> + <sect3> <title>Port 重新導向</title> - <para xml:lang="en">The drawback with <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> is that the - <acronym>LAN</acronym> clients are not accessible from the - Internet. Clients on the <acronym>LAN</acronym> can make - outgoing connections to the world but cannot receive - incoming ones. This presents a problem if trying to run - Internet services on one of the <acronym>LAN</acronym> + <para xml:lang="en">The drawback with <acronym>NAT</acronym> in general is + that the <acronym>LAN</acronym> clients are not accessible + from the Internet. Clients on the <acronym>LAN</acronym> + can make outgoing connections to the world but cannot + receive incoming ones. This presents a problem if trying to + run Internet services on one of the <acronym>LAN</acronym> client machines. A simple way around this is to redirect - selected Internet ports on the <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> machine to a - <acronym>LAN</acronym> client.</para> + selected Internet ports on the <acronym>NAT</acronym> + providing machine to a <acronym>LAN</acronym> client.</para> <para xml:lang="en">For example, an <acronym>IRC</acronym> server runs on client <systemitem>A</systemitem> and a web server runs on @@ -48016,49 +48123,51 @@ $cmd 510 allow ip from any to any</programlisting> (<acronym>IRC</acronym>) and 80 (<acronym>HTTP</acronym>) must be redirected to the respective machines.</para> - <para xml:lang="en">The syntax for <option>-redirect_port</option> is as + <para xml:lang="en">With in-kernel <acronym>NAT</acronym> all configuration + is done in the <acronym>NAT</acronym> instance + configuration. For a full list of options that an in-kernel + <acronym>NAT</acronym> instance can use, consult + <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The <application>IPFW</application> syntax + follows the syntax of <application>natd</application>. The + syntax for <option>redirect_port</option> is as follows:</para> - <programlisting xml:lang="en"> -redirect_port proto targetIP:targetPORT[-targetPORT] - [aliasIP:]aliasPORT[-aliasPORT] - [remoteIP[:remotePORT[-remotePORT]]]</programlisting> + <programlisting xml:lang="en">redirect_port proto targetIP:targetPORT[-targetPORT] + [aliasIP:]aliasPORT[-aliasPORT] + [remoteIP[:remotePORT[-remotePORT]]]</programlisting> - <para xml:lang="en">In the above example, the argument should be:</para> + <para xml:lang="en">To configure the above example setup, the arguments + should be:</para> - <programlisting xml:lang="en"> -redirect_port tcp 192.168.0.2:6667 6667 - -redirect_port tcp 192.168.0.3:80 80</programlisting> + <programlisting xml:lang="en">redirect_port tcp 192.168.0.2:6667 6667 +redirect_port tcp 192.168.0.3:80 80</programlisting> - <para xml:lang="en">This redirects the proper <acronym>TCP</acronym> ports - to the <acronym>LAN</acronym> client machines.</para> + <para xml:lang="en">After adding these arguments to the configuration of + <acronym>NAT</acronym> instance 1 in the above ruleset, the + <acronym>TCP</acronym> ports will be port forwarded to the + <acronym>LAN</acronym> client machines running the + <acronym>IRC</acronym> and <acronym>HTTP</acronym> + services.</para> + + <programlisting xml:lang="en">ipfw -q nat 1 config if $pif same_ports unreg_only reset \ + redirect_port tcp 192.168.0.2:6667 6667 \ + redirect_port tcp 192.1683.0.3:80 80</programlisting> <para xml:lang="en">Port ranges over individual ports can be indicated with - <option>-redirect_port</option>. For example, + <option>redirect_port</option>. For example, <replaceable>tcp 192.168.0.2:2000-3000 - 2000-3000</replaceable> would redirect all connections + 2000-3000</replaceable> would redirect all connections received on ports 2000 to 3000 to ports 2000 to 3000 on client <systemitem>A</systemitem>.</para> - - <para xml:lang="en">These options can be used when directly running - <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, placed within the - <literal>natd_flags=""</literal> option in - <filename>/etc/rc.conf</filename>, or passed via a - configuration file.</para> - - <para xml:lang="en">For further configuration options, consult - <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry></para> </sect3> <sect3> <title>位址重新導向</title> - <indexterm xml:lang="en"> - <primary>address redirection</primary> - </indexterm> - <para xml:lang="en">Address redirection is useful if more than one <acronym>IP</acronym> address is available. Each <acronym>LAN</acronym> client can be assigned its own - external <acronym>IP</acronym> address by <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, + external <acronym>IP</acronym> address by <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry>, which will then rewrite outgoing packets from the <acronym>LAN</acronym> clients with the proper external <acronym>IP</acronym> address and redirects all traffic @@ -48067,55 +48176,90 @@ $cmd 510 allow ip from any to any</programlisting> also known as static <acronym>NAT</acronym>. For example, if <acronym>IP</acronym> addresses <systemitem class="ipaddress">128.1.1.1</systemitem>, <systemitem class="ipaddress">128.1.1.2</systemitem>, and <systemitem class="ipaddress">128.1.1.3</systemitem> are available, <systemitem class="ipaddress">128.1.1.1</systemitem> can be - used as the <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> machine's external + used as the <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry> machine's external <acronym>IP</acronym> address, while <systemitem class="ipaddress">128.1.1.2</systemitem> and <systemitem class="ipaddress">128.1.1.3</systemitem> are forwarded back to <acronym>LAN</acronym> clients <systemitem>A</systemitem> and <systemitem>B</systemitem>.</para> - <para xml:lang="en">The <option>-redirect_address</option> syntax is as - follows:</para> - - <programlisting xml:lang="en">-redirect_address localIP publicIP</programlisting> - - - <informaltable frame="none" pgwide="1"> - <tgroup cols="2"> - <tbody> - <row> - <entry xml:lang="en">localIP</entry> - <entry xml:lang="en">The internal <acronym>IP</acronym> address of - the <acronym>LAN</acronym> client.</entry> - </row> + <para xml:lang="en">The <option>redirect_address</option> syntax is as + below, where <literal>localIP</literal> is the internal + <acronym>IP</acronym> address of the <acronym>LAN</acronym> + client, and <literal>publicIP</literal> the external + <acronym>IP</acronym> address corresponding to the + <acronym>LAN</acronym> client.</para> - <row> - <entry xml:lang="en">publicIP</entry> - <entry xml:lang="en">The external <acronym>IP</acronym> address - corresponding to the <acronym>LAN</acronym> - client.</entry> - </row> - </tbody> - </tgroup> - </informaltable> + <programlisting xml:lang="en">redirect_address localIP publicIP</programlisting> - <para xml:lang="en">In the example, this argument would read:</para> + <para xml:lang="en">In the example, the arguments would read:</para> - <programlisting xml:lang="en">-redirect_address 192.168.0.2 128.1.1.2 --redirect_address 192.168.0.3 128.1.1.3</programlisting> + <programlisting xml:lang="en">redirect_address 192.168.0.2 128.1.1.2 +redirect_address 192.168.0.3 128.1.1.3</programlisting> - <para xml:lang="en">Like <option>-redirect_port</option>, these arguments - are placed within the <literal>natd_flags=""</literal> - option of <filename>/etc/rc.conf</filename>, or passed via a - configuration file. With address redirection, there is no - need for port redirection since all data received on a + <para xml:lang="en">Like <option>redirect_port</option>, these arguments + are placed in a <acronym>NAT</acronym> instance + configuration. With address redirection, there is no + need for port redirection, as all data received on a particular <acronym>IP</acronym> address is redirected.</para> <para xml:lang="en">The external <acronym>IP</acronym> addresses on the - <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> machine must be active and aliased to the + <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></citerefentry> machine must be active and aliased to the external interface. Refer to <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details.</para> </sect3> + + <sect3> + <title xml:lang="en">Userspace <acronym>NAT</acronym></title> + + <para xml:lang="en">Let us start with a statement: the userspace + <acronym>NAT</acronym> implementation: <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, has + more overhead than in-kernel <acronym>NAT</acronym>. For + <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> to translate packets, the packets have to be + copied from the kernel to userspace and back which brings in + extra overhead that is not present with in-kernel + <acronym>NAT</acronym>.</para> + + <para>要在開機時啟動 Userspace 的 <acronym>NAT</acronym> daemon <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 需在 <filename>/etc/rc.conf</filename> 中做以下最小設定,其中 <option>natd_interface</option> 要設成連接到網際網路的 <acronym>NIC</acronym> 名稱,<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry> script of <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 會自動檢查是否有使用動態 <acronym>IP</acronym> 位址,並且自行設定並處理。</para> + + <programlisting xml:lang="en">gateway_enable="YES" +natd_enable="YES" +natd_interface="rl0"</programlisting> + + <para xml:lang="en">In general, the above ruleset as explained for in-kernel + <acronym>NAT</acronym> can also be used together with + <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The only exceptions are the configuration of + the in-kernel <acronym>NAT</acronym> instance <literal>(ipfw + -q nat 1 config ...)</literal> not being applicable any + more, rule number 100 and 1000 will have to change sligthly + as below, and reassemble rule 99 is not needed anymore + as the <option>divert</option> action is used which covers + fragmentation.</para> + + <programlisting xml:lang="en">$cmd 100 divert natd ip from any to any in via $pif +$cmd 1000 divert natd ip from any to any out via $pif</programlisting> + + <para xml:lang="en">To configure port or address redirection, a similar + syntax as with in-kernel <acronym>NAT</acronym> is used. + Although, now, instead of specifying the configuration in + our ruleset script like with in-kernel + <acronym>NAT</acronym>, configuration of <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry> is + best done in a configuration file. To do this, an extra + flag must be passed via <filename>/etc/rc.conf</filename> + which specifies the path of the configuration file.</para> + + <programlisting xml:lang="en">natd_flags="-f /etc/natd.conf"</programlisting> + + <note> + <para xml:lang="en">The specified file must contain a list of + configuration options, one per line. For more information + about the configuration file and possible variables, + consult <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Below are two example + entries, one per line:</para> + + <programlisting xml:lang="en">redirect_port tcp 192.168.0.2:6667 6667 +redirect_address 192.168.0.3 128.1.1.3</programlisting></note> + </sect3> </sect2> <sect2 xml:id="firewalls-ipfw-cmd"> @@ -48285,6 +48429,43 @@ $cmd 00611 allow udp from any to $odns 53 out via $oif $ks <prompt>#</prompt> <userinput>ipfw -q add 00611 allow udp from any to 192.0.2.11 53 out via tun0 keep-state</userinput></screen> </sect3> </sect2> + + <sect2 xml:id="firewalls-ipfw-kernelconfig"> + <title><application>IPFW</application> 核心選項</title> + + <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL</secondary></indexterm> + + <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE</secondary></indexterm> + + <indexterm><primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</secondary></indexterm> + + <indexterm xml:lang="en"> + <primary><application>IPFW</application></primary> + + <secondary>kernel options</secondary> + </indexterm> + <para xml:lang="en">In order to statically compile + <application>IPFW</application> support into a custom kernel, + refer to the instructions in <xref linkend="kernelconfig"/>. + The following options are available for the + custom kernel configuration file:</para> + + <programlisting xml:lang="en">options IPFIREWALL # enables IPFW +options IPFIREWALL_VERBOSE # enables logging for rules with log keyword to syslogd(8) +options IPFIREWALL_VERBOSE_LIMIT=5 # limits number of logged packets per-entry +options IPFIREWALL_DEFAULT_TO_ACCEPT # sets default policy to pass what is not explicitly denied +options IPFIREWALL_NAT # enables in-kernel NAT support +options IPFIREWALL_NAT64 # enables in-kernel NAT64 support +options IPFIREWALL_NPTV6 # enables in-kernel IPv6 NPT support +options IPFIREWALL_PMOD # enables protocols modification module support +options IPDIVERT # enables NAT through natd(8)</programlisting> + + <note> + <para xml:lang="en"><application>IPFW</application> can be loaded as + a kernel module: options above are built by default + as modules or can be set at runtime using tunables.</para> + </note> + </sect2> </sect1> <sect1 xml:id="firewalls-ipf"> @@ -49377,6 +49558,326 @@ LOG_ERR - packets which have been logged and which can be considered short due t message.</para> </sect2> </sect1> + + <sect1 xml:id="firewalls-blacklistd"> + <title xml:lang="en">Blacklistd</title> + + <para xml:lang="en">Blacklistd is a daemon listening to sockets to receive + notifications from other daemons about connection attempts + that failed or were successful. It is most widely used in + blocking too many connection attempts on open ports. A + prime example is <application>SSH</application> running on + the internet getting a lot of requests from bots or scripts + trying to guess passwords and gain access. Using + <application>blacklistd</application>, the daemon can notify + the firewall to create a filter rule to block excessive + connection attempts from a single source after a number of + tries. Blacklistd was first developed on + NetBSD and appeared there in version 7. FreeBSD 11 + imported blacklistd from NetBSD.</para> + + <para xml:lang="en">This chapter describes how to set up blacklistd, + configure it, and provides examples on how to use it. + Readers should be familiar with basic firewall concepts like + rules. For details, refer to the firewall chapter. PF is + used in the examples, but other firewalls available on + FreeBSD should be able to work with blacklistd, too.</para> + + <sect2> + <title>開啟 Blacklistd</title> + + <para xml:lang="en">The main configuration for blacklistd is stored in + <citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Various command line options are + also available to change blacklistd's run-time behavior. + Persistent configuration across reboots should be stored + in <filename>/etc/blacklistd.conf</filename>. To enable + the daemon during system boot, add a + <literal>blacklistd_enable</literal> line to + <filename>/etc/rc.conf</filename> like this:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc blacklistd_enable=yes</userinput></screen> + + <para xml:lang="en">To start the service manually, run this command:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>service blacklistd start</userinput></screen> + </sect2> + + <sect2> + <title>建立 Blacklistd 規則集</title> + + <para xml:lang="en">Rules for blacklistd are configured in + <citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> with one entry per line. Each + rule contains a tuple separated by spaces or tabs. Rules + either belong to a <literal>local</literal> or a + <literal>remote</literal>, which applies to the machine + where blacklistd is running or an outside source, + respectively.</para> + + <sect3> + <title>本地規則</title> + + <para xml:lang="en">An example blacklistd.conf entry for a local rule + looks like this:</para> + + <programlisting xml:lang="en">[local] +ssh stream * * * 3 24h</programlisting> + + <para xml:lang="en">All rules that follow the <literal>[local]</literal> + section are treated as local rules (which is the + default), applying to the local machine. When a + <literal>[remote]</literal> section is encountered, all + rules that follow it are handled as remote machine + rules.</para> + + <para xml:lang="en">Seven fields define a rule separated by either tabs + or spaces. The first four fields identify the traffic + that should be blacklisted. The three fields that + follow define backlistd's behavior. Wildcards are + denoted as asterisks (<literal>*</literal>), matching + anything in this field. The first field defines the + location. In local rules, these are the network ports. + The syntax for the location field is as follows:</para> + + <programlisting xml:lang="en">[<replaceable>address</replaceable>|<replaceable>interface</replaceable>][/<replaceable>mask</replaceable>][:<replaceable>port</replaceable>]</programlisting> + + <para xml:lang="en">Adressses can be specified as IPv4 in numeric format + or IPv6 in square brackets. An interface name like + <literal><replaceable>em0</replaceable></literal> can also + be used.</para> + + <para xml:lang="en">The socket type is defined by the second field. TCP + sockets are of type <literal>stream</literal>, whereas UDP + is denoted as <literal>dgram</literal>. The example above + uses TCP, since SSH is using that protocol.</para> + + <para xml:lang="en">A protocol can be used in the third field of a + blacklistd rule. The following protocols can be used: + <literal>tcp</literal>, <literal>udp</literal>, + <literal>tcp6</literal>, <literal>udp6</literal>, or + numeric. A wildcard, like in the example, is typically + used to match all protocols unless there is a reason to + distinguish traffic by a certain protocol.</para> + + <para xml:lang="en">In the fourth field, the effective user or owner of + the daemon process that is reporting the event is defined. + The username or <acronym>UID</acronym> can be used here, + as well as a wildcard (see example rule above).</para> + + <para xml:lang="en">The packet filter rule name is declared by the fifth + field, which starts the behavior part of the rule. By + default, blacklistd puts all blocks under a pf anchor + called <literal>blacklistd</literal> in + <filename>pf.conf</filename> like this:</para> + + <programlisting xml:lang="en">anchor "blacklistd/*" in on $ext_if +block in +pass out</programlisting> + + <para xml:lang="en">For separate blacklists, an anchor name can be used in + this field. In other cases, the wildcard will suffice. + When a name starts with a hyphen (<literal>-</literal>) it + means that an anchor with the default rule name prepended + should be used. A modified example from the above using + the hyphen would look like this:</para> + + <programlisting xml:lang="en">ssh stream * * -ssh 3 24h</programlisting> + + <para xml:lang="en">With such a rule, any new blacklist rules are added to + an anchor called <literal>blacklistd-ssh</literal>.</para> + + <para xml:lang="en">To block whole subnets for a single rule violation, a + <literal>/</literal> in the rule name can be used. This + causes the remaining portion of the name to be interpreted + as the mask to be applied to the address specified in + the rule. For example, this rule would block every + address adjoining <literal>/24</literal>.</para> + + <programlisting xml:lang="en">22 stream tcp * */24 3 24h</programlisting> + + <note> + <para xml:lang="en">It is important to specify the proper + protocol here. IPv4 and IPv6 treat /24 differently, + that is the reason why <literal>*</literal> cannot be + used in the third field for this rule.</para> + </note> + + <para xml:lang="en">This rule defines that if any one host in that network + is misbehaving, everything else on that network will be + blocked, too.</para> + + <para xml:lang="en">The sixth field, called <literal>nfail</literal>, sets + the number of login failures required to blacklist the + remote IP in question. When a wildcard is used at this + position, it means that blocks will never happen. In the + example rule above, a limit of three is defined meaning + that after three attempts to log into + <application>SSH</application> on one connection, the IP + is blocked.</para> + + <para xml:lang="en">The last field in a blacklistd rule definition + specifies how long a host is blacklisted. The default + unit is seconds, but suffixes like <literal>m</literal>, + <literal>h</literal>, and <literal>d</literal> can also be + specified for minutes, hours, and days, + respectively.</para> + + <para xml:lang="en">The example rule in its entirety means that after + three times authenticating to + <application>SSH</application> will result in a new PF + block rule for that host. Rule matches are performed by + first checking local rules one after another, from most + specific to least specific. When a match occurs, the + <literal>remote</literal> rules are applied and the name, + <literal>nfail</literal>, and disable fields are changed + by the <literal>remote</literal> rule that matched.</para> + </sect3> + + <sect3> + <title>遠端規則</title> + + <para xml:lang="en">Remote rules are used to specify how blacklistd + changes its behavior depending on the remote host + currently being evaluated. Each field in a remote rule + is the same as in a local rule. The only difference is + in the way blacklistd is using them. To explain it, + this example rule is used:</para> + + <programlisting xml:lang="en">[remote] +203.0.113.128/25 * * * =/25 = 48h</programlisting> + + <para xml:lang="en">The address field can be an IP address (either v4 or + v6), a port or both. This allows setting special rules + for a specific remote address range like in this example. + The fields for type, protocol and owner are identically + interpreted as in the local rule.</para> + + <para xml:lang="en">The name fields is different though: the equal sign + (<literal>=</literal>) in a remote rule tells blacklistd + to use the value from the matching local rule. It means + that the firewall rule entry is taken and the + <systemitem class="netmask">/25</systemitem> prefix (a + netmask of <systemitem class="netmask">255.255.255.128</systemitem>) is added. + When a connection from that address range is blacklisted, + the entire subnet is affected. A PF anchor name can also + be used here, in which case blacklistd will add rules for + this address block to the anchor of that name. The + default table is used when a wildcard is specified.</para> + + <para xml:lang="en">A custom number of failures in the + <literal>nfail</literal> column can be defined for an + address. This is useful for exceptions to a specific + rule, to maybe allow someone a less strict application + of rules or a bit more leniency in login tries. + Blocking is disabled when an asterisk is used in this + sixth field.</para> + + <para xml:lang="en">Remote rules allow a stricter enforcement of limits + on attempts to log in compared to attempts coming from a + local network like an office.</para> + </sect3> + </sect2> + + <sect2> + <title>Blacklistd 客戶端設定</title> + + <para xml:lang="en">There are a few software packages in FreeBSD that can + utilize blacklistd's functionality. The two most + prominent ones are <citerefentry><refentrytitle>ftpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> and <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</manvolnum></citerefentry> to block + excessive connection attempts. To activate blacklistd in + the SSH daemon, add the following line to + <filename>/etc/ssh/sshd_config</filename>:</para> + + <programlisting xml:lang="en">UseBlacklist yes</programlisting> + + <para>接著重新啟動 sshd 來使變更生效。</para> + + <para xml:lang="en">Blacklisting for <citerefentry><refentrytitle>ftpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> is enabled using + <literal>-B</literal>, either in + <filename>/etc/inetd.conf</filename> or as a + flag in <filename>/etc/rc.conf</filename> like + this:</para> + + <programlisting xml:lang="en">ftpd_flags="-B"</programlisting> + + <para xml:lang="en">That is all that is needed to make these programs + talk to blacklistd.</para> + </sect2> + + <sect2> + <title>Blacklistd 管理</title> + + <para xml:lang="en">Blacklistd provides the user with a management utility + called <citerefentry><refentrytitle>blacklistctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. It displays blocked + addresses and networks that are blacklisted by the rules + defined in <citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. To see the + list of currently blocked hosts, use + <command>dump</command> combined with <option>-b</option> + like this.</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>blacklistctl dump -b</userinput> + address/ma:port id nfail last access +213.0.123.128/25:22 OK 6/3 2019/06/08 14:30:19</screen> + + <para xml:lang="en">This example shows that there were 6 out of three + permitted attempts on port 22 coming from the address + range <systemitem class="netmask">213.0.123.128/25</systemitem>. There + are more attempts listed than are allowed because SSH + allows a client to try multiple logins on a single TCP + connection. A connection that is currently going on is + not stopped by blacklistd. The last connection attempt is + listed in the <literal>last access</literal> column of the + output.</para> + + <para xml:lang="en">To see the remaining time that this host will be on + the blacklist, add <option>-r</option> to the previous + command.</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>blacklistctl dump -br</userinput> + address/ma:port id nfail remaining time +213.0.123.128/25:22 OK 6/3 36s</screen> + + <para xml:lang="en">In this example, there are 36s seconds left until this + host will not be blocked any more.</para> + </sect2> + + <sect2> + <title>從封鎖清單移除主機</title> + + <para xml:lang="en">Sometimes it is necessary to remove a host from the + block list before the remaining time expires. + Unfortunately, there is no functionality in blacklistd to + do that. However, it is possible to remove the address + from the PF table using pfctl. For each blocked port, + there is a child anchor inside the blacklistd anchor + defined in <filename>/etc/pf.conf</filename>. For + example, if there is a child anchor for blocking port 22 + it is called <literal>blacklistd/22</literal>. There is a + table inside that child anchor that contains the blocked + addresses. This table is called port followed by the port + number. In this example, it would be called + <literal>port22</literal>. With that information at hand, + it is now possible to use <citerefentry><refentrytitle>pfctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> to display all + addresses listed like this:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pfctl -a <replaceable>blacklistd/22</replaceable> -t <replaceable>port22</replaceable> -T show</userinput> +... +213.0.123.128/25 +...</screen> + + <para xml:lang="en">After identifying the address to be unblocked from the + list, the following command removes it from the list:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>pfctl -a <replaceable>blacklistd/22</replaceable> -T delete <replaceable>213.0.123.128/25</replaceable></userinput></screen> + + <para xml:lang="en">The address is now removed from PF, but will still + show up in the blacklistctl list, since it does not know + about any changes made in PF. The entry in blacklistd's + database will eventually expire and be removed from its + output eventually. The entry will be added again if the + host is matching one of the block rules in blacklistd + again.</para> + </sect2> + </sect1> </chapter> @@ -49394,7 +49895,7 @@ LOG_ERR - packets which have been logged and which can be considered short due t <para xml:lang="en">This chapter covers a number of advanced networking topics.</para> - <para>讀完這章,您將了解︰</para> + <para>讀完這章,您將了解:</para> <itemizedlist> <listitem> @@ -49433,9 +49934,13 @@ LOG_ERR - packets which have been logged and which can be considered short due t <listitem> <para>如何在 FreeBSD 上設定多個 <acronym>VLAN</acronym>。</para> </listitem> + + <listitem> + <para xml:lang="en">Configure bluetooth headset.</para> + </listitem> </itemizedlist> - <para>在開始閱讀這章之前,您需要︰</para> + <para>在開始閱讀這章之前,您需要:</para> <itemizedlist> <listitem> @@ -50245,6 +50750,27 @@ device ath_rate_sample # SampleRate tx rate control for ath</programlisting> ath0: [ITHREAD] ath0: AR2413 mac 7.9 RF2413 phy 4.5</screen> </sect3> + + <sect3> + <title>設定正確的區域</title> + + <para xml:lang="en">Since the regulatory situation is different + in various parts of the world, it is necessary to + correctly set the domains that apply to your location to + have the correct information about what channels can be + used.</para> + + <para xml:lang="en">The available region definitions can be found in + <filename>/etc/regdomain.xml</filename>. To set the data at + runtime, use <command>ifconfig</command>:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> regdomain <replaceable>ETSI</replaceable> country <replaceable>AT</replaceable></userinput></screen> + + <para xml:lang="en">To persist the settings, add it to + <filename>/etc/rc.conf</filename>:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>sysrc create_args_wlan0="country <replaceable>AT</replaceable> regdomain <replaceable>ETSI</replaceable>"</userinput></screen> + </sect3> </sect2> <sect2> @@ -51024,8 +51550,7 @@ wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 </callout> </calloutlist> - <para xml:lang="en">Add the following to - <filename>/etc/rc.conf</filename>:</para> + <para>將以下參數加到 <filename>/etc/rc.conf</filename>:</para> <programlisting xml:lang="en">wlans_ath0="wlan0" ifconfig_wlan0="WPA DHCP"</programlisting> @@ -51703,8 +52228,9 @@ ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3, <para xml:lang="en">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 stack, the output should be - similar to the following:</para> + the device. Starting the bluetooth stack might require + <citerefentry><refentrytitle>hcsecd</refentrytitle><manvolnum>8</manvolnum></citerefentry> to be started. When starting the stack, the + output should be similar to the following:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service bluetooth start ubt0</userinput> BD_ADDR: 00:02:72:00:d4:1a @@ -51758,9 +52284,9 @@ Inquiry complete. Status: No error [00]</screen> Bluetooth device, similar to the <acronym>MAC</acronym> address of a network card. This address is needed for further communication with a device and it is possible to assign a - human readable name to a BD_ADDR. Information regarding the - known Bluetooth hosts is contained in - <filename>/etc/bluetooth/hosts</filename>. The following + human readable name to a <literal>BD_ADDR</literal>. + Information regarding the known Bluetooth hosts is contained + in <filename>/etc/bluetooth/hosts</filename>. The following example shows how to obtain the human readable name that was assigned to the remote device:</para> @@ -51773,11 +52299,25 @@ Name: Pav's T39</screen> <quote>your.host.name (ubt0)</quote>. The name assigned to the local device can be changed at any time.</para> + <para xml:lang="en">Remote devices can be assigned aliases in + <filename>/etc/bluetooth/hosts</filename>. More information + about <filename>/etc/bluetooth/hosts</filename> file might be + found in <citerefentry><refentrytitle>bluetooth.hosts</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para> + <para xml:lang="en">The Bluetooth system provides a point-to-point connection between two Bluetooth units, or a point-to-multipoint connection which is shared among several Bluetooth devices. - The following example shows how to obtain the list of active - baseband connections for the local device:</para> + The following example shows how to create a connection to a + remote device:</para> + + <screen xml:lang="en"><prompt>%</prompt> <userinput>hccontrol -n ubt0hci create_connection <replaceable>BT_ADDR</replaceable></userinput></screen> + + <para xml:lang="en"><literal>create_connection</literal> accepts + <literal>BT_ADDR</literal> as well as host aliases in + <filename>/etc/bluetooth/hosts</filename>.</para> + + <para xml:lang="en">The following example shows how to obtain the list of + active baseband connections for the local device:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>hccontrol -n ubt0hci read_connection_list</userinput> Remote BD_ADDR Handle Type Mode Role Encrypt Pending Queue State @@ -51865,7 +52405,7 @@ hcsecd[16484]: Sending PIN_Code_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29: </sect2> <sect2> - <title>使用 <acronym>PPP</acronym> Profile 存取網路 </title> + <title>使用 <acronym>PPP</acronym> Profile 存取網路</title> <para xml:lang="en">A Dial-Up Networking (<acronym>DUN</acronym>) profile can be used to configure a cellular phone as a wireless modem for @@ -54673,7 +55213,7 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ <para>除此之外,FreeBSD 也可透過匿名 <acronym>FTP</acronym> 從下列鏡像站取得。要透過匿名 <acronym>FTP</acronym> 取得 FreeBSD 時,請先嘗試使用臨近的站台。列在 <quote>主要鏡像站</quote> 中的鏡像站通常會有完整的 FreeBSD 封存檔 (每一個架構目前所有可用的版本),但若要考慮下載速度,可能要使用您所在國家或區域的站台。區域的站台會有熱門架構最近期的版本,但不會有完整的 FreeBSD 封存檔。所有站台皆提供匿名 <acronym>FTP</acronym> 存取只有部份站台會以其他方式提供存取。每個站台可用的存取方式會列在主機名稱後的括號當中。</para> -<para><link linkend="central-ftp">中央伺服器</link>、<link linkend="mirrors-primary-ftp">主要鏡像站</link>、<link linkend="mirrors-am-ftp">亞美尼亞 (Armenia)</link>、<link linkend="mirrors-au-ftp">澳洲 (Australia)</link>、<link linkend="mirrors-at-ftp">奧地利 (Austria)</link>、<link linkend="mirrors-br-ftp">巴西 (Brazil)</link>、<link linkend="mirrors-cn-ftp">中國 (China)</link>、<link linkend="mirrors-cz-ftp">捷克 (Czech Republic)</link>、<link linkend="mirrors-dk-ftp">丹麥 (Denmark)</link>、<link linkend="mirrors-ee-ftp">愛沙尼亞 (Estonia)</link>、<link linkend="mirrors-fi-ftp">芬蘭 (Finland)</link>、<link linkend="mirrors-fr-ftp">法國 (France)</link>、<link linkend="mirrors-de-ftp">德國 (Germany)</link>、<link linkend="mirrors-gr-ftp">希臘 (Greece)</link>、<link linkend="mirrors-hk-ftp">香港 (Hong Kong)</link>、<link linkend="mirrors-ie-ftp">愛爾蘭 (Ireland)</link>、<link linkend="mirrors-jp-ftp">日本 (Japan)</link>、<link linkend="mirrors-kr-ftp">韓國 (Korea)</link>、<link linkend="mirrors-lv-ftp">拉脫維亞 (Latvia)</link>、<link linkend="mirrors-lt-ftp">立陶宛 (Lithuania)</link>、<link linkend="mirrors-nl-ftp">荷蘭 (Netherlands)</link>、<link linkend="mirrors-nz-ftp">紐西蘭 (New Zealand)</link>、<link linkend="mirrors-no-ftp">挪威 (Norway)</link>、<link linkend="mirrors-pl-ftp">波蘭 (Poland)</link>、<link linkend="mirrors-ru-ftp">俄羅斯 (Russia)</link>、<link linkend="mirrors-sa-ftp">沙烏地阿拉伯 (Saudi Arabia)</link>、<link linkend="mirrors-si-ftp">斯洛維尼亞 (Slovenia)</link>、<link linkend="mirrors-za-ftp">南非 (South Africa)</link>、<link linkend="mirrors-es-ftp">西班牙 (Spain)</link>、<link linkend="mirrors-se-ftp">瑞典 (Sweden)</link>、<link linkend="mirrors-ch-ftp">瑞士 (Switzerland)</link>、<link linkend="mirrors-tw-ftp">台灣 (Taiwan)</link>、<link linkend="mirrors-ua-ftp">烏克蘭 (Ukraine)</link>、<link linkend="mirrors-uk-ftp">英國 (United Kingdom)</link>、<link linkend="mirrors-us-ftp">美國 (USA)</link>。</para> +<para><link linkend="central-ftp">中央伺服器</link>、<link linkend="mirrors-primary-ftp">主要鏡像站</link>、<link linkend="mirrors-am-ftp">亞美尼亞 (Armenia)</link>、<link linkend="mirrors-au-ftp">澳洲 (Australia)</link>、<link linkend="mirrors-at-ftp">奧地利 (Austria)</link>、<link linkend="mirrors-br-ftp">巴西 (Brazil)</link>、<link linkend="mirrors-cz-ftp">捷克 (Czech Republic)</link>、<link linkend="mirrors-dk-ftp">丹麥 (Denmark)</link>、<link linkend="mirrors-ee-ftp">愛沙尼亞 (Estonia)</link>、<link linkend="mirrors-fi-ftp">芬蘭 (Finland)</link>、<link linkend="mirrors-fr-ftp">法國 (France)</link>、<link linkend="mirrors-de-ftp">德國 (Germany)</link>、<link linkend="mirrors-gr-ftp">希臘 (Greece)</link>、<link linkend="mirrors-hk-ftp">香港 (Hong Kong)</link>、<link linkend="mirrors-ie-ftp">愛爾蘭 (Ireland)</link>、<link linkend="mirrors-jp-ftp">日本 (Japan)</link>、<link linkend="mirrors-kr-ftp">韓國 (Korea)</link>、<link linkend="mirrors-lv-ftp">拉脫維亞 (Latvia)</link>、<link linkend="mirrors-lt-ftp">立陶宛 (Lithuania)</link>、<link linkend="mirrors-nl-ftp">荷蘭 (Netherlands)</link>、<link linkend="mirrors-nz-ftp">紐西蘭 (New Zealand)</link>、<link linkend="mirrors-no-ftp">挪威 (Norway)</link>、<link linkend="mirrors-pl-ftp">波蘭 (Poland)</link>、<link linkend="mirrors-ru-ftp">俄羅斯 (Russia)</link>、<link linkend="mirrors-sa-ftp">沙烏地阿拉伯 (Saudi Arabia)</link>、<link linkend="mirrors-si-ftp">斯洛維尼亞 (Slovenia)</link>、<link linkend="mirrors-za-ftp">南非 (South Africa)</link>、<link linkend="mirrors-es-ftp">西班牙 (Spain)</link>、<link linkend="mirrors-se-ftp">瑞典 (Sweden)</link>、<link linkend="mirrors-ch-ftp">瑞士 (Switzerland)</link>、<link linkend="mirrors-tw-ftp">台灣 (Taiwan)</link>、<link linkend="mirrors-ua-ftp">烏克蘭 (Ukraine)</link>、<link linkend="mirrors-uk-ftp">英國 (United Kingdom)</link>、<link linkend="mirrors-us-ftp">美國 (USA)</link>。</para> @@ -54790,17 +55330,6 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </listitem> </varlistentry> <varlistentry> - <term><anchor xml:id="mirrors-cn-ftp"/>中國 (China)</term> - <listitem> - <para>若有任何問題,請聯絡此區域的主機管理者 <email>hostmaster@cn.FreeBSD.org</email>。</para> - <itemizedlist> - <listitem> - <para xml:lang="en"><link xlink:href="ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/">ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/</link> (ftp) </para> - </listitem> - </itemizedlist> - </listitem> - </varlistentry> - <varlistentry> <term><anchor xml:id="mirrors-cz-ftp"/>捷克 (Czech Republic)</term> <listitem> <para>若有任何問題,請聯絡此區域的主機管理者 <email>hostmaster@cz.FreeBSD.org</email>。</para> @@ -55337,7 +55866,7 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ <sect2 xml:id="svn-svnlite"> <title xml:lang="en"><application>Svnlite</application></title> - <para><command>svnlite</command> 為輕量化版的 <application>Subversion</application>,會隨 FreeBSD 安裝。<application>Subversion</application> 的 Port 或套件版本僅在要使用其 Python 或 Perl <acronym>API</acronym> 或想要使用最新版本 Subversion 時才需安裝,</para> + <para>輕量化版的 <application>Subversion</application> <command>svnlite</command> 已會隨 FreeBSD 安裝。Port 或套件版的 <application>Subversion</application> 僅在要使用其 Python 或 Perl <acronym>API</acronym> 時需要,或是新想要使用最新版本 Subversion 時才需要。</para> <para>與正常 <application>Subversion</application> 唯一的差別只是指令名稱改為 <literal>svnlite</literal>。</para> </sect2> @@ -55442,14 +55971,7 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ <sect1 xml:id="mirrors-rsync"> <title>使用 <application>rsync</application></title> - <para xml:lang="en">These sites make FreeBSD available through the rsync - protocol. The <application>rsync</application> utility - transfers only the differences between two sets of files. - This is useful for mirror sites of the FreeBSD - <acronym>FTP</acronym> server. The - <application>rsync</application> suite is available for many - operating systems, on FreeBSD, see the <package>net/rsync</package> - port or use the package.</para> + <para>這些站台讓 FreeBSD 可透過 rsync 通訊協定取得。<application>rsync</application> 工具只會傳輸兩個檔案集之間的差異,所以能夠大大的加快在網路上同步的速度,這對大多數 FreeBSD <acronym>FTP</acronym> 伺服器的鏡像站非常有用。<application>rsync</application> 在許多作業系統上也可以使用,在 FreeBSD 上請參考 <package>net/rsync</package> Port 或使用套件。</para> <variablelist> <varlistentry> @@ -56135,14 +56657,6 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </listitem> <listitem> - <para xml:lang="en"><link xlink:href="https://planet.freebsd.org/">Planet - FreeBSD</link> offers an aggregation feed of dozens of blogs - written by FreeBSD developers. Many developers use this to - post quick notes about what they are working on, new - patches, and other works in progress.</para> - </listitem> - - <listitem> <para xml:lang="en">The <link xlink:href="http://www.youtube.com/bsdconferences">BSDConferences YouTube Channel</link> provides a collection of high quality videos from BSD conferences around the world. @@ -56551,6 +57065,12 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </row> <row> + <entry xml:lang="en"><link xlink:href="https://mail.kde.org/mailman/listinfo/kde-freebsd">freebsd-kde</link></entry> + <entry xml:lang="en">Porting <application>KDE</application> and + <application>KDE</application> applications</entry> + </row> + + <row> <entry xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-lfs">freebsd-lfs</link></entry> <entry xml:lang="en">Porting LFS to FreeBSD</entry> </row> @@ -56594,6 +57114,11 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </row> <row> + <entry xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ocaml">freebsd-ocaml</link></entry> + <entry xml:lang="en">FreeBSD-specific OCaml discussions</entry> + </row> + + <row> <entry xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-office">freebsd-office</link></entry> <entry xml:lang="en">Office applications on FreeBSD</entry> </row> @@ -57029,13 +57554,6 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </row> <row> - <entry xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/svn-src-stable-12">svn-src-stable-12</link></entry> - <entry xml:lang="en"><filename>/usr/src</filename></entry> - <entry xml:lang="en">All changes to the <filename>stable/12</filename> - branch of the src Subversion repository</entry> - </row> - - <row> <entry xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/svn-src-stable-other">svn-src-stable-other</link></entry> <entry xml:lang="en"><filename>/usr/src</filename></entry> <entry xml:lang="en">All changes to the @@ -57816,6 +58334,21 @@ ifconfig_<replaceable>camera</replaceable>="inet <replaceable>192.168.20.20/24</ </varlistentry> <varlistentry> + <term xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ocaml">freebsd-ocaml</link></term> + + <listitem> + <para xml:lang="en"><emphasis>FreeBSD-specific OCaml + discussions</emphasis></para> + + <para xml:lang="en">This is a list for discussions related to the OCaml + support on FreeBSD. This is a technical mailing list. It + is for individuals working on OCaml ports, 3rd party + libraries and frameworks. Individuals interested in the + technical discussion are also welcome.</para> + </listitem> + </varlistentry> + + <varlistentry> <term xml:lang="en"><link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-office">freebsd-office</link></term> <listitem> @@ -59217,6 +59750,55 @@ O8MgMjzGhlE= </sect2> + <sect2 xml:id="pgpkey-doceng-secretary"> + <title><email>doceng-secretary@FreeBSD.org</email></title> + <!-- $FreeBSD$ --> +<!-- +sh addkey.sh doceng-secretary E1C03580AEB45E58 ; +--> +<programlisting role="pgpfingerprint"><![CDATA[ +pub rsa2048/E1C03580AEB45E58 2019-10-31 [SC] [expires: 2022-10-30] + Key fingerprint = F24D 7B32 B864 625E 5541 A0E4 E1C0 3580 AEB4 5E58 +uid FreeBSD Doceng Team Secretary <doceng-secretary@freebsd.org> +sub rsa2048/9EA8D713509472FC 2019-10-31 [E] [expires: 2022-10-30] + +]]></programlisting> +<programlisting role="pgpkey"><![CDATA[ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQENBF27FFcBCADeoSsIgyQUY8vREwkTikwFFlNg31MVy5s/Nq1cNK1PRfRMnprS +yfB62KqbYuz16bmQKaA9zHN4FGfiTvR6tl66LVHm1s/5HPiLv8sP14GsruLro9zN +v72dO7a9i68bMw+jarPOnu9dGiDFEI0dACOkdCGEYKEUapQeNpmWRrQ46BeXyFwF +JcNx76bJJUkwk6fWC0W63D762e6lCEX6ndoaPjjLBnFvtx13heNGUc8RukBwe2mA +U5pSGHj47J05bdWiRSwZaXa8PcW+20zTWaP755w7zWe4h60GANY7OsT9nuOqsioJ +QonxTrJuZweKRV8fNQ1EfDws3HZr7/7iXvO3ABEBAAG0PEZyZWVCU0QgRG9jZW5n +IFRlYW0gU2VjcmV0YXJ5IDxkb2Nlbmctc2VjcmV0YXJ5QGZyZWVic2Qub3JnPokB +VAQTAQoAPhYhBPJNezK4ZGJeVUGg5OHANYCutF5YBQJduxRXAhsDBQkFo5qABQsJ +CAcDBRUKCQgLBRYDAgEAAh4BAheAAAoJEOHANYCutF5YB2IIALw+EPYmOz9qlqIn +oTFmk/5MrcdzC5iLEfxubbF6TopDWsWPiOh5mAuvfEmROSGf6ctvdYe9UtQV3VNY +KeeyskeFrIBOFo2KG/dFqKPAWef6IfhbW3HWDWo5uOBg01jHzQ/pB1n6SMKiXfsM +idL9wN+UQKxF3Y7S/bVrZTV0isRUolO9+8kQeSYT/NMojVM0H2fWrTP/TaNEW4fY +JBDAl5hsktzdl8sdbNqdC0GiX3xb4GvgVzGGQELagsxjfuXk6PfOyn6Wx2d+yRcI +FrKojmhihBp5VGFQkntBIXQkaW0xhW+WBGxwXdaAl0drQlZ3W+edgdOl705x73kf +Uw3Fh2a5AQ0EXbsUVwEIANEPAsltM4vFj2pi5xEuHEcZIrIX/ZJhoaBtZkqvkB+H +4pu3/eQHK5hg0Dw12ugffPMz8mi57iGNI9TXd8ZYMJxAdvEZSDHCKZTX9G+FcxWa +/AzKNiG25uSISzz7rMB/lV1gofCdGtpHFRFTiNxFcoacugTdlYDiscgJZMJSg/hC +GXBdEKXR5WRAgAGandcL8llCToOt1lZEOkd5vJM861w6evgDhAZ2HGhRuG8/NDxG +r4UtlnYGUCFof/Q4oPNbDJzmZXF+8OQyTNcEpVD3leEOWG1Uv5XWS2XKVHcHZZ++ +ISo/B5Q6Oi3SJFCVV9f+g09YF+PgfP/mVMBgif2fT20AEQEAAYkBPAQYAQoAJhYh +BPJNezK4ZGJeVUGg5OHANYCutF5YBQJduxRXAhsMBQkFo5qAAAoJEOHANYCutF5Y +kecIAMTh2VHQqjXHTszQMsy3NjiTVVITI3z+pzY0u2EYmLytXQ2pZMzLHMcklmub +5po0X4EvL6bZiJcLMI2mSrOs0Gp8P3hyMI40IkqoLMp7VA2LFlPgIJ7K5W4oVwf8 +khY6lw7qg2l69APm/MM3xAyiL4p6MU8tpvWg5AncZ6lxyy27rxVflzEtCrKQuG/a +oVaOlMjH3uxvOK6IIxlhvWD0nKs/e2h2HIAZ+ILE6ytS5ZEg2GXuigoQZdEnv71L +xyvE9JANwGZLkDxnS5pgN2ikfkQYlFpJEkrNTQleCOHIIIp8vgJngEaP51xOIbQM +CiG/y3cmKQ/ZfH7BBvlZVtZKQsI= +=MQKT +-----END PGP PUBLIC KEY BLOCK----- +]]></programlisting> + + </sect2> + </sect1> </appendix> diff --git a/zh_TW.UTF-8/books/handbook/zh_TW.po b/zh_TW.UTF-8/books/handbook/zh_TW.po index d2a09f123f..5e0dc3c8e6 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: 2018-12-20 22:25+0800\n" -"PO-Revision-Date: 2018-12-20 14:22+0800\n" +"POT-Creation-Date: 2019-11-15 14:16+0800\n" +"PO-Revision-Date: 2019-11-27 22: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.11\n" +"X-Generator: Poedit 2.2.4\n" #. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2 msgctxt "_" @@ -18,17 +18,17 @@ msgid "translator-credits" msgstr "Chien Wei Lin <cwlin0416@gmail.com>" #. (itstool) path: info/title -#: book.translate.xml:668 +#: book.translate.xml:682 msgid "FreeBSD Handbook" msgstr "FreeBSD 使用手冊" #. (itstool) path: info/author -#: book.translate.xml:670 +#: book.translate.xml:684 msgid "<orgname>The FreeBSD Documentation Project</orgname>" msgstr "<orgname>FreeBSD 文件計劃</orgname>" #. (itstool) path: info/copyright -#: book.translate.xml:678 +#: book.translate.xml:692 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> " @@ -36,16 +36,16 @@ msgid "" "<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> <year>2017</year> <year>2018</year> " -"<holder>The FreeBSD Documentation Project</holder>" +"<year>2019</year> <holder>The FreeBSD Documentation Project</holder>" msgstr "" #. (itstool) path: legalnotice/title -#: book.translate.xml:708 +#: book.translate.xml:723 msgid "Copyright" msgstr "版權" #. (itstool) path: legalnotice/para -#: book.translate.xml:710 +#: book.translate.xml:725 msgid "" "Redistribution and use in source (XML DocBook) and 'compiled' forms (XML, " "HTML, PDF, PostScript, RTF and so forth) with or without modification, are " @@ -53,7 +53,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:717 +#: book.translate.xml:732 msgid "" "Redistributions of source code (XML DocBook) must retain the above copyright " "notice, this list of conditions and the following disclaimer as the first " @@ -61,7 +61,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:723 +#: book.translate.xml:738 msgid "" "Redistributions in compiled form (transformed to other DTDs, converted to " "PDF, PostScript, RTF and other formats) must reproduce the above copyright " @@ -70,7 +70,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:732 +#: book.translate.xml:747 msgid "" "THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT \"AS IS" "\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE " @@ -86,32 +86,32 @@ msgid "" msgstr "" #. (itstool) path: legalnotice/para -#: book.translate.xml:749 +#: book.translate.xml:764 msgid "FreeBSD is a registered trademark of the FreeBSD Foundation." msgstr "FreeBSD 是 FreeBSD 基金會的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:751 +#: book.translate.xml:766 msgid "3Com and HomeConnect are registered trademarks of 3Com Corporation." msgstr "3Com 和 HomeConnect 是 3Com Corporation 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:753 +#: book.translate.xml:768 msgid "3ware is a registered trademark of 3ware Inc." msgstr "3ware 是 3ware Inc 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:755 +#: book.translate.xml:770 msgid "ARM is a registered trademark of ARM Limited." msgstr "ARM 是 ARM Limited. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:757 +#: book.translate.xml:772 msgid "Adaptec is a registered trademark of Adaptec, Inc." msgstr "Adaptec 是 Adaptec, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:759 +#: book.translate.xml:774 msgid "" "Adobe, Acrobat, Acrobat Reader, Flash and PostScript are either registered " "trademarks or trademarks of Adobe Systems Incorporated in the United States " @@ -121,7 +121,7 @@ msgstr "" "Incorporated 在美國和/或其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:763 +#: book.translate.xml:778 msgid "" "Apple, AirPort, FireWire, iMac, iPhone, iPad, Mac, Macintosh, Mac OS, " "Quicktime, and TrueType are trademarks of Apple Inc., registered in the U.S. " @@ -131,12 +131,12 @@ msgstr "" "Quicktime 以及 TrueType 是 Apple Inc. 在美國以及其他國家的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:768 +#: book.translate.xml:783 msgid "Android is a trademark of Google Inc." msgstr "Android 是 Google Inc 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:770 +#: book.translate.xml:785 msgid "" "Heidelberg, Helvetica, Palatino, and Times Roman are either registered " "trademarks or trademarks of Heidelberger Druckmaschinen AG in the U.S. and " @@ -146,7 +146,7 @@ msgstr "" "Druckmaschinen AG 在美國以及其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:774 +#: book.translate.xml:789 msgid "" "IBM, AIX, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of " "International Business Machines Corporation in the United States, other " @@ -156,7 +156,7 @@ msgstr "" "Machines Corporation 在美國和其他國家的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:778 +#: book.translate.xml:793 msgid "" "IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical " "and Electronics Engineers, Inc. in the United States." @@ -165,7 +165,7 @@ msgstr "" "Inc. 在美國的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:781 +#: book.translate.xml:796 msgid "" "Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, " "and Xeon are trademarks or registered trademarks of Intel Corporation or its " @@ -175,7 +175,7 @@ msgstr "" "及 Xeon 是 Intel Corporation 及其分支機構在美國和其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:785 +#: book.translate.xml:800 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 " @@ -185,12 +185,12 @@ msgstr "" "標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:788 +#: book.translate.xml:803 msgid "Linux is a registered trademark of Linus Torvalds." msgstr "Linux 是 Linus Torvalds 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:790 +#: book.translate.xml:805 msgid "" "LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID and Mylex are trademarks or " "registered trademarks of LSI Logic Corp." @@ -199,7 +199,7 @@ msgstr "" "商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:793 +#: book.translate.xml:808 msgid "" "Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows " "NT are either registered trademarks or trademarks of Microsoft Corporation " @@ -209,7 +209,7 @@ msgstr "" "Windows NT 是 Microsoft Corporation 在美國和/或其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:797 +#: book.translate.xml:812 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 " @@ -219,12 +219,12 @@ msgstr "" "DialTone 和 The Open Group 是其商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:801 +#: book.translate.xml:816 msgid "Oracle is a registered trademark of Oracle Corporation." msgstr "Oracle 是 Oracle Corporation 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:803 +#: book.translate.xml:818 msgid "" "RealNetworks, RealPlayer, and RealAudio are the registered trademarks of " "RealNetworks, Inc." @@ -232,14 +232,14 @@ msgstr "" "RealNetworks, RealPlayer, 和 RealAudio 是 RealNetworks, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:806 +#: book.translate.xml:821 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:809 +#: book.translate.xml:824 msgid "" "Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, " "Netra, OpenJDK, Solaris, StarOffice, SunOS and VirtualBox are trademarks or " @@ -251,37 +251,37 @@ msgstr "" "Microsystems, Inc. 在美國和其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:814 +#: book.translate.xml:829 msgid "MATLAB is a registered trademark of The MathWorks, Inc." msgstr "MATLAB 是 The MathWorks, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:816 +#: book.translate.xml:831 msgid "SpeedTouch is a trademark of Thomson." msgstr "SpeedTouch 是 Thomson 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:818 +#: book.translate.xml:833 msgid "VMware is a trademark of VMware, Inc." msgstr "VMware 是 VMware, Inc. 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:820 +#: book.translate.xml:835 msgid "Mathematica is a registered trademark of Wolfram Research, Inc." msgstr "Mathematica 是 Wolfram Research, Inc 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:822 +#: book.translate.xml:837 msgid "XFree86 is a trademark of The XFree86 Project, Inc." msgstr "XFree86 是 The XFree86 Project, Inc 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:824 +#: book.translate.xml:839 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:826 +#: book.translate.xml:841 msgid "" "Many of the designations used by manufacturers and sellers to distinguish " "their products are claimed as trademarks. Where those designations appear in " @@ -294,26 +294,25 @@ msgstr "" "quote> 或 <quote>®</quote> 符號來標示。" #. (itstool) path: abstract/para -#: book.translate.xml:835 -#, fuzzy +#: book.translate.xml:850 msgid "" "Welcome to FreeBSD! This handbook covers the installation and day to day use " -"of <emphasis>FreeBSD 12.0-RELEASE</emphasis> and <emphasis>FreeBSD 11.2-" +"of <emphasis>FreeBSD 12.0-RELEASE</emphasis> and <emphasis>FreeBSD 11.3-" "RELEASE</emphasis>. This book is the result of ongoing work by many " "individuals. Some sections might be outdated. Those interested in helping to " "update and expand this document should send email to the <link xlink:href=" "\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc\">FreeBSD " "documentation project mailing list</link>." msgstr "" -"歡迎使用 FreeBSD! 本使用手冊涵蓋範圍包括了 <emphasis>FreeBSD 11.1-RELEASE</" -"emphasis>, <emphasis>FreeBSD 11.0-RELEASE</emphasis> 與 <emphasis>FreeBSD " -"10.4-RELEASE</emphasis> 的安裝與平日操作的說明。 這份使用手冊是很多人的集體創" -"作,而且仍然『持續不斷』的進行中,因此部份章節可能尚未仍未完成,如果您有興趣" -"協助本計畫的話,請寄電子郵件至 <link xlink:href=\"http://lists.FreeBSD.org/" -"mailman/listinfo/freebsd-doc\">FreeBSD 文件專案郵遞論壇</link>。" +"歡迎使用 FreeBSD! 本使用手冊涵蓋範圍包括了 <emphasis>FreeBSD 12.0-RELEASE</" +"emphasis> 與 <emphasis>FreeBSD 11.3-RELEASE</emphasis> 的安裝與平日操作的說" +"明。 這份使用手冊是很多人的集體創作,而且仍然『持續不斷』的進行中,因此部份章" +"節可能尚未仍未完成,如果您有興趣協助本計畫的話,請寄電子郵件至 <link xlink:" +"href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc\">FreeBSD 文件專" +"案郵遞論壇</link>。" #. (itstool) path: abstract/para -#: book.translate.xml:843 +#: book.translate.xml:859 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 " @@ -322,34 +321,34 @@ msgid "" "formats and compression options from the <link xlink:href=\"https://download." "freebsd.org/ftp/doc/\">FreeBSD FTP server</link> or one of the numerous " "<link linkend=\"mirrors-ftp\">mirror sites</link>. Printed copies can be " -"purchased at the <link xlink:href=\"http://www.freebsdmall.com/\">FreeBSD " +"purchased at the <link xlink:href=\"https://www.freebsdmall.com/\">FreeBSD " "Mall</link>. Searches can be performed on the handbook and other documents " "on the <link xlink:href=\"@@URL_RELPREFIX@@/search/index.html\">search page</" "link>." msgstr "" "在 <link xlink:href=\"https://www.FreeBSD.org/\">FreeBSD 網站</link> 可以找到" -"本文件的最新版本,舊版文件可從 <uri xlink:href=\"https://docs.FreeBSD.org/" +"本手冊的最新版本,舊版文件可從 <uri xlink:href=\"https://docs.FreeBSD.org/" "doc/\">https://docs.FreeBSD.org/doc/</uri> 取得。本文件也提供各種格式與不同壓" "縮方式的版本可自 <link xlink:href=\"https://download.freebsd.org/ftp/doc/" "\">FreeBSD FTP 伺服器</link> 或是其中一個 <link linkend=\"mirrors-ftp\">鏡像" -"網站</link> 下載。 列印出來的實體書面資料可在 <link xlink:href=\"http://www." +"網站</link> 下載。 列印出來的實體書面資料可在 <link xlink:href=\"https://www." "freebsdmall.com/\">FreeBSD 商城</link> 購買。 此外,您可在 <link xlink:href=" "\"@@URL_RELPREFIX@@/search/index.html\">搜尋頁面</link> 中搜尋本文件或其他文" "件的資料。" #. (itstool) path: preface/title -#: book.translate.xml:864 +#: book.translate.xml:880 msgid "Preface" msgstr "序" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-audience -#: book.translate.xml:866 +#: book.translate.xml:882 msgid "Intended Audience" msgstr "給讀者的話" #. (itstool) path: preface/para -#: book.translate.xml:869 +#: book.translate.xml:885 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 " @@ -363,7 +362,7 @@ msgstr "" "一些常用、共通的東西。而閱讀這部分並不難,只需要您有探索的精神和接受新概念。" #. (itstool) path: preface/para -#: book.translate.xml:876 +#: book.translate.xml:892 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 " @@ -376,7 +375,7 @@ msgstr "" "不熟的話,可在閱讀前先預習一番。" #. (itstool) path: preface/para -#: book.translate.xml:883 +#: book.translate.xml:899 msgid "" "For a list of additional sources of information, please see <xref linkend=" "\"bibliography\"/>." @@ -384,12 +383,12 @@ msgstr "延伸閱讀方面,可參閱 <xref linkend=\"bibliography\"/>。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes-from3 -#: book.translate.xml:886 +#: book.translate.xml:902 msgid "Changes from the Third Edition" msgstr "自第三版後的主要修訂" #. (itstool) path: preface/para -#: book.translate.xml:889 +#: book.translate.xml:905 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 " @@ -400,7 +399,7 @@ msgstr "" "2014 年發佈的兩冊第三版後所做的主要修訂:" #. (itstool) path: listitem/para -#: book.translate.xml:896 +#: book.translate.xml:912 msgid "" "<xref linkend=\"dtrace\"/> has been added with information about the " "powerful DTrace performance analysis tool." @@ -408,7 +407,7 @@ msgstr "" "<xref linkend=\"dtrace\"/> 增加說明有關強大的 DTrace 效能分析工具的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:901 +#: book.translate.xml:917 msgid "" "<xref linkend=\"filesystems\"/> has been added with information about non-" "native file systems in FreeBSD, such as ZFS from <trademark>Sun</trademark>." @@ -417,7 +416,7 @@ msgstr "" "自 <trademark>Sun</trademark> 的 ZSF。" #. (itstool) path: listitem/para -#: book.translate.xml:907 +#: book.translate.xml:923 msgid "" "<xref linkend=\"audit\"/> has been added to cover the new auditing " "capabilities in FreeBSD and explain its use." @@ -425,7 +424,7 @@ msgstr "" "<xref linkend=\"audit\"/> 增加的內容涵蓋 FreeBSD 的新稽查功能及其使用說明。" #. (itstool) path: listitem/para -#: book.translate.xml:912 +#: book.translate.xml:928 msgid "" "<xref linkend=\"virtualization\"/> has been added with information about " "installing FreeBSD on virtualization software." @@ -433,7 +432,7 @@ msgstr "" "<xref linkend=\"virtualization\"/> 增加有關在虛擬化軟體安裝 FreeBSD 的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:918 +#: book.translate.xml:934 msgid "" "<xref linkend=\"bsdinstall\"/> has been added to cover installation of " "FreeBSD using the new installation utility, <application>bsdinstall</" @@ -444,12 +443,12 @@ msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes-from2 -#: book.translate.xml:924 +#: book.translate.xml:940 msgid "Changes from the Second Edition (2004)" msgstr "自第二版後的主要修訂 (2004)" #. (itstool) path: preface/para -#: book.translate.xml:927 +#: book.translate.xml:943 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 " @@ -460,7 +459,7 @@ msgstr "" "文件內容成長到一定大小,印刷版需要分成兩冊發佈。新版的主要修訂部分如下:" #. (itstool) path: listitem/para -#: book.translate.xml:935 +#: book.translate.xml:951 msgid "" "<xref linkend=\"config-tuning\"/> has been expanded with new information " "about the ACPI power and resource management, the <command>cron</command> " @@ -470,7 +469,7 @@ msgstr "" "<command>cron</command> 以及其他更多的核心調校選項說明內容。" #. (itstool) path: listitem/para -#: book.translate.xml:942 +#: book.translate.xml:958 msgid "" "<xref linkend=\"security\"/> has been expanded with new information about " "virtual private networks (VPNs), file system access control lists (ACLs), " @@ -480,7 +479,7 @@ msgstr "" "(ACL),以及安全報告。" #. (itstool) path: listitem/para -#: book.translate.xml:948 +#: book.translate.xml:964 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." @@ -489,7 +488,7 @@ msgstr "" "何運用它來使您的 FreeBSD 系統更安全。" #. (itstool) path: listitem/para -#: book.translate.xml:954 +#: book.translate.xml:970 msgid "" "<xref linkend=\"disks\"/> has been expanded with new information about USB " "storage devices, file system snapshots, file system quotas, file and network " @@ -500,13 +499,13 @@ msgstr "" "詳解。" #. (itstool) path: listitem/para -#: book.translate.xml:961 +#: book.translate.xml:977 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:965 +#: book.translate.xml:981 msgid "" "<xref linkend=\"mail\"/> has been expanded with new information about using " "alternative transport agents, SMTP authentication, UUCP, " @@ -518,7 +517,7 @@ msgstr "" "application> 的運用以及其它進階主題。" #. (itstool) path: listitem/para -#: book.translate.xml:973 +#: book.translate.xml:989 msgid "" "<xref linkend=\"network-servers\"/> is all new with this edition. This " "chapter includes information about setting up the <application>Apache HTTP " @@ -536,7 +535,7 @@ msgstr "" "\"advanced-networking\"/> 。" #. (itstool) path: listitem/para -#: book.translate.xml:983 +#: book.translate.xml:999 msgid "" "<xref linkend=\"advanced-networking\"/> has been expanded with new " "information about using <trademark class=\"registered\">Bluetooth</" @@ -548,14 +547,14 @@ msgstr "" "式 (Asynchronous Transfer Mode, ATM) 網路的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:990 +#: book.translate.xml:1006 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:996 +#: book.translate.xml:1012 msgid "" "A number of aesthetic improvements have been made to the tables and figures " "throughout the book." @@ -563,32 +562,32 @@ msgstr "重新美編書中所列的圖表。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes -#: book.translate.xml:1001 +#: book.translate.xml:1017 msgid "Changes from the First Edition (2001)" msgstr "自第一版後的主要修訂 (2001)" #. (itstool) path: preface/para -#: book.translate.xml:1004 +#: book.translate.xml:1020 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 " "the major changes in this edition:" msgstr "" "本手冊的第二版是 FreeBSD 文件計劃的成員歷時兩年完成的心血之作。第二版包的主要" -"變動如下︰" +"變動如下:" #. (itstool) path: listitem/para -#: book.translate.xml:1012 +#: book.translate.xml:1028 msgid "A complete Index has been added." msgstr "增加完整的目錄索引。" #. (itstool) path: listitem/para -#: book.translate.xml:1016 +#: book.translate.xml:1032 msgid "All ASCII figures have been replaced by graphical diagrams." msgstr "所有的 ASCII 圖表均改成圖檔格式的圖表。" #. (itstool) path: listitem/para -#: book.translate.xml:1021 +#: book.translate.xml:1037 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 " @@ -596,7 +595,7 @@ msgid "" msgstr "每個章節均加入概述,以便快速的瀏覽該章節內容摘要、讀者所欲了解的部分。" #. (itstool) path: listitem/para -#: book.translate.xml:1027 +#: book.translate.xml:1043 msgid "" "The content has been logically reorganized into three parts: <quote>Getting " "Started</quote>, <quote>System Administration</quote>, and " @@ -606,7 +605,7 @@ msgstr "" "及 <quote>附錄</quote>。" #. (itstool) path: listitem/para -#: book.translate.xml:1034 +#: book.translate.xml:1050 msgid "" "<xref linkend=\"basics\"/> has been expanded to contain additional " "information about processes, daemons, and signals." @@ -614,14 +613,14 @@ msgstr "" "<xref linkend=\"basics\"/> 新增了程序、Daemon 以及信號 (Signal) 的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:1040 +#: book.translate.xml:1056 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:1046 +#: book.translate.xml:1062 msgid "" "<xref linkend=\"x11\"/> has been completely rewritten with an emphasis on " "using modern desktop technologies such as <application>KDE</application> and " @@ -632,12 +631,12 @@ msgstr "" "<application>GNOME</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1053 +#: book.translate.xml:1069 msgid "<xref linkend=\"boot\"/> has been expanded." msgstr "<xref linkend=\"boot\"/> 更新相關內容。" #. (itstool) path: listitem/para -#: book.translate.xml:1057 +#: book.translate.xml:1073 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 " @@ -649,7 +648,7 @@ msgstr "" "體、軟體 RAID) 的段落也新增上去了。" #. (itstool) path: listitem/para -#: book.translate.xml:1066 +#: book.translate.xml:1082 msgid "" "<xref linkend=\"serialcomms\"/> has been completely reorganized and updated " "for FreeBSD 4.X/5.X." @@ -658,18 +657,18 @@ msgstr "" "容。" #. (itstool) path: listitem/para -#: book.translate.xml:1071 +#: book.translate.xml:1087 msgid "<xref linkend=\"ppp-and-slip\"/> has been substantially updated." msgstr "<xref linkend=\"ppp-and-slip\"/> 有相當程度的更新。" #. (itstool) path: listitem/para -#: book.translate.xml:1076 +#: book.translate.xml:1092 msgid "" "Many new sections have been added to <xref linkend=\"advanced-networking\"/>." msgstr "<xref linkend=\"advanced-networking\"/> 加入許多新內容。" #. (itstool) path: listitem/para -#: book.translate.xml:1080 +#: book.translate.xml:1096 msgid "" "<xref linkend=\"mail\"/> has been expanded to include more information about " "configuring <application>sendmail</application>." @@ -678,7 +677,7 @@ msgstr "" "的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:1086 +#: book.translate.xml:1102 msgid "" "<xref linkend=\"linuxemu\"/> has been expanded to include information about " "installing <application><trademark class=\"registered\">Oracle</trademark></" @@ -691,28 +690,28 @@ msgstr "" "trademark></application> 的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:1093 +#: book.translate.xml:1109 msgid "The following new topics are covered in this second edition:" msgstr "此外,第二版還新加章節,以介紹下列新主題:" #. (itstool) path: listitem/para -#: book.translate.xml:1098 +#: book.translate.xml:1114 msgid "<xref linkend=\"config-tuning\"/>." msgstr "<xref linkend=\"config-tuning\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:1102 +#: book.translate.xml:1118 msgid "<xref linkend=\"multimedia\"/>." msgstr "<xref linkend=\"multimedia\"/>。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-overview -#: book.translate.xml:1108 +#: book.translate.xml:1124 msgid "Organization of This Book" msgstr "本書架構" #. (itstool) path: preface/para -#: book.translate.xml:1110 +#: book.translate.xml:1126 msgid "" "This book is split into five logically distinct sections. The first section, " "<emphasis>Getting Started</emphasis>, covers the installation and basic " @@ -737,14 +736,14 @@ msgstr "" "則包括網路和各式伺服器主題;而第五部分則為附錄包含各種有關 FreeBSD 的資源。" #. (itstool) path: listitem/para -#: book.translate.xml:1135 +#: book.translate.xml:1151 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:1145 +#: book.translate.xml:1161 msgid "" "Walks a user through the entire installation process of FreeBSD 9." "<replaceable>x</replaceable> and later using <application>bsdinstall</" @@ -754,7 +753,7 @@ msgstr "" "<replaceable>x</replaceable> 及之後版本的完整安裝流程。" #. (itstool) path: listitem/para -#: book.translate.xml:1155 +#: book.translate.xml:1171 msgid "" "Covers the basic commands and functionality of the FreeBSD operating system. " "If you are familiar with <trademark class=\"registered\">Linux</trademark> " @@ -765,7 +764,7 @@ msgstr "" "\">Linux</trademark> 或其他類 UNIX® 系統,您則可跳過此章。" #. (itstool) path: listitem/para -#: book.translate.xml:1166 +#: book.translate.xml:1182 msgid "" "Covers the installation of third-party software with both FreeBSD's " "innovative <quote>Ports Collection</quote> and standard binary packages." @@ -774,7 +773,7 @@ msgstr "" "第三方軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:1176 +#: book.translate.xml:1192 msgid "" "Describes the X Window System in general and using X11 on FreeBSD in " "particular. Also describes common desktop environments such as " @@ -784,7 +783,7 @@ msgstr "" "<application>KDE</application> 與 <application>GNOME</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1189 +#: book.translate.xml:1205 msgid "" "Lists some common desktop applications, such as web browsers and " "productivity suites, and describes how to install them on FreeBSD." @@ -793,7 +792,7 @@ msgstr "" "程式到 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:1198 +#: book.translate.xml:1214 msgid "" "Shows how to set up sound and video playback support for your system. Also " "describes some sample audio and video applications." @@ -802,14 +801,14 @@ msgstr "" "用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:1208 +#: book.translate.xml:1224 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:1218 +#: book.translate.xml:1234 msgid "" "Describes managing printers on FreeBSD, including information about banner " "pages, printer accounting, and initial setup." @@ -817,7 +816,7 @@ msgstr "" "介紹如何在 FreeBSD 管理印表機,包含橫幅頁面、列印帳務以及初始設定等資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:1228 +#: book.translate.xml:1244 msgid "" "Describes the <trademark class=\"registered\">Linux</trademark> " "compatibility features of FreeBSD. Also provides detailed installation " @@ -833,7 +832,7 @@ msgstr "" "\"registered\">Mathematica</trademark></application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1242 +#: book.translate.xml:1258 msgid "" "Describes the parameters available for system administrators to tune a " "FreeBSD system for optimum performance. Also describes the various " @@ -843,14 +842,14 @@ msgstr "" "FreeBSD 用到的各種設定檔以及到何處尋找這些設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:1253 +#: book.translate.xml:1269 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:1262 +#: book.translate.xml:1278 msgid "" "Describes many different tools available to help keep your FreeBSD system " "secure, including Kerberos, IPsec and OpenSSH." @@ -859,7 +858,7 @@ msgstr "" "OpenSSH。" #. (itstool) path: listitem/para -#: book.translate.xml:1272 +#: book.translate.xml:1288 msgid "" "Describes the jails framework, and the improvements of jails over the " "traditional chroot support of FreeBSD." @@ -867,7 +866,7 @@ msgstr "" "介紹 Jail Framework,以及 Jail 改進那些 FreeBSD 傳統 chroot 不足的地方。" #. (itstool) path: listitem/para -#: book.translate.xml:1281 +#: book.translate.xml:1297 msgid "" "Explains what Mandatory Access Control (MAC) is and how this mechanism can " "be used to secure a FreeBSD system." @@ -876,7 +875,7 @@ msgstr "" "保 FreeBSD 系統的安全。" #. (itstool) path: listitem/para -#: book.translate.xml:1291 +#: book.translate.xml:1307 msgid "" "Describes what FreeBSD Event Auditing is, how it can be installed, " "configured, and how audit trails can be inspected or monitored." @@ -884,7 +883,7 @@ msgstr "" "介紹什麼事 FreeBSD 事件稽查,如何安裝與設定,以及如何檢查與監控稽查線索。" #. (itstool) path: listitem/para -#: book.translate.xml:1301 +#: book.translate.xml:1317 msgid "" "Describes how to manage storage media and filesystems with FreeBSD. This " "includes physical disks, RAID arrays, optical and tape media, memory-backed " @@ -894,7 +893,7 @@ msgstr "" "與磁帶媒體、記憶體為基礎的磁碟以及網路檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1312 +#: book.translate.xml:1328 msgid "" "Describes what the GEOM framework in FreeBSD is and how to configure various " "supported RAID levels." @@ -902,7 +901,7 @@ msgstr "" "介紹在 FreeBSD 中的 GEOM Framework 是什麼,以及如何設定各種支援的 RAID 階層。" #. (itstool) path: listitem/para -#: book.translate.xml:1321 +#: book.translate.xml:1337 msgid "" "Examines support of non-native file systems in FreeBSD, like the Z File " "System from <trademark>Sun</trademark>." @@ -911,21 +910,21 @@ msgstr "" "案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1330 +#: book.translate.xml:1346 msgid "" "Describes what virtualization systems offer, and how they can be used with " "FreeBSD." msgstr "介紹虛擬化系統提供了那些功能,以及如何在 FreeBSD 上使用。" #. (itstool) path: listitem/para -#: book.translate.xml:1339 +#: book.translate.xml:1355 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:1349 +#: book.translate.xml:1365 msgid "" "Explains the differences between FreeBSD-STABLE, FreeBSD-CURRENT, and " "FreeBSD releases. Describes which users would benefit from tracking a " @@ -937,7 +936,7 @@ msgstr "" "佈版本的方法。" #. (itstool) path: listitem/para -#: book.translate.xml:1362 +#: book.translate.xml:1378 msgid "" "Describes how to configure and use the DTrace tool from <trademark>Sun</" "trademark> in FreeBSD. Dynamic tracing can help locate performance issues, " @@ -947,19 +946,19 @@ msgstr "" "追蹤可以透過執行真實時間系統分析來協助定位效能問題。" #. (itstool) path: listitem/para -#: book.translate.xml:1375 +#: book.translate.xml:1391 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:1385 +#: book.translate.xml:1401 msgid "Describes how to use PPP to connect to remote systems with FreeBSD." msgstr "介紹如何在 FreeBSD 使用 PPP 來連線遠端的系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1394 +#: book.translate.xml:1410 msgid "" "Explains the different components of an email server and dives into simple " "configuration topics for the most popular mail server software: " @@ -969,7 +968,7 @@ msgstr "" "<application>sendmail</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1405 +#: book.translate.xml:1421 msgid "" "Provides detailed instructions and example configuration files to set up " "your FreeBSD machine as a network filesystem server, domain name server, " @@ -979,7 +978,7 @@ msgstr "" "網域名稱伺服器、網路資訊系統伺服器或時間同步伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:1416 +#: book.translate.xml:1432 msgid "" "Explains the philosophy behind software-based firewalls and provides " "detailed information about the configuration of the different firewalls " @@ -989,7 +988,7 @@ msgstr "" "細資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:1426 +#: book.translate.xml:1442 msgid "" "Describes many networking topics, including sharing an Internet connection " "with other computers on your LAN, advanced routing topics, wireless " @@ -1001,7 +1000,7 @@ msgstr "" "ATM、IPv6 以及更多相關主題。" #. (itstool) path: listitem/para -#: book.translate.xml:1439 +#: book.translate.xml:1455 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 " @@ -1011,7 +1010,7 @@ msgstr "" "您可以下載並安裝 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:1449 +#: book.translate.xml:1465 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 " @@ -1021,7 +1020,7 @@ msgstr "" "多優秀書籍。" #. (itstool) path: listitem/para -#: book.translate.xml:1460 +#: book.translate.xml:1476 msgid "" "Describes the many forums available for FreeBSD users to post questions and " "engage in technical conversations about FreeBSD." @@ -1029,36 +1028,36 @@ msgstr "" "介紹了可讓 FreeBSD 使用者提出問題以及參與有關 FreeBSD 技術會談的許多論壇。" #. (itstool) path: listitem/para -#: book.translate.xml:1470 +#: book.translate.xml:1486 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:1476 +#: book.translate.xml:1492 msgid "Conventions used in this book" msgstr "本書的編排體裁" #. (itstool) path: preface/para -#: book.translate.xml:1479 +#: book.translate.xml:1495 msgid "" "To provide a consistent and easy to read text, several conventions are " "followed throughout the book." -msgstr "為方便閱讀本書,以下是一些本書所遵循的編排體裁:" +msgstr "為了提供有一致性且易於閱讀的內容,以下是一些本書所遵循的編排體裁。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv-typographic -#: book.translate.xml:1482 +#: book.translate.xml:1498 msgid "Typographic Conventions" msgstr "文字編排體裁" #. (itstool) path: varlistentry/term -#: book.translate.xml:1486 +#: book.translate.xml:1502 msgid "<emphasis>Italic</emphasis>" msgstr "<emphasis>斜體字</emphasis>" #. (itstool) path: listitem/para -#: book.translate.xml:1489 +#: book.translate.xml:1505 msgid "" "An <emphasis>italic</emphasis> font is used for filenames, URLs, emphasized " "text, and the first usage of technical terms." @@ -1067,12 +1066,12 @@ msgstr "" "次提及的技術詞彙。" #. (itstool) path: varlistentry/term -#: book.translate.xml:1496 +#: book.translate.xml:1512 msgid "<literal>Monospace</literal>" msgstr "<literal>等寬字</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:1499 +#: book.translate.xml:1515 msgid "" "A <literal>monospaced</literal> font is used for error messages, commands, " "environment variables, names of ports, hostnames, user names, group names, " @@ -1082,24 +1081,24 @@ msgstr "" "稱、帳號、群組、裝置名稱、變數、程式碼等。" #. (itstool) path: varlistentry/term -#: book.translate.xml:1507 +#: book.translate.xml:1523 msgid "<application>Bold</application>" msgstr "<application>粗體字</application>" #. (itstool) path: listitem/para -#: book.translate.xml:1510 +#: book.translate.xml:1526 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:1517 +#: book.translate.xml:1533 msgid "User Input" msgstr "使用者輸入" #. (itstool) path: preface/para -#: book.translate.xml:1520 +#: book.translate.xml:1536 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 " @@ -1109,14 +1108,14 @@ msgstr "" "按下一些按鍵,我們以 `<literal>+</literal>' 來表示連接,像是:" #. (itstool) path: preface/para -#: book.translate.xml:1525 +#: book.translate.xml:1541 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>Alt</keycap> " "<keycap>Del</keycap></keycombo>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1531 +#: book.translate.xml:1547 msgid "" "Meaning the user should type the <keycap>Ctrl</keycap>, <keycap>Alt</" "keycap>, and <keycap>Del</keycap> keys at the same time." @@ -1125,14 +1124,14 @@ msgstr "" "keycap> 鍵。" #. (itstool) path: preface/para -#: book.translate.xml:1535 +#: book.translate.xml:1551 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:1538 +#: book.translate.xml:1554 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>X</keycap> </" "keycombo>, <keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>S</" @@ -1140,7 +1139,7 @@ msgid "" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1547 +#: book.translate.xml:1563 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</" @@ -1151,12 +1150,12 @@ msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv-examples -#: book.translate.xml:1553 +#: book.translate.xml:1569 msgid "Examples" msgstr "範例" #. (itstool) path: preface/para -#: book.translate.xml:1555 +#: book.translate.xml:1571 msgid "" "Examples starting with <filename>C:\\></filename> indicate a <trademark " "class=\"registered\">MS-DOS</trademark> command. Unless otherwise noted, " @@ -1171,13 +1170,13 @@ msgstr "" "Prompt)</quote> 視窗內執行。" #. (itstool) path: preface/screen -#: book.translate.xml:1561 +#: book.translate.xml:1577 #, no-wrap msgid "<prompt>E:\\></prompt> <userinput>tools\\fdimage floppies\\kern.flp A:</userinput>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1563 +#: book.translate.xml:1579 msgid "" "Examples starting with <prompt>#</prompt> indicate a command that must be " "invoked as the superuser in FreeBSD. You can login as <systemitem class=" @@ -1191,13 +1190,13 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來取得超級使用者權限。" #. (itstool) path: preface/screen -#: book.translate.xml:1569 +#: book.translate.xml:1585 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=kern.flp of=/dev/fd0</userinput>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1571 +#: book.translate.xml:1587 msgid "" "Examples starting with <prompt>%</prompt> indicate a command that should be " "invoked from a normal user account. Unless otherwise noted, C-shell syntax " @@ -1208,19 +1207,19 @@ msgstr "" "其他指令的意思。" #. (itstool) path: preface/screen -#: book.translate.xml:1576 +#: book.translate.xml:1592 #, no-wrap msgid "<prompt>%</prompt> <userinput>top</userinput>" msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-acknowledgements -#: book.translate.xml:1578 +#: book.translate.xml:1594 msgid "Acknowledgments" msgstr "銘謝" #. (itstool) path: preface/para -#: book.translate.xml:1580 +#: book.translate.xml:1596 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 " @@ -1230,7 +1229,7 @@ msgstr "" "糾正一些錯誤或提交完整的章節,所有的點滴貢獻都是非常寶貴有用的。" #. (itstool) path: preface/para -#: book.translate.xml:1585 +#: book.translate.xml:1601 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, " @@ -1256,43 +1255,43 @@ msgstr "" "手冊以使第三版印刷版本能夠出版的志工。" #. (itstool) path: part/title -#: book.translate.xml:1604 +#: book.translate.xml:1620 msgid "Getting Started" msgstr "入門" #. (itstool) path: partintro/para -#: book.translate.xml:1607 +#: book.translate.xml:1623 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:1612 +#: book.translate.xml:1628 msgid "Introduce FreeBSD." msgstr "介紹 FreeBSD 給您。" #. (itstool) path: listitem/para -#: book.translate.xml:1616 +#: book.translate.xml:1632 msgid "Guide readers through the installation process." msgstr "在安裝過程給您指引。" #. (itstool) path: listitem/para -#: book.translate.xml:1620 +#: book.translate.xml:1636 msgid "" "Teach <trademark class=\"registered\">UNIX</trademark> basics and " "fundamentals." msgstr "教您 <trademark class=\"registered\">UNIX</trademark> 的基礎及原理。" #. (itstool) path: listitem/para -#: book.translate.xml:1624 +#: book.translate.xml:1640 msgid "" "Show how to install the wealth of third party applications available for " "FreeBSD." msgstr "展示給您看如何安裝豐富的 FreeBSD 的應用軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:1629 +#: book.translate.xml:1645 msgid "" "Introduce X, the <trademark class=\"registered\">UNIX</trademark> windowing " "system, and detail how to configure a desktop environment that makes users " @@ -1302,7 +1301,7 @@ msgstr "" "細的桌面環境設定,讓您更有生產力。" #. (itstool) path: partintro/para -#: book.translate.xml:1635 +#: book.translate.xml:1651 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." @@ -1313,12 +1312,12 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: sect1/title #. (itstool) path: sect2/title -#: book.translate.xml:1649 book.translate.xml:23626 book.translate.xml:65535 +#: book.translate.xml:1665 book.translate.xml:23731 book.translate.xml:65535 msgid "Introduction" msgstr "簡介" #. (itstool) path: authorgroup/author -#: book.translate.xml:1652 book.translate.xml:2755 +#: book.translate.xml:1668 book.translate.xml:2774 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured, reorganized, and parts rewritten by </" @@ -1326,21 +1325,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:1664 book.translate.xml:2810 book.translate.xml:5442 -#: book.translate.xml:8826 book.translate.xml:10562 book.translate.xml:12788 -#: book.translate.xml:13778 book.translate.xml:15400 book.translate.xml:17882 -#: book.translate.xml:19147 book.translate.xml:22625 book.translate.xml:23538 -#: book.translate.xml:27634 book.translate.xml:29239 book.translate.xml:31007 -#: book.translate.xml:31741 book.translate.xml:35405 book.translate.xml:41363 -#: book.translate.xml:41563 book.translate.xml:43254 book.translate.xml:44294 -#: book.translate.xml:45942 book.translate.xml:46286 book.translate.xml:46701 -#: book.translate.xml:48895 book.translate.xml:50563 book.translate.xml:52476 -#: book.translate.xml:56975 book.translate.xml:60662 +#: book.translate.xml:1680 book.translate.xml:2829 book.translate.xml:5454 +#: book.translate.xml:8842 book.translate.xml:10621 book.translate.xml:12851 +#: book.translate.xml:13841 book.translate.xml:15509 book.translate.xml:17991 +#: book.translate.xml:19255 book.translate.xml:22733 book.translate.xml:23643 +#: book.translate.xml:27738 book.translate.xml:29352 book.translate.xml:31120 +#: book.translate.xml:31854 book.translate.xml:35518 book.translate.xml:41475 +#: book.translate.xml:41680 book.translate.xml:43489 book.translate.xml:44537 +#: book.translate.xml:46182 book.translate.xml:46526 book.translate.xml:46941 +#: book.translate.xml:49135 book.translate.xml:50803 book.translate.xml:52716 +#: book.translate.xml:57502 book.translate.xml:61692 msgid "Synopsis" msgstr "概述" #. (itstool) path: sect1/para -#: book.translate.xml:1666 +#: book.translate.xml:1682 msgid "" "Thank you for your interest in FreeBSD! The following chapter covers various " "aspects of the FreeBSD Project, such as its history, goals, development " @@ -1350,55 +1349,55 @@ msgstr "" "史、目標、開發模式等等。" #. (itstool) path: sect1/para -#: book.translate.xml:1670 book.translate.xml:2879 book.translate.xml:5449 -#: book.translate.xml:8838 book.translate.xml:10583 book.translate.xml:15413 -#: book.translate.xml:17908 book.translate.xml:19161 book.translate.xml:23551 -#: book.translate.xml:27706 book.translate.xml:29266 book.translate.xml:31031 -#: book.translate.xml:31749 book.translate.xml:35431 book.translate.xml:41394 -#: book.translate.xml:41571 book.translate.xml:44306 book.translate.xml:45980 -#: book.translate.xml:46355 book.translate.xml:46712 book.translate.xml:48906 -#: book.translate.xml:50574 book.translate.xml:57030 book.translate.xml:60667 +#: book.translate.xml:1686 book.translate.xml:2898 book.translate.xml:5461 +#: book.translate.xml:8854 book.translate.xml:10642 book.translate.xml:15522 +#: book.translate.xml:18017 book.translate.xml:19269 book.translate.xml:23656 +#: book.translate.xml:27810 book.translate.xml:29379 book.translate.xml:31144 +#: book.translate.xml:31862 book.translate.xml:35544 book.translate.xml:41506 +#: book.translate.xml:41688 book.translate.xml:44549 book.translate.xml:46220 +#: book.translate.xml:46595 book.translate.xml:46952 book.translate.xml:49146 +#: book.translate.xml:50814 book.translate.xml:57557 book.translate.xml:61697 msgid "After reading this chapter, you will know:" -msgstr "讀完這章,您將了解︰" +msgstr "讀完這章,您將了解:" #. (itstool) path: listitem/para -#: book.translate.xml:1674 +#: book.translate.xml:1690 msgid "How FreeBSD relates to other computer operating systems." msgstr "FreeBSD 與其他作業系統之間的關係。" #. (itstool) path: listitem/para -#: book.translate.xml:1679 +#: book.translate.xml:1695 msgid "The history of the FreeBSD Project." msgstr "FreeBSD 計劃的歷史。" #. (itstool) path: listitem/para -#: book.translate.xml:1683 +#: book.translate.xml:1699 msgid "The goals of the FreeBSD Project." msgstr "FreeBSD 計劃的目標。" #. (itstool) path: listitem/para -#: book.translate.xml:1687 +#: book.translate.xml:1703 msgid "The basics of the FreeBSD open-source development model." msgstr "FreeBSD 開源開發模式的基礎概念。" #. (itstool) path: listitem/para -#: book.translate.xml:1692 +#: book.translate.xml:1708 msgid "And of course: where the name <quote>FreeBSD</quote> comes from." msgstr "當然囉,還有 <quote>FreeBSD</quote> 這名字的由來。" #. (itstool) path: sect1/title -#: book.translate.xml:1699 +#: book.translate.xml:1715 msgid "Welcome to FreeBSD!" msgstr "歡迎使用 FreeBSD!" #. (itstool) path: sect1/indexterm #. (itstool) path: para/indexterm -#: book.translate.xml:1701 book.translate.xml:1792 +#: book.translate.xml:1717 book.translate.xml:1808 msgid "<primary>4.4BSD-Lite</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:1703 +#: book.translate.xml:1719 msgid "" "FreeBSD is an Open Source, standards-compliant Unix-like operating system " "for x86 (both 32 and 64 bit), <trademark class=\"registered\">ARM</" @@ -1412,9 +1411,18 @@ msgid "" "different languages and frameworks, and desktop features centered around X " "Window System, KDE, or GNOME. Its particular strengths are:" msgstr "" +"FreeBSD 是一套開源、符合標準的類 Unix 的作業系統,適用於 x86 (32 與 64 位" +"元), <trademark class=\"registered\">ARM</trademark>, AArch64, <trademark " +"class=\"registered\">RISC-V</trademark>, <trademark class=\"registered" +"\">MIPS</trademark>, <trademark class=\"registered\">POWER</trademark>, " +"<trademark class=\"registered\">PowerPC</trademark> 以及 Sun <trademark " +"class=\"registered\">UltraSPARC</trademark> 的電腦。它提供了現代作業系統所應" +"具備的所有功能,例如:先佔式多工、記憶體保護、虛擬記憶體、多使用者架構、對稱" +"多工處理 (SMP)、各種針對不同語言和框架的開源開發工具以及以 X Window 系統、" +"KDE 及 GNOME 為主的桌面功能,而它有以下優勢:" #. (itstool) path: listitem/para -#: book.translate.xml:1716 +#: book.translate.xml:1732 msgid "" "<emphasis>Liberal Open Source license</emphasis>, which grants you rights to " "freely modify and extend its source code and incorporate it in both Open " @@ -1422,14 +1430,17 @@ msgid "" "copyleft licenses, as well as avoiding potential license incompatibility " "problems." msgstr "" +"<emphasis>自由的開放原始碼授權</emphasis>,授予您自由修改和擴充其原始碼並將其" +"合併到開放原始碼專案或封閉的產品中的權力,不會對 Copyleft 授權施加典型的限" +"制,也避免了授權不相容的潛在問題。" #. (itstool) path: para/indexterm -#: book.translate.xml:1727 +#: book.translate.xml:1743 msgid "<primary>TCP/IP networking</primary>" msgstr "TCP/IP 網路" #. (itstool) path: listitem/para -#: book.translate.xml:1726 +#: book.translate.xml:1742 msgid "" "<emphasis>Strong TCP/IP networking</emphasis> <_:indexterm-1/> - FreeBSD " "implements industry standard protocols with ever increasing performance and " @@ -1437,33 +1448,42 @@ msgid "" "firewalling roles - and indeed many companies and vendors use it precisely " "for that purpose." msgstr "" +"<emphasis>強大的 TCP/IP 網路</emphasis> <_:indexterm-1/> - FreeBSD 以工業標準" +"實作通訊協定並不斷改善效能與擴展性,這使得 FreeBSD 非常適合應用在伺服器、路由" +"器/防火牆的角色 - 這也是許多公司和供應商使用它的原因。" #. (itstool) path: listitem/para -#: book.translate.xml:1737 +#: book.translate.xml:1753 msgid "" "<emphasis>Fully integrated OpenZFS support</emphasis>, including root-on-" "ZFS, ZFS Boot Environments, fault management, administrative delegation, " "support for jails, FreeBSD specific documentation, and system installer " "support." msgstr "" +"<emphasis>完全整合 OpenZFS</emphasis>,包含 root-on-ZFS、ZFS 開機環境、故障管" +"理、委託管理、對 Jail 的支援、FreeBSD 專屬的文件以及系統安裝程式的支援。" #. (itstool) path: listitem/para -#: book.translate.xml:1745 +#: book.translate.xml:1761 msgid "" "<emphasis>Extensive security features</emphasis>, from the Mandatory Access " "Control framework to Capsicum capability and sandbox mechanisms." msgstr "" +"<emphasis>鉅細靡遺的安全性功能</emphasis>,從強制存取控制 (Mandatory Access " +"Control, MAC) 框架到 Capsicum 功能以及沙盒機制。" #. (itstool) path: listitem/para -#: book.translate.xml:1751 +#: book.translate.xml:1767 msgid "" "<emphasis>Over 30 thousand prebuilt packages</emphasis> for all supported " "architectures, and the Ports Collection which makes it easy to build your " "own, customized ones." msgstr "" +"<emphasis>超過 3 萬個預編的套件</emphasis>供所有支援的架構以及可簡單編譯依您" +"的需求所客製的 Port 套件集。" #. (itstool) path: listitem/para -#: book.translate.xml:1758 +#: book.translate.xml:1774 msgid "" "<emphasis>Documentation</emphasis> - in addition to Handbook and books from " "different authors that cover topics ranging from system administration to " @@ -1472,9 +1492,14 @@ msgid "" "userspace daemons, utilities, and configuration files, but also for kernel " "driver APIs (section 9) and individual drivers (section 4)." msgstr "" +"<emphasis>說明文件</emphasis> - 除了操作手冊及由許多作者著作從系統管理到核心" +"內部主題的書籍外,也有不僅只針對 Userspace Daemon、工具及設定檔,同樣也有針對" +"核心驅動程式 APIs (第 9 節) 及各別驅動程式 (第 4 節) 的操作說明頁 " +"( <citerefentry><refentrytitle>man</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> page)。" #. (itstool) path: listitem/para -#: book.translate.xml:1768 +#: book.translate.xml:1784 msgid "" "<emphasis>Simple and consistent repository structure and build system</" "emphasis> - FreeBSD uses a single repository for all of its components, both " @@ -1482,37 +1507,43 @@ msgid "" "build system and a well thought out development process makes it easy to " "integrate FreeBSD with build infrastructure for your own product." msgstr "" +"<emphasis>簡單且具一致性的檔案庫架構與編譯系統</emphasis> - FreeBSD 對所有的" +"元件、核心與 Userspace 使用單一的檔案庫,加上統一、易於客製的編譯系統以及嚴謹" +"的開發流程,讓 FreeBSD 的編譯基礎架構更容易與您產品的整合。" #. (itstool) path: listitem/para -#: book.translate.xml:1778 +#: book.translate.xml:1794 msgid "" "<emphasis>Staying true to Unix philosophy</emphasis>, preferring " "composability instead of monolithic <quote>all in one</quote> daemons with " "hardcoded behavior." msgstr "" +"<emphasis>忠於 Unix 哲學</emphasis>,偏好可組合而非具寫死的 <quote>多合一</" +"quote> 單一 Daemon。" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:1784 book.translate.xml:17887 +#: book.translate.xml:1800 book.translate.xml:17996 msgid "<primary>binary compatibility</primary> <secondary>Linux</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>Linux</secondary>" #. (itstool) path: listitem/para -#: book.translate.xml:1784 +#: book.translate.xml:1800 msgid "" "<_:indexterm-1/> <emphasis>Binary compatibility</emphasis> with Linux, which " "makes it possible to run many Linux binaries without the need for " "virtualisation." msgstr "" +"<_:indexterm-1/> <emphasis>Linux 執行檔 (Binary) 相容性</emphasis>,無需虛擬" +"化即可執行許多 Linux 執行檔。" #. (itstool) path: para/indexterm -#: book.translate.xml:1795 +#: book.translate.xml:1811 msgid "<primary>Computer Systems Research Group (CSRG)</primary>" msgstr "<primary>電腦系統研究組 (CSRG)</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:1792 -#, fuzzy +#: book.translate.xml:1808 msgid "" "FreeBSD is based on the 4.4BSD-Lite<_:indexterm-1/> release from Computer " "Systems Research Group (CSRG)<_:indexterm-2/> at the University of " @@ -1524,21 +1555,19 @@ msgid "" "reliability on par with other Open Source and commercial offerings, combined " "with cutting-edge features not available anywhere else." msgstr "" -"FreeBSD 系統乃是基於美國加州大學柏克萊分校的電腦系統研究組 (Computer Systems " -"Research Group 也就是 CSRG) 所發行的 4.4BSD-Lite<_:indexterm-1/>,以及基於 " -"BSD 系統開發的優良傳統。 除了由 CSRG 所提供的高品質的成果, 為了提供可處理真" -"正具負荷的工作, FreeBSD 計劃也投入了數千小時以上的細部調整, 以能獲得最好的" -"執行效率以及系統的穩定度。 正當許多商業上的巨人正努力地希望能提供效能及穩定" -"時,FreeBSD 已經具備這樣的特質,並具有其他地方沒有的尖端功能。" +"FreeBSD 系統是基於美國加州大學柏克萊分校的電腦系統研究組 (Computer Systems " +"Research Group 也就是 CSRG) 所發行的 4.4BSD-Lite<_:indexterm-1/>,繼承了 BSD " +"系統開發的優良傳統。 除了由 CSRG 所提供的高品質的成果外,FreeBSD 計劃也投入了" +"上千人時在擴充及微調,來讓系統在真實情境下能達到最大的效能與可靠性。 FreeBSD " +"提供了其他開源與商業產品的效能及穩定性,並結合其他產品所沒有的尖端功能。" #. (itstool) path: sect2/title -#: book.translate.xml:1809 +#: book.translate.xml:1825 msgid "What Can FreeBSD Do?" msgstr "FreeBSD 能做什麼?" #. (itstool) path: sect2/para -#: book.translate.xml:1811 -#, fuzzy +#: book.translate.xml:1827 msgid "" "The applications to which FreeBSD can be put are truly limited only by your " "own imagination. From software development to factory automation, inventory " @@ -1549,15 +1578,14 @@ msgid "" "applications developed by research centers and universities around the " "world, often available at little to no cost." msgstr "" -"FreeBSD 的運用範圍無限,其實完全限制在你的想像力上。 從軟體的開發到工廠自動" -"化,或是人造衛星上面的天線的方位角度的遠端控制; 這些功能若可以用商用的 " -"<trademark class=\"registered\">UNIX</trademark> 產品來達成, 那麼極有可能使" -"用 FreeBSD 也能辦到! FreeBSD 也受益於來自於全球各研究中心及大學所開發的數千" -"個高品質的軟體 ,這些通常只需要花費很少的費用或根本就是免費的。 當然也有商業" -"軟體,而且出現的數目是與日俱增。" +"FreeBSD 能應用的情境完全限制在你的想像力上。 從軟體開發到工廠自動化,庫存管控" +"到遠程衛星天線的方位角校正;若您的需求可以用商用的 <trademark class=" +"\"registered\">UNIX</trademark> 產品來達成,那麼極有可能使用 FreeBSD 也能辦" +"到! FreeBSD 也受益於來自於全球各研究中心及大學所開發的數千個高品質的軟體 ," +"這些通常只需要花費很少的費用或根本就是免費的。" #. (itstool) path: sect2/para -#: book.translate.xml:1821 +#: book.translate.xml:1837 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 " @@ -1570,7 +1598,7 @@ msgstr "" "地被修改。 以下提供一些人們使用 FreeBSD 的例子:" #. (itstool) path: listitem/para -#: book.translate.xml:1831 +#: book.translate.xml:1847 msgid "" "<emphasis>Internet Services:</emphasis> The robust TCP/IP networking built " "into FreeBSD makes it an ideal platform for a variety of Internet services " @@ -1580,71 +1608,69 @@ msgstr "" "務 (如下例) 的理想平台:" #. (itstool) path: listitem/para -#: book.translate.xml:1838 -#, fuzzy +#: book.translate.xml:1854 msgid "Web servers" -msgstr "X 伺服器 (X Server)" +msgstr "網頁伺服器" #. (itstool) path: listitem/para -#: book.translate.xml:1842 +#: book.translate.xml:1858 msgid "IPv4 and IPv6 routing" msgstr "IPv4 及 IPv6 路由" #. (itstool) path: para/indexterm #. (itstool) path: chapter/indexterm -#: book.translate.xml:1846 book.translate.xml:56966 +#: book.translate.xml:1862 book.translate.xml:57493 msgid "<primary>firewall</primary>" msgstr "<primary>防火牆</primary>" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1849 book.translate.xml:60132 +#: book.translate.xml:1865 book.translate.xml:60841 msgid "<primary>NAT</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1846 +#: book.translate.xml:1862 msgid "" "Firewalls<_:indexterm-1/> and NAT<_:indexterm-2/> (<quote>IP masquerading</" "quote>) gateways" msgstr "" "防火牆<_:indexterm-1/>以及 NAT<_:indexterm-2/> (<quote>IP 偽裝</quote>) 通訊" -"閘。" +"閘" #. (itstool) path: para/indexterm -#: book.translate.xml:1856 +#: book.translate.xml:1872 msgid "<primary>FTP servers</primary>" msgstr "<primary>FTP 伺服器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1856 +#: book.translate.xml:1872 msgid "FTP servers<_:indexterm-1/>" msgstr "檔案傳輸協定伺服器<_:indexterm-1/>" #. (itstool) path: para/indexterm -#: book.translate.xml:1863 +#: book.translate.xml:1879 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:1867 book.translate.xml:50565 +#: book.translate.xml:1883 book.translate.xml:50805 msgid "<primary>email</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1862 -#, fuzzy +#: book.translate.xml:1878 msgid "<_:indexterm-1/> <_:indexterm-2/> Email servers" -msgstr "<_:indexterm-1/><_:indexterm-2/> 電子郵件伺服器" +msgstr "<_:indexterm-1/> <_:indexterm-2/> 電子郵件伺服器" #. (itstool) path: listitem/para -#: book.translate.xml:1874 +#: book.translate.xml:1890 msgid "And more..." msgstr "還有更多..." #. (itstool) path: listitem/para -#: book.translate.xml:1880 +#: book.translate.xml:1896 msgid "" "<emphasis>Education:</emphasis> Are you a student of computer science or a " "related engineering field? There is no better way of learning about " @@ -1654,13 +1680,13 @@ msgid "" "useful to those whose primary interest in a computer is to get " "<emphasis>other</emphasis> work done!" msgstr "" -"<emphasis>教育:</emphasis>若您是資工相關領域的學生,再也沒有比使用 FreeBSD " -"能學到更多作業系統、計算機結構、及網路的方法了。 另外如果你想利用電腦來處理一" -"些<emphasis>其他</emphasis>的工作,還有一些如 CAD、 數學運算以及圖形處理軟體" -"等可以免費地取得使用。" +"<emphasis>教育:</emphasis>您是電腦科學相關領域的學生嗎?再也沒有比使用 " +"FreeBSD 能學到更多作業系統、計算機結構、及網路的方法了。其中許多免費提供的 " +"CAD,數學和圖形設計套件對於那些需要在電腦完成 <emphasis>其他</emphasis> 工作" +"的人也非常有用!" #. (itstool) path: listitem/para -#: book.translate.xml:1892 +#: book.translate.xml:1908 msgid "" "<emphasis>Research:</emphasis> With source code for the entire system " "available, FreeBSD is an excellent platform for research in operating " @@ -1675,17 +1701,17 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1904 book.translate.xml:61015 +#: book.translate.xml:1920 book.translate.xml:62049 msgid "<primary>router</primary>" msgstr "<primary>路由器</primary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1906 +#: book.translate.xml:1922 msgid "<primary>DNS Server</primary>" msgstr "<primary>DNS 伺服器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1903 +#: book.translate.xml:1919 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 " @@ -1697,12 +1723,12 @@ msgstr "" "或 486 PC 變身成為絕佳的伺服器,甚至具有過濾封包的功能。" #. (itstool) path: para/indexterm -#: book.translate.xml:1917 +#: book.translate.xml:1933 msgid "<primary>embedded</primary>" msgstr "<primary>嵌入式</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1915 +#: book.translate.xml:1931 msgid "" "<emphasis>Embedded:</emphasis> FreeBSD makes an excellent platform to build " "embedded systems upon. <_:indexterm-1/> With support for the <trademark " @@ -1723,24 +1749,24 @@ msgstr "" "為用來建置嵌入式路由器、防火牆及其他裝置的絕佳基礎。" #. (itstool) path: para/indexterm -#: book.translate.xml:1930 +#: book.translate.xml:1946 msgid "<primary>X Window System</primary>" msgstr "<primary>X Window 系統</primary>" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1933 book.translate.xml:11984 +#: book.translate.xml:1949 book.translate.xml:12043 msgid "<primary>GNOME</primary>" msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1936 book.translate.xml:12069 +#: book.translate.xml:1952 book.translate.xml:12128 msgid "<primary>KDE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1929 +#: book.translate.xml:1945 msgid "" "<_:indexterm-1/> <_:indexterm-2/> <_:indexterm-3/> <emphasis>Desktop:</" "emphasis> FreeBSD makes a fine choice for an inexpensive desktop solution " @@ -1758,12 +1784,12 @@ msgstr "" "於管理。" #. (itstool) path: para/indexterm -#: book.translate.xml:1955 +#: book.translate.xml:1971 msgid "<primary>Compiler</primary>" msgstr "<primary>編譯器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1952 +#: book.translate.xml:1968 msgid "" "<emphasis>Software Development:</emphasis> The basic FreeBSD system comes " "with a full complement of development tools including a full C/C++<_:" @@ -1775,7 +1801,7 @@ msgstr "" "援需多其他語言。" #. (itstool) path: sect2/para -#: book.translate.xml:1964 +#: book.translate.xml:1980 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 " @@ -1785,19 +1811,19 @@ msgstr "" "linkend=\"mirrors\"/> 取得 FreeBSD。" #. (itstool) path: sect2/title -#: book.translate.xml:1971 +#: book.translate.xml:1987 msgid "Who Uses FreeBSD?" msgstr "誰在用 FreeBSD?" #. (itstool) path: sect2/indexterm -#: book.translate.xml:1973 +#: book.translate.xml:1989 msgid "" "<primary>users</primary> <secondary>large sites running FreeBSD</secondary>" msgstr "" "<primary>使用者</primary> <secondary>執行 FreeBSD 的大型站台</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:1978 +#: book.translate.xml:1994 msgid "" "FreeBSD has been known for its web serving capabilities - sites that run on " "FreeBSD include <link xlink:href=\"https://news.ycombinator.com/\">Hacker " @@ -1809,9 +1835,18 @@ msgid "" "\">Rambler</link>, <link xlink:href=\"http://www.yahoo.com/\">Yahoo!</link>, " "and <link xlink:href=\"http://www.yandex.ru/\">Yandex</link>." msgstr "" +"FreeBSD 以其網頁 (Web) 服務功能而聞名 - 在 FreeBSD 上運作的網站包括 <link " +"xlink:href=\"https://news.ycombinator.com/\">Hacker News</link>, <link xlink:" +"href=\"http://www.netcraft.com/\">Netcraft</link>, <link xlink:href=\"http://" +"www.163.com/\">NetEase</link>, <link xlink:href=\"https://signup.netflix.com/" +"openconnect\">Netflix</link>, <link xlink:href=\"http://www.sina.com/" +"\">Sina</link>, <link xlink:href=\"http://www.sony.co.jp/\">Sony Japan</" +"link>, <link xlink:href=\"http://www.rambler.ru/\">Rambler</link>, <link " +"xlink:href=\"http://www.yahoo.com/\">Yahoo!</link> 及 <link xlink:href=" +"\"http://www.yandex.ru/\">Yandex</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:1991 +#: book.translate.xml:2007 msgid "" "FreeBSD's advanced features, proven security, predictable release cycle, and " "permissive license have led to its use as a platform for building many " @@ -1824,12 +1859,12 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:2001 book.translate.xml:55647 +#: book.translate.xml:2017 book.translate.xml:56075 msgid "<primary>Apache</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2000 +#: book.translate.xml:2016 msgid "" "<link xlink:href=\"http://www.apache.org/\">Apache</link> <_:indexterm-1/> - " "The Apache Software Foundation runs most of its public facing " @@ -1841,12 +1876,12 @@ msgstr "" "庫 (擁有超過 140 萬次提交) 都是在 FreeBSD 上運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2011 +#: book.translate.xml:2027 msgid "<primary>Apple</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2010 +#: book.translate.xml:2026 msgid "" "<link xlink:href=\"http://www.apple.com/\">Apple</link> <_:indexterm-1/> - " "OS X borrows heavily from FreeBSD for the network stack, virtual file " @@ -1858,12 +1893,12 @@ msgstr "" "Apple iOS 中含有從 FreeBSD 借鑒來的元素。" #. (itstool) path: para/indexterm -#: book.translate.xml:2021 +#: book.translate.xml:2037 msgid "<primary>Cisco</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2020 +#: book.translate.xml:2036 msgid "" "<link xlink:href=\"http://www.cisco.com/\">Cisco</link> <_:indexterm-1/> - " "IronPort network security and anti-spam appliances run a modified FreeBSD " @@ -1873,12 +1908,12 @@ msgstr "" "IronPort 網路安全及反垃圾郵件設備是採用改良後 FreeBSD 核心來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2029 +#: book.translate.xml:2045 msgid "<primary>Citrix</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2028 +#: book.translate.xml:2044 msgid "" "<link xlink:href=\"http://www.citrix.com/\">Citrix</link> <_:indexterm-1/> - " "The NetScaler line of security appliances provide layer 4-7 load balancing, " @@ -1890,13 +1925,12 @@ msgstr "" "牆、安全的 VPN 以及行動雲端網路存取,皆運用了 FreeBSD Shell 強大的功能。" #. (itstool) path: para/indexterm -#: book.translate.xml:2039 +#: book.translate.xml:2055 msgid "<primary>Isilon</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2038 -#, fuzzy +#: book.translate.xml:2054 msgid "" "<link xlink:href=\"https://www.emc.com/isilon\">Dell EMC Isilon</link> <_:" "indexterm-1/> - Isilon's enterprise storage appliances are based on FreeBSD. " @@ -1904,34 +1938,35 @@ msgid "" "intellectual property throughout the kernel and focus on building their " "product instead of an operating system." msgstr "" -"<link xlink:href=\"http://www.isilon.com/\">Isilon</link> <_:indexterm-1/> - " -"Isilon 的企業存儲設備以 FreeBSD 為基礎。非常自由的 FreeBSD 授權條款讓 Isilon " -"整合了它們的智慧財產到整個核心,並專注打造自己的產品,而不是一個作業系統。" +"<link xlink:href=\"https://www.emc.com/isilon\">Dell EMC Isilon</link> <_:" +"indexterm-1/> - Isilon 的企業存儲設備是以 FreeBSD 為基礎。非常自由的 FreeBSD " +"授權條款讓 Isilon 整合了它們的智慧財產到整個核心,並專注打造自己的產品,而不" +"是一個作業系統。" #. (itstool) path: para/indexterm -#: book.translate.xml:2051 -msgid "<primary>Dell KACE</primary>" -msgstr "" +#: book.translate.xml:2067 +msgid "<primary>Quest KACE</primary>" +msgstr "<primary>Quest KACE</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2049 +#: book.translate.xml:2065 msgid "" -"<link xlink:href=\"http://www.dell.com/KACE\">Dell KACE</link> <_:" +"<link xlink:href=\"http://www.quest.com/KACE\">Quest KACE</link> <_:" "indexterm-1/> - The KACE system management appliances run FreeBSD because of " "its reliability, scalability, and the community that supports its continued " "development." msgstr "" -"<link xlink:href=\"http://www.dell.com/KACE\">Dell KACE</link> <_:" -"indexterm-1/> - KACE 系統管理設備中運作了 FreeBSD,因為 FreeBSD 的可靠性、可" -"擴展性以及支持其持續發展的社群。" +"<link xlink:href=\"http://www.quest.com/KACE\">Quest KACE</link> <_:" +"indexterm-1/> - KACE 系統管理設備中運作了 FreeBSD,是因為 FreeBSD 的可靠性、" +"可擴展性以及支持其持續發展的社群。" #. (itstool) path: para/indexterm -#: book.translate.xml:2060 +#: book.translate.xml:2076 msgid "<primary>iXsystems</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2059 +#: book.translate.xml:2075 msgid "" "<link xlink:href=\"http://www.ixsystems.com/\">iXsystems</link> <_:" "indexterm-1/> - The TrueNAS line of unified storage appliances is based on " @@ -1944,12 +1979,12 @@ msgstr "" "開源計劃的開發。" #. (itstool) path: para/indexterm -#: book.translate.xml:2070 +#: book.translate.xml:2086 msgid "<primary>Juniper</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2069 +#: book.translate.xml:2085 msgid "" "<link xlink:href=\"http://www.juniper.net/\">Juniper</link> <_:indexterm-1/> " "- The JunOS operating system that powers all Juniper networking gear " @@ -1967,12 +2002,12 @@ msgstr "" "功能從 FreeBSD 整合回 JunOS 的複雜性。" #. (itstool) path: para/indexterm -#: book.translate.xml:2085 +#: book.translate.xml:2101 msgid "<primary>McAfee</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2084 +#: book.translate.xml:2100 msgid "" "<link xlink:href=\"http://www.mcafee.com/\">McAfee</link> <_:indexterm-1/> - " "SecurOS, the basis of McAfee enterprise firewall products including " @@ -1983,12 +2018,12 @@ msgstr "" "FreeBSD 為基礎。" #. (itstool) path: para/indexterm -#: book.translate.xml:2094 +#: book.translate.xml:2110 msgid "<primary>NetApp</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2093 +#: book.translate.xml:2109 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 " @@ -2000,12 +2035,12 @@ msgstr "" "了回 FreeBSD 許多功能,包括新 BSD 條款授權的 hypervisor, bhyve。" #. (itstool) path: para/indexterm -#: book.translate.xml:2104 +#: book.translate.xml:2120 msgid "<primary>Netflix</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2103 +#: book.translate.xml:2119 msgid "" "<link xlink:href=\"http://www.netflix.com/\">Netflix</link> <_:indexterm-1/> " "- The OpenConnect appliance that Netflix uses to stream movies to its " @@ -2020,12 +2055,12 @@ msgstr "" "Netflix 的 OpenConnect 設備負責了北美所有的網路流量 32% 以上。" #. (itstool) path: para/indexterm -#: book.translate.xml:2117 +#: book.translate.xml:2133 msgid "<primary>Sandvine</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2116 +#: book.translate.xml:2132 msgid "" "<link xlink:href=\"http://www.sandvine.com/\">Sandvine</link> <_:indexterm-1/" "> - Sandvine uses FreeBSD as the basis of their high performance real-time " @@ -2037,12 +2072,12 @@ msgstr "" "慧網路策略控制產品。" #. (itstool) path: para/indexterm -#: book.translate.xml:2127 +#: book.translate.xml:2143 msgid "<primary>Sony</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2126 +#: book.translate.xml:2142 msgid "" "<link xlink:href=\"http://www.sony.com/\">Sony</link> <_:indexterm-1/> - The " "PlayStation 4 gaming console runs a modified version of FreeBSD." @@ -2051,12 +2086,12 @@ msgstr "" "PlayStation 4 遊戲主機使用了修改過的 FreeBSD 版本來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2135 +#: book.translate.xml:2151 msgid "<primary>Sophos</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2134 +#: book.translate.xml:2150 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 " @@ -2068,12 +2103,12 @@ msgstr "" "郵件中的垃圾郵件和病毒,同時也可監控出站郵件中的惡意軟體及敏感資訊。" #. (itstool) path: para/indexterm -#: book.translate.xml:2147 +#: book.translate.xml:2163 msgid "<primary>Spectra Logic</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2145 +#: book.translate.xml:2161 msgid "" "<link xlink:href=\"http://www.spectralogic.com/\">Spectra Logic</link> <_:" "indexterm-1/> - The nTier line of archive grade storage appliances run " @@ -2083,12 +2118,12 @@ msgstr "" "indexterm-1/> - 儲藏級儲存設備的 nTier 產品線以 FreeBSD 和 OpenZFS 來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2155 +#: book.translate.xml:2171 msgid "<primary>Stormshield</primary>" msgstr "<primary>Stormshield</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2154 +#: book.translate.xml:2170 msgid "" "<link xlink:href=\"https://www.stormshield.eu\">Stormshield</link> <_:" "indexterm-1/> - Stormshield Network Security appliances are based on a " @@ -2101,12 +2136,12 @@ msgstr "" "BSD 授權條款讓他們可將其智慧財產與系統整合並同時回饋大量有趣的發展給社群。" #. (itstool) path: para/indexterm -#: book.translate.xml:2168 +#: book.translate.xml:2184 msgid "<primary>The Weather Channel</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2166 +#: book.translate.xml:2182 msgid "" "<link xlink:href=\"http://www.weather.com/\">The Weather Channel</link> <_:" "indexterm-1/> - The IntelliStar appliance that is installed at each local " @@ -2118,12 +2153,12 @@ msgstr "" "視網路節目的 IntelliStar 設備便是使用 FreeBSD。" #. (itstool) path: para/indexterm -#: book.translate.xml:2179 +#: book.translate.xml:2195 msgid "<primary>Verisign</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2178 +#: book.translate.xml:2194 msgid "" "<link xlink:href=\"http://www.verisign.com/\">Verisign</link> <_:indexterm-1/" "> - Verisign is responsible for operating the .com and .net root domain " @@ -2137,12 +2172,12 @@ msgstr "" "點故障的問題。" #. (itstool) path: para/indexterm -#: book.translate.xml:2192 +#: book.translate.xml:2208 msgid "<primary>Voxer</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2191 +#: book.translate.xml:2207 msgid "" "<link xlink:href=\"http://www.voxer.com/\">Voxer</link> <_:indexterm-1/> - " "Voxer powers their mobile voice messaging platform with ZFS on FreeBSD. " @@ -2158,12 +2193,12 @@ msgstr "" "的 <acronym>ZFS</acronym> 也支援了 TRIM。" #. (itstool) path: para/indexterm -#: book.translate.xml:2206 +#: book.translate.xml:2222 msgid "<primary>WhatsApp</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2205 +#: book.translate.xml:2221 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 " @@ -2175,12 +2210,12 @@ msgstr "" "台時,它們選擇了 FreeBSD。它們接著擴大規模到每台伺服器處理超過 250 萬的連線。" #. (itstool) path: para/indexterm -#: book.translate.xml:2218 +#: book.translate.xml:2234 msgid "<primary>Wheel Systems</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2216 +#: book.translate.xml:2232 msgid "" "<link xlink:href=\"http://wheelsystems.com/\">Wheel Systems</link> <_:" "indexterm-1/> - The FUDO security appliance allows enterprises to monitor, " @@ -2194,17 +2229,17 @@ msgstr "" "GELI, Capsicum, HAST 及 auditdistd。" #. (itstool) path: sect2/para -#: book.translate.xml:2230 +#: book.translate.xml:2246 msgid "FreeBSD has also spawned a number of related open source projects:" msgstr "FreeBSD 也催生了數個相關的開源計劃:" #. (itstool) path: para/indexterm -#: book.translate.xml:2237 +#: book.translate.xml:2253 msgid "<primary>BSD Router</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2235 +#: book.translate.xml:2251 msgid "" "<link xlink:href=\"http://bsdrp.net/\">BSD Router</link> <_:indexterm-1/> - " "A FreeBSD based replacement for large enterprise routers designed to run on " @@ -2214,12 +2249,12 @@ msgstr "" "以 FreeBSD 為基礎的大型企業路由器替代方案,專門設計為可在標準 PC 硬體上運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2246 +#: book.translate.xml:2262 msgid "<primary>FreeNAS</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2245 +#: book.translate.xml:2261 msgid "" "<link xlink:href=\"http://www.freenas.org/\">FreeNAS</link> <_:indexterm-1/> " "- A customized FreeBSD designed to be used as a network file server " @@ -2234,12 +2269,12 @@ msgstr "" "iSCSI,還有以 FreeBSD Jail 為基礎的套件系統。" #. (itstool) path: para/indexterm -#: book.translate.xml:2258 +#: book.translate.xml:2274 msgid "<primary>GhostBSD</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2257 +#: book.translate.xml:2273 msgid "" "<link xlink:href=\"http://www.ghostbsd.org/\">GhostBSD</link> <_:indexterm-1/" "> - A desktop oriented distribution of FreeBSD bundled with the Gnome " @@ -2249,12 +2284,12 @@ msgstr "" "> - 採用 Gnome 桌面環境的 FreeBSD 發行版。" #. (itstool) path: para/indexterm -#: book.translate.xml:2266 +#: book.translate.xml:2282 msgid "<primary>mfsBSD</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2265 +#: book.translate.xml:2281 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." @@ -2263,12 +2298,12 @@ msgstr "" "來建置可完全從記憶體執行 FreeBSD 系統映像檔工具。" #. (itstool) path: para/indexterm -#: book.translate.xml:2274 +#: book.translate.xml:2290 msgid "<primary>NAS4Free</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2273 +#: book.translate.xml:2289 msgid "" "<link xlink:href=\"http://www.nas4free.org/\">NAS4Free</link> <_:indexterm-1/" "> - A file server distribution based on FreeBSD with a PHP powered web " @@ -2278,12 +2313,12 @@ msgstr "" "> - 以 FreeBSD 及 PHP 驅動網頁介面為基礎的檔案伺服器。" #. (itstool) path: para/indexterm -#: book.translate.xml:2282 +#: book.translate.xml:2298 msgid "<primary>OPNsense</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2281 +#: book.translate.xml:2297 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 " @@ -2298,12 +2333,12 @@ msgstr "" "功能集,同時擁有開放和安全的來源。" #. (itstool) path: para/indexterm -#: book.translate.xml:2294 +#: book.translate.xml:2310 msgid "<primary>TrueOS</primary>" msgstr "<primary>TrueOS</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2293 +#: book.translate.xml:2309 msgid "" "<link xlink:href=\"https://www.trueos.org\">TrueOS</link> <_:indexterm-1/> - " "A customized version of FreeBSD geared towards desktop users with graphical " @@ -2315,12 +2350,12 @@ msgstr "" "能給所有使用者,專門設計來緩解使用者在 Windows 與 OS X 間的過渡。" #. (itstool) path: para/indexterm -#: book.translate.xml:2304 +#: book.translate.xml:2320 msgid "<primary>pfSense</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2303 +#: book.translate.xml:2319 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 " @@ -2330,12 +2365,12 @@ msgstr "" "- 以 FreeBSD 為基礎的防火牆發行版,支援巨型陣列及大規模 IPv6。" #. (itstool) path: para/indexterm -#: book.translate.xml:2313 +#: book.translate.xml:2329 msgid "<primary>ZRouter</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2312 +#: book.translate.xml:2328 msgid "" "<link xlink:href=\"http://zrouter.org/\">ZRouter</link> <_:indexterm-1/> - " "An open source alternative firmware for embedded devices based on FreeBSD. " @@ -2346,22 +2381,27 @@ msgstr "" "用韌體。" #. (itstool) path: sect2/para -#: book.translate.xml:2321 -#, fuzzy +#: book.translate.xml:2337 msgid "" +"A list of <link xlink:href=\"https://www.freebsdfoundation.org/about/" +"testimonials/\"> testimonials from companies basing their products and " +"services on FreeBSD</link> can be found at the FreeBSD Foundation website. " "Wikipedia also maintains a <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_products_based_on_FreeBSD\">list of products based on FreeBSD</link>." msgstr "" -"還有許多的應用。維基百科也維護了一份 <link xlink:href=\"http://en.wikipedia." -"org/wiki/List_of_products_based_on_FreeBSD\">以 FreeBSD 為基礎的產品</link>。" +"在 FreeBSD 基金會網站上可以找到<link xlink:href=\"https://www." +"freebsdfoundation.org/about/testimonials/\">以 FreeBSD 為基礎的產品與服務的公" +"司的推薦</link> 清單。 Wikipedia 也維護了一份<link xlink:href=\"https://en." +"wikipedia.org/wiki/List_of_products_based_on_FreeBSD\">以 FreeBSD 為基礎的產" +"品清單</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:2328 +#: book.translate.xml:2347 msgid "About the FreeBSD Project" msgstr "關於 FreeBSD 計劃" #. (itstool) path: sect1/para -#: book.translate.xml:2330 +#: book.translate.xml:2349 msgid "" "The following section provides some background information on the project, " "including a brief history, project goals, and the development model of the " @@ -2369,37 +2409,37 @@ msgid "" msgstr "接下來講的是 FreeBSD 計劃的背景,包含歷史、計劃目標以及開發模式。" #. (itstool) path: sect2/title -#: book.translate.xml:2335 +#: book.translate.xml:2354 msgid "A Brief History of FreeBSD" msgstr "FreeBSD 歷史簡介" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2337 +#: book.translate.xml:2356 msgid "<primary>386BSD Patchkit</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2338 +#: book.translate.xml:2357 msgid "<primary>Hubbard, Jordan</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2339 +#: book.translate.xml:2358 msgid "<primary>Williams, Nate</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2340 +#: book.translate.xml:2359 msgid "<primary>Grimes, Rod</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2341 +#: book.translate.xml:2360 msgid "<primary>FreeBSD Project</primary> <secondary>history</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2346 +#: book.translate.xml:2365 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 " @@ -2409,12 +2449,12 @@ msgstr "" "劃的最後三個協調人 Nate Williams,Rod Grimes 和 Jordan Hubbard。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2351 book.translate.xml:2391 +#: book.translate.xml:2370 book.translate.xml:2410 msgid "<primary>386BSD</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2352 +#: book.translate.xml:2371 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 " @@ -2426,12 +2466,12 @@ msgstr "" "386BSD Interim 便是這個原因。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2358 +#: book.translate.xml:2377 msgid "<primary>Jolitz, Bill</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2359 +#: book.translate.xml:2378 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 " @@ -2447,17 +2487,17 @@ msgstr "" "出未來的打算,所以該計劃便突然面臨中止。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2369 +#: book.translate.xml:2388 msgid "<primary>Greenman, David</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2370 +#: book.translate.xml:2389 msgid "<primary>Walnut Creek CDROM</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2372 +#: book.translate.xml:2391 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. " @@ -2482,27 +2522,27 @@ msgstr "" "模。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2388 +#: book.translate.xml:2407 msgid "<primary>4.3BSD-Lite</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2389 book.translate.xml:2404 +#: book.translate.xml:2408 book.translate.xml:2423 msgid "<primary>Net/2</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2390 book.translate.xml:2403 +#: book.translate.xml:2409 book.translate.xml:2422 msgid "<primary>U.C. Berkeley</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2392 book.translate.xml:8793 +#: book.translate.xml:2411 book.translate.xml:8809 msgid "<primary>Free Software Foundation</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2394 +#: book.translate.xml:2413 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 " @@ -2517,17 +2557,17 @@ msgstr "" "還算成功,我們又接著於 1994 年 5 月發行了相當成功的 FreeBSD 1.1。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2402 +#: book.translate.xml:2421 msgid "<primary>Novell</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2405 +#: book.translate.xml:2424 msgid "<primary>AT&T</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2406 +#: book.translate.xml:2425 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 " @@ -2552,7 +2592,7 @@ msgstr "" "最後一次發行,也就是 FreeBSD 1.1.5.1。" #. (itstool) path: sect2/para -#: book.translate.xml:2423 +#: book.translate.xml:2442 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 " @@ -2574,7 +2614,7 @@ msgstr "" "之於 1995 年 6 月又發行了更容易安裝,更好的 FreeBSD 2.0.5。" #. (itstool) path: sect2/para -#: book.translate.xml:2437 +#: book.translate.xml:2456 msgid "" "Since that time, FreeBSD has made a series of releases each time improving " "the stability, speed, and feature set of the previous version." @@ -2583,7 +2623,7 @@ msgstr "" "的發佈版本。" #. (itstool) path: sect2/para -#: book.translate.xml:2441 +#: book.translate.xml:2460 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 " @@ -2595,24 +2635,24 @@ msgstr "" "snapshots/\">快照伺服器</link> 取得。" #. (itstool) path: info/title -#: book.translate.xml:2449 +#: book.translate.xml:2468 msgid "FreeBSD Project Goals" msgstr "FreeBSD 計劃目標" #. (itstool) path: authorgroup/author -#: book.translate.xml:2452 +#: book.translate.xml:2471 msgid "" "<personname> <firstname>Jordan</firstname> <surname>Hubbard</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2462 +#: book.translate.xml:2481 msgid "<primary>FreeBSD Project</primary> <secondary>goals</secondary>" msgstr "<primary>FreeBSD 計劃</primary> <secondary>目標</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:2466 +#: book.translate.xml:2485 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 " @@ -2632,22 +2672,22 @@ msgstr "" "是我們所倡導的一個目標。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2478 +#: book.translate.xml:2497 msgid "<primary>GNU General Public License (GPL)</primary>" msgstr "<primary>GNU 通用公共授權條款 (GPL)</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2481 +#: book.translate.xml:2500 msgid "<primary>GNU Lesser General Public License (LGPL)</primary>" msgstr "<primary>GNU 較寬鬆通用公共授權條款 (LGPL)</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2484 +#: book.translate.xml:2503 msgid "<primary>BSD Copyright</primary>" msgstr "<primary>BSD 版權</primary>" #. (itstool) path: sect2/para -#: book.translate.xml:2485 +#: book.translate.xml:2504 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 " @@ -2663,25 +2703,25 @@ msgstr "" "果可以選擇的話, 我們會比較喜歡使用限制相對更寬鬆的 BSD 版權來發佈軟體。" #. (itstool) path: info/title -#: book.translate.xml:2497 +#: book.translate.xml:2516 msgid "The FreeBSD Development Model" msgstr "FreeBSD 開發模式" #. (itstool) path: authorgroup/author -#: book.translate.xml:2500 +#: book.translate.xml:2519 msgid "" "<personname> <firstname>Satoshi</firstname> <surname>Asami</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2510 +#: book.translate.xml:2529 msgid "" "<primary>FreeBSD Project</primary> <secondary>development model</secondary>" msgstr "<primary>FreeBSD 專案</primary> <secondary>開發模式</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:2515 +#: book.translate.xml:2534 msgid "" "The development of FreeBSD is a very open and flexible process, being " "literally built from the contributions of thousands of people around the " @@ -2708,52 +2748,52 @@ msgstr "" "link> 對那些希望了解我們進度的人也是相當有用的。" #. (itstool) path: sect2/para -#: book.translate.xml:2528 +#: book.translate.xml:2547 msgid "" "Useful things to know about the FreeBSD Project and its development process, " "whether working independently or in close cooperation:" msgstr "" "無論是單獨開發者或者封閉式的團隊合作,多瞭解 FreeBSD 計劃和它的開發過程會是不" -"錯的︰" +"錯的:" #. (itstool) path: varlistentry/term -#: book.translate.xml:2534 +#: book.translate.xml:2553 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:2538 +#: book.translate.xml:2557 msgid "<primary>CVS</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2542 +#: book.translate.xml:2561 msgid "<primary>CVS Repository</primary>" msgstr "<primary>CVS 檔案庫</primary>" #. (itstool) path: para/indexterm -#: book.translate.xml:2546 +#: book.translate.xml:2565 msgid "<primary>Concurrent Versions System</primary> <see>CVS</see>" msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:2551 book.translate.xml:45362 book.translate.xml:65535 +#: book.translate.xml:2570 book.translate.xml:45602 book.translate.xml:65535 msgid "<primary>Subversion</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2555 +#: book.translate.xml:2574 msgid "<primary>Subversion Repository</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2559 +#: book.translate.xml:2578 msgid "<primary>SVN</primary> <see>Subversion</see>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2537 +#: book.translate.xml:2556 msgid "" "<_:indexterm-1/> <_:indexterm-2/> <_:indexterm-3/> <_:indexterm-4/> <_:" "indexterm-5/> <_:indexterm-6/> For several years, the central source tree " @@ -2786,17 +2826,17 @@ msgstr "" "\"ports-using\">使用 Port 套件集</link> 了解如何取得 FreeBSD Port 套件集。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2586 +#: book.translate.xml:2605 msgid "The committers list<anchor xml:id=\"development-committers\"/>" msgstr "提交者名單<anchor xml:id=\"development-committers\"/>" #. (itstool) path: para/indexterm -#: book.translate.xml:2590 +#: book.translate.xml:2609 msgid "<primary>committers</primary>" msgstr "<primary>提交者</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2589 +#: book.translate.xml:2608 msgid "" "The <firstterm>committers</firstterm> <_:indexterm-1/> are the people who " "have <emphasis>write</emphasis> access to the Subversion tree, and are " @@ -2817,18 +2857,17 @@ msgstr "" "誤 (Bug)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2606 +#: book.translate.xml:2625 msgid "The FreeBSD core team<anchor xml:id=\"development-core\"/>" msgstr "FreeBSD 核心團隊<anchor xml:id=\"development-core\"/>" #. (itstool) path: para/indexterm -#: book.translate.xml:2610 +#: book.translate.xml:2629 msgid "<primary>core team</primary>" msgstr "<primary>核心團隊</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2609 -#, fuzzy +#: book.translate.xml:2628 msgid "" "The <firstterm>FreeBSD core team</firstterm> <_:indexterm-1/> would be " "equivalent to the board of directors if the FreeBSD Project were a company. " @@ -2840,13 +2879,14 @@ msgid "" "committer candidates in July 2018. Elections are held every 2 years." msgstr "" "如果把 FreeBSD 看成是一家公司的話, <firstterm>FreeBSD 核心團隊 (FreeBSD " -"core team)</firstterm><_:indexterm-1/> 就相當於董事會。 核心團隊的主要職責在" -"於確保此計劃有良好的架構,以朝著正確的方向發展。 此外,邀請熱血且負責的軟體開" -"發者加入提交者的行列, 以在若干成員離去時得以補充新血。 目前的核心團隊是在 " -"2014 年 7 月從提交者候選人之中選出來的,這個選舉每兩年會舉辦一次。" +"core team)</firstterm><_:indexterm-1/> 就相當於公司的董事會。 核心團隊的主要" +"職責在於確保此計劃的整體有良好的架構,以朝著正確的方向發展。 此外,邀請敬業且" +"負責的開發者加入提交者的行列也是核心團隊的職責之一,隨著其他新成員的加入也招" +"募新的核心團隊成員。 目前的核心團隊是在 2018 年 7 月從提交者候選人之中選出來" +"的,這個選舉每兩年會舉辦一次。" #. (itstool) path: note/para -#: book.translate.xml:2625 +#: book.translate.xml:2644 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 " @@ -2863,12 +2903,12 @@ msgstr "" "而選擇投入 FreeBSD 開發的熱血有為者才對!" #. (itstool) path: varlistentry/term -#: book.translate.xml:2640 +#: book.translate.xml:2659 msgid "Outside contributors" msgstr "非官方貢獻者" #. (itstool) path: listitem/para -#: book.translate.xml:2643 +#: book.translate.xml:2662 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 " @@ -2886,12 +2926,12 @@ msgstr "" "linkend=\"eresources\"/> 以瞭解各式不同的 FreeBSD 郵遞論壇。" #. (itstool) path: para/indexterm -#: book.translate.xml:2654 +#: book.translate.xml:2673 msgid "<primary>contributors</primary>" msgstr "<primary>貢獻者</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2652 +#: book.translate.xml:2671 msgid "" "<citetitle><link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/" "contributors/article.html\">The FreeBSD Contributors List</link></citetitle> " @@ -2904,7 +2944,7 @@ msgstr "" "貢獻 FreeBSD 一些回饋呢?" #. (itstool) path: listitem/para -#: book.translate.xml:2659 +#: book.translate.xml:2678 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 " @@ -2914,7 +2954,7 @@ msgstr "" "<link xlink:href=\"@@URL_RELPREFIX@@/index.html\">FreeBSD 計畫網站</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:2667 +#: book.translate.xml:2686 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 " @@ -2931,7 +2971,7 @@ msgstr "" "用 — 而這個開發模式對我們要完成這個目標來說運作的非常好。" #. (itstool) path: sect2/para -#: book.translate.xml:2677 +#: book.translate.xml:2696 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!" @@ -2940,12 +2980,12 @@ msgstr "" "保繼續成功!" #. (itstool) path: sect2/title -#: book.translate.xml:2683 +#: book.translate.xml:2702 msgid "Third Party Programs" msgstr "第三方程式" #. (itstool) path: sect2/para -#: book.translate.xml:2685 +#: book.translate.xml:2704 msgid "" "In addition to the base distributions, FreeBSD offers a ported software " "collection with thousands of commonly sought-after programs. At the time of " @@ -2973,13 +3013,12 @@ msgstr "" "更多有關套件與 Port 的資訊可於 <xref linkend=\"ports\"/> 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:2706 +#: book.translate.xml:2725 msgid "Additional Documentation" msgstr "其他文件" #. (itstool) path: sect2/para -#: book.translate.xml:2708 -#, fuzzy +#: book.translate.xml:2727 msgid "" "All supported FreeBSD versions provide an option in the installer to install " "additional documentation under <filename>/usr/local/share/doc/freebsd</" @@ -2988,22 +3027,19 @@ msgid "" "\"doc-ports-install-package\"/>. You may view the locally installed manuals " "with any HTML capable browser using the following URLs:" msgstr "" -"所有最近的 FreeBSD 版本在安裝程式 (不是 " -"<citerefentry><refentrytitle>sysinstall</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 就是 <citerefentry><refentrytitle>bsdinstall</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry>) 都有提供一個選項在初始" -"系統安裝時可安裝額外的說明文件到 <filename>/usr/local/share/doc/freebsd</" -"filename>。說明文件也可在往後使用套件安裝,詳細說明於 <xref linkend=\"doc-" -"ports-install-package\"/>。您可以使用任何支援 HTML 的瀏覽器進入下列 URL 檢視" -"已安裝在本機的操作手冊:" +"所有支援的 FreeBSD 版本都會在安裝程式中提供一個選項,讓您可以在初始化系統安裝" +"的階段安裝額外的說明文件到 <filename>/usr/local/share/doc/freebsd</" +"filename>。說明文件也可在往後隨時使用套件安裝,詳細說明於 <xref linkend=" +"\"doc-ports-install-package\"/>。您也可以使用任何支援 HTML 的瀏覽器進入下列 " +"URL 檢視已安裝在本機的手冊:" #. (itstool) path: varlistentry/term -#: book.translate.xml:2720 +#: book.translate.xml:2739 msgid "The FreeBSD Handbook" msgstr "FreeBSD 使用手冊" #. (itstool) path: listitem/para -#: book.translate.xml:2723 +#: book.translate.xml:2742 msgid "" "<link xlink:href=\"file://localhost/usr/local/share/doc/freebsd/handbook/" "index.html\"><filename>/usr/local/share/doc/freebsd/handbook/index.html</" @@ -3011,12 +3047,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:2728 +#: book.translate.xml:2747 msgid "The FreeBSD FAQ" msgstr "FreeBSD 常見問答集" #. (itstool) path: listitem/para -#: book.translate.xml:2731 +#: book.translate.xml:2750 msgid "" "<link xlink:href=\"file://localhost/usr/local/share/doc/freebsd/faq/index." "html\"><filename>/usr/local/share/doc/freebsd/faq/index.html</filename></" @@ -3024,7 +3060,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2736 +#: book.translate.xml:2755 msgid "" "You can also view the master (and most frequently updated) copies at <uri " "xlink:href=\"https://www.FreeBSD.org/\">https://www.FreeBSD.org/</uri>." @@ -3033,45 +3069,45 @@ msgstr "" "\"https://www.FreeBSD.org/\">https://www.FreeBSD.org/</uri>。" #. (itstool) path: info/title -#: book.translate.xml:2752 +#: book.translate.xml:2771 msgid "Installing FreeBSD" msgstr "安裝 FreeBSD" #. (itstool) path: authorgroup/author -#: book.translate.xml:2780 +#: book.translate.xml:2799 msgid "" "<personname> <firstname>Gavin</firstname> <surname>Atkinson</surname> </" "personname> <contrib>Updated for bsdinstall by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:2789 +#: book.translate.xml:2808 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:2798 +#: book.translate.xml:2817 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:2812 +#: book.translate.xml:2831 msgid "<primary>installation</primary>" msgstr "<primary>安裝</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:2814 +#: book.translate.xml:2833 msgid "" "There are several different ways of getting FreeBSD to run, depending on the " "environment. Those are:" -msgstr "" +msgstr "有多種不同的方法可以執行 FreeBSD,根據所在環境,包含:" #. (itstool) path: listitem/para -#: book.translate.xml:2819 +#: book.translate.xml:2838 msgid "" "Virtual Machine images, to download and import on a virtual environment of " "choice. These can be downloaded from the <link xlink:href=\"https://www." @@ -3082,9 +3118,15 @@ msgid "" "(<quote>already installed</quote>) instances, ready to run and perform post-" "installation tasks." msgstr "" +"一般虛擬機映像檔,可下載並匯入到您所選擇的虛擬環境。映像檔可從 <link xlink:" +"href=\"https://www.freebsd.org/where.html\">Download FreeBSD</link> 頁面下" +"載,KVM (<quote>qcow2</quote>), VMWare (<quote>vmdk</quote>), Hyper-V " +"(<quote>vhd</quote>) 及原始裝置的映像檔都支援。這些並非安裝程式的映像檔,而是" +"已經預先設定好 (<quote>已安裝好</quote>) 的實例,可直接使用並執行安裝後的作" +"業。" #. (itstool) path: listitem/para -#: book.translate.xml:2832 +#: book.translate.xml:2851 msgid "" "Virtual Machine images available at Amazon's <link xlink:href=\"https://aws." "amazon.com/mp/solutions/freebsd/\">AWS Marketplace</link>, <link xlink:href=" @@ -3097,9 +3139,18 @@ msgid "" "microsoft.com/en-us/azure/virtual-machines/linux/freebsd-intro-on-azure" "\">Azure Documentation</link>." msgstr "" +"託管服務虛擬機映像檔,可在 Amazon 的 <link xlink:href=\"https://aws.amazon." +"com/mp/solutions/freebsd/\">AWS Marketplace</link>, <link xlink:href=" +"\"https://azuremarketplace.microsoft.com/en-us/marketplace/apps?" +"search=freebsd&page=1\">Microsoft Azure Marketplace</link> 和 <link " +"xlink:href=\"https://console.cloud.google.com/launcher/details/freebsd-cloud/" +"freebsd-11\">Google Cloud Platform</link> 等託管服務上運行的虛擬機映像檔。有" +"關如何在 Azure 上部署 FreeBSD 的資訊可查詢 <link xlink:href=\"https://docs." +"microsoft.com/en-us/azure/virtual-machines/linux/freebsd-intro-on-azure" +"\">Azure 說明文件</link>中的相關章節。" #. (itstool) path: listitem/para -#: book.translate.xml:2842 +#: book.translate.xml:2861 msgid "" "SD card images, for embedded systems such as Raspberry Pi or BeagleBone " "Black. These can be downloaded from the <link xlink:href=\"https://www." @@ -3107,27 +3158,31 @@ msgid "" "uncompressed and written as a raw image to an SD card, from which the board " "will then boot." msgstr "" +"SD 卡映像檔,供嵌入式系統,如 Raspberry Pi 或 BeagleBone Black 使用的映像檔," +"可從 <link xlink:href=\"https://www.freebsd.org/where.html\">Download " +"FreeBSD</link> 頁面下載,這些檔案必須先解壓縮後以原始映像檔的格式寫入 SD 卡以" +"讓這些開發電路板能夠啟動。" #. (itstool) path: listitem/para -#: book.translate.xml:2851 +#: book.translate.xml:2870 msgid "" "Installation images, to install FreeBSD on a hard drive for the usual " "desktop, laptop, or server systems." msgstr "" +"安裝程式映像檔,用來安裝 FreeBSD 到硬碟,供一般的桌機、筆電或伺服器系統使用。" #. (itstool) path: sect1/para -#: book.translate.xml:2857 -#, fuzzy +#: book.translate.xml:2876 msgid "" "The rest of this chapter describes the fourth case, explaining how to " "install FreeBSD using the text-based installation program named " "<application>bsdinstall</application>." msgstr "" -"<xref linkend=\"bsdinstall\"/> 增加的內容涵蓋使用新安裝工具 " -"<application>bsdinstall</application> 來安裝 FreeBSD。" +"此章接下來的部份會介紹第四個案例,說明如何使用文字介面為基礎的安裝程式 " +"<application>bsdinstall</application> 安裝 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:2862 +#: book.translate.xml:2881 msgid "" "In general, the installation instructions in this chapter are written for " "the <trademark>i386</trademark> and <acronym>AMD64</acronym> architectures. " @@ -3142,7 +3197,7 @@ msgstr "" "著來做。" #. (itstool) path: note/para -#: book.translate.xml:2871 +#: book.translate.xml:2890 msgid "" "Users who prefer to install FreeBSD using a graphical installer may be " "interested in <application>pc-sysinstall</application>, the installer used " @@ -3158,22 +3213,22 @@ msgstr "" "\">https://www.trueos.org/handbook/trueos.html</link>)。" #. (itstool) path: listitem/para -#: book.translate.xml:2883 +#: book.translate.xml:2902 msgid "The minimum hardware requirements and FreeBSD supported architectures." msgstr "最低的硬體需求和 FreeBSD 支援的架構。" #. (itstool) path: listitem/para -#: book.translate.xml:2888 +#: book.translate.xml:2907 msgid "How to create the FreeBSD installation media." msgstr "如何建立 FreeBSD 的安裝媒體。" #. (itstool) path: listitem/para -#: book.translate.xml:2892 +#: book.translate.xml:2911 msgid "How to start <application>bsdinstall</application>." msgstr "如何開始執行 <application>bsdinstall</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:2897 +#: book.translate.xml:2916 msgid "" "The questions <application>bsdinstall</application> will ask, what they " "mean, and how to answer them." @@ -3182,29 +3237,29 @@ msgstr "" "回答。" #. (itstool) path: listitem/para -#: book.translate.xml:2902 +#: book.translate.xml:2921 msgid "How to troubleshoot a failed installation." msgstr "安裝失敗時如何做故障排除。" #. (itstool) path: listitem/para -#: book.translate.xml:2906 +#: book.translate.xml:2925 msgid "" "How to access a live version of FreeBSD before committing to an installation." msgstr "如何在正式安裝前使用 live 版本的 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:2911 book.translate.xml:10612 book.translate.xml:13841 -#: book.translate.xml:17932 book.translate.xml:19194 book.translate.xml:23611 -#: book.translate.xml:29302 book.translate.xml:31049 book.translate.xml:31801 -#: book.translate.xml:35456 book.translate.xml:41412 book.translate.xml:41601 -#: book.translate.xml:43314 book.translate.xml:44337 book.translate.xml:45997 -#: book.translate.xml:46730 book.translate.xml:48932 book.translate.xml:50638 -#: book.translate.xml:57058 book.translate.xml:60709 +#: book.translate.xml:2930 book.translate.xml:10671 book.translate.xml:13908 +#: book.translate.xml:18041 book.translate.xml:19302 book.translate.xml:23716 +#: book.translate.xml:29415 book.translate.xml:31162 book.translate.xml:31914 +#: book.translate.xml:35569 book.translate.xml:41524 book.translate.xml:41718 +#: book.translate.xml:43549 book.translate.xml:44580 book.translate.xml:46237 +#: book.translate.xml:46970 book.translate.xml:49172 book.translate.xml:50878 +#: book.translate.xml:57585 book.translate.xml:61743 msgid "Before reading this chapter, you should:" -msgstr "在開始閱讀這章之前,您需要︰" +msgstr "在開始閱讀這章之前,您需要:" #. (itstool) path: listitem/para -#: book.translate.xml:2915 +#: book.translate.xml:2934 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." @@ -3212,12 +3267,12 @@ msgstr "" "閱讀即將安裝的 FreeBSD 版本所附帶的硬體支援清單,並核對系統的硬體是否有支援。" #. (itstool) path: sect1/title -#: book.translate.xml:2923 +#: book.translate.xml:2942 msgid "Minimum Hardware Requirements" msgstr "最低硬體需求" #. (itstool) path: sect1/para -#: book.translate.xml:2925 +#: book.translate.xml:2944 msgid "" "The hardware requirements to install FreeBSD vary by architecture. Hardware " "architectures and devices supported by a FreeBSD release are listed on the " @@ -3233,7 +3288,7 @@ msgstr "" "也有建議如何正確的選擇在不同架構使用的映像檔。" #. (itstool) path: sect1/para -#: book.translate.xml:2932 +#: book.translate.xml:2951 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 " @@ -3246,17 +3301,17 @@ msgstr "" "途的桌面系統會需要更多的資源,2-4 GB RAM 與至少 8 GB 的硬碟空間是不錯的起點。" #. (itstool) path: sect1/para -#: book.translate.xml:2940 +#: book.translate.xml:2959 msgid "These are the processor requirements for each architecture:" msgstr "每一種架構的處理器需求概述如下:" #. (itstool) path: varlistentry/term -#: book.translate.xml:2945 +#: book.translate.xml:2964 msgid "amd64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2947 +#: book.translate.xml:2966 msgid "" "This is the most common desktop and laptop processor type, used in most " "modern systems. <trademark class=\"registered\">Intel</trademark> calls it " @@ -3268,7 +3323,7 @@ msgstr "" "製造商則稱該類型為 <acronym>x86-64</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:2952 +#: book.translate.xml:2971 msgid "" "Examples of amd64 compatible processors include: <trademark>AMD Athlon</" "trademark>64, <trademark>AMD Opteron</trademark>, multi-core <trademark " @@ -3283,17 +3338,17 @@ msgstr "" "器。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2960 +#: book.translate.xml:2979 msgid "i386" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2962 +#: book.translate.xml:2981 msgid "Older desktops and laptops often use this 32-bit, x86 architecture." msgstr "舊型的桌面電腦與筆記型電腦常使用此 32-bit, x86 架構。" #. (itstool) path: listitem/para -#: book.translate.xml:2965 +#: book.translate.xml:2984 msgid "" "Almost all i386-compatible processors with a floating point unit are " "supported. All <trademark class=\"registered\">Intel</trademark> processors " @@ -3303,7 +3358,7 @@ msgstr "" "\"registered\">Intel</trademark> 486 或是更高階的處理器也有支援。" #. (itstool) path: listitem/para -#: book.translate.xml:2969 +#: book.translate.xml:2988 msgid "" "FreeBSD will take advantage of Physical Address Extensions (<acronym>PAE</" "acronym>) support on <acronym>CPU</acronym>s with this feature. A kernel " @@ -3321,12 +3376,12 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2981 +#: book.translate.xml:3000 msgid "ia64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2983 +#: book.translate.xml:3002 msgid "" "Currently supported processors are the <trademark class=\"registered" "\">Itanium</trademark> and the <trademark class=\"registered\">Itanium</" @@ -3344,12 +3399,12 @@ msgstr "" "<acronym>SMP</acronym>) 的設定都有支援。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2993 +#: book.translate.xml:3012 msgid "powerpc" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2995 +#: book.translate.xml:3014 msgid "" "All New World <acronym>ROM</acronym> <trademark class=\"registered\">Apple</" "trademark> <trademark class=\"registered\">Mac</trademark> systems with " @@ -3362,17 +3417,17 @@ msgstr "" "<acronym>CPU</acronym> 的機器都有支援。" #. (itstool) path: listitem/para -#: book.translate.xml:3000 +#: book.translate.xml:3019 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:3006 +#: book.translate.xml:3025 msgid "sparc64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3008 +#: book.translate.xml:3027 msgid "" "Systems supported by FreeBSD/sparc64 are listed at the <link xlink:href=" "\"@@URL_RELPREFIX@@/platforms/sparc.html\">FreeBSD/sparc64 Project</link>." @@ -3381,7 +3436,7 @@ msgstr "" "platforms/sparc.html\">FreeBSD/sparc64 計劃</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:3012 +#: book.translate.xml:3031 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 " @@ -3391,12 +3446,12 @@ msgstr "" "因為此時無法和其他作業系統共用磁碟。" #. (itstool) path: sect1/title -#: book.translate.xml:3022 +#: book.translate.xml:3041 msgid "Pre-Installation Tasks" msgstr "安裝前準備工作" #. (itstool) path: sect1/para -#: book.translate.xml:3024 +#: book.translate.xml:3043 msgid "" "Once it has been determined that the system meets the minimum hardware " "requirements for installing FreeBSD, the installation file should be " @@ -3408,12 +3463,12 @@ msgstr "" "體。 做這些之前,先檢查以下核對清單的項目是否準備好了:" #. (itstool) path: step/title -#: book.translate.xml:3033 +#: book.translate.xml:3052 msgid "Back Up Important Data" msgstr "備份重要資料" #. (itstool) path: step/para -#: book.translate.xml:3035 +#: book.translate.xml:3054 msgid "" "Before installing any operating system, <emphasis>always</emphasis> backup " "all important data first. Do not store the backup on the system being " @@ -3430,12 +3485,12 @@ msgstr "" "面的資料都會遺失。" #. (itstool) path: step/title -#: book.translate.xml:3047 +#: book.translate.xml:3066 msgid "Decide Where to Install FreeBSD" msgstr "決定 FreeBSD 安裝在哪裡" #. (itstool) path: step/para -#: book.translate.xml:3049 +#: book.translate.xml:3068 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, " @@ -3446,7 +3501,7 @@ msgstr "" "是哪個分割區 (Partition)。" #. (itstool) path: step/para -#: book.translate.xml:3054 +#: book.translate.xml:3073 msgid "" "In the i386 and amd64 architectures, disks can be divided into multiple " "partitions using one of two partitioning schemes. A traditional " @@ -3472,7 +3527,7 @@ msgstr "" "個分割區,不再需要使用邏輯分割區。" #. (itstool) path: warning/para -#: book.translate.xml:3072 +#: book.translate.xml:3091 msgid "" "Some older operating systems, like <trademark class=\"registered\">Windows</" "trademark> XP, are not compatible with the <acronym>GPT</acronym> partition " @@ -3484,7 +3539,7 @@ msgstr "" "這類作業系統共用一個磁碟,則需要用 <acronym>MBR</acronym> 分割表格式。" #. (itstool) path: step/para -#: book.translate.xml:3079 +#: book.translate.xml:3098 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 " @@ -3498,7 +3553,7 @@ msgstr "" "工具來縮小現有的分割區,並使用釋放出來的空間建立新分割區。" #. (itstool) path: step/para -#: book.translate.xml:3087 +#: book.translate.xml:3106 msgid "" "A variety of free and commercial partition resizing tools are listed at " "<link xlink:href=\"http://en.wikipedia.org/wiki/" @@ -3519,7 +3574,7 @@ msgstr "" "GParted 同時也被許多 Linux Live <acronym>CD</acronym> 發行版所收錄。" #. (itstool) path: warning/para -#: book.translate.xml:3097 +#: book.translate.xml:3116 msgid "" "When used properly, disk shrinking utilities can safely create space for " "creating a new partition. Since the possibility of selecting the wrong " @@ -3531,7 +3586,7 @@ msgstr "" "料,並確認備份的完整性。" #. (itstool) path: step/para -#: book.translate.xml:3104 +#: book.translate.xml:3123 msgid "" "Disk partitions containing different operating systems make it possible to " "install multiple operating systems on one computer. An alternative is to use " @@ -3544,12 +3599,12 @@ msgstr "" "執行而不需要改變任何磁碟分割區。" #. (itstool) path: step/title -#: book.translate.xml:3113 +#: book.translate.xml:3132 msgid "Collect Network Information" msgstr "收集網路資訊" #. (itstool) path: step/para -#: book.translate.xml:3115 +#: book.translate.xml:3134 msgid "" "Some FreeBSD installation methods require a network connection in order to " "download the installation files. After any installation, the installer will " @@ -3559,7 +3614,7 @@ msgstr "" "入設定系統網路的介面。" #. (itstool) path: step/para -#: book.translate.xml:3120 +#: book.translate.xml:3139 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 " @@ -3571,46 +3626,45 @@ msgstr "" "商 (Internet Service Provider, ISP) 取得以的網路資訊供系統使用:" #. (itstool) path: orderedlist/title -#: book.translate.xml:3128 +#: book.translate.xml:3147 msgid "Required Network Information" msgstr "需要的網路資訊" #. (itstool) path: listitem/para #. (itstool) path: row/entry -#: book.translate.xml:3131 book.translate.xml:53692 +#: book.translate.xml:3150 book.translate.xml:53932 msgid "<acronym>IP</acronym> address" msgstr "<acronym>IP</acronym> 位址" #. (itstool) path: listitem/para -#: book.translate.xml:3135 +#: book.translate.xml:3154 msgid "Subnet mask" msgstr "子網路遮罩" #. (itstool) path: listitem/para -#: book.translate.xml:3139 +#: book.translate.xml:3158 msgid "<acronym>IP</acronym> address of default gateway" msgstr "預設通訊閘 <acronym>IP</acronym> 位址" #. (itstool) path: listitem/para -#: book.translate.xml:3144 +#: book.translate.xml:3163 msgid "Domain name of the network" msgstr "網路的網域名稱" #. (itstool) path: listitem/para -#: book.translate.xml:3148 +#: book.translate.xml:3167 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:3155 +#: book.translate.xml:3174 msgid "Check for FreeBSD Errata" msgstr "檢查 FreeBSD 勘誤表" #. (itstool) path: step/para -#: book.translate.xml:3157 -#, fuzzy +#: book.translate.xml:3176 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 " @@ -3621,15 +3675,15 @@ msgid "" "errata before installing to make sure that there are no problems that might " "affect the installation." msgstr "" -"儘管 FreeBSD 計劃努力確保每個 FreeBSD 發行版能夠儘可能地穩定,但錯誤偶爾還是" +"儘管 FreeBSD 計劃努力確保每個 FreeBSD 發行版能夠儘可能地穩定,但臭蟲偶爾還是" "會悄悄出現,並有極小的可能會發生影響安裝流程的錯誤,當這些問題被發現並修正" "後,會被紀錄在 FreeBSD 網站的 FreeBSD 勘誤表 (<link xlink:href=" -"\"@@URL_RELPREFIX@@/releases/11.1R/errata.html\">https://www.freebsd.org/" -"releases/11.1R/errata.html</link>)。 安裝前先檢查勘誤表,以確保沒有會影響到安" +"\"@@URL_RELPREFIX@@/releases/12.0R/errata.html\">https://www.freebsd.org/" +"releases/12.0R/errata.html</link>)。 安裝前先檢查勘誤表,以確保沒有會影響到安" "裝的問題。" #. (itstool) path: step/para -#: book.translate.xml:3167 +#: book.translate.xml:3186 msgid "" "Information and errata for all the releases can be found on the release " "information section of the FreeBSD web site (<link xlink:href=" @@ -3641,12 +3695,12 @@ msgstr "" "index.html</link>)。" #. (itstool) path: sect2/title -#: book.translate.xml:3174 +#: book.translate.xml:3193 msgid "Prepare the Installation Media" msgstr "準備安裝的媒體" #. (itstool) path: sect2/para -#: book.translate.xml:3176 +#: book.translate.xml:3195 msgid "" "The FreeBSD installer is not an application that can be run from within " "another operating system. Instead, download a FreeBSD installation file, " @@ -3660,7 +3714,7 @@ msgstr "" "媒體來安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:3183 +#: book.translate.xml:3202 msgid "" "FreeBSD installation files are available at <link xlink:href=" "\"@@URL_RELPREFIX@@/where.html#download\">www.freebsd.org/where." @@ -3679,7 +3733,7 @@ msgstr "" "<acronym>DVD</acronym> 來開機。" #. (itstool) path: sect2/para -#: book.translate.xml:3192 +#: book.translate.xml:3211 msgid "" "Installation files are available in several formats. The formats vary " "depending on computer architecture and media type." @@ -3687,7 +3741,7 @@ msgstr "安裝檔有許多種可用的格式,格式會依據電腦架構及媒 #. (itstool) path: sect2/para #. (itstool) id: book.translate.xml#bsdinstall-installation-media-uefi -#: book.translate.xml:3196 +#: book.translate.xml:3215 msgid "" "Additional installation files are included for computers that boot with " "<acronym>UEFI</acronym> (Unified Extensible Firmware Interface). The names " @@ -3698,12 +3752,12 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:3202 +#: book.translate.xml:3221 msgid "File types:" msgstr "檔案類型:" #. (itstool) path: listitem/para -#: book.translate.xml:3206 +#: book.translate.xml:3225 msgid "" "<literal>-bootonly.iso</literal>: This is the smallest installation file as " "it only contains the installer. A working Internet connection is required " @@ -3716,7 +3770,7 @@ msgstr "" "<acronym>CD</acronym> 燒錄應用程式燒錄到 <acronym>CD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3216 +#: book.translate.xml:3235 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 " @@ -3727,7 +3781,7 @@ msgstr "" "到 <acronym>CD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3224 +#: book.translate.xml:3243 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 " @@ -3742,7 +3796,7 @@ msgstr "" "<acronym>DVD</acronym> 燒錄應用程式燒錄到 <acronym>DVD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3235 +#: book.translate.xml:3254 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 " @@ -3753,7 +3807,7 @@ msgstr "" "acronym> 隨身碟使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3243 +#: book.translate.xml:3262 msgid "" "<literal>-mini-memstick.img</literal>: Like <literal>-bootonly.iso</" "literal>, does not include installation files, but downloads them as needed. " @@ -3767,7 +3821,7 @@ msgstr "" "碟。" #. (itstool) path: sect2/para -#: book.translate.xml:3252 +#: book.translate.xml:3271 msgid "" "After downloading the image file, download <filename>CHECKSUM.SHA256</" "filename> from the same directory. Calculate a <firstterm>checksum</" @@ -3784,7 +3838,7 @@ msgstr "" "程式。" #. (itstool) path: sect2/para -#: book.translate.xml:3260 +#: book.translate.xml:3279 msgid "" "Compare the calculated checksum with the one shown in <filename>CHECKSUM." "SHA256</filename>. The checksums must match exactly. If the checksums do not " @@ -3794,12 +3848,12 @@ msgstr "" "應該要完全相符,若校驗碼不相符,則代表該映像檔是損壞的,必須再下載一次。" #. (itstool) path: sect3/title -#: book.translate.xml:3266 +#: book.translate.xml:3285 msgid "Writing an Image File to <acronym>USB</acronym>" msgstr "寫入映象檔到 <acronym>USB</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:3268 +#: book.translate.xml:3287 msgid "" "The <filename>*.img</filename> file is an <emphasis>image</emphasis> of the " "complete contents of a memory stick. It <emphasis>cannot</emphasis> be " @@ -3813,7 +3867,7 @@ msgstr "" "隨身碟,本節會介紹其中兩種。" #. (itstool) path: important/para -#: book.translate.xml:3277 +#: book.translate.xml:3296 msgid "" "Before proceeding, back up any important data on the <acronym>USB</acronym> " "stick. This procedure will erase the existing data on the stick." @@ -3822,12 +3876,12 @@ msgstr "" "身碟上既有的資料。" #. (itstool) path: procedure/title -#: book.translate.xml:3283 +#: book.translate.xml:3302 msgid "Using <command>dd</command> to Write the Image" msgstr "使用 <command>dd</command> 來寫入映像檔" #. (itstool) path: warning/para -#: book.translate.xml:3287 +#: book.translate.xml:3306 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 " @@ -3839,7 +3893,7 @@ msgstr "" "毀所有在指定目標裝置上已存在的資料。" #. (itstool) path: step/para -#: book.translate.xml:3295 +#: book.translate.xml:3314 msgid "" "The <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> command-line utility is available on BSD, <trademark class=" @@ -3860,39 +3914,45 @@ msgstr "" "到第一個 <acronym>USB</acronym> 裝置。" #. (itstool) path: step/screen -#: book.translate.xml:3306 +#: book.translate.xml:3325 #, 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:3308 +#: book.translate.xml:3327 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 " "operating systems might require this command to be run with " "<citerefentry><refentrytitle>sudo</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>. Systems like <trademark class=\"registered\">Linux</" -"trademark> might buffer writes. To force all writes to complete, use " -"<citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>." +"citerefentry>. The <citerefentry><refentrytitle>dd</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry> syntax varies slightly " +"across different platforms; for example, <trademark class=\"registered" +"\">Mac OS</trademark> requires a lower-case <option>bs=1m</option>. Systems " +"like <trademark class=\"registered\">Linux</trademark> might buffer writes. " +"To force all writes to complete, use <citerefentry><refentrytitle>sync</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" -"若這個指示執行失敗,請確認 <acronym>USB</acronym> 隨身碟是否未掛載,以及該裝" -"置名稱是否為這個隨身碟,而非一個分割區。部份作業系統可能需要使用 " +"若這個指示執行失敗,請確認 <acronym>USB</acronym> 隨身碟是否還未掛載,以及該" +"裝置名稱是否指向這個隨身碟,而不是一個分割區。有些作業系統可能需要使用 " "<citerefentry><refentrytitle>sudo</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> 來執行這個指令。像 <trademark class=\"registered\">Linux</" -"trademark> 這類的系統可能會暫存寫入動作,要強制完成所有寫入動作,可使用 " -"<citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>。" +"citerefentry> 來執行這個指令。且 <citerefentry><refentrytitle>dd</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry> 的指令語法在不同的作業" +"系統上有些不同,例如在 <trademark class=\"registered\">Mac OS</trademark> 需" +"要使用小寫的 <option>bs=1m</option>,而在 <trademark class=\"registered" +"\">Linux</trademark> 這類的系統可能會暫存寫入動作,要強制完成所有寫入動作,需" +"使用 <citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry>。" #. (itstool) path: procedure/title -#: book.translate.xml:3319 +#: book.translate.xml:3341 msgid "" "Using <trademark class=\"registered\">Windows</trademark> to Write the Image" msgstr "使用 <trademark class=\"registered\">Windows</trademark> 來寫入映象檔" #. (itstool) path: warning/para -#: book.translate.xml:3322 +#: book.translate.xml:3344 msgid "" "Be sure to give the correct drive letter as the existing data on the " "specified drive will be overwritten and destroyed." @@ -3900,7 +3960,7 @@ msgstr "" "務必確認指定的磁碟機代號正確,因在指定磁碟機上的既有資料將會被覆蓋與摧毀。" #. (itstool) path: step/title -#: book.translate.xml:3328 +#: book.translate.xml:3350 msgid "" "Obtaining <application>Image Writer for <trademark class=\"registered" "\">Windows</trademark></application>" @@ -3909,7 +3969,7 @@ msgstr "" "trademark> 版</application>" #. (itstool) path: step/para -#: book.translate.xml:3331 +#: book.translate.xml:3353 msgid "" "<application>Image Writer for <trademark class=\"registered\">Windows</" "trademark></application> is a free application that can correctly write an " @@ -3924,12 +3984,12 @@ msgstr "" "個資料夾。" #. (itstool) path: step/title -#: book.translate.xml:3339 +#: book.translate.xml:3361 msgid "Writing the Image with Image Writer" msgstr "用 Image Writer 寫入映象檔" #. (itstool) path: step/para -#: book.translate.xml:3341 +#: book.translate.xml:3363 msgid "" "Double-click the <application>Win32DiskImager</application> icon to start " "the program. Verify that the drive letter shown under " @@ -3948,24 +4008,24 @@ msgstr "" "入隨身碟。" #. (itstool) path: sect3/para -#: book.translate.xml:3356 +#: book.translate.xml:3378 msgid "You are now ready to start installing FreeBSD." msgstr "您現在可以開始安裝 FreeBSD 。" #. (itstool) path: sect1/title -#: book.translate.xml:3362 +#: book.translate.xml:3384 msgid "Starting the Installation" msgstr "開始安裝" #. (itstool) path: important/para -#: book.translate.xml:3365 +#: book.translate.xml:3387 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:3368 +#: book.translate.xml:3390 #, no-wrap msgid "" "Your changes will now be written to disk. If you\n" @@ -3975,7 +4035,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:3373 +#: book.translate.xml:3395 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 " @@ -3985,7 +4045,7 @@ msgstr "" "腦,將不會對系統磁碟做任何更改。" #. (itstool) path: sect1/para -#: book.translate.xml:3380 +#: book.translate.xml:3402 msgid "" "This section describes how to boot the system from the installation media " "which was prepared using the instructions in <xref linkend=\"bsdinstall-" @@ -4002,12 +4062,12 @@ msgstr "" "會有所不同。" #. (itstool) path: sect2/title -#: book.translate.xml:3391 +#: book.translate.xml:3413 msgid "Booting on <trademark>i386</trademark> and amd64" msgstr "在 <trademark>i386</trademark> 及 amd64 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3393 +#: book.translate.xml:3415 msgid "" "These architectures provide a <acronym>BIOS</acronym> menu for selecting the " "boot device. Depending upon the installation media being used, select the " @@ -4025,14 +4085,14 @@ msgstr "" "<keycap>Escape</keycap> 其中之一。" #. (itstool) path: sect2/para -#: book.translate.xml:3404 +#: book.translate.xml:3426 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:3409 +#: book.translate.xml:3431 msgid "" "The installation media was not inserted early enough in the boot process. " "Leave the media inserted and try restarting the computer." @@ -4041,7 +4101,7 @@ msgstr "" "電腦。" #. (itstool) path: listitem/para -#: book.translate.xml:3415 +#: book.translate.xml:3437 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." @@ -4050,7 +4110,7 @@ msgstr "" "確的裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:3421 +#: book.translate.xml:3443 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=" @@ -4062,12 +4122,12 @@ msgstr "" "plop.at/en/bootmanagers.html\"/>) 來從選擇的開機媒體開機。" #. (itstool) path: sect2/title -#: book.translate.xml:3431 +#: book.translate.xml:3453 msgid "Booting on <trademark class=\"registered\">PowerPC</trademark>" msgstr "在 <trademark class=\"registered\">PowerPC</trademark> 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3433 +#: book.translate.xml:3455 msgid "" "On most machines, holding <keycap>C</keycap> on the keyboard during boot " "will boot from the <acronym>CD</acronym>. Otherwise, hold <keycombo action=" @@ -4086,18 +4146,18 @@ msgstr "" "prompt> 提示時,輸入" #. (itstool) path: sect2/screen -#: book.translate.xml:3449 +#: book.translate.xml:3471 #, no-wrap msgid "<userinput>boot cd:,\\ppc\\loader cd:0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:3453 +#: book.translate.xml:3475 msgid "Booting on <trademark class=\"registered\">SPARC64</trademark>" msgstr "在 <trademark class=\"registered\">SPARC64</trademark> 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3455 +#: book.translate.xml:3477 msgid "" "Most <trademark class=\"registered\">SPARC64</trademark> systems are set up " "to boot automatically from disk. To install FreeBSD from a <acronym>CD</" @@ -4108,7 +4168,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:3459 +#: book.translate.xml:3481 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:" @@ -4117,7 +4177,7 @@ msgstr "" "機型而有所不同,但大致結果會如:" #. (itstool) path: sect2/screen -#: book.translate.xml:3463 +#: book.translate.xml:3485 #, no-wrap msgid "" "Sun Blade 100 (UltraSPARC-IIe), Keyboard Present\n" @@ -4127,7 +4187,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3468 +#: book.translate.xml:3490 msgid "" "If the system proceeds to boot from disk at this point, press <keycombo " "action=\"simul\"><keycap>L1</keycap><keycap>A</keycap></keycombo> or " @@ -4150,7 +4210,7 @@ msgstr "" "prompt>,其中的數字代表啟動的 <acronym>CPU</acronym> 數。" #. (itstool) path: sect2/para -#: book.translate.xml:3480 +#: book.translate.xml:3502 msgid "" "At this point, place the <acronym>CD</acronym> into the drive and type " "<command>boot cdrom</command> from the <acronym>PROM</acronym> prompt." @@ -4159,19 +4219,19 @@ msgstr "" "畫面輸入 <command>boot cdrom</command>。" #. (itstool) path: sect2/title -#: book.translate.xml:3486 +#: book.translate.xml:3508 msgid "FreeBSD Boot Menu" msgstr "FreeBSD 開機選單" #. (itstool) path: sect2/para -#: book.translate.xml:3488 +#: book.translate.xml:3510 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:3492 +#: book.translate.xml:3514 msgid "FreeBSD Boot Loader Menu" msgstr "FreeBSD 開機載入程式選單" @@ -4180,14 +4240,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:3496 +#: book.translate.xml:3518 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-newboot-loader-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3501 +#: book.translate.xml:3523 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 " @@ -4201,7 +4261,7 @@ msgstr "" "以下選項可選。" #. (itstool) path: listitem/para -#: book.translate.xml:3511 +#: book.translate.xml:3533 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- " @@ -4212,7 +4272,7 @@ msgstr "" "<keycap>B</keycap> 或 <keycap>Enter</keycap> 鍵。" #. (itstool) path: listitem/para -#: book.translate.xml:3519 +#: book.translate.xml:3541 msgid "" "<literal>Boot Single User</literal>: This mode can be used to fix an " "existing FreeBSD installation as described in <xref linkend=\"boot-singleuser" @@ -4224,7 +4284,7 @@ msgstr "" "keycap>、大寫或小寫 <keycap>S</keycap> 進入這個模式。" #. (itstool) path: listitem/para -#: book.translate.xml:3527 +#: book.translate.xml:3549 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 " @@ -4237,12 +4297,12 @@ msgstr "" "入這個提示。" #. (itstool) path: listitem/para -#: book.translate.xml:3536 +#: book.translate.xml:3558 msgid "<literal>Reboot</literal>: Reboots the system." msgstr "重新開機 (<literal>Reboot</literal>):重新開啟系統。" #. (itstool) path: listitem/para -#: book.translate.xml:3540 +#: book.translate.xml:3562 msgid "" "<literal>Configure Boot Options</literal>: Opens the menu shown in, and " "described under, <xref linkend=\"bsdinstall-boot-options-menu\"/>." @@ -4251,7 +4311,7 @@ msgstr "" "說明於 <xref linkend=\"bsdinstall-boot-options-menu\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3546 +#: book.translate.xml:3568 msgid "FreeBSD Boot Options Menu" msgstr "FreeBSD 開機選項選單" @@ -4260,13 +4320,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:3550 +#: book.translate.xml:3572 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-boot-options-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3555 +#: book.translate.xml:3577 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 " @@ -4276,7 +4336,7 @@ msgstr "" "回預設值。" #. (itstool) path: sect2/para -#: book.translate.xml:3560 +#: book.translate.xml:3582 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 " @@ -4289,7 +4349,7 @@ msgstr "" "到選項被修改。有數個選項可以在這個選單做切換:" #. (itstool) path: listitem/para -#: book.translate.xml:3569 +#: book.translate.xml:3591 msgid "" "<literal>ACPI Support</literal>: If the system hangs during boot, try " "toggling this option to <literal>Off</literal>." @@ -4298,7 +4358,7 @@ msgstr "" "個選項為關 (<literal>Off</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3575 +#: book.translate.xml:3597 msgid "" "<literal>Safe Mode</literal>: If the system still hangs during boot even " "with <literal>ACPI Support</literal> set to <literal>Off</literal>, try " @@ -4309,7 +4369,7 @@ msgstr "" "將此選項設為開 (<literal>On</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3582 +#: book.translate.xml:3604 msgid "" "<literal>Single User</literal>: Toggle this option to <literal>On</literal> " "to fix an existing FreeBSD installation as described in <xref linkend=\"boot-" @@ -4321,7 +4381,7 @@ msgstr "" "述,問題修正後,將其設回關 (<literal>Off</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3590 +#: book.translate.xml:3612 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 " @@ -4331,7 +4391,7 @@ msgstr "" "literal>) 來查看開機程序中更詳細的訊息,這在診斷硬體問題時非常有用。" #. (itstool) path: sect2/para -#: book.translate.xml:3597 +#: book.translate.xml:3619 msgid "" "After making the needed selections, press <keycap>1</keycap> or " "<keycap>Backspace</keycap> to return to the main boot menu, then press " @@ -4346,7 +4406,7 @@ msgstr "" "選單如 <xref linkend=\"bsdinstall-choose-mode\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3606 +#: book.translate.xml:3628 msgid "Welcome Menu" msgstr "歡迎選單" @@ -4355,13 +4415,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:3610 +#: book.translate.xml:3632 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-choose-mode' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3615 +#: book.translate.xml:3637 msgid "" "Press <keycap>Enter</keycap> to select the default of " "<guibutton>[ Install ]</guibutton> to enter the installer. The rest of this " @@ -4381,7 +4441,7 @@ msgstr "" "本的詳細說明於 <xref linkend=\"using-live-cd\"/>。" #. (itstool) path: tip/para -#: book.translate.xml:3628 +#: book.translate.xml:3650 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 " @@ -4395,12 +4455,12 @@ msgstr "" "<command>exit</command> 返回歡迎選單。" #. (itstool) path: sect1/title -#: book.translate.xml:3641 +#: book.translate.xml:3663 msgid "Using <application>bsdinstall</application>" msgstr "使用 <application>bsdinstall</application>" #. (itstool) path: sect1/para -#: book.translate.xml:3643 +#: book.translate.xml:3665 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 " @@ -4415,12 +4475,12 @@ msgstr "" "選項然後進入下一個畫面。" #. (itstool) path: sect2/title -#: book.translate.xml:3652 +#: book.translate.xml:3674 msgid "Selecting the Keymap Menu" msgstr "選擇鍵盤對應表選單" #. (itstool) path: sect2/para -#: book.translate.xml:3654 +#: book.translate.xml:3676 msgid "" "Depending on the system console being used, <application>bsdinstall</" "application> may initially display the menu shown in <xref linkend=" @@ -4430,7 +4490,7 @@ msgstr "" "的選單會如 <xref linkend=\"bsdinstall-keymap-select-default\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3659 +#: book.translate.xml:3681 msgid "Keymap Selection" msgstr "鍵盤對應表選擇" @@ -4439,14 +4499,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:3663 +#: book.translate.xml:3685 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-keymap-select-default' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3668 +#: book.translate.xml:3690 msgid "" "To configure the keyboard layout, press <keycap>Enter</keycap> with " "<guibutton>[ YES ]</guibutton> selected, which will display the menu shown " @@ -4460,7 +4520,7 @@ msgstr "" "<keycap>Enter</keycap> 跳過這個選單畫面。" #. (itstool) path: figure/title -#: book.translate.xml:3677 +#: book.translate.xml:3699 msgid "Selecting Keyboard Menu" msgstr "選擇鍵盤選單" @@ -4469,13 +4529,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:3681 +#: book.translate.xml:3703 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-keymap' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3686 +#: book.translate.xml:3708 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 " @@ -4485,7 +4545,7 @@ msgstr "" "(Keymap),然後按下 <keycap>Enter</keycap> 儲存選項。" #. (itstool) path: note/para -#: book.translate.xml:3692 +#: book.translate.xml:3714 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 " @@ -4496,7 +4556,7 @@ msgstr "" "guimenuitem> 是也是保險的選項。" #. (itstool) path: sect2/para -#: book.translate.xml:3698 +#: book.translate.xml:3720 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, " @@ -4508,7 +4568,7 @@ msgstr "" "對話框讓使用者測試鍵盤對應表來確認。" #. (itstool) path: figure/title -#: book.translate.xml:3705 +#: book.translate.xml:3727 msgid "Enhanced Keymap Menu" msgstr "改進後的鍵盤對應表選單" @@ -4517,19 +4577,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:3709 +#: book.translate.xml:3731 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-keymap-10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3717 book.translate.xml:3724 +#: book.translate.xml:3739 book.translate.xml:3746 msgid "Setting the Hostname" msgstr "設定主機名稱" #. (itstool) path: sect2/para -#: book.translate.xml:3719 +#: book.translate.xml:3741 msgid "" "The next <application>bsdinstall</application> menu is used to set the " "hostname for the newly installed system." @@ -4542,13 +4602,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:3728 +#: book.translate.xml:3750 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-hostname' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3733 +#: book.translate.xml:3755 msgid "" "Type in a hostname that is unique for the network. It should be a fully-" "qualified hostname, such as <systemitem class=\"fqdomainname\">machine3." @@ -4559,12 +4619,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3738 book.translate.xml:3744 +#: book.translate.xml:3760 book.translate.xml:3766 msgid "Selecting Components to Install" msgstr "選擇要安裝的元件" #. (itstool) path: sect2/para -#: book.translate.xml:3740 +#: book.translate.xml:3762 msgid "" "Next, <application>bsdinstall</application> will prompt to select optional " "components to install." @@ -4576,13 +4636,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:3748 +#: book.translate.xml:3770 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-components' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3753 +#: book.translate.xml:3775 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 " @@ -4595,7 +4655,7 @@ msgstr "" "必須安裝的部份。依據系統的架構,部份元件可能不會顯示:" #. (itstool) path: listitem/para -#: book.translate.xml:3762 +#: book.translate.xml:3784 msgid "" "<literal>doc</literal> - Additional documentation, mostly of historical " "interest, to install into <filename>/usr/share/doc</filename>. The " @@ -4609,7 +4669,7 @@ msgstr "" "操作。" #. (itstool) path: listitem/para -#: book.translate.xml:3770 +#: book.translate.xml:3792 msgid "" "<literal>games</literal> - Several traditional <acronym>BSD</acronym> games, " "including <application>fortune</application>, <application>rot13</" @@ -4620,7 +4680,7 @@ msgstr "" "他。" #. (itstool) path: listitem/para -#: book.translate.xml:3777 +#: book.translate.xml:3799 msgid "" "<literal>lib32</literal> - Compatibility libraries for running 32-bit " "applications on a 64-bit version of FreeBSD." @@ -4629,7 +4689,7 @@ msgstr "" "用的相容性程式庫。" #. (itstool) path: listitem/para -#: book.translate.xml:3783 +#: book.translate.xml:3805 msgid "" "<literal>ports</literal> - The FreeBSD Ports Collection is a collection of " "files which automates the downloading, compiling and installation of third-" @@ -4640,7 +4700,7 @@ msgstr "" "方軟體套件的集合,<xref linkend=\"ports\"/> 中會討論到如何使用 Port 套件集。" #. (itstool) path: warning/para -#: book.translate.xml:3790 +#: book.translate.xml:3812 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 " @@ -4650,7 +4710,7 @@ msgstr "" "磁碟空間,只有在有足夠的磁碟空間時才選擇這個選項。" #. (itstool) path: listitem/para -#: book.translate.xml:3799 +#: book.translate.xml:3821 msgid "" "<literal>src</literal> - The complete FreeBSD source code for both the " "kernel and the userland. Although not required for the majority of " @@ -4667,12 +4727,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3812 book.translate.xml:3823 +#: book.translate.xml:3834 book.translate.xml:3845 msgid "Installing from the Network" msgstr "從網路安裝" #. (itstool) path: sect2/para -#: book.translate.xml:3814 +#: book.translate.xml:3836 msgid "" "The menu shown in <xref linkend=\"bsdinstall-netinstall-notify\"/> only " "appears when installing from a <filename>-bootonly.iso</filename> " @@ -4691,13 +4751,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:3827 +#: book.translate.xml:3849 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-netinstall-files' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3832 +#: book.translate.xml:3854 msgid "" "To configure the network connection, press <keycap>Enter</keycap> and follow " "the instructions in <xref linkend=\"bsdinstall-config-network-dev\"/>. Once " @@ -4712,7 +4772,7 @@ msgstr "" "載的速度會比較快,這會減少安裝的時間。" #. (itstool) path: figure/title -#: book.translate.xml:3841 +#: book.translate.xml:3863 msgid "Choosing a Mirror" msgstr "選擇鏡像站" @@ -4721,52 +4781,32 @@ 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:3845 +#: book.translate.xml:3867 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-netinstall-mirrorselect' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3850 +#: book.translate.xml:3872 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:3856 +#: book.translate.xml:3878 msgid "Allocating Disk Space" msgstr "配置磁碟空間" #. (itstool) path: sect1/para -#: book.translate.xml:3858 +#: book.translate.xml:3880 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 " -"installed." -msgstr "" -"接下來的選單用來決定配置磁碟空間的方式,選單中可用的選項會依安裝的 FreeBSD 版" -"本而有所不同。" - -#. (itstool) path: figure/title -#: book.translate.xml:3863 -msgid "Partitioning Choices on FreeBSD 9.x" -msgstr "FreeBSD 9.x 的磁碟分割選項" - -#. (itstool) path: imageobject/imagedata -#. This is a reference to an external file such as an image or video. When -#. 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:3867 -msgctxt "_" -msgid "" -"external ref='bsdinstall/bsdinstall-part-guided-manual' md5='__failed__'" -msgstr "" +"The next menu is used to determine the method for allocating disk space." +msgstr "接下來的選單用來決定配置磁碟空間的方式。" #. (itstool) path: figure/title -#: book.translate.xml:3873 +#: book.translate.xml:3884 msgid "Partitioning Choices on FreeBSD 10.x and Higher" msgstr "FreeBSD 10.x 或更新版本的磁碟分割選項" @@ -4775,13 +4815,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:3877 +#: book.translate.xml:3888 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-partmenu' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:3882 +#: book.translate.xml:3893 msgid "" "<literal>Guided</literal> partitioning automatically sets up the disk " "partitions, <literal>Manual</literal> partitioning allows advanced users to " @@ -4809,7 +4849,7 @@ msgstr "" "firstterm>。" #. (itstool) path: sect1/para -#: book.translate.xml:3893 +#: book.translate.xml:3904 msgid "" "This section describes what to consider when laying out the disk partitions. " "It then demonstrates how to use the different partitioning methods." @@ -4817,32 +4857,32 @@ msgstr "" "本節會介紹在配置磁碟分割時需要考量那些事情,並且會示範各種磁碟分割的方式。" #. (itstool) path: sect2/title -#: book.translate.xml:3898 +#: book.translate.xml:3909 msgid "Designing the Partition Layout" msgstr "規劃分割區配置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3900 +#: book.translate.xml:3911 msgid "<primary>partition layout</primary>" msgstr "<primary>分割區配置</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3901 +#: book.translate.xml:3912 msgid "<primary><filename>/etc</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3904 +#: book.translate.xml:3915 msgid "<primary><filename>/var</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3907 +#: book.translate.xml:3918 msgid "<primary><filename>/usr</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3911 +#: book.translate.xml:3922 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 " @@ -4858,7 +4898,7 @@ msgstr "" "<filename>/var</filename> 然後 <filename>/usr</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:3921 +#: book.translate.xml:3932 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 " @@ -4873,7 +4913,7 @@ msgstr "" "<filename>/var</filename> 需要超過 1 GB 的可用磁碟空間。" #. (itstool) path: note/para -#: book.translate.xml:3931 +#: book.translate.xml:3942 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 " @@ -4890,7 +4930,7 @@ msgstr "" "application> 或 <application>LibreOffice</application> 會很困難。" #. (itstool) path: sect2/para -#: book.translate.xml:3942 +#: book.translate.xml:3953 msgid "" "The <filename>/usr</filename> partition holds many of the files which " "support the system, including the FreeBSD Ports Collection and system source " @@ -4900,7 +4940,7 @@ msgstr "" "Port 套件集以及系統原始碼,這個分割區建議至少要有 2 GB 的空間。" #. (itstool) path: sect2/para -#: book.translate.xml:3947 +#: book.translate.xml:3958 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." @@ -4909,17 +4949,17 @@ msgstr "" "區時會很麻煩。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3951 +#: book.translate.xml:3962 msgid "<primary>swap sizing</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3954 +#: book.translate.xml:3965 msgid "<primary>swap partition</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3958 +#: book.translate.xml:3969 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</" @@ -4933,7 +4973,7 @@ msgstr "" "往後增加更多記憶體時可能會產生問題。" #. (itstool) path: sect2/para -#: book.translate.xml:3966 +#: book.translate.xml:3977 msgid "" "On larger systems with multiple <acronym>SCSI</acronym> disks or multiple " "<acronym>IDE</acronym> disks operating on different controllers, it is " @@ -4953,7 +4993,7 @@ msgstr "" "換空間,這也會讓要從失控的程式恢復運作更容易,而不需強制重新啟動系統。" #. (itstool) path: sect2/para -#: book.translate.xml:3979 +#: book.translate.xml:3990 msgid "" "By properly partitioning a system, fragmentation introduced in the smaller " "write heavy partitions will not bleed over into the mostly read partitions. " @@ -4971,12 +5011,12 @@ msgstr "" "顯著。" #. (itstool) path: sect2/title -#: book.translate.xml:3992 +#: book.translate.xml:4003 msgid "Guided Partitioning" msgstr "引導式磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:3994 +#: book.translate.xml:4005 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 " @@ -4986,7 +5026,7 @@ msgstr "" "個來安裝 FreeBSD。" #. (itstool) path: figure/title -#: book.translate.xml:3999 +#: book.translate.xml:4010 msgid "Selecting from Multiple Disks" msgstr "自多個磁碟選擇" @@ -4995,13 +5035,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:4003 +#: book.translate.xml:4014 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-guided-disk' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4008 +#: book.translate.xml:4019 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 " @@ -5016,7 +5056,7 @@ msgstr "" "未使用的空間來建立分割區配置。" #. (itstool) path: figure/title -#: book.translate.xml:4018 +#: book.translate.xml:4029 msgid "Selecting Entire Disk or Partition" msgstr "選擇完整磁碟或分割區" @@ -5025,13 +5065,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:4022 +#: book.translate.xml:4033 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-entire-part' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4027 +#: book.translate.xml:4038 msgid "" "After the partition layout has been created, review it to ensure it meets " "the needs of the installation. Selecting <guibutton>[ Revert ]</guibutton> " @@ -5048,7 +5088,7 @@ msgstr "" "<guibutton>[ Finish ]</guibutton> 繼續安裝。" #. (itstool) path: figure/title -#: book.translate.xml:4038 +#: book.translate.xml:4049 msgid "Review Created Partitions" msgstr "確認已建立的分割區" @@ -5057,23 +5097,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:4042 +#: book.translate.xml:4053 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-review' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4049 +#: book.translate.xml:4060 msgid "Manual Partitioning" msgstr "手動磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4051 +#: book.translate.xml:4062 msgid "Selecting this method opens the partition editor:" msgstr "選擇這個方法會開啟分割區編輯程式:" #. (itstool) path: figure/title -#: book.translate.xml:4054 book.translate.xml:4069 book.translate.xml:4140 +#: book.translate.xml:4065 book.translate.xml:4080 book.translate.xml:4152 msgid "Manually Create Partitions" msgstr "手動建立分割區" @@ -5082,14 +5122,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:4058 +#: book.translate.xml:4069 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-create' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4063 +#: book.translate.xml:4074 msgid "" "Highlight the installation drive (<filename>ada0</filename> in this example) " "and select <guibutton>[ Create ]</guibutton> to display a menu of available " @@ -5104,14 +5144,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:4073 +#: book.translate.xml:4084 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-partscheme' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4078 +#: book.translate.xml:4089 msgid "" "<acronym>GPT</acronym> is usually the most appropriate choice for amd64 " "computers. Older computers that are not compatible with <acronym>GPT</" @@ -5123,33 +5163,33 @@ msgstr "" "那些較罕見或較舊的電腦上。" #. (itstool) path: table/title -#: book.translate.xml:4085 +#: book.translate.xml:4096 msgid "Partitioning Schemes" msgstr "磁碟分割表格式" #. (itstool) path: row/entry -#: book.translate.xml:4090 +#: book.translate.xml:4101 msgid "Abbreviation" msgstr "縮寫" #. (itstool) path: row/entry -#: book.translate.xml:4091 book.translate.xml:7049 book.translate.xml:8387 -#: book.translate.xml:11851 book.translate.xml:22934 book.translate.xml:23113 -#: book.translate.xml:27223 book.translate.xml:31203 book.translate.xml:43349 -#: book.translate.xml:45522 book.translate.xml:53034 book.translate.xml:53541 -#: book.translate.xml:54300 book.translate.xml:54341 book.translate.xml:65140 +#: book.translate.xml:4102 book.translate.xml:7065 book.translate.xml:8403 +#: book.translate.xml:11910 book.translate.xml:23042 book.translate.xml:23221 +#: book.translate.xml:27327 book.translate.xml:31316 book.translate.xml:43584 +#: book.translate.xml:45762 book.translate.xml:53274 book.translate.xml:53781 +#: book.translate.xml:54540 book.translate.xml:54581 book.translate.xml:65535 msgid "Description" msgstr "說明" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:4097 book.translate.xml:65535 +#: book.translate.xml:4108 book.translate.xml:65535 msgid "APM" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4098 +#: book.translate.xml:4109 msgid "" "Apple Partition Map, used by <trademark class=\"registered\">PowerPC</" "trademark>." @@ -5160,12 +5200,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:4102 book.translate.xml:65535 +#: book.translate.xml:4113 book.translate.xml:65535 msgid "BSD" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4103 +#: book.translate.xml:4114 msgid "" "<acronym>BSD</acronym> label without an <acronym>MBR</acronym>, sometimes " "called <firstterm>dangerously dedicated mode</firstterm> as non-" @@ -5176,12 +5216,12 @@ msgstr "" "(Dangerously dedicated mode)</firstterm>。" #. (itstool) path: row/entry -#: book.translate.xml:4111 +#: book.translate.xml:4122 msgid "GPT" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4112 +#: book.translate.xml:4123 msgid "" "GUID Partition Table (<link xlink:href=\"http://en.wikipedia.org/wiki/" "GUID_Partition_Table\">http://en.wikipedia.org/wiki/GUID_Partition_Table</" @@ -5192,12 +5232,12 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4116 +#: book.translate.xml:4127 msgid "MBR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4117 +#: book.translate.xml:4128 msgid "" "Master Boot Record (<link xlink:href=\"http://en.wikipedia.org/wiki/" "Master_boot_record\">http://en.wikipedia.org/wiki/Master_boot_record</link>)." @@ -5207,12 +5247,12 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4121 +#: book.translate.xml:4132 msgid "PC98" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4122 +#: book.translate.xml:4133 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</" @@ -5223,49 +5263,50 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4127 +#: book.translate.xml:4138 msgid "VTOC8" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4128 +#: book.translate.xml:4139 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:4135 +#: book.translate.xml:4146 msgid "" "After the partitioning scheme has been selected and created, select " -"<guibutton>[ Create ]</guibutton> again to create the partitions." +"<guibutton>[ Create ]</guibutton> again to create the partitions. The " +"<keycap>Tab</keycap> key is used to move the cursor between fields." msgstr "" "選擇完分割區表格式並建立之後,再選擇 <guibutton>[ Create ]</guibutton> 一次來" -"建立分割區。" +"建立分割區。<keycap>Tab</keycap> 鍵可用來在欄位間移動游標。" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. 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:4144 +#: book.translate.xml:4156 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-addpart' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4149 +#: book.translate.xml:4161 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:4154 +#: book.translate.xml:4166 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:4159 +#: book.translate.xml:4171 msgid "" "<literal>freebsd-ufs</literal> - A FreeBSD <acronym>UFS</acronym> file " "system." @@ -5273,12 +5314,12 @@ msgstr "" "<literal>freebsd-ufs</literal> - FreeBSD 的 <acronym>UFS</acronym> 檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:4164 +#: book.translate.xml:4176 msgid "<literal>freebsd-swap</literal> - FreeBSD swap space." msgstr "<literal>freebsd-swap</literal> - FreeBSD 交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:4169 +#: book.translate.xml:4181 msgid "" "Another partition type worth noting is <literal>freebsd-zfs</literal>, used " "for partitions that will contain a FreeBSD <acronym>ZFS</acronym> file " @@ -5293,7 +5334,7 @@ msgstr "" "citerefentry> 取得可用的 <acronym>GPT</acronym> 分割區類型說明。" #. (itstool) path: sect2/para -#: book.translate.xml:4175 +#: book.translate.xml:4187 msgid "" "Multiple file system partitions can be created and some people prefer a " "traditional layout with separate partitions for <filename>/</filename>, " @@ -5307,7 +5348,7 @@ msgstr "" "\"bsdinstall-part-manual-splitfs\"/> 的範例。" #. (itstool) path: sect2/para -#: book.translate.xml:4182 +#: book.translate.xml:4194 msgid "" "The <literal>Size</literal> may be entered with common abbreviations: " "<emphasis>K</emphasis> for kilobytes, <emphasis>M</emphasis> for megabytes, " @@ -5318,7 +5359,7 @@ msgstr "" "表 GB。" #. (itstool) path: tip/para -#: book.translate.xml:4188 +#: book.translate.xml:4200 msgid "" "Proper sector alignment provides the best performance, and making partition " "sizes even multiples of 4K bytes helps to ensure alignment on drives with " @@ -5335,7 +5376,7 @@ msgstr "" "(Boot code) 的限制,不可大於 512K。" #. (itstool) path: sect2/para -#: book.translate.xml:4199 +#: book.translate.xml:4211 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 " @@ -5346,7 +5387,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:4204 +#: book.translate.xml:4216 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 " @@ -5366,7 +5407,7 @@ msgstr "" "且標籤會在 <filename>/dev/</filename> 中有各自的目錄。" #. (itstool) path: tip/para -#: book.translate.xml:4217 +#: book.translate.xml:4229 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 " @@ -5380,12 +5421,12 @@ msgstr "" "<acronym>UFS</acronym> 根目錄分割區。" #. (itstool) path: example/title -#: book.translate.xml:4227 +#: book.translate.xml:4239 msgid "Creating Traditional Split File System Partitions" msgstr "建立傳統分割的檔案系統分割區" #. (itstool) path: example/para -#: book.translate.xml:4230 +#: book.translate.xml:4242 msgid "" "For a traditional partition layout where the <filename>/</filename>, " "<filename>/var</filename>, <filename>/tmp</filename>, and <filename>/usr</" @@ -5406,7 +5447,7 @@ msgstr "" "說明使用其他獨一無二的標籤。" #. (itstool) path: example/para -#: book.translate.xml:4243 +#: book.translate.xml:4255 msgid "" "By default, FreeBSD's <filename>gptboot</filename> expects the first " "<acronym>UFS</acronym> partition to be the <filename>/</filename> partition." @@ -5415,113 +5456,113 @@ msgstr "" "acronym> 分割區為 <filename>/</filename> 分割區。" #. (itstool) path: row/entry -#: book.translate.xml:4251 +#: book.translate.xml:4263 msgid "Partition Type" msgstr "分割區類型" #. (itstool) path: row/entry -#: book.translate.xml:4252 +#: book.translate.xml:4264 msgid "Size" msgstr "大小" #. (itstool) path: row/entry -#: book.translate.xml:4253 +#: book.translate.xml:4265 msgid "Mountpoint" msgstr "掛載點" #. (itstool) path: row/entry -#: book.translate.xml:4254 +#: book.translate.xml:4266 msgid "Label" msgstr "標籤" #. (itstool) path: row/entry -#: book.translate.xml:4260 +#: book.translate.xml:4272 msgid "<literal>freebsd-boot</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4261 +#: book.translate.xml:4273 msgid "<literal>512K</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4265 book.translate.xml:4279 book.translate.xml:4286 -#: book.translate.xml:4293 +#: book.translate.xml:4277 book.translate.xml:4291 book.translate.xml:4298 +#: book.translate.xml:4305 msgid "<literal>freebsd-ufs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4266 book.translate.xml:4280 +#: book.translate.xml:4278 book.translate.xml:4292 msgid "<literal>2G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4267 book.translate.xml:7054 +#: book.translate.xml:4279 book.translate.xml:7070 msgid "<filename>/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4268 +#: book.translate.xml:4280 msgid "<literal>exrootfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4272 +#: book.translate.xml:4284 msgid "<literal>freebsd-swap</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4273 +#: book.translate.xml:4285 msgid "<literal>4G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4275 +#: book.translate.xml:4287 msgid "<literal>exswap</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4281 +#: book.translate.xml:4293 msgid "<filename>/var</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4282 +#: book.translate.xml:4294 msgid "<literal>exvarfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4287 +#: book.translate.xml:4299 msgid "<literal>1G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4288 +#: book.translate.xml:4300 msgid "<filename>/tmp</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4289 +#: book.translate.xml:4301 msgid "<literal>extmpfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4294 +#: book.translate.xml:4306 msgid "accept the default (remainder of the disk)" msgstr "接受預設值 (依磁碟提示)" #. (itstool) path: row/entry -#: book.translate.xml:4296 +#: book.translate.xml:4308 msgid "<filename>/usr</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4297 +#: book.translate.xml:4309 msgid "<literal>exusrfs</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4304 +#: book.translate.xml:4316 msgid "" "After the custom partitions have been created, select <guibutton>[ Finish ]</" "guibutton> to continue with the installation." @@ -5529,12 +5570,12 @@ msgstr "" "自訂的分割區建立完後,選擇 <guibutton>[ Finish ]</guibutton> 繼續安裝。" #. (itstool) path: sect2/title -#: book.translate.xml:4310 +#: book.translate.xml:4322 msgid "Root-on-ZFS Automatic Partitioning" msgstr "Root-on-ZFS 自動磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4312 +#: book.translate.xml:4324 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 " @@ -5563,7 +5604,7 @@ msgstr "" "存池使用。" #. (itstool) path: sect2/para -#: book.translate.xml:4331 +#: book.translate.xml:4343 msgid "" "The main <acronym>ZFS</acronym> configuration menu offers a number of " "options to control the creation of the pool." @@ -5571,7 +5612,7 @@ msgstr "" "主要 <acronym>ZFS</acronym> 設定選單提供了數個設定選項來控制儲存池的建立。" #. (itstool) path: figure/title -#: book.translate.xml:4336 +#: book.translate.xml:4348 msgid "<acronym>ZFS</acronym> Partitioning Menu" msgstr "<acronym>ZFS</acronym> 磁碟分割選單" @@ -5580,13 +5621,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:4340 +#: book.translate.xml:4352 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4345 +#: book.translate.xml:4357 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</" @@ -5611,7 +5652,7 @@ msgstr "" "時,每種配置最佳的磁碟數。" #. (itstool) path: figure/title -#: book.translate.xml:4362 +#: book.translate.xml:4374 msgid "<acronym>ZFS</acronym> Pool Type" msgstr "<acronym>ZFS</acronym> 儲存池類型" @@ -5620,13 +5661,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:4366 +#: book.translate.xml:4378 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-vdev_type' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4371 +#: book.translate.xml:4383 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 " @@ -5641,7 +5682,7 @@ msgstr "" "返回磁碟清單或取消 (<guibutton><Cancel></guibutton>) 來更改儲存池類型。" #. (itstool) path: figure/title -#: book.translate.xml:4381 +#: book.translate.xml:4393 msgid "Disk Selection" msgstr "磁碟選擇" @@ -5650,13 +5691,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:4385 +#: book.translate.xml:4397 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-disk_select' md5='__failed__'" msgstr "" #. (itstool) path: figure/title -#: book.translate.xml:4391 +#: book.translate.xml:4403 msgid "Invalid Selection" msgstr "無效的選擇" @@ -5665,13 +5706,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:4395 +#: book.translate.xml:4407 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-vdev_invalid' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4400 +#: book.translate.xml:4412 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</" @@ -5686,7 +5727,7 @@ msgstr "" "磁碟,包含磁碟中的分割表以及各種其他資訊如裝置型號與序號 (若有的話)。" #. (itstool) path: figure/title -#: book.translate.xml:4411 +#: book.translate.xml:4423 msgid "Analyzing a Disk" msgstr "分析磁碟" @@ -5695,13 +5736,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:4415 +#: book.translate.xml:4427 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-disk_info' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4420 +#: book.translate.xml:4432 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, " @@ -5716,7 +5757,7 @@ msgstr "" "單上方的安裝 (<guibutton>>>> Install</guibutton>) 選項。" #. (itstool) path: sect2/para -#: book.translate.xml:4430 +#: book.translate.xml:4442 msgid "" "If <acronym>GELI</acronym> disk encryption was enabled, the installer will " "prompt twice for the passphrase to be used to encrypt the disks." @@ -5725,7 +5766,7 @@ msgstr "" "的密碼。" #. (itstool) path: figure/title -#: book.translate.xml:4435 +#: book.translate.xml:4447 msgid "Disk Encryption Password" msgstr "磁碟加密密碼" @@ -5734,13 +5775,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:4439 +#: book.translate.xml:4451 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-geli_password' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4444 +#: book.translate.xml:4456 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." @@ -5749,7 +5790,7 @@ msgstr "" "<acronym>ZFS</acronym> 儲存池的磁碟機。" #. (itstool) path: figure/title -#: book.translate.xml:4449 +#: book.translate.xml:4461 msgid "Last Chance" msgstr "最後修改" @@ -5758,23 +5799,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:4453 +#: book.translate.xml:4465 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-warning' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4458 +#: book.translate.xml:4470 msgid "The installation then proceeds normally." msgstr "然後安裝程序會正常繼續。" #. (itstool) path: sect2/title -#: book.translate.xml:4463 +#: book.translate.xml:4475 msgid "Shell Mode Partitioning" msgstr "Shell 模式磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4465 +#: book.translate.xml:4477 msgid "" "When creating advanced installations, the <application>bsdinstall</" "application> partitioning menus may not provide the level of flexibility " @@ -5793,12 +5834,12 @@ msgstr "" "<application>bsdinstall</application> 繼續安裝程序。" #. (itstool) path: sect1/title -#: book.translate.xml:4480 +#: book.translate.xml:4492 msgid "Committing to the Installation" msgstr "確認安裝" #. (itstool) path: sect1/para -#: book.translate.xml:4482 +#: book.translate.xml:4494 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 " @@ -5812,7 +5853,7 @@ msgstr "" "何變更。" #. (itstool) path: figure/title -#: book.translate.xml:4492 +#: book.translate.xml:4504 msgid "Final Confirmation" msgstr "最後確認" @@ -5821,14 +5862,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:4496 +#: book.translate.xml:4508 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-final-confirmation' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4501 +#: book.translate.xml:4513 msgid "" "To instead start the actual installation, select <guibutton>[ Commit ]</" "guibutton> and press <keycap>Enter</keycap>." @@ -5837,7 +5878,7 @@ msgstr "" "<keycap>Enter</keycap>。" #. (itstool) path: sect1/para -#: book.translate.xml:4505 +#: book.translate.xml:4517 msgid "" "Installation time will vary depending on the distributions chosen, " "installation media, and speed of the computer. A series of messages will " @@ -5847,7 +5888,7 @@ msgstr "" "訊息會告知目前的進度。" #. (itstool) path: sect1/para -#: book.translate.xml:4509 +#: book.translate.xml:4521 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 " @@ -5857,7 +5898,7 @@ msgstr "" "(Boot only) 的媒體則會開始下載選擇的元件:" #. (itstool) path: figure/title -#: book.translate.xml:4514 +#: book.translate.xml:4526 msgid "Fetching Distribution Files" msgstr "取得發行版檔案" @@ -5866,13 +5907,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:4518 +#: book.translate.xml:4530 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-distfile-fetching' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4523 +#: book.translate.xml:4535 msgid "" "Next, the integrity of the distribution files is verified to ensure they " "have not been corrupted during download or misread from the installation " @@ -5882,7 +5923,7 @@ msgstr "" "取錯誤造成的損壞:" #. (itstool) path: figure/title -#: book.translate.xml:4528 +#: book.translate.xml:4540 msgid "Verifying Distribution Files" msgstr "檢驗發行版檔案" @@ -5891,19 +5932,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:4532 +#: book.translate.xml:4544 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-distfile-verifying' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4537 +#: book.translate.xml:4549 msgid "Finally, the verified distribution files are extracted to the disk:" msgstr "最後,檢驗過的發行版檔案會被取出儲存至磁碟:" #. (itstool) path: figure/title -#: book.translate.xml:4541 +#: book.translate.xml:4553 msgid "Extracting Distribution Files" msgstr "解開發行版檔案" @@ -5912,14 +5953,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:4545 +#: book.translate.xml:4557 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-distfile-extracting' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4550 +#: book.translate.xml:4562 msgid "" "Once all requested distribution files have been extracted, " "<application>bsdinstall</application> displays the first post-installation " @@ -5930,12 +5971,12 @@ msgstr "" "次安裝後設定畫面,可用的安裝後設定選項會在下一節說明。" #. (itstool) path: sect1/title -#: book.translate.xml:4558 +#: book.translate.xml:4570 msgid "Post-Installation" msgstr "安裝後注意事項" #. (itstool) path: sect1/para -#: book.translate.xml:4560 +#: book.translate.xml:4572 msgid "" "Once FreeBSD is installed, <application>bsdinstall</application> will prompt " "to configure several options before booting into the newly installed system. " @@ -5945,7 +5986,7 @@ msgstr "" "的系統之前提示設定數個選項,本節將介紹這些設定選項。" #. (itstool) path: tip/para -#: book.translate.xml:4566 +#: book.translate.xml:4578 msgid "" "Once the system has booted, <command>bsdconfig</command> provides a menu-" "driven method for configuring the system using these and additional options." @@ -5955,12 +5996,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:4573 book.translate.xml:4584 +#: book.translate.xml:4585 book.translate.xml:4596 msgid "Setting the <systemitem class=\"username\">root</systemitem> Password" msgstr "設定 <systemitem class=\"username\">root</systemitem> 密碼" #. (itstool) path: sect2/para -#: book.translate.xml:4577 +#: book.translate.xml:4589 msgid "" "First, the <systemitem class=\"username\">root</systemitem> password must be " "set. While entering the password, the characters being typed are not " @@ -5976,25 +6017,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:4588 +#: book.translate.xml:4600 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-post-root-passwd' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4595 +#: book.translate.xml:4607 msgid "Configuring Network Interfaces" msgstr "設定網路介面卡" #. (itstool) path: sect2/para -#: book.translate.xml:4597 +#: book.translate.xml:4609 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:4601 +#: book.translate.xml:4613 msgid "" "The network configuration menus will be skipped if the network was " "previously configured as part of a <emphasis>bootonly</emphasis> " @@ -6004,7 +6045,7 @@ msgstr "" "網路設定選單。" #. (itstool) path: figure/title -#: book.translate.xml:4607 +#: book.translate.xml:4619 msgid "Choose a Network Interface" msgstr "選擇網路介面卡" @@ -6013,7 +6054,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:4611 +#: book.translate.xml:4623 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface' " @@ -6021,7 +6062,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4616 +#: book.translate.xml:4628 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 " @@ -6033,7 +6074,7 @@ msgstr "" "描無線存取點 (Wireless Access Point):" #. (itstool) path: figure/title -#: book.translate.xml:4622 +#: book.translate.xml:4634 msgid "Scanning for Wireless Access Points" msgstr "掃描無線網路存取點" @@ -6042,14 +6083,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:4626 +#: book.translate.xml:4638 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-scan' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4631 +#: book.translate.xml:4643 msgid "" "Wireless networks are identified by a Service Set Identifier (<acronym>SSID</" "acronym>), a short, unique name given to each network. <acronym>SSIDs</" @@ -6068,7 +6109,7 @@ msgstr "" "題,或者嘗試將電腦移至更靠近存取點的位置,然後再掃描一次。" #. (itstool) path: figure/title -#: book.translate.xml:4643 +#: book.translate.xml:4655 msgid "Choosing a Wireless Network" msgstr "選擇無線網路" @@ -6077,7 +6118,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:4647 +#: book.translate.xml:4659 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-accesspoints' " @@ -6085,7 +6126,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4652 +#: book.translate.xml:4664 msgid "" "Next, enter the encryption information for connecting to the selected " "wireless network. <acronym>WPA2</acronym> encryption is strongly recommended " @@ -6100,7 +6141,7 @@ msgstr "" "(<acronym>PSK</acronym>)。考量安全性,輸入到輸入框的字元會以星號顯示。" #. (itstool) path: figure/title -#: book.translate.xml:4662 +#: book.translate.xml:4674 msgid "WPA2 Setup" msgstr "WPA2 設定" @@ -6109,7 +6150,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:4666 +#: book.translate.xml:4678 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-wpa2setup' " @@ -6117,7 +6158,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4671 +#: book.translate.xml:4683 msgid "" "Next, choose whether or not an <acronym>IPv4</acronym> address should be " "configured on the Ethernet or wireless interface:" @@ -6126,7 +6167,7 @@ msgstr "" "址:" #. (itstool) path: figure/title -#: book.translate.xml:4676 +#: book.translate.xml:4688 msgid "Choose <acronym>IPv4</acronym> Networking" msgstr "選擇 <acronym>IPv4</acronym> 網路" @@ -6135,7 +6176,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:4680 +#: book.translate.xml:4692 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4' " @@ -6143,7 +6184,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4685 +#: book.translate.xml:4697 msgid "" "There are two methods of <acronym>IPv4</acronym> configuration. " "<acronym>DHCP</acronym> will automatically configure the network interface " @@ -6156,7 +6197,7 @@ msgstr "" "手動輸入位址的資訊來做靜態設定。" #. (itstool) path: note/para -#: book.translate.xml:4693 +#: book.translate.xml:4705 msgid "" "Do not enter random network information as it will not work. If a " "<acronym>DHCP</acronym> server is not available, obtain the information " @@ -6168,7 +6209,7 @@ msgstr "" "列於 <xref linkend=\"bsdinstall-collect-network-information\"/> 的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:4700 +#: book.translate.xml:4712 msgid "" "If a <acronym>DHCP</acronym> server is available, select <guibutton>[ Yes ]</" "guibutton> in the next menu to automatically configure the network " @@ -6181,7 +6222,7 @@ msgstr "" "acronym> 伺服器並且取得系統的位址資訊時,安裝程式會出現一分鐘左右的停頓。" #. (itstool) path: figure/title -#: book.translate.xml:4708 +#: book.translate.xml:4720 msgid "Choose <acronym>IPv4</acronym> <acronym>DHCP</acronym> Configuration" msgstr "選擇 <acronym>IPv4</acronym> <acronym>DHCP</acronym> 設定" @@ -6190,7 +6231,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:4713 +#: book.translate.xml:4725 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4-dhcp' " @@ -6198,7 +6239,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4718 +#: book.translate.xml:4730 msgid "" "If a <acronym>DHCP</acronym> server is not available, select " "<guibutton>[ No ]</guibutton> and input the following addressing information " @@ -6208,7 +6249,7 @@ msgstr "" "guibutton> 然後在這個選單中輸入以下位址資訊:" #. (itstool) path: figure/title -#: book.translate.xml:4723 +#: book.translate.xml:4735 msgid "<acronym>IPv4</acronym> Static Configuration" msgstr "<acronym>IPv4</acronym> 靜態位置設定" @@ -6217,7 +6258,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:4727 +#: book.translate.xml:4739 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4-static' " @@ -6225,7 +6266,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:4734 +#: book.translate.xml:4746 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 " @@ -6235,12 +6276,12 @@ msgstr "" "acronym> 位址。位址必須獨一無二且不可已被其他在區域網路上的設備使用。" #. (itstool) path: listitem/para -#: book.translate.xml:4741 +#: book.translate.xml:4753 msgid "<literal>Subnet Mask</literal> - The subnet mask for the network." msgstr "子網路遮罩 (<literal>Subnet Mask</literal>) - 網路的子網路遮罩。" #. (itstool) path: listitem/para -#: book.translate.xml:4746 +#: book.translate.xml:4758 msgid "" "<literal>Default Router</literal> - The <acronym>IP</acronym> address of the " "network's default gateway." @@ -6249,7 +6290,7 @@ msgstr "" "在網段的預設通訊閘。" #. (itstool) path: sect2/para -#: book.translate.xml:4752 +#: book.translate.xml:4764 msgid "" "The next screen will ask if the interface should be configured for " "<acronym>IPv6</acronym>. If <acronym>IPv6</acronym> is available and " @@ -6259,7 +6300,7 @@ msgstr "" "要使用 <acronym>IPv6</acronym>,請選擇 <guibutton>[ Yes ]</guibutton>。" #. (itstool) path: figure/title -#: book.translate.xml:4758 +#: book.translate.xml:4770 msgid "Choose IPv6 Networking" msgstr "選擇 IPv6 網路" @@ -6268,7 +6309,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:4762 +#: book.translate.xml:4774 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv6' " @@ -6276,7 +6317,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4767 +#: book.translate.xml:4779 msgid "" "<acronym>IPv6</acronym> also has two methods of configuration. StateLess " "Address AutoConfiguration (<acronym>SLAAC</acronym>) will automatically " @@ -6292,7 +6333,7 @@ msgstr "" "則需要手動輸入網路資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:4775 +#: book.translate.xml:4787 msgid "" "If an <acronym>IPv6</acronym> router is available, select " "<guibutton>[ Yes ]</guibutton> in the next menu to automatically configure " @@ -6304,7 +6345,7 @@ msgstr "" "的位址資訊時,安裝程式會出現一分鐘左右的停頓。" #. (itstool) path: figure/title -#: book.translate.xml:4782 +#: book.translate.xml:4794 msgid "Choose IPv6 SLAAC Configuration" msgstr "選擇 IPv6 SLAAC 設定" @@ -6313,7 +6354,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:4786 +#: book.translate.xml:4798 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-slaac' " @@ -6321,7 +6362,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4791 +#: book.translate.xml:4803 msgid "" "If an <acronym>IPv6</acronym> router is not available, select " "<guibutton>[ No ]</guibutton> and input the following addressing information " @@ -6331,7 +6372,7 @@ msgstr "" "guibutton> 然後在這個選單中輸入以下位址資訊:" #. (itstool) path: figure/title -#: book.translate.xml:4796 +#: book.translate.xml:4808 msgid "IPv6 Static Configuration" msgstr "IPv6 靜態位置設定" @@ -6340,7 +6381,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:4800 +#: book.translate.xml:4812 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv6-static' " @@ -6348,7 +6389,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:4807 +#: book.translate.xml:4819 msgid "" "<literal>IPv6 Address</literal> - The <acronym>IPv6</acronym> address " "assigned to this computer. The address must be unique and not already in use " @@ -6359,7 +6400,7 @@ msgstr "" "備使用。" #. (itstool) path: listitem/para -#: book.translate.xml:4814 +#: book.translate.xml:4826 msgid "" "<literal>Default Router</literal> - The <acronym>IPv6</acronym> address of " "the network's default gateway." @@ -6368,7 +6409,7 @@ msgstr "" "所在網段的預設通訊閘。" #. (itstool) path: sect2/para -#: book.translate.xml:4820 +#: book.translate.xml:4832 msgid "" "The last network configuration menu is used to configure the Domain Name " "System (<acronym>DNS</acronym>) resolver, which converts hostnames to and " @@ -6391,7 +6432,7 @@ msgstr "" "<acronym>DNS</acronym> 伺服器。" #. (itstool) path: figure/title -#: book.translate.xml:4834 +#: book.translate.xml:4846 msgid "DNS Configuration" msgstr "DNS 設定" @@ -6400,7 +6441,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:4838 +#: book.translate.xml:4850 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-ipv4-dns' " @@ -6408,12 +6449,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4845 +#: book.translate.xml:4857 msgid "Setting the Time Zone" msgstr "設定時區" #. (itstool) path: sect2/para -#: book.translate.xml:4847 +#: book.translate.xml:4859 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 " @@ -6423,7 +6464,7 @@ msgstr "" "問時可選擇 <guibutton>[ No ]</guibutton>使用更常用的當地時間。" #. (itstool) path: figure/title -#: book.translate.xml:4853 +#: book.translate.xml:4865 msgid "Select Local or UTC Clock" msgstr "選擇本地或 UTC 時鐘" @@ -6432,14 +6473,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:4857 +#: book.translate.xml:4869 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-set-clock-local-utc' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4862 +#: book.translate.xml:4874 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 " @@ -6452,7 +6493,7 @@ msgstr "" "能。" #. (itstool) path: sect2/para -#: book.translate.xml:4869 +#: book.translate.xml:4881 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 " @@ -6460,7 +6501,7 @@ msgid "" msgstr "此處以位於美國東部時區的機器為例,選擇會依據地理位置不同改變。" #. (itstool) path: figure/title -#: book.translate.xml:4874 +#: book.translate.xml:4886 msgid "Select a Region" msgstr "選擇區域" @@ -6469,20 +6510,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:4878 +#: book.translate.xml:4890 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-region' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4883 +#: book.translate.xml:4895 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:4887 +#: book.translate.xml:4899 msgid "Select a Country" msgstr "選擇城市" @@ -6491,20 +6532,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:4891 +#: book.translate.xml:4903 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-country' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4896 +#: book.translate.xml:4908 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:4900 +#: book.translate.xml:4912 msgid "Select a Time Zone" msgstr "選擇時區" @@ -6513,20 +6554,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:4904 +#: book.translate.xml:4916 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-zone' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4909 +#: book.translate.xml:4921 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:4913 +#: book.translate.xml:4925 msgid "Confirm Time Zone" msgstr "確認時區" @@ -6535,13 +6576,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:4917 +#: book.translate.xml:4929 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-confirm' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4922 +#: book.translate.xml:4934 msgid "" "Confirm the abbreviation for the time zone is correct. If it is, press " "<keycap>Enter</keycap> to continue with the post-installation configuration." @@ -6549,12 +6590,12 @@ msgstr "" "確認時區的縮寫是否正確,若正確,按下 <keycap>Enter</keycap> 繼續安裝後設定。" #. (itstool) path: sect2/title -#: book.translate.xml:4928 +#: book.translate.xml:4940 msgid "Enabling Services" msgstr "開啟服務" #. (itstool) path: sect2/para -#: book.translate.xml:4930 +#: book.translate.xml:4942 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 " @@ -6564,7 +6605,7 @@ msgstr "" "開啟系統運作真正需要的服務。" #. (itstool) path: figure/title -#: book.translate.xml:4936 +#: book.translate.xml:4948 msgid "Selecting Additional Services to Enable" msgstr "選擇要開啟的其他服務" @@ -6573,18 +6614,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:4940 +#: book.translate.xml:4952 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-services' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4945 +#: book.translate.xml:4957 msgid "Here is a summary of the services which can be enabled in this menu:" msgstr "這是可以在這個選單開啟的服務摘要:" #. (itstool) path: listitem/para -#: book.translate.xml:4950 +#: book.translate.xml:4962 msgid "" "<literal>sshd</literal> - The Secure Shell (<acronym>SSH</acronym>) daemon " "is used to remotely access a system over an encrypted connection. Only " @@ -6594,7 +6635,7 @@ msgstr "" "端透過加密的連線存取系統,只有在系統允許遠端登入時開啟這個服務。" #. (itstool) path: listitem/para -#: book.translate.xml:4958 +#: book.translate.xml:4970 msgid "" "<literal>moused</literal> - Enable this service if the mouse will be used " "from the command-line system console." @@ -6603,7 +6644,7 @@ msgstr "" "務。" #. (itstool) path: listitem/para -#: book.translate.xml:4964 +#: book.translate.xml:4976 msgid "" "<literal>ntpd</literal> - The Network Time Protocol (<acronym>NTP</acronym>) " "daemon for automatic clock synchronization. Enable this service if there is " @@ -6616,7 +6657,7 @@ msgstr "" "acronym> 伺服器時,可開啟此服務。" #. (itstool) path: listitem/para -#: book.translate.xml:4972 +#: book.translate.xml:4984 msgid "" "<literal>powerd</literal> - System power control utility for power control " "and energy saving." @@ -6624,12 +6665,12 @@ msgstr "<literal>powerd</literal> - 系統電源控制工具用來做電源控 #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:4979 book.translate.xml:4987 +#: book.translate.xml:4991 book.translate.xml:4999 msgid "Enabling Crash Dumps" msgstr "開啟當機資訊 (Crash Dump)" #. (itstool) path: sect2/para -#: book.translate.xml:4981 +#: book.translate.xml:4993 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 " @@ -6643,18 +6684,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:4991 +#: book.translate.xml:5003 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-crashdump' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4998 +#: book.translate.xml:5010 msgid "Add Users" msgstr "新增使用者" #. (itstool) path: sect2/para -#: book.translate.xml:5000 +#: book.translate.xml:5012 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=" @@ -6669,12 +6710,12 @@ msgstr "" "使用一般使用者登入較保險且安全。" #. (itstool) path: sect2/para -#: book.translate.xml:5007 +#: book.translate.xml:5019 msgid "Select <guibutton>[ Yes ]</guibutton> to add new users." msgstr "選擇 <guibutton>[ Yes ]</guibutton> 來新增新使用者。" #. (itstool) path: figure/title -#: book.translate.xml:5011 +#: book.translate.xml:5023 msgid "Add User Accounts" msgstr "新增使用者帳號" @@ -6683,13 +6724,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:5015 +#: book.translate.xml:5027 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5020 +#: book.translate.xml:5032 msgid "" "Follow the prompts and input the requested information for the user account. " "The example shown in <xref linkend=\"bsdinstall-add-user2\"/> creates the " @@ -6700,7 +6741,7 @@ msgstr "" "號。" #. (itstool) path: figure/title -#: book.translate.xml:5024 +#: book.translate.xml:5036 msgid "Enter User Information" msgstr "輸入使用者資訊" @@ -6709,18 +6750,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:5028 +#: book.translate.xml:5040 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5033 +#: book.translate.xml:5045 msgid "Here is a summary of the information to input:" msgstr "這裡是要輸入的資訊摘要:" #. (itstool) path: listitem/para -#: book.translate.xml:5037 +#: book.translate.xml:5049 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 " @@ -6732,7 +6773,7 @@ msgstr "" "區分大小寫且不應含有任何空白字元。" #. (itstool) path: listitem/para -#: book.translate.xml:5046 +#: book.translate.xml:5058 msgid "" "<literal>Full name</literal> - The user's full name. This can contain spaces " "and is used as a description for the user account." @@ -6741,7 +6782,7 @@ msgstr "" "用來描述該使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5052 +#: book.translate.xml:5064 msgid "" "<literal>Uid</literal> - User <acronym>ID</acronym>. Typically, this is left " "blank so the system will assign a value." @@ -6750,7 +6791,7 @@ msgstr "" "統會自動分配一個值。" #. (itstool) path: listitem/para -#: book.translate.xml:5058 +#: book.translate.xml:5070 msgid "" "<literal>Login group</literal> - The user's group. Typically this is left " "blank to accept the default." @@ -6759,7 +6800,7 @@ msgstr "" "來使用預設值。" #. (itstool) path: listitem/para -#: book.translate.xml:5063 +#: book.translate.xml:5075 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 " @@ -6770,12 +6811,12 @@ msgstr "" "需要管理權限,則在此輸入 <literal>wheel</literal>。" #. (itstool) path: listitem/para -#: book.translate.xml:5071 +#: book.translate.xml:5083 msgid "<literal>Login class</literal> - Typically left blank for the default." msgstr "登入類別 (<literal>Login class</literal>) - 通常會留空來使用預設值。" #. (itstool) path: listitem/para -#: book.translate.xml:5076 +#: book.translate.xml:5088 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 " @@ -6785,7 +6826,7 @@ msgstr "" "參考 <xref linkend=\"shells\"/> 取得更多有關 Shell 的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:5083 +#: book.translate.xml:5095 msgid "" "<literal>Home directory</literal> - The user's home directory. The default " "is usually correct." @@ -6794,7 +6835,7 @@ msgstr "" "問題的。" #. (itstool) path: listitem/para -#: book.translate.xml:5088 +#: book.translate.xml:5100 msgid "" "<literal>Home directory permissions</literal> - Permissions on the user's " "home directory. The default is usually correct." @@ -6803,7 +6844,7 @@ msgstr "" "限,預設值通常是沒有問題的。" #. (itstool) path: listitem/para -#: book.translate.xml:5094 +#: book.translate.xml:5106 msgid "" "<literal>Use password-based authentication?</literal> - Typically " "<literal>yes</literal> so that the user is prompted to input their password " @@ -6813,7 +6854,7 @@ msgstr "" "literal>) - 通常為是 (<literal>yes</literal>),使用者才可於登入時輸入密碼。" #. (itstool) path: listitem/para -#: book.translate.xml:5100 +#: book.translate.xml:5112 msgid "" "<literal>Use an empty password?</literal> - Typically <literal>no</literal> " "as it is insecure to have a blank password." @@ -6822,7 +6863,7 @@ msgstr "" "(<literal>no</literal>),因為使用空白密碼並不安全。" #. (itstool) path: listitem/para -#: book.translate.xml:5106 +#: book.translate.xml:5118 msgid "" "<literal>Use a random password?</literal> - Typically <literal>no</literal> " "so that the user can set their own password in the next prompt." @@ -6831,7 +6872,7 @@ msgstr "" "(<literal>no</literal>),這樣使用者接下來才可設定自己的密碼。" #. (itstool) path: listitem/para -#: book.translate.xml:5112 +#: book.translate.xml:5124 msgid "" "<literal>Enter password</literal> - The password for this user. Characters " "typed will not show on the screen." @@ -6840,7 +6881,7 @@ msgstr "" "會顯示在畫面上。" #. (itstool) path: listitem/para -#: book.translate.xml:5118 +#: book.translate.xml:5130 msgid "" "<literal>Enter password again</literal> - The password must be typed again " "for verification." @@ -6849,7 +6890,7 @@ msgstr "" "認無誤。" #. (itstool) path: listitem/para -#: book.translate.xml:5123 +#: book.translate.xml:5135 msgid "" "<literal>Lock out the account after creation?</literal> - Typically " "<literal>no</literal> so that the user can login." @@ -6858,7 +6899,7 @@ msgstr "" "literal>) - 通常為否 (<literal>no</literal>),這樣使用者才可以登入。" #. (itstool) path: sect2/para -#: book.translate.xml:5129 +#: book.translate.xml:5141 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, " @@ -6869,7 +6910,7 @@ msgstr "" "literal>) 以後便會建立新使用者。" #. (itstool) path: figure/title -#: book.translate.xml:5135 +#: book.translate.xml:5147 msgid "Exit User and Group Management" msgstr "離開使用者與群組管理" @@ -6878,13 +6919,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:5139 +#: book.translate.xml:5151 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5144 +#: book.translate.xml:5156 msgid "" "If there are more users to add, answer the <literal>Add another user?</" "literal> question with <literal>yes</literal>. Enter <literal>no</literal> " @@ -6895,7 +6936,7 @@ msgstr "" "literal>) 來完成加入使用者然後繼續安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:5149 +#: book.translate.xml:5161 msgid "" "For more information on adding users and user management, see <xref linkend=" "\"users-synopsis\"/>." @@ -6905,12 +6946,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:5154 book.translate.xml:5160 +#: book.translate.xml:5166 book.translate.xml:5172 msgid "Final Configuration" msgstr "最後設定" #. (itstool) path: sect2/para -#: book.translate.xml:5156 +#: book.translate.xml:5168 msgid "" "After everything has been installed and configured, a final chance is " "provided to modify settings." @@ -6921,21 +6962,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:5164 +#: book.translate.xml:5176 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-finalconfiguration' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5169 +#: book.translate.xml:5181 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:5174 +#: book.translate.xml:5186 msgid "" "<literal>Add User</literal> - Described in <xref linkend=\"bsdinstall-" "addusers\"/>." @@ -6944,7 +6985,7 @@ msgstr "" "addusers\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5178 +#: book.translate.xml:5190 msgid "" "<literal>Root Password</literal> - Described in <xref linkend=\"bsdinstall-" "post-root\"/>." @@ -6953,7 +6994,7 @@ msgstr "" "\"bsdinstall-post-root\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5182 +#: book.translate.xml:5194 msgid "" "<literal>Hostname</literal> - Described in <xref linkend=\"bsdinstall-" "hostname\"/>." @@ -6962,7 +7003,7 @@ msgstr "" "hostname\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5186 +#: book.translate.xml:5198 msgid "" "<literal>Network</literal> - Described in <xref linkend=\"bsdinstall-config-" "network-dev\"/>." @@ -6971,7 +7012,7 @@ msgstr "" "network-dev\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5190 +#: book.translate.xml:5202 msgid "" "<literal>Services</literal> - Described in <xref linkend=\"bsdinstall-sysconf" "\"/>." @@ -6980,7 +7021,7 @@ msgstr "" "sysconf\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5194 +#: book.translate.xml:5206 msgid "" "<literal>Time Zone</literal> - Described in <xref linkend=\"bsdinstall-" "timezone\"/>." @@ -6989,13 +7030,13 @@ msgstr "" "timezone\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5198 +#: book.translate.xml:5210 msgid "" "<literal>Handbook</literal> - Download and install the FreeBSD Handbook." msgstr "使用手冊 (<literal>Handbook</literal>) - 下載並安裝 FreeBSD 使用手冊。" #. (itstool) path: sect2/para -#: book.translate.xml:5203 +#: book.translate.xml:5215 msgid "" "After any final configuration is complete, select <guibutton>Exit</" "guibutton>." @@ -7003,7 +7044,7 @@ msgstr "完成最後的設定之後,選擇 <guibutton>Exit</guibutton>。" #. (itstool) path: figure/title #. (itstool) path: sect2/title -#: book.translate.xml:5207 book.translate.xml:11437 +#: book.translate.xml:5219 book.translate.xml:11496 msgid "Manual Configuration" msgstr "手動設定" @@ -7012,7 +7053,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:5211 +#: book.translate.xml:5223 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-final-modification-shell' " @@ -7020,7 +7061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5216 +#: book.translate.xml:5228 msgid "" "<application>bsdinstall</application> will prompt if there are any " "additional configuration that needs to be done before rebooting into the new " @@ -7033,7 +7074,7 @@ msgstr "" "的 Shell 或 <guibutton>[ No ]</guibutton> 繼續最後的安裝步驟。" #. (itstool) path: figure/title -#: book.translate.xml:5225 +#: book.translate.xml:5237 msgid "Complete the Installation" msgstr "完成安裝" @@ -7042,13 +7083,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:5229 +#: book.translate.xml:5241 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-mainexit' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5234 +#: book.translate.xml:5246 msgid "" "If further configuration or special setup is needed, select " "<guibutton>[ Live CD ]</guibutton> to boot the install media into Live " @@ -7058,7 +7099,7 @@ msgstr "" "進入安裝媒體的 Live <acronym>CD</acronym> 模式。" #. (itstool) path: sect2/para -#: book.translate.xml:5239 +#: book.translate.xml:5251 msgid "" "If the installation is complete, select <guibutton>[ Reboot ]</guibutton> to " "reboot the computer and start the new FreeBSD system. Do not forget to " @@ -7069,7 +7110,7 @@ msgstr "" "式。" #. (itstool) path: sect2/para -#: book.translate.xml:5245 +#: book.translate.xml:5257 msgid "" "As FreeBSD boots, informational messages are displayed. After the system " "finishes booting, a login prompt is displayed. At the <prompt>login:</" @@ -7084,7 +7125,7 @@ msgstr "" "\"users-superuser\"/> 來取得當需要管理權限時如何成為超級使用者的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:5254 +#: book.translate.xml:5266 msgid "" "The messages that appeared during boot can be reviewed by pressing " "<keycap>Scroll-Lock</keycap> to turn on the scroll-back buffer. The " @@ -7103,7 +7144,7 @@ msgstr "" "列。" #. (itstool) path: sect2/para -#: book.translate.xml:5266 +#: book.translate.xml:5278 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 " @@ -7117,7 +7158,7 @@ msgstr "" "(Fingerprint),如這個範例:" #. (itstool) path: sect2/screen -#: book.translate.xml:5272 +#: book.translate.xml:5284 #, no-wrap msgid "" "Generating public/private rsa1 key pair.\n" @@ -7158,7 +7199,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5308 +#: book.translate.xml:5320 msgid "" "Refer to <xref linkend=\"openssh\"/> for more information about fingerprints " "and <acronym>SSH</acronym>." @@ -7167,7 +7208,7 @@ msgstr "" "acronym> 的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:5311 +#: book.translate.xml:5323 msgid "" "FreeBSD does not install a graphical environment by default. Refer to <xref " "linkend=\"x11\"/> for more information about installing and configuring a " @@ -7177,7 +7218,7 @@ msgstr "" "與設定圖型化視窗管理程式的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:5315 +#: book.translate.xml:5327 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 " @@ -7198,27 +7239,27 @@ msgstr "" #. (itstool) path: sect1/title #. (itstool) path: sect2/title #. (itstool) path: sect3/title -#: book.translate.xml:5328 book.translate.xml:12392 book.translate.xml:15017 -#: book.translate.xml:20188 book.translate.xml:35340 book.translate.xml:36110 -#: book.translate.xml:48043 book.translate.xml:51289 book.translate.xml:61155 -#: book.translate.xml:62815 book.translate.xml:63538 +#: book.translate.xml:5340 book.translate.xml:12455 book.translate.xml:15126 +#: book.translate.xml:20296 book.translate.xml:35453 book.translate.xml:36223 +#: book.translate.xml:43361 book.translate.xml:48283 book.translate.xml:51529 +#: book.translate.xml:62189 book.translate.xml:63870 book.translate.xml:64608 msgid "Troubleshooting" msgstr "疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5330 +#: book.translate.xml:5342 msgid "<primary>installation</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5334 +#: book.translate.xml:5346 msgid "" "This section covers basic installation troubleshooting, such as common " "problems people have reported." msgstr "本節涵蓋基礎的安裝疑難排解,例如一些已有人回報的常見問題。" #. (itstool) path: sect1/para -#: book.translate.xml:5338 +#: book.translate.xml:5350 msgid "" "Check the Hardware Notes (<link xlink:href=\"@@URL_RELPREFIX@@/releases/" "index.html\">https://www.freebsd.org/releases/index.html</link>) document " @@ -7242,7 +7283,7 @@ msgstr "" "訴 FreeBSD 到那找到這些裝置。" #. (itstool) path: note/para -#: book.translate.xml:5352 +#: book.translate.xml:5364 msgid "" "Some installation problems can be avoided or alleviated by updating the " "firmware on various hardware components, most notably the motherboard. " @@ -7255,17 +7296,19 @@ msgstr "" "得升級程式與升級資訊。" #. (itstool) path: note/para -#: book.translate.xml:5359 +#: book.translate.xml:5371 msgid "" "Manufacturers generally advise against upgrading the motherboard " "<acronym>BIOS</acronym> unless there is a good reason for doing so, like a " "critical update. The upgrade process <emphasis>can</emphasis> go wrong, " "leaving the <acronym>BIOS</acronym> incomplete and the computer inoperative." msgstr "" -"製造商通常會建議若沒有特殊原因盡量避免升級主機板 <acronym>BIOS</acronym>" +"製造商通常會建議若沒有特殊原因盡量避免升級主機板 <acronym>BIOS</acronym>,例" +"如:重大更新,升級的程多<emphasis>可能會</emphasis>出錯,導致未更新完成的 " +"<acronym>BIOS</acronym> 並讓電腦無法運作。" #. (itstool) path: sect1/para -#: book.translate.xml:5367 +#: book.translate.xml:5379 msgid "" "If the system hangs while probing hardware during boot, or it behaves " "strangely during install, <acronym>ACPI</acronym> may be the culprit. " @@ -7285,13 +7328,13 @@ msgstr "" "disabled</literal> Hint 來關閉 <acronym>ACPI</acronym>:" #. (itstool) path: sect1/screen -#: book.translate.xml:5379 +#: book.translate.xml:5391 #, no-wrap msgid "<userinput>set hint.acpi.0.disabled=\"1\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5381 +#: book.translate.xml:5393 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/" @@ -7303,12 +7346,12 @@ msgstr "" "機載入程式的資訊可於 <xref linkend=\"boot-synopsis\"/> 取得。" #. (itstool) path: sect1/title -#: book.translate.xml:5388 +#: book.translate.xml:5400 msgid "Using the Live <acronym>CD</acronym>" msgstr "使用 Live <acronym>CD</acronym>" #. (itstool) path: sect1/para -#: book.translate.xml:5390 +#: book.translate.xml:5402 msgid "" "The welcome menu of <application>bsdinstall</application>, shown in <xref " "linkend=\"bsdinstall-choose-mode\"/>, provides a <guibutton>[ Live CD ]</" @@ -7322,14 +7365,14 @@ msgstr "" "測試一部份功能。" #. (itstool) path: sect1/para -#: book.translate.xml:5397 +#: book.translate.xml:5409 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:5402 +#: book.translate.xml:5414 msgid "" "To gain access to the system, authentication is required. The username is " "<systemitem class=\"username\">root</systemitem> and the password is blank." @@ -7338,25 +7381,25 @@ msgstr "" "\">root</systemitem> 而密碼則是空白。" #. (itstool) path: listitem/para -#: book.translate.xml:5408 +#: book.translate.xml:5420 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:5414 +#: book.translate.xml:5426 msgid "" "This option only provides a command prompt and not a graphical interface." msgstr "這個選項只提供指令提示,不會有圖型化介面。" #. (itstool) path: chapter/title -#: book.translate.xml:5439 +#: book.translate.xml:5451 msgid "FreeBSD Basics" msgstr "FreeBSD 基礎" #. (itstool) path: sect1/para -#: book.translate.xml:5444 +#: book.translate.xml:5456 msgid "" "This chapter covers the basic commands and functionality of the FreeBSD " "operating system. Much of this material is relevant for any <trademark class=" @@ -7369,17 +7412,17 @@ msgstr "" "細的讀完這章。" #. (itstool) path: listitem/para -#: book.translate.xml:5453 +#: book.translate.xml:5465 msgid "How to use and configure virtual consoles." msgstr "如何使用 FreeBSD 的虛擬 Console。" #. (itstool) path: listitem/para -#: book.translate.xml:5457 +#: book.translate.xml:5469 msgid "How to create and manage users and groups on FreeBSD." msgstr "如何在 FreeBSD 建立與管理使用者與群組。" #. (itstool) path: listitem/para -#: book.translate.xml:5462 +#: book.translate.xml:5474 msgid "" "How <trademark class=\"registered\">UNIX</trademark> file permissions and " "FreeBSD file flags work." @@ -7388,68 +7431,68 @@ msgstr "" "記的運作方式。" #. (itstool) path: listitem/para -#: book.translate.xml:5467 +#: book.translate.xml:5479 msgid "The default FreeBSD file system layout." msgstr "預設的 FreeBSD 檔案系統配置。" #. (itstool) path: listitem/para -#: book.translate.xml:5471 +#: book.translate.xml:5483 msgid "The FreeBSD disk organization." msgstr "FreeBSD 的磁碟組織。" #. (itstool) path: listitem/para -#: book.translate.xml:5475 +#: book.translate.xml:5487 msgid "How to mount and unmount file systems." msgstr "如何掛載 (Mount)、卸載 (Umount) 檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:5479 +#: book.translate.xml:5491 msgid "What processes, daemons, and signals are." msgstr "什麼是程序、Daemon 以及信號 (Signal)。" #. (itstool) path: listitem/para -#: book.translate.xml:5483 +#: book.translate.xml:5495 msgid "What a shell is, and how to change the default login environment." msgstr "什麼是 Shell,以及如何變更您預設的登入環境。" #. (itstool) path: listitem/para -#: book.translate.xml:5488 +#: book.translate.xml:5500 msgid "How to use basic text editors." msgstr "如何使用基本的文字編輯器。" #. (itstool) path: listitem/para -#: book.translate.xml:5492 +#: book.translate.xml:5504 msgid "What devices and device nodes are." msgstr "什麼是裝置 (Device) 和裝置節點 (Device node)。" #. (itstool) path: listitem/para -#: book.translate.xml:5496 +#: book.translate.xml:5508 msgid "How to read manual pages for more information." msgstr "如何閱讀操作手冊以獲得更多的資訊。" #. (itstool) path: sect1/title -#: book.translate.xml:5502 +#: book.translate.xml:5514 msgid "Virtual Consoles and Terminals" msgstr "虛擬 Console 與終端機" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5504 +#: book.translate.xml:5516 msgid "<primary>virtual consoles</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5507 book.translate.xml:47334 +#: book.translate.xml:5519 book.translate.xml:47574 msgid "<primary>terminals</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect3/indexterm -#: book.translate.xml:5510 book.translate.xml:23163 +#: book.translate.xml:5522 book.translate.xml:23271 msgid "<primary>console</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5514 +#: book.translate.xml:5526 msgid "" "Unless FreeBSD has been configured to automatically start a graphical " "environment during startup, the system will boot into a command line login " @@ -7459,7 +7502,7 @@ msgstr "" "是這樣的東西:" #. (itstool) path: sect1/screen -#: book.translate.xml:5519 +#: book.translate.xml:5531 #, no-wrap msgid "" "FreeBSD/amd64 (pc3.example.org) (ttyv0)\n" @@ -7468,7 +7511,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5523 +#: book.translate.xml:5535 msgid "" "The first line contains some information about the system. The " "<literal>amd64</literal> indicates that the system in this example is " @@ -7482,7 +7525,7 @@ msgstr "" "quote>。第二行則是登人的提示訊息。" #. (itstool) path: sect1/para -#: book.translate.xml:5531 +#: book.translate.xml:5543 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 " @@ -7496,7 +7539,7 @@ msgstr "" "(<quote>password</quote>)。" #. (itstool) path: sect1/para -#: book.translate.xml:5538 +#: book.translate.xml:5550 msgid "" "To log into the system console, type the username that was configured during " "system installation, as described in <xref linkend=\"bsdinstall-addusers\"/" @@ -7510,7 +7553,7 @@ msgstr "" "示</emphasis>在畫面上。" #. (itstool) path: sect1/para -#: book.translate.xml:5546 +#: book.translate.xml:5558 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 " @@ -7526,12 +7569,12 @@ msgstr "" "Console 且已經準備好可以下指令。" #. (itstool) path: sect2/title -#: book.translate.xml:5556 +#: book.translate.xml:5568 msgid "Virtual Consoles" msgstr "虛擬 Console" #. (itstool) path: sect2/para -#: book.translate.xml:5558 +#: book.translate.xml:5570 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 " @@ -7545,7 +7588,7 @@ msgstr "" "這些訊些會在使用者作業的過程中不斷出現,讓使用者難以專心作業。" #. (itstool) path: sect2/para -#: book.translate.xml:5567 +#: book.translate.xml:5579 msgid "" "By default, FreeBSD is configured to provide several virtual consoles for " "inputting commands. Each virtual console has its own login prompt and shell " @@ -7558,7 +7601,7 @@ msgstr "" "於圖型化環境中可以同時開啟多個視窗的功能。" #. (itstool) path: sect2/para -#: book.translate.xml:5574 +#: book.translate.xml:5586 msgid "" "The key combinations <keycombo><keycap>Alt</keycap><keycap>F1</keycap></" "keycombo> through <keycombo><keycap>Alt</keycap><keycap>F8</keycap></" @@ -7568,7 +7611,10 @@ msgid "" "<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> to access the " "first virtual console (<filename>ttyv1</filename>), <keycombo><keycap>Alt</" "keycap><keycap>F3</keycap></keycombo> to access the second virtual console " -"(<filename>ttyv2</filename>), and so on." +"(<filename>ttyv2</filename>), and so on. When using <application>Xorg</" +"application> as a graphical console, the combination becomes <keycombo> " +"<keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap> </keycombo> to " +"return to a text-based virtual console." msgstr "" "組合鍵 <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> 至 " "<keycombo><keycap>Alt</keycap><keycap>F8</keycap></keycombo> 被 FreeBSD 保留" @@ -7577,10 +7623,13 @@ msgstr "" "<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> 可存取第一個虛" "擬 Console (<filename>ttyv1</filename>),<keycombo><keycap>Alt</" "keycap><keycap>F3</keycap></keycombo> 可存取第二個虛擬 Console " -"(<filename>ttyv2</filename>),以此類推。" +"(<filename>ttyv2</filename>),以此類推。當使用 <application>Xorg</" +"application> 作為圖型化 Console 時,組合鍵則改使用 <keycombo> <keycap>Ctrl</" +"keycap><keycap>Alt</keycap><keycap>F1</keycap> </keycombo> 來切換回文字介面的" +"虛擬 Console。" #. (itstool) path: sect2/para -#: book.translate.xml:5590 +#: book.translate.xml:5606 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 " @@ -7593,7 +7642,7 @@ msgstr "" "Console 上執行的程式並不會因為使用者切到別的 Console 而停止執行。" #. (itstool) path: sect2/para -#: book.translate.xml:5597 +#: book.translate.xml:5613 msgid "" "Refer to <citerefentry><refentrytitle>kbdcontrol</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, " @@ -7615,7 +7664,7 @@ msgstr "" "citerefentry> 來取得更多有關 FreeBSD Console 及鍵盤驅動程式的技術說明。" #. (itstool) path: sect2/para -#: book.translate.xml:5602 +#: book.translate.xml:5618 msgid "" "In FreeBSD, the number of available virtual consoles is configured in this " "section of <filename>/etc/ttys</filename>:" @@ -7624,7 +7673,7 @@ msgstr "" "列章節:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5606 +#: book.translate.xml:5622 #, no-wrap msgid "" "# name getty type status comments\n" @@ -7642,7 +7691,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5620 +#: book.translate.xml:5636 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 " @@ -7664,7 +7713,7 @@ msgstr "" "個虛擬 Console (<filename>ttyv8</filename>)。" #. (itstool) path: sect2/para -#: book.translate.xml:5634 +#: book.translate.xml:5650 msgid "" "For a detailed description of every column in this file and the available " "options for the virtual consoles, refer to " @@ -7675,12 +7724,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 說明。" #. (itstool) path: sect2/title -#: book.translate.xml:5640 +#: book.translate.xml:5656 msgid "Single User Mode" msgstr "單使用者模式" #. (itstool) path: sect2/para -#: book.translate.xml:5642 +#: book.translate.xml:5658 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 " @@ -7705,7 +7754,7 @@ msgstr "" "鍵盤的人員。" #. (itstool) path: sect2/para -#: book.translate.xml:5658 +#: book.translate.xml:5674 msgid "" "The settings which control single user mode are found in this section of " "<filename>/etc/ttys</filename>:" @@ -7714,7 +7763,7 @@ msgstr "" "到:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5661 +#: book.translate.xml:5677 #, no-wrap msgid "" "# name getty type status comments\n" @@ -7725,7 +7774,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5667 +#: book.translate.xml:5683 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 " @@ -7744,7 +7793,7 @@ msgstr "" "碼。" #. (itstool) path: note/para -#: book.translate.xml:5679 +#: book.translate.xml:5695 msgid "" "<emphasis>Be careful when changing this setting to <literal>insecure</" "literal></emphasis>! If the <systemitem class=\"username\">root</systemitem> " @@ -7757,12 +7806,12 @@ msgstr "" "有其他辦法可以登入單使用者模式,只是對不熟 FreeBSD 開機程序的人可就麻煩了。" #. (itstool) path: sect2/title -#: book.translate.xml:5689 +#: book.translate.xml:5705 msgid "Changing Console Video Modes" msgstr "更改 Console 影像模式" #. (itstool) path: sect2/para -#: book.translate.xml:5691 +#: book.translate.xml:5707 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 " @@ -7773,13 +7822,13 @@ msgstr "" "組:" #. (itstool) path: sect2/screen -#: book.translate.xml:5696 +#: book.translate.xml:5712 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vesa</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5698 +#: book.translate.xml:5714 msgid "" "To determine which video modes are supported by the hardware, use " "<citerefentry><refentrytitle>vidcontrol</refentrytitle><manvolnum>1</" @@ -7791,13 +7840,13 @@ msgstr "" "清單可輸入以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:5702 +#: book.translate.xml:5718 #, no-wrap msgid "<prompt>#</prompt> <userinput>vidcontrol -i mode</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5704 +#: book.translate.xml:5720 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 " @@ -7811,13 +7860,13 @@ msgstr "" "manvolnum></citerefentry> 指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:5709 +#: book.translate.xml:5725 #, no-wrap msgid "<prompt>#</prompt> <userinput>vidcontrol MODE_279</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5711 +#: book.translate.xml:5727 msgid "" "If the new video mode is acceptable, it can be permanently set on boot by " "adding it to <filename>/etc/rc.conf</filename>:" @@ -7826,18 +7875,18 @@ msgstr "" "次重開機後會自動生效:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5715 +#: book.translate.xml:5731 #, no-wrap msgid "allscreens_flags=\"MODE_279\"" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:5732 +#: book.translate.xml:5748 msgid "Users and Basic Account Management" msgstr "使用者與基礎帳號管理" #. (itstool) path: sect1/para -#: book.translate.xml:5734 +#: book.translate.xml:5750 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 " @@ -7849,39 +7898,39 @@ msgstr "" "用者應有自己的帳號。" #. (itstool) path: sect1/para -#: book.translate.xml:5740 +#: book.translate.xml:5756 msgid "This chapter describes:" -msgstr "本章介紹︰" +msgstr "本章介紹:" #. (itstool) path: listitem/para -#: book.translate.xml:5744 +#: book.translate.xml:5760 msgid "The different types of user accounts on a FreeBSD system." msgstr "FreeBSD 系統中各種類型的使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5749 +#: book.translate.xml:5765 msgid "How to add, remove, and modify user accounts." msgstr "如何加入、移除與修改使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5753 +#: book.translate.xml:5769 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:5759 +#: book.translate.xml:5775 msgid "How to create groups and add users as members of a group." msgstr "如何建立群組與加入使用者作為群組成員。" #. (itstool) path: sect2/title -#: book.translate.xml:5765 +#: book.translate.xml:5781 msgid "Account Types" msgstr "帳號類型" #. (itstool) path: sect2/para -#: book.translate.xml:5767 +#: book.translate.xml:5783 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." @@ -7890,24 +7939,24 @@ msgstr "" "者來執行,因此使用者帳號管理非常重要。" #. (itstool) path: sect2/para -#: book.translate.xml:5771 +#: book.translate.xml:5787 msgid "" "There are three main types of accounts: system accounts, user accounts, and " "the superuser account." msgstr "有三種主要類型的帳號:系統帳號、使用者帳號以及超級使用者帳號。" #. (itstool) path: sect3/title -#: book.translate.xml:5775 +#: book.translate.xml:5791 msgid "System Accounts" msgstr "系統帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5777 +#: book.translate.xml:5793 msgid "<primary>accounts</primary> <secondary>system</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5782 +#: book.translate.xml:5798 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 " @@ -7917,21 +7966,21 @@ msgstr "" "若所有的服務均以超級使用者來執行,那麼這些服務的運作將不會受到限制。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5787 +#: book.translate.xml:5803 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">daemon</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5791 +#: book.translate.xml:5807 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">operator</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5796 +#: book.translate.xml:5812 msgid "" "Examples of system accounts are <systemitem class=\"username\">daemon</" "systemitem>, <systemitem class=\"username\">operator</systemitem>, " @@ -7945,14 +7994,14 @@ msgstr "" "systemitem>, and <systemitem class=\"username\">www</systemitem>。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5803 +#: book.translate.xml:5819 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">nobody</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5808 +#: book.translate.xml:5824 msgid "" "<systemitem class=\"username\">nobody</systemitem> is the generic " "unprivileged system account. However, the more services that use <systemitem " @@ -7966,17 +8015,17 @@ msgstr "" "限。" #. (itstool) path: sect3/title -#: book.translate.xml:5817 +#: book.translate.xml:5833 msgid "User Accounts" msgstr "使用者帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5819 +#: book.translate.xml:5835 msgid "<primary>accounts</primary> <secondary>user</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5824 +#: book.translate.xml:5840 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. " @@ -7988,7 +8037,7 @@ msgstr "" "的設定。" #. (itstool) path: sect3/para -#: book.translate.xml:5830 +#: book.translate.xml:5846 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 " @@ -7998,19 +8047,19 @@ msgstr "" "編輯器、組合鍵 (Key Binding) 及語言設定。" #. (itstool) path: sect3/para -#: book.translate.xml:5835 +#: book.translate.xml:5851 msgid "" "Every user account on a FreeBSD system has certain information associated " "with it:" msgstr "每個在 FreeBSD 系統的使用者帳號都會有一些相關的資訊:" #. (itstool) path: varlistentry/term -#: book.translate.xml:5840 +#: book.translate.xml:5856 msgid "User name" msgstr "使用者名稱 (User name)" #. (itstool) path: listitem/para -#: book.translate.xml:5843 +#: book.translate.xml:5859 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 " @@ -8026,22 +8075,22 @@ msgstr "" "元以向下相容應用程式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5855 +#: book.translate.xml:5871 msgid "Password" msgstr "密碼 (Password)" #. (itstool) path: listitem/para -#: book.translate.xml:5858 +#: book.translate.xml:5874 msgid "Each account has an associated password." msgstr "每個帳號都會有密碼。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5863 +#: book.translate.xml:5879 msgid "User ID (<acronym>UID</acronym>)" msgstr "使用者 ID (<acronym>UID</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:5866 +#: book.translate.xml:5882 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 " @@ -8055,12 +8104,12 @@ msgstr "" "體的相容性問題。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5877 +#: book.translate.xml:5893 msgid "Group ID (<acronym>GID</acronym>)" msgstr "群組 ID (<acronym>GID</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:5880 +#: book.translate.xml:5896 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 " @@ -8077,12 +8126,12 @@ msgstr "" "的 GID 可能會讓部份軟體無法運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5894 +#: book.translate.xml:5910 msgid "Login class" msgstr "登入類別 (Login class)" #. (itstool) path: listitem/para -#: book.translate.xml:5897 +#: book.translate.xml:5913 msgid "" "Login classes are an extension to the group mechanism that provide " "additional flexibility when tailoring the system to different users. Login " @@ -8092,12 +8141,12 @@ msgstr "" "的彈性。在 <xref linkend=\"users-limiting\"/> 有對登入類別更進一步的討論。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5906 +#: book.translate.xml:5922 msgid "Password change time" msgstr "密碼更改時間 (Password change time)" #. (itstool) path: listitem/para -#: book.translate.xml:5909 +#: book.translate.xml:5925 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 " @@ -8107,12 +8156,12 @@ msgstr "" "或所有使用者在某段期間過後更改他們的密碼。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5918 +#: book.translate.xml:5934 msgid "Account expiration time" msgstr "帳號到期時間 (Account expiration time)" #. (itstool) path: listitem/para -#: book.translate.xml:5921 +#: book.translate.xml:5937 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 " @@ -8127,12 +8176,12 @@ msgstr "" "期日期過後,便無法使用該帳號登入到系統,儘管該帳號的目錄及檔案仍存在。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5932 +#: book.translate.xml:5948 msgid "User's full name" msgstr "使用者的全名 (User's full name)" #. (itstool) path: listitem/para -#: book.translate.xml:5935 +#: book.translate.xml:5951 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 " @@ -8143,12 +8192,12 @@ msgstr "" "名。類似註解,這個資訊可以含有空白、大寫字元並可超過 8 個字母的長度。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5944 +#: book.translate.xml:5960 msgid "Home directory" msgstr "家目錄 (Home directory)" #. (itstool) path: listitem/para -#: book.translate.xml:5947 +#: book.translate.xml:5963 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 " @@ -8163,12 +8212,12 @@ msgstr "" "filename>。每位使用者可以儲存他們的個人檔案及子目錄於他們自己的家目錄。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5958 +#: book.translate.xml:5974 msgid "User shell" msgstr "使用者 Shell (User shell)" #. (itstool) path: listitem/para -#: book.translate.xml:5961 +#: book.translate.xml:5977 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 " @@ -8178,17 +8227,17 @@ msgstr "" "用者會有自己偏好的選擇,可儲存在自己的帳號設定。" #. (itstool) path: sect3/title -#: book.translate.xml:5972 +#: book.translate.xml:5988 msgid "The Superuser Account" msgstr "超級使用者帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5974 +#: book.translate.xml:5990 msgid "<primary>accounts</primary> <secondary>superuser (root)</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5979 +#: book.translate.xml:5995 msgid "" "The superuser account, usually called <systemitem class=\"username\">root</" "systemitem>, is used to manage the system with no limitations on privileges. " @@ -8200,7 +8249,7 @@ msgstr "" "如:寄信與收信、系統的一般探索或程式設計。" #. (itstool) path: sect3/para -#: book.translate.xml:5986 +#: book.translate.xml:6002 msgid "" "The superuser, unlike other user accounts, can operate without limits, and " "misuse of the superuser account may result in spectacular disasters. User " @@ -8213,7 +8262,7 @@ msgstr "" "登入一般使用者帳號,只有在指令需要額外權限時切換為超級使用者。" #. (itstool) path: sect3/para -#: book.translate.xml:5994 +#: book.translate.xml:6010 msgid "" "Always double and triple-check any commands issued as the superuser, since " "an extra space or missing character can mean irreparable data loss." @@ -8222,7 +8271,7 @@ msgstr "" "著無法挽回的資料遺失。" #. (itstool) path: sect3/para -#: book.translate.xml:5998 +#: book.translate.xml:6014 msgid "" "There are several ways to gain superuser privilege. While one can log in as " "<systemitem class=\"username\">root</systemitem>, this is highly discouraged." @@ -8231,7 +8280,7 @@ msgstr "" "\"username\">root</systemitem>,但強烈不建議這樣做。" #. (itstool) path: sect3/para -#: book.translate.xml:6003 +#: book.translate.xml:6019 msgid "" "Instead, use <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to become the superuser. If <literal>-</literal> " @@ -8249,7 +8298,7 @@ msgstr "" "的密碼。" #. (itstool) path: sect3/para -#: book.translate.xml:6013 +#: book.translate.xml:6029 msgid "" "In this example, the user only becomes superuser in order to run " "<command>make install</command> as this step requires superuser privilege. " @@ -8261,12 +8310,12 @@ msgstr "" "<command>exit</command> 離開超級使用者帳號並返回他的使用者帳號權限。" #. (itstool) path: example/title -#: book.translate.xml:6021 +#: book.translate.xml:6037 msgid "Install a Program As the Superuser" msgstr "以超級使用者的身份安裝程式" #. (itstool) path: example/screen -#: book.translate.xml:6023 +#: book.translate.xml:6039 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>configure</userinput>\n" @@ -8279,7 +8328,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6032 +#: book.translate.xml:6048 msgid "" "The built-in <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> framework works well for single systems or small " @@ -8294,17 +8343,17 @@ msgstr "" "體提供了活動記錄且允許管理者設定那個使用者可以用超級使用者執行那個指令。" #. (itstool) path: sect2/title -#: book.translate.xml:6043 +#: book.translate.xml:6059 msgid "Managing Accounts" msgstr "管理帳號" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6045 +#: book.translate.xml:6061 msgid "<primary>accounts</primary> <secondary>modifying</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6050 +#: book.translate.xml:6066 msgid "" "FreeBSD provides a variety of different commands to manage user accounts. " "The most common commands are summarized in <xref linkend=\"users-modifying-" @@ -8316,110 +8365,110 @@ msgstr "" "的操作手冊來取得更多詳細的資訊與用法範例。" #. (itstool) path: table/title -#: book.translate.xml:6057 +#: book.translate.xml:6073 msgid "Utilities for Managing User Accounts" msgstr "管理使用者帳號的工具" #. (itstool) path: row/entry -#: book.translate.xml:6065 book.translate.xml:57389 book.translate.xml:60921 +#: book.translate.xml:6081 book.translate.xml:57917 book.translate.xml:61955 msgid "Command" msgstr "指令" #. (itstool) path: row/entry #. (itstool) path: sect2/title -#: book.translate.xml:6066 book.translate.xml:16933 book.translate.xml:17087 +#: book.translate.xml:6082 book.translate.xml:17042 book.translate.xml:17196 msgid "Summary" msgstr "摘要" #. (itstool) path: row/entry -#: book.translate.xml:6071 +#: book.translate.xml:6087 msgid "" "<citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6072 +#: book.translate.xml:6088 msgid "The recommended command-line application for adding new users." msgstr "建議用來新增新使用者的指令列應用程式。" #. (itstool) path: row/entry -#: book.translate.xml:6077 +#: book.translate.xml:6093 msgid "" "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6078 +#: book.translate.xml:6094 msgid "The recommended command-line application for removing users." msgstr "建議用來移除使用者的指令列應用程式。" #. (itstool) path: row/entry -#: book.translate.xml:6083 +#: book.translate.xml:6099 msgid "" "<citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6084 +#: book.translate.xml:6100 msgid "A flexible tool for changing user database information." msgstr "用來更改使用者資料庫資訊的工具。" #. (itstool) path: row/entry -#: book.translate.xml:6089 +#: book.translate.xml:6105 msgid "" "<citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6090 +#: book.translate.xml:6106 msgid "The command-line tool to change user passwords." msgstr "用來更改使用者密碼的指令列工具。" #. (itstool) path: row/entry -#: book.translate.xml:6095 +#: book.translate.xml:6111 msgid "" "<citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6096 +#: book.translate.xml:6112 msgid "" "A powerful and flexible tool for modifying all aspects of user accounts." msgstr "用來修改使用者帳號各方面資訊強大且靈活的工具。" #. (itstool) path: sect3/title -#: book.translate.xml:6104 +#: book.translate.xml:6120 msgid "<command>adduser</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6106 +#: book.translate.xml:6122 msgid "<primary>accounts</primary> <secondary>adding</secondary>" msgstr "" #. (itstool) path: sect3/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:6110 book.translate.xml:43534 +#: book.translate.xml:6126 book.translate.xml:43770 msgid "<primary><command>adduser</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6113 +#: book.translate.xml:6129 msgid "<primary><filename>/usr/share/skel</filename></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6116 +#: book.translate.xml:6132 msgid "<primary>skeleton directory</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6120 +#: book.translate.xml:6136 msgid "" "The recommended program for adding new users is " "<citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" @@ -8438,7 +8487,7 @@ msgstr "" "具必須使用超級使用者執行。" #. (itstool) path: sect3/para -#: book.translate.xml:6130 +#: book.translate.xml:6146 msgid "" "The <citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> utility is interactive and walks through the steps " @@ -8461,12 +8510,12 @@ msgstr "" "離開。" #. (itstool) path: example/title -#: book.translate.xml:6142 +#: book.translate.xml:6158 msgid "Adding a User on FreeBSD" msgstr "在 FreeBSD 新增使用者" #. (itstool) path: example/screen -#: book.translate.xml:6144 +#: book.translate.xml:6160 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>adduser</userinput>\n" @@ -8502,29 +8551,29 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6177 +#: book.translate.xml:6193 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:6184 +#: book.translate.xml:6200 msgid "<command>rmuser</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6186 +#: book.translate.xml:6202 msgid "<primary><command>rmuser</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6189 +#: book.translate.xml:6205 msgid "<primary>accounts</primary> <secondary>removing</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6194 +#: book.translate.xml:6210 msgid "" "To completely remove a user from the system, run " "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" @@ -8535,7 +8584,7 @@ msgstr "" "citerefentry>。這個指令會執行以下步驟:" #. (itstool) path: step/para -#: book.translate.xml:6200 +#: book.translate.xml:6216 msgid "" "Removes the user's <citerefentry><refentrytitle>crontab</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> entry, if one exists." @@ -8544,7 +8593,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 項目,若項目存在。" #. (itstool) path: step/para -#: book.translate.xml:6205 +#: book.translate.xml:6221 msgid "" "Removes any <citerefentry><refentrytitle>at</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> jobs belonging to the user." @@ -8553,30 +8602,30 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 工作。" #. (itstool) path: step/para -#: book.translate.xml:6210 +#: book.translate.xml:6226 msgid "Kills all processes owned by the user." msgstr "中止所有該使用者擁有的程序。" #. (itstool) path: step/para -#: book.translate.xml:6214 +#: book.translate.xml:6230 msgid "Removes the user from the system's local password file." msgstr "自系統本地密碼檔移除該使用者。" #. (itstool) path: step/para -#: book.translate.xml:6219 +#: book.translate.xml:6235 msgid "" "Optionally removes the user's home directory, if it is owned by the user." msgstr "選擇性移除該使用者的家目錄,若使用者擁有該目錄。" #. (itstool) path: step/para -#: book.translate.xml:6224 +#: book.translate.xml:6240 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:6229 +#: book.translate.xml:6245 msgid "" "Removes all files owned by the user from temporary file storage areas such " "as <filename>/tmp</filename>." @@ -8584,7 +8633,7 @@ msgstr "" "自暫存檔儲存區域 (如 <filename>/tmp</filename>) 移除所有使用者擁有的檔案。" #. (itstool) path: step/para -#: book.translate.xml:6235 +#: book.translate.xml:6251 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 " @@ -8598,7 +8647,7 @@ msgstr "" "manvolnum></citerefentry> 替每位使用者建立獨一無二的群組。" #. (itstool) path: sect3/para -#: book.translate.xml:6244 +#: book.translate.xml:6260 msgid "" "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> cannot be used to remove superuser accounts since that is " @@ -8608,18 +8657,18 @@ msgstr "" "citerefentry> 無法用來移除超級使用者帳號,因為這幾乎代表著大規模破壞。" #. (itstool) path: sect3/para -#: book.translate.xml:6248 +#: book.translate.xml:6264 msgid "" "By default, an interactive mode is used, as shown in the following example." msgstr "預設會使用互動式模式,如下範例所示。" #. (itstool) path: example/title -#: book.translate.xml:6252 +#: book.translate.xml:6268 msgid "<command>rmuser</command> Interactive Account Removal" msgstr "<command>rmuser</command> 互動式帳號移除" #. (itstool) path: example/screen -#: book.translate.xml:6255 +#: book.translate.xml:6271 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rmuser jru</userinput>\n" @@ -8632,17 +8681,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:6266 +#: book.translate.xml:6282 msgid "<command>chpass</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6268 +#: book.translate.xml:6284 msgid "<primary><command>chpass</command></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6272 +#: book.translate.xml:6288 msgid "" "Any user can use <citerefentry><refentrytitle>chpass</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to change their " @@ -8656,7 +8705,7 @@ msgstr "" "者的其他帳號資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:6277 +#: book.translate.xml:6293 msgid "" "When passed no options, aside from an optional username, " "<citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></" @@ -8669,7 +8718,7 @@ msgstr "" "的資訊到使用者資料庫。" #. (itstool) path: note/para -#: book.translate.xml:6283 +#: book.translate.xml:6299 msgid "" "This utility will prompt for the user's password when exiting the editor, " "unless the utility is run as the superuser." @@ -8677,7 +8726,7 @@ msgstr "" "離開編輯器時,此工具會提示使用者輸入密碼,除非使用超級使用者執行此工具。" #. (itstool) path: sect3/para -#: book.translate.xml:6288 +#: book.translate.xml:6304 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 " @@ -8692,12 +8741,12 @@ msgstr "" "個欄位供編輯,如 <xref linkend=\"users-modifying-chpass-ru\"/> 所示。" #. (itstool) path: example/title -#: book.translate.xml:6297 +#: book.translate.xml:6313 msgid "Using <command>chpass</command> as Superuser" msgstr "以超級使用者的身份使用 <command>chpass</command>" #. (itstool) path: example/screen -#: book.translate.xml:6300 +#: book.translate.xml:6316 #, no-wrap msgid "" "#Changing user database information for jru.\n" @@ -8718,12 +8767,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:6318 +#: book.translate.xml:6334 msgid "Using <command>chpass</command> as Regular User" msgstr "以一般使用者的身份使用 <command>chpass</command>" #. (itstool) path: example/screen -#: book.translate.xml:6321 +#: book.translate.xml:6337 #, no-wrap msgid "" "#Changing user database information for jru.\n" @@ -8736,7 +8785,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6331 +#: book.translate.xml:6347 msgid "" "The commands <citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>chsh</" @@ -8764,22 +8813,22 @@ msgstr "" "linkend=\"network-servers\"/> 中有說明。" #. (itstool) path: sect3/title -#: book.translate.xml:6341 +#: book.translate.xml:6357 msgid "<command>passwd</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6343 +#: book.translate.xml:6359 msgid "<primary><command>passwd</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6346 +#: book.translate.xml:6362 msgid "<primary>accounts</primary> <secondary>changing password</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6351 +#: book.translate.xml:6367 msgid "" "Any user can easily change their password using " "<citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></" @@ -8789,15 +8838,15 @@ msgid "" msgstr "" "任何使用者皆可簡單的使用 <citerefentry><refentrytitle>passwd</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 更改自己的密碼。要避免" -"意外或未授權的變更,這個指令在設定新密碼之前會提示使用者輸入原來的密碼。" +"意外或未授權的變更,這個指令在設定新密碼之前會提示使用者輸入原來的密碼:" #. (itstool) path: example/title -#: book.translate.xml:6357 +#: book.translate.xml:6373 msgid "Changing Your Password" msgstr "更改您的密碼" #. (itstool) path: example/screen -#: book.translate.xml:6359 +#: book.translate.xml:6375 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>passwd</userinput>\n" @@ -8810,7 +8859,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6368 +#: book.translate.xml:6384 msgid "" "The superuser can change any user's password by specifying the username when " "running <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</" @@ -8824,12 +8873,12 @@ msgstr "" "用者目前的密碼,這可在使用者忘記原來的密碼時更改密碼。" #. (itstool) path: example/title -#: book.translate.xml:6376 +#: book.translate.xml:6392 msgid "Changing Another User's Password as the Superuser" msgstr "以超級使用者的身份更改其他使用者的密碼" #. (itstool) path: example/screen -#: book.translate.xml:6379 +#: book.translate.xml:6395 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>passwd jru</userinput>\n" @@ -8841,7 +8890,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6388 +#: book.translate.xml:6404 msgid "" "As with <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <citerefentry><refentrytitle>yppasswd</" @@ -8856,18 +8905,18 @@ msgstr "" "citerefentry>,因此 <acronym>NIS</acronym> 在兩個指令上皆可運作。" #. (itstool) path: sect3/title -#: book.translate.xml:6395 +#: book.translate.xml:6411 msgid "<command>pw</command>" msgstr "" #. (itstool) path: sect3/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:6397 book.translate.xml:43557 +#: book.translate.xml:6413 book.translate.xml:43793 msgid "<primary><command>pw</command></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6401 +#: book.translate.xml:6417 msgid "" "The <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> utility can create, remove, modify, and display users and " @@ -8885,27 +8934,27 @@ msgstr "" "本節的指令要複雜許多。" #. (itstool) path: sect2/title -#: book.translate.xml:6412 +#: book.translate.xml:6428 msgid "Managing Groups" msgstr "管理群組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6414 +#: book.translate.xml:6430 msgid "<primary>groups</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6417 +#: book.translate.xml:6433 msgid "<primary><filename>/etc/groups</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6420 +#: book.translate.xml:6436 msgid "<primary>accounts</primary> <secondary>groups</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6425 +#: book.translate.xml:6441 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</" @@ -8919,7 +8968,7 @@ msgstr "" "單中的第一個群組。" #. (itstool) path: sect2/para -#: book.translate.xml:6432 +#: book.translate.xml:6448 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 " @@ -8937,7 +8986,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:6440 +#: book.translate.xml:6456 msgid "" "The superuser can modify <filename>/etc/group</filename> using a text " "editor. Alternatively, <citerefentry><refentrytitle>pw</" @@ -8951,7 +9000,7 @@ msgstr "" "\"groupname\">teamtwo</systemitem> 的群組然後確認該群組已新增:" #. (itstool) path: example/title -#: book.translate.xml:6447 +#: book.translate.xml:6463 msgid "" "Adding a Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -8960,7 +9009,7 @@ msgstr "" "manvolnum></citerefentry> 新增群組" #. (itstool) path: example/screen -#: book.translate.xml:6449 +#: book.translate.xml:6465 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupadd teamtwo</userinput>\n" @@ -8969,7 +9018,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6454 +#: book.translate.xml:6470 msgid "" "In this example, <literal>1100</literal> is the <acronym>GID</acronym> of " "<systemitem class=\"groupname\">teamtwo</systemitem>. Right now, <systemitem " @@ -8984,7 +9033,7 @@ msgstr "" "\">teamtwo</systemitem> 的成員。" #. (itstool) path: example/title -#: book.translate.xml:6463 +#: book.translate.xml:6479 msgid "" "Adding User Accounts to a New Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -8993,7 +9042,7 @@ msgstr "" "manvolnum></citerefentry> 加入使用者帳號到新的群組" #. (itstool) path: example/screen -#: book.translate.xml:6466 +#: book.translate.xml:6482 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupmod teamtwo -M jru</userinput>\n" @@ -9002,7 +9051,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6471 +#: book.translate.xml:6487 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. " @@ -9029,7 +9078,7 @@ msgstr "" "filename> 且不會嘗試自 <filename>/etc/passwd</filename> 讀取其他的資料。" #. (itstool) path: example/title -#: book.translate.xml:6485 +#: book.translate.xml:6501 msgid "" "Adding a New Member to a Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -9038,7 +9087,7 @@ msgstr "" "manvolnum></citerefentry> 加入新成員到群組" #. (itstool) path: example/screen -#: book.translate.xml:6487 +#: book.translate.xml:6503 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupmod teamtwo -m db</userinput>\n" @@ -9047,7 +9096,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6492 +#: book.translate.xml:6508 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, " @@ -9059,7 +9108,7 @@ msgstr "" "者。" #. (itstool) path: example/title -#: book.translate.xml:6499 +#: book.translate.xml:6515 msgid "" "Using <citerefentry><refentrytitle>id</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to Determine Group Membership" @@ -9068,7 +9117,7 @@ msgstr "" "manvolnum></citerefentry> 來查看所屬群組" #. (itstool) path: example/screen -#: book.translate.xml:6501 +#: book.translate.xml:6517 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>id jru</userinput>\n" @@ -9076,7 +9125,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6505 +#: book.translate.xml:6521 msgid "" "In this example, <systemitem class=\"username\">jru</systemitem> is a member " "of the groups <systemitem class=\"groupname\">jru</systemitem> and " @@ -9087,7 +9136,7 @@ msgstr "" "\">teamtwo</systemitem> 的成員。" #. (itstool) path: sect2/para -#: book.translate.xml:6510 +#: book.translate.xml:6526 msgid "" "For more information about this command and the format of <filename>/etc/" "group</filename>, refer to <citerefentry><refentrytitle>pw</" @@ -9101,17 +9150,17 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:6517 +#: book.translate.xml:6533 msgid "Permissions" msgstr "權限" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6519 +#: book.translate.xml:6535 msgid "<primary>UNIX</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6523 +#: book.translate.xml:6539 msgid "" "In FreeBSD, every file and directory has an associated set of permissions " "and several utilities are available for viewing and modifying these " @@ -9125,7 +9174,7 @@ msgstr "" "無法不正確的存取供作業系統或其他使用者擁有的檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:6531 +#: book.translate.xml:6547 msgid "" "This section discusses the traditional <trademark class=\"registered\">UNIX</" "trademark> permissions used in FreeBSD. For finer grained file system access " @@ -9136,7 +9185,7 @@ msgstr "" ">。" #. (itstool) path: sect1/para -#: book.translate.xml:6535 +#: book.translate.xml:6551 msgid "" "In <trademark class=\"registered\">UNIX</trademark>, basic permissions are " "assigned using three types of access: read, write, and execute. These access " @@ -9160,7 +9209,7 @@ msgstr "" "literal> 以及 <literal>x</literal> 開啟的值為 <literal>1</literal>。" #. (itstool) path: sect1/para -#: book.translate.xml:6550 +#: book.translate.xml:6566 msgid "" "Table 4.1 summarizes the possible numeric and alphabetic possibilities. When " "reading the <quote>Directory Listing</quote> column, a <literal>-</literal> " @@ -9170,183 +9219,183 @@ msgstr "" "位時,<literal>-</literal> 用來代表該權限設為關閉。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6555 +#: book.translate.xml:6571 msgid "<primary>permissions</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6558 +#: book.translate.xml:6574 msgid "<primary>file permissions</primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:6563 +#: book.translate.xml:6579 msgid "<trademark class=\"registered\">UNIX</trademark> Permissions" msgstr "<trademark class=\"registered\">UNIX</trademark> 權限" #. (itstool) path: row/entry -#: book.translate.xml:6568 +#: book.translate.xml:6584 msgid "Value" msgstr "數值" #. (itstool) path: row/entry -#: book.translate.xml:6569 +#: book.translate.xml:6585 msgid "Permission" msgstr "權限" #. (itstool) path: row/entry -#: book.translate.xml:6570 +#: book.translate.xml:6586 msgid "Directory Listing" msgstr "目錄清單標示" #. (itstool) path: row/entry -#: book.translate.xml:6576 +#: book.translate.xml:6592 msgid "0" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6577 +#: book.translate.xml:6593 msgid "No read, no write, no execute" msgstr "不可讀取, 不可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6578 +#: book.translate.xml:6594 msgid "<literal>---</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6582 book.translate.xml:47032 book.translate.xml:47054 -#: book.translate.xml:47144 +#: book.translate.xml:6598 book.translate.xml:47272 book.translate.xml:47294 +#: book.translate.xml:47384 msgid "1" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6583 +#: book.translate.xml:6599 msgid "No read, no write, execute" msgstr "不可讀取, 不可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6584 +#: book.translate.xml:6600 msgid "<literal>--x</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6588 book.translate.xml:46924 book.translate.xml:46934 -#: book.translate.xml:47006 book.translate.xml:47016 book.translate.xml:47096 -#: book.translate.xml:47098 +#: book.translate.xml:6604 book.translate.xml:47164 book.translate.xml:47174 +#: book.translate.xml:47246 book.translate.xml:47256 book.translate.xml:47336 +#: book.translate.xml:47338 msgid "2" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6589 +#: book.translate.xml:6605 msgid "No read, write, no execute" msgstr "不可讀取, 可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6590 +#: book.translate.xml:6606 msgid "<literal>-w-</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6594 book.translate.xml:46926 book.translate.xml:46932 -#: book.translate.xml:47008 book.translate.xml:47014 book.translate.xml:47104 -#: book.translate.xml:47106 +#: book.translate.xml:6610 book.translate.xml:47166 book.translate.xml:47172 +#: book.translate.xml:47248 book.translate.xml:47254 book.translate.xml:47344 +#: book.translate.xml:47346 msgid "3" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6595 +#: book.translate.xml:6611 msgid "No read, write, execute" msgstr "不可讀取, 可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6596 +#: book.translate.xml:6612 msgid "<literal>-wx</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6600 book.translate.xml:46940 book.translate.xml:46950 -#: book.translate.xml:47022 book.translate.xml:47030 book.translate.xml:47048 -#: book.translate.xml:47056 book.translate.xml:47112 book.translate.xml:47120 -#: book.translate.xml:47162 +#: book.translate.xml:6616 book.translate.xml:47180 book.translate.xml:47190 +#: book.translate.xml:47262 book.translate.xml:47270 book.translate.xml:47288 +#: book.translate.xml:47296 book.translate.xml:47352 book.translate.xml:47360 +#: book.translate.xml:47402 msgid "4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6601 +#: book.translate.xml:6617 msgid "Read, no write, no execute" msgstr "可讀取, 不可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6602 +#: book.translate.xml:6618 msgid "<literal>r--</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6606 book.translate.xml:46942 book.translate.xml:46948 -#: book.translate.xml:47038 book.translate.xml:47040 book.translate.xml:47128 -#: book.translate.xml:47154 +#: book.translate.xml:6622 book.translate.xml:47182 book.translate.xml:47188 +#: book.translate.xml:47278 book.translate.xml:47280 book.translate.xml:47368 +#: book.translate.xml:47394 msgid "5" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6607 +#: book.translate.xml:6623 msgid "Read, no write, execute" msgstr "可讀取, 不可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6608 +#: book.translate.xml:6624 msgid "<literal>r-x</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6612 book.translate.xml:46958 book.translate.xml:46972 -#: book.translate.xml:47024 book.translate.xml:47046 book.translate.xml:47114 -#: book.translate.xml:47136 +#: book.translate.xml:6628 book.translate.xml:47198 book.translate.xml:47212 +#: book.translate.xml:47264 book.translate.xml:47286 book.translate.xml:47354 +#: book.translate.xml:47376 msgid "6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6613 +#: book.translate.xml:6629 msgid "Read, write, no execute" msgstr "可讀取, 可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6614 +#: book.translate.xml:6630 msgid "<literal>rw-</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6618 book.translate.xml:46916 book.translate.xml:46918 -#: book.translate.xml:47062 book.translate.xml:47072 book.translate.xml:47130 -#: book.translate.xml:47152 +#: book.translate.xml:6634 book.translate.xml:47156 book.translate.xml:47158 +#: book.translate.xml:47302 book.translate.xml:47312 book.translate.xml:47370 +#: book.translate.xml:47392 msgid "7" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6619 +#: book.translate.xml:6635 msgid "Read, write, execute" msgstr "可讀取, 可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6620 +#: book.translate.xml:6636 msgid "<literal>rwx</literal>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6626 +#: book.translate.xml:6642 msgid "" "<primary><citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6629 +#: book.translate.xml:6645 msgid "<primary>directories</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6633 +#: book.translate.xml:6649 msgid "" "Use the <option>-l</option> argument to <citerefentry><refentrytitle>ls</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to view a long " @@ -9360,7 +9409,7 @@ msgstr "" "一個目錄底下執行 <command>ls -l</command>,會顯示如下的結果:" #. (itstool) path: sect1/screen -#: book.translate.xml:6639 +#: book.translate.xml:6655 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ls -l</userinput>\n" @@ -9371,7 +9420,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6645 +#: book.translate.xml:6661 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, " @@ -9398,7 +9447,7 @@ msgstr "" "案的三種權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6662 +#: book.translate.xml:6678 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. " @@ -9409,7 +9458,7 @@ msgstr "" "</filename> 目錄中。" #. (itstool) path: sect1/para -#: book.translate.xml:6667 +#: book.translate.xml:6683 msgid "" "Directories are also treated as files. They have read, write, and execute " "permissions. The executable bit for a directory has a slightly different " @@ -9425,7 +9474,7 @@ msgstr "" "代表能夠存取在此目錄之中的已知檔名的檔案,但仍會受限於檔案本身所設定的權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6676 +#: book.translate.xml:6692 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 " @@ -9436,7 +9485,7 @@ msgstr "" "案所在目錄的寫入 <emphasis>以及</emphasis> 執行的權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6682 +#: book.translate.xml:6698 msgid "" "There are more permission bits, but they are primarily used in special " "circumstances such as setuid binaries and sticky directories. For more " @@ -9450,27 +9499,27 @@ msgstr "" "citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:6689 +#: book.translate.xml:6705 msgid "Symbolic Permissions" msgstr "權限符號" #. (itstool) path: authorgroup/author -#: book.translate.xml:6692 book.translate.xml:6827 book.translate.xml:6878 -#: book.translate.xml:19214 book.translate.xml:19321 book.translate.xml:19499 -#: book.translate.xml:20618 book.translate.xml:21137 book.translate.xml:23386 -#: book.translate.xml:33823 book.translate.xml:65535 +#: book.translate.xml:6708 book.translate.xml:6843 book.translate.xml:6894 +#: book.translate.xml:19322 book.translate.xml:19429 book.translate.xml:19607 +#: book.translate.xml:20726 book.translate.xml:21245 book.translate.xml:23491 +#: book.translate.xml:33936 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:6702 +#: book.translate.xml:6718 msgid "<primary>permissions</primary> <secondary>symbolic</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6707 +#: book.translate.xml:6723 msgid "" "Symbolic permissions use characters instead of octal values to assign " "permissions to files or directories. Symbolic permissions use the syntax of " @@ -9480,159 +9529,159 @@ msgstr "" "符號表示的格式依序為 (某人)(動作)(權限),可使用的符號如下:" #. (itstool) path: row/entry -#: book.translate.xml:6717 book.translate.xml:23112 +#: book.translate.xml:6733 book.translate.xml:23220 msgid "Option" msgstr "項目" #. (itstool) path: row/entry -#: book.translate.xml:6718 +#: book.translate.xml:6734 msgid "Letter" msgstr "字母" #. (itstool) path: row/entry -#: book.translate.xml:6719 +#: book.translate.xml:6735 msgid "Represents" msgstr "代表意義" #. (itstool) path: row/entry -#: book.translate.xml:6725 book.translate.xml:6731 book.translate.xml:6737 -#: book.translate.xml:6743 +#: book.translate.xml:6741 book.translate.xml:6747 book.translate.xml:6753 +#: book.translate.xml:6759 msgid "(who)" msgstr "(某人)" #. (itstool) path: row/entry -#: book.translate.xml:6726 +#: book.translate.xml:6742 msgid "u" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6727 +#: book.translate.xml:6743 msgid "User" msgstr "使用者" #. (itstool) path: row/entry -#: book.translate.xml:6732 +#: book.translate.xml:6748 msgid "g" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6733 +#: book.translate.xml:6749 msgid "Group owner" msgstr "群組所有者" #. (itstool) path: row/entry -#: book.translate.xml:6738 +#: book.translate.xml:6754 msgid "o" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6739 +#: book.translate.xml:6755 msgid "Other" msgstr "其他" #. (itstool) path: row/entry -#: book.translate.xml:6744 +#: book.translate.xml:6760 msgid "a" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6745 +#: book.translate.xml:6761 msgid "All (<quote>world</quote>)" msgstr "全部 (<quote>world</quote>)" #. (itstool) path: row/entry -#: book.translate.xml:6749 book.translate.xml:6755 book.translate.xml:6761 +#: book.translate.xml:6765 book.translate.xml:6771 book.translate.xml:6777 msgid "(action)" msgstr "(動作)" #. (itstool) path: row/entry -#: book.translate.xml:6750 book.translate.xml:31374 book.translate.xml:39163 +#: book.translate.xml:6766 book.translate.xml:31487 book.translate.xml:39276 msgid "+" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6751 +#: book.translate.xml:6767 msgid "Adding permissions" -msgstr "\t增加權限" +msgstr "增加權限" #. (itstool) path: row/entry -#: book.translate.xml:6756 book.translate.xml:31379 book.translate.xml:39168 +#: book.translate.xml:6772 book.translate.xml:31492 book.translate.xml:39281 msgid "-" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6757 +#: book.translate.xml:6773 msgid "Removing permissions" msgstr "移除權限" #. (itstool) path: row/entry -#: book.translate.xml:6762 +#: book.translate.xml:6778 msgid "=" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6763 +#: book.translate.xml:6779 msgid "Explicitly set permissions" msgstr "指定權限" #. (itstool) path: row/entry -#: book.translate.xml:6767 book.translate.xml:6773 book.translate.xml:6779 -#: book.translate.xml:6785 book.translate.xml:6791 +#: book.translate.xml:6783 book.translate.xml:6789 book.translate.xml:6795 +#: book.translate.xml:6801 book.translate.xml:6807 msgid "(permissions)" msgstr "(權限)" #. (itstool) path: row/entry -#: book.translate.xml:6768 +#: book.translate.xml:6784 msgid "r" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6769 +#: book.translate.xml:6785 msgid "Read" msgstr "讀取" #. (itstool) path: row/entry -#: book.translate.xml:6774 +#: book.translate.xml:6790 msgid "w" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6775 +#: book.translate.xml:6791 msgid "Write" msgstr "寫入" #. (itstool) path: row/entry -#: book.translate.xml:6780 +#: book.translate.xml:6796 msgid "x" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6781 +#: book.translate.xml:6797 msgid "Execute" msgstr "執行" #. (itstool) path: row/entry -#: book.translate.xml:6786 +#: book.translate.xml:6802 msgid "t" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6787 +#: book.translate.xml:6803 msgid "Sticky bit" msgstr "Sticky 位元" #. (itstool) path: row/entry -#: book.translate.xml:6792 +#: book.translate.xml:6808 msgid "s" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6793 +#: book.translate.xml:6809 msgid "Set UID or GID" msgstr "設定 UID 或 GID" #. (itstool) path: sect2/para -#: book.translate.xml:6799 +#: book.translate.xml:6815 msgid "" "These values are used with <citerefentry><refentrytitle>chmod</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, but with letters " @@ -9645,36 +9694,36 @@ msgstr "" "<replaceable>FILE</replaceable>:" #. (itstool) path: sect2/screen -#: book.translate.xml:6804 +#: book.translate.xml:6820 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod go= FILE</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6806 +#: book.translate.xml:6822 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 " "and <quote>world</quote> write permission on <replaceable>FILE</" "replaceable>, and adds the execute permissions for everyone:" msgstr "" -"若有兩個以上的符號表示可以使用逗號 (,) 區隔。 例如,下列指令將會移除群組及其" -"他人對檔案 <replaceable>FILE</replaceable> 的寫入權限, 並使全部人 " -"(<quote>world</quote>) 對該檔有執行權限。" +"若有兩個以上的權限更改可以使用逗號 (,) 區隔。 例如,下列指令將會移除群組及全" +"部人 (<quote>world</quote>) 對檔案 <replaceable>FILE</replaceable> 的寫入權" +"限, 並使全部人對該檔有執行權限:" #. (itstool) path: sect2/screen -#: book.translate.xml:6813 +#: book.translate.xml:6829 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod go-w,a+x <replaceable>FILE</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:6824 +#: book.translate.xml:6840 msgid "FreeBSD File Flags" msgstr "FreeBSD 檔案旗標" #. (itstool) path: sect2/para -#: book.translate.xml:6837 +#: book.translate.xml:6853 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 " @@ -9687,7 +9736,7 @@ msgstr "" "<systemitem class=\"username\">root</systemitem> 不會意外將檔案修改或移除。" #. (itstool) path: sect2/para -#: book.translate.xml:6844 +#: book.translate.xml:6860 msgid "" "File flags are modified using <citerefentry><refentrytitle>chflags</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>. For example, to " @@ -9700,13 +9749,13 @@ msgstr "" "<filename>file1</filename>,使用下列指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:6849 +#: book.translate.xml:6865 #, no-wrap msgid "<prompt>#</prompt> <userinput>chflags sunlink file1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6851 +#: book.translate.xml:6867 msgid "" "To disable the system undeletable flag, put a <quote>no</quote> in front of " "the <option>sunlink</option>:" @@ -9715,13 +9764,13 @@ msgstr "" "<quote>no</quote>,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:6855 +#: book.translate.xml:6871 #, no-wrap msgid "<prompt>#</prompt> <userinput>chflags nosunlink file1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6857 +#: book.translate.xml:6873 msgid "" "To view the flags of a file, use <option>-lo</option> with " "<citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></" @@ -9731,19 +9780,19 @@ msgstr "" "manvolnum></citerefentry> 及參數 <option>-lo</option> 可檢視檔案目前的旗標:" #. (itstool) path: sect2/screen -#: book.translate.xml:6860 +#: book.translate.xml:6876 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -lo file1</userinput>" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:6862 +#: book.translate.xml:6878 #, no-wrap msgid "-rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6864 +#: book.translate.xml:6880 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 " @@ -9759,7 +9808,7 @@ msgstr "" "refentrytitle><manvolnum>2</manvolnum></citerefentry> 說明以瞭解相關細節。" #. (itstool) path: info/title -#: book.translate.xml:6873 +#: book.translate.xml:6889 msgid "" "The <literal>setuid</literal>, <literal>setgid</literal>, and " "<literal>sticky</literal> Permissions" @@ -9768,7 +9817,7 @@ msgstr "" "literal> 權限" #. (itstool) path: sect2/para -#: book.translate.xml:6888 +#: book.translate.xml:6904 msgid "" "Other than the permissions already discussed, there are three other specific " "settings that all administrators should know about. They are the " @@ -9780,7 +9829,7 @@ msgstr "" "<literal>sticky</literal> 權限。" #. (itstool) path: sect2/para -#: book.translate.xml:6894 +#: book.translate.xml:6910 msgid "" "These settings are important for some <trademark class=\"registered\">UNIX</" "trademark> operations as they provide functionality not normally granted to " @@ -9792,7 +9841,7 @@ msgstr "" "說明真實使用者 ID (Real user ID) 與有效使用者 ID (Effective user ID) 的差異。" #. (itstool) path: sect2/para -#: book.translate.xml:6899 +#: book.translate.xml:6915 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 " @@ -9812,20 +9861,20 @@ msgstr "" "(<errorname>Permission Denied</errorname>) 的錯誤。" #. (itstool) path: sect2/para -#: book.translate.xml:6909 +#: book.translate.xml:6925 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:6913 +#: book.translate.xml:6929 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 4755 suidexample.sh</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6915 +#: book.translate.xml:6931 msgid "" "The permissions on <filename><replaceable>suidexample.sh</replaceable></" "filename> now look like the following:" @@ -9834,13 +9883,13 @@ msgstr "" "如下所示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:6919 +#: book.translate.xml:6935 #, no-wrap msgid "-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidexample.sh" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6921 +#: book.translate.xml:6937 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 " @@ -9853,7 +9902,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 可正常使用。" #. (itstool) path: note/para -#: book.translate.xml:6927 +#: book.translate.xml:6943 msgid "" "The <literal>nosuid</literal> <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> option will cause such " @@ -9867,7 +9916,7 @@ msgstr "" "該選項並非完全可靠。" #. (itstool) path: sect2/para -#: book.translate.xml:6934 +#: book.translate.xml:6950 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 " @@ -9881,12 +9930,12 @@ msgstr "" "citerefentry> 程序的使用者資訊:" #. (itstool) path: sect2/para -#: book.translate.xml:6940 +#: book.translate.xml:6956 msgid "In terminal A:" msgstr "於終端機 A:" #. (itstool) path: sect2/screen -#: book.translate.xml:6942 +#: book.translate.xml:6958 #, no-wrap msgid "" "Changing local password for trhodes\n" @@ -9894,18 +9943,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6945 +#: book.translate.xml:6961 msgid "In terminal B:" msgstr "於終端機 B:" #. (itstool) path: sect2/screen -#: book.translate.xml:6947 +#: book.translate.xml:6963 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps aux | grep passwd</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:6949 +#: book.translate.xml:6965 #, no-wrap msgid "" "trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd\n" @@ -9913,7 +9962,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6952 +#: book.translate.xml:6968 msgid "" "Although <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> is run as a normal user, it is using the effective " @@ -9925,7 +9974,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:6956 +#: book.translate.xml:6972 msgid "" "The <literal>setgid</literal> permission performs the same function as the " "<literal>setuid</literal> permission; except that it alters the group " @@ -9938,7 +9987,7 @@ msgstr "" "使用者。" #. (itstool) path: sect2/para -#: book.translate.xml:6963 +#: book.translate.xml:6979 msgid "" "To set the <literal>setgid</literal> permission on a file, provide " "<citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></" @@ -9949,26 +9998,26 @@ msgstr "" "citerefentry> 的參數前加上 (2):" #. (itstool) path: sect2/screen -#: book.translate.xml:6966 +#: book.translate.xml:6982 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 2755 sgidexample.sh</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6968 +#: book.translate.xml:6984 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:6972 +#: book.translate.xml:6988 #, no-wrap msgid "-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 sgidexample.sh" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6975 +#: book.translate.xml:6991 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 " @@ -9982,7 +10031,7 @@ msgstr "" "manvolnum></citerefentry> 系統呼叫 (System call)。" #. (itstool) path: sect2/para -#: book.translate.xml:6982 +#: book.translate.xml:6998 msgid "" "The <literal>setuid</literal> and <literal>setgid</literal> permission bits " "may lower system security, by allowing for elevated permissions. The third " @@ -9994,7 +10043,7 @@ msgstr "" "literal>,可以加強系統的安全性。" #. (itstool) path: sect2/para -#: book.translate.xml:6988 +#: book.translate.xml:7004 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 " @@ -10007,13 +10056,13 @@ msgstr "" "非常有用。要使用這個權限,可在權限集前加上 (1):" #. (itstool) path: sect2/screen -#: book.translate.xml:6995 +#: book.translate.xml:7011 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 1777 /tmp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6997 +#: book.translate.xml:7013 msgid "" "The <literal>sticky bit</literal> permission will display as a <literal>t</" "literal> at the very end of the permission set:" @@ -10022,29 +10071,29 @@ msgstr "" "後:" #. (itstool) path: sect2/screen -#: book.translate.xml:7001 +#: book.translate.xml:7017 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -al / | grep tmp</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:7003 +#: book.translate.xml:7019 #, no-wrap msgid "drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:7009 +#: book.translate.xml:7025 msgid "Directory Structure" msgstr "目錄結構" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7011 +#: book.translate.xml:7027 msgid "<primary>directory hierarchy</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7015 +#: book.translate.xml:7031 msgid "" "The FreeBSD directory hierarchy is fundamental to obtaining an overall " "understanding of the system. The most important directory is root or, " @@ -10059,7 +10108,7 @@ msgstr "" "會有開機所會用到必備檔案。 此外,根目錄還有紀錄其他檔案系統的掛載點相關設定。" #. (itstool) path: sect1/para -#: book.translate.xml:7024 +#: book.translate.xml:7040 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 " @@ -10086,7 +10135,7 @@ msgstr "" "option> 選項。 其中細節說明可參閱 <xref linkend=\"disks-fstab\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7039 +#: book.translate.xml:7055 msgid "" "A complete description of the file system hierarchy is available in " "<citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></" @@ -10099,45 +10148,45 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: sect3/title -#: book.translate.xml:7048 book.translate.xml:10908 +#: book.translate.xml:7064 book.translate.xml:10967 msgid "Directory" msgstr "目錄" #. (itstool) path: row/entry -#: book.translate.xml:7055 +#: book.translate.xml:7071 msgid "Root directory of the file system." msgstr "檔案系統的根目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7059 +#: book.translate.xml:7075 msgid "<filename>/bin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7060 +#: book.translate.xml:7076 msgid "" "User utilities fundamental to both single-user and multi-user environments." msgstr "" "單使用者 (Single-user)、多使用者 (Multi-user) 兩種模式皆可使用的基本工具 。" #. (itstool) path: row/entry -#: book.translate.xml:7065 +#: book.translate.xml:7081 msgid "<filename>/boot/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7066 +#: book.translate.xml:7082 msgid "" "Programs and configuration files used during operating system bootstrap." msgstr "作業系統開機過程會用到的程式、設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7071 +#: book.translate.xml:7087 msgid "<filename>/boot/defaults/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7072 +#: book.translate.xml:7088 msgid "" "Default boot configuration files. Refer to " "<citerefentry><refentrytitle>loader.conf</refentrytitle><manvolnum>5</" @@ -10147,12 +10196,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7077 +#: book.translate.xml:7093 msgid "<filename>/dev/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7078 +#: book.translate.xml:7094 msgid "" "Device nodes. Refer to <citerefentry><refentrytitle>intro</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> for details." @@ -10161,22 +10210,22 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7083 +#: book.translate.xml:7099 msgid "<filename>/etc/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7084 +#: book.translate.xml:7100 msgid "System configuration files and scripts." msgstr "系統設定檔及一些 Script 檔。" #. (itstool) path: row/entry -#: book.translate.xml:7088 +#: book.translate.xml:7104 msgid "<filename>/etc/defaults/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7089 +#: book.translate.xml:7105 msgid "" "Default system configuration files. Refer to " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -10186,12 +10235,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7094 +#: book.translate.xml:7110 msgid "<filename>/etc/mail/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7095 +#: book.translate.xml:7111 msgid "" "Configuration files for mail transport agents such as " "<citerefentry><refentrytitle>sendmail</refentrytitle><manvolnum>8</" @@ -10201,12 +10250,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 的相關設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7100 +#: book.translate.xml:7116 msgid "<filename>/etc/periodic/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7101 +#: book.translate.xml:7117 msgid "" "Scripts that run daily, weekly, and monthly, via " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -10219,12 +10268,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7107 +#: book.translate.xml:7123 msgid "<filename>/etc/ppp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7108 +#: book.translate.xml:7124 msgid "" "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> configuration files." @@ -10233,24 +10282,24 @@ msgstr "" "citerefentry> 設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7112 +#: book.translate.xml:7128 msgid "<filename>/mnt/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7113 +#: book.translate.xml:7129 msgid "" "Empty directory commonly used by system administrators as a temporary mount " "point." msgstr "系統管理者慣用充當臨時掛載點的空目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7118 +#: book.translate.xml:7134 msgid "<filename>/proc/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7119 +#: book.translate.xml:7135 msgid "" "Process file system. Refer to <citerefentry><refentrytitle>procfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, " @@ -10263,12 +10312,12 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7124 +#: book.translate.xml:7140 msgid "<filename>/rescue/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7125 +#: book.translate.xml:7141 msgid "" "Statically linked programs for emergency recovery as described in " "<citerefentry><refentrytitle>rescue</refentrytitle><manvolnum>8</manvolnum></" @@ -10279,24 +10328,24 @@ msgstr "" "citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7130 +#: book.translate.xml:7146 msgid "<filename>/root/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7131 +#: book.translate.xml:7147 msgid "" "Home directory for the <systemitem class=\"username\">root</systemitem> " "account." msgstr "<systemitem class=\"username\">root</systemitem> 帳號的家目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7137 +#: book.translate.xml:7153 msgid "<filename>/sbin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7138 +#: book.translate.xml:7154 msgid "" "System programs and administration utilities fundamental to both single-user " "and multi-user environments." @@ -10305,12 +10354,12 @@ msgstr "" "具 。" #. (itstool) path: row/entry -#: book.translate.xml:7144 +#: book.translate.xml:7160 msgid "<filename>/tmp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7145 +#: book.translate.xml:7161 msgid "" "Temporary files which are usually <emphasis>not</emphasis> preserved across " "a system reboot. A memory-based file system is often mounted at <filename>/" @@ -10329,72 +10378,72 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>)。" #. (itstool) path: row/entry -#: book.translate.xml:7155 +#: book.translate.xml:7171 msgid "<filename>/usr/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7156 +#: book.translate.xml:7172 msgid "The majority of user utilities and applications." msgstr "主要是使用者所安裝的工具程式、應用程式存放處。" #. (itstool) path: row/entry -#: book.translate.xml:7161 +#: book.translate.xml:7177 msgid "<filename>/usr/bin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7162 +#: book.translate.xml:7178 msgid "Common utilities, programming tools, and applications." msgstr "常用工具、開發工具、應用軟體。" #. (itstool) path: row/entry -#: book.translate.xml:7167 +#: book.translate.xml:7183 msgid "<filename>/usr/include/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7168 +#: book.translate.xml:7184 msgid "Standard C include files." msgstr "標準 C include 檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7172 +#: book.translate.xml:7188 msgid "<filename>/usr/lib/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7173 +#: book.translate.xml:7189 msgid "Archive libraries." msgstr "程式庫存放處。" #. (itstool) path: row/entry -#: book.translate.xml:7178 +#: book.translate.xml:7194 msgid "<filename>/usr/libdata/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7179 +#: book.translate.xml:7195 msgid "Miscellaneous utility data files." msgstr "其他各式工具的資料檔。" #. (itstool) path: row/entry -#: book.translate.xml:7183 +#: book.translate.xml:7199 msgid "<filename>/usr/libexec/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7184 +#: book.translate.xml:7200 msgid "System daemons and system utilities executed by other programs." msgstr "系統 Daemon 及系統工具程式 (透過其他程式來執行)。" #. (itstool) path: row/entry -#: book.translate.xml:7189 +#: book.translate.xml:7205 msgid "<filename>/usr/local/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7190 +#: book.translate.xml:7206 msgid "" "Local executables and libraries. Also used as the default destination for " "the FreeBSD ports framework. Within <filename>/usr/local</filename>, the " @@ -10414,64 +10463,64 @@ msgstr "" "<replaceable>port</replaceable></filename>。" #. (itstool) path: row/entry -#: book.translate.xml:7203 +#: book.translate.xml:7219 msgid "<filename>/usr/obj/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7204 +#: book.translate.xml:7220 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:7210 +#: book.translate.xml:7226 msgid "<filename>/usr/ports/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7211 +#: book.translate.xml:7227 msgid "The FreeBSD Ports Collection (optional)." msgstr "FreeBSD Port 套件集 (選用)。" #. (itstool) path: row/entry -#: book.translate.xml:7215 +#: book.translate.xml:7231 msgid "<filename>/usr/sbin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7216 +#: book.translate.xml:7232 msgid "System daemons and system utilities executed by users." msgstr "由使用者執行的系統 Daemon 及系統工具。" #. (itstool) path: row/entry -#: book.translate.xml:7221 +#: book.translate.xml:7237 msgid "<filename>/usr/share/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7222 +#: book.translate.xml:7238 msgid "Architecture-independent files." msgstr "各架構皆共通的檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7226 +#: book.translate.xml:7242 msgid "<filename>/usr/src/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7227 +#: book.translate.xml:7243 msgid "BSD and/or local source files." msgstr "BSD 原始碼 (或自行新增的)。" #. (itstool) path: row/entry -#: book.translate.xml:7231 +#: book.translate.xml:7247 msgid "<filename>/var/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7232 +#: book.translate.xml:7248 msgid "" "Multi-purpose log, temporary, transient, and spool files. A memory-based " "file system is sometimes mounted at <filename>/var</filename>. This can be " @@ -10490,42 +10539,42 @@ msgstr "" "citerefentry>)。" #. (itstool) path: row/entry -#: book.translate.xml:7243 +#: book.translate.xml:7259 msgid "<filename>/var/log/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7244 +#: book.translate.xml:7260 msgid "Miscellaneous system log files." msgstr "各項系統記錄的日誌 (Log) 檔。" #. (itstool) path: row/entry -#: book.translate.xml:7248 +#: book.translate.xml:7264 msgid "<filename>/var/mail/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7249 +#: book.translate.xml:7265 msgid "User mailbox files." msgstr "各使用者的郵件 (Mailbox) 檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7253 +#: book.translate.xml:7269 msgid "<filename>/var/spool/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7254 +#: book.translate.xml:7270 msgid "Miscellaneous printer and mail system spooling directories." msgstr "各種印表機、郵件系統的緩衝 (Spool) 目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7259 +#: book.translate.xml:7275 msgid "<filename>/var/tmp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7260 +#: book.translate.xml:7276 msgid "" "Temporary files which are usually preserved across a system reboot, unless " "<filename>/var</filename> is a memory-based file system." @@ -10534,22 +10583,22 @@ msgstr "" "屬於以記憶體為基礎 (Memory-based) 的檔案系統。" #. (itstool) path: row/entry -#: book.translate.xml:7267 +#: book.translate.xml:7283 msgid "<filename>/var/yp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7268 +#: book.translate.xml:7284 msgid "NIS maps." msgstr "NIS 對應表。" #. (itstool) path: sect1/title -#: book.translate.xml:7276 +#: book.translate.xml:7292 msgid "Disk Organization" msgstr "磁碟組織" #. (itstool) path: sect1/para -#: book.translate.xml:7278 +#: book.translate.xml:7294 msgid "" "The smallest unit of organization that FreeBSD uses to find files is the " "filename. Filenames are case-sensitive, which means that <filename>readme." @@ -10563,7 +10612,7 @@ msgstr "" "他類型的檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:7285 +#: book.translate.xml:7301 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 " @@ -10574,7 +10623,7 @@ msgstr "" "中也可以包含其他的目錄; 您可以建立階層式的目錄以便資料的管理。" #. (itstool) path: sect1/para -#: book.translate.xml:7291 +#: book.translate.xml:7307 msgid "" "Files and directories are referenced by giving the file or directory name, " "followed by a forward slash, <literal>/</literal>, followed by any other " @@ -10599,7 +10648,7 @@ msgstr "" "<filename>c:\\foo\\bar\\readme.txt</filename> 這種路徑。" #. (itstool) path: sect1/para -#: book.translate.xml:7306 +#: book.translate.xml:7322 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 " @@ -10618,7 +10667,7 @@ msgstr "" "個磁碟,所有目錄都會成為該磁碟的一部份。" #. (itstool) path: sect1/para -#: book.translate.xml:7317 +#: book.translate.xml:7333 msgid "" "Consider three file systems, called <literal>A</literal>, <literal>B</" "literal>, and <literal>C</literal>. Each file system has one root directory, " @@ -10632,7 +10681,7 @@ msgstr "" "<literal>B2</literal> 及 <literal>C1</literal>, <literal>C2</literal>)。" #. (itstool) path: sect1/para -#: book.translate.xml:7324 +#: book.translate.xml:7340 msgid "" "Call <literal>A</literal> the root file system. If " "<citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></" @@ -10650,13 +10699,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:7332 +#: book.translate.xml:7348 msgctxt "_" msgid "external ref='basics/example-dir1' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7336 +#: book.translate.xml:7352 #, no-wrap msgid "" " /\n" @@ -10667,7 +10716,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7344 +#: book.translate.xml:7360 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</" @@ -10684,13 +10733,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:7353 +#: book.translate.xml:7369 msgctxt "_" msgid "external ref='basics/example-dir2' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7357 +#: book.translate.xml:7373 #, no-wrap msgid "" " /\n" @@ -10705,7 +10754,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7369 +#: book.translate.xml:7385 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 " @@ -10720,7 +10769,7 @@ msgstr "" "literal> 被<firstterm>卸載 (Unmount)</firstterm> 後才會再顯現出來。" #. (itstool) path: sect1/para -#: book.translate.xml:7378 +#: book.translate.xml:7394 msgid "" "If <literal>B</literal> had been mounted on <literal>A2</literal> then the " "diagram would look like this:" @@ -10732,13 +10781,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:7384 +#: book.translate.xml:7400 msgctxt "_" msgid "external ref='basics/example-dir3' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7388 +#: book.translate.xml:7404 #, no-wrap msgid "" " /\n" @@ -10753,7 +10802,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7400 +#: book.translate.xml:7416 msgid "" "and the paths would be <filename>/A2/B1</filename> and <filename>/A2/B2</" "filename> respectively." @@ -10761,7 +10810,7 @@ msgstr "" "上面的路徑分別為 <filename>/A2/B1</filename> 及 <filename>/A2/B2</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:7405 +#: book.translate.xml:7421 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 " @@ -10777,13 +10826,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:7413 +#: book.translate.xml:7429 msgctxt "_" msgid "external ref='basics/example-dir4' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7417 +#: book.translate.xml:7433 #, no-wrap msgid "" " /\n" @@ -10802,7 +10851,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7433 +#: book.translate.xml:7449 msgid "" "Or <literal>C</literal> could be mounted directly on to the <literal>A</" "literal> file system, under the <literal>A1</literal> directory:" @@ -10815,13 +10864,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:7439 +#: book.translate.xml:7455 msgctxt "_" msgid "external ref='basics/example-dir5' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7443 +#: book.translate.xml:7459 #, no-wrap msgid "" " /\n" @@ -10840,7 +10889,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7459 +#: book.translate.xml:7475 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 " @@ -10850,12 +10899,12 @@ msgstr "" "處。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:7464 +#: book.translate.xml:7480 msgid "Benefits of Multiple File Systems" msgstr "使用多個檔案系統的好處" #. (itstool) path: listitem/para -#: book.translate.xml:7467 +#: book.translate.xml:7483 msgid "" "Different file systems can have different <firstterm>mount options</" "firstterm>. For example, the root file system can be mounted read-only, " @@ -10874,7 +10923,7 @@ msgstr "" "<firstterm>guid</firstterm> 位元失效,可讓系統更安全。" #. (itstool) path: listitem/para -#: book.translate.xml:7481 +#: book.translate.xml:7497 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 " @@ -10887,7 +10936,7 @@ msgstr "" "如果您只有單一個大的檔案系統,這部分就沒用了。" #. (itstool) path: listitem/para -#: book.translate.xml:7490 +#: book.translate.xml:7506 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 " @@ -10899,12 +10948,12 @@ msgstr "" "以便您在需要的時候將備份資料回存回來。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:7500 +#: book.translate.xml:7516 msgid "Benefit of a Single File System" msgstr "使用單一檔案系統的好處" #. (itstool) path: listitem/para -#: book.translate.xml:7503 +#: book.translate.xml:7519 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 " @@ -10917,7 +10966,7 @@ msgstr "" "的大小,然後將備份回存回來。" #. (itstool) path: important/para -#: book.translate.xml:7511 +#: book.translate.xml:7527 msgid "" "FreeBSD features the <citerefentry><refentrytitle>growfs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> command, which makes " @@ -10928,7 +10977,7 @@ msgstr "" "manvolnum></citerefentry> 指令可以突破此限制直接變更檔案系統的大小。" #. (itstool) path: sect1/para -#: book.translate.xml:7518 +#: book.translate.xml:7534 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 " @@ -10947,7 +10996,7 @@ msgstr "" "點表示外,也可以使用該檔案系統所在的分區來表示。" #. (itstool) path: sect1/para -#: book.translate.xml:7528 +#: book.translate.xml:7544 msgid "" "FreeBSD also uses disk space for <firstterm>swap space</firstterm> to " "provide <firstterm>virtual memory</firstterm>. This allows your computer to " @@ -10962,47 +11011,47 @@ msgstr "" "移到交換空間,然後在用到的時候移回去 (同時移出部份沒用到的)。" #. (itstool) path: sect1/para -#: book.translate.xml:7537 +#: book.translate.xml:7553 msgid "Some partitions have certain conventions associated with them." -msgstr "部份分區有使用的慣例如下:" +msgstr "有些分割區有特定的使用慣例。" #. (itstool) path: row/entry -#: book.translate.xml:7547 +#: book.translate.xml:7563 msgid "Partition" msgstr "分區" #. (itstool) path: row/entry -#: book.translate.xml:7548 +#: book.translate.xml:7564 msgid "Convention" msgstr "慣例" #. (itstool) path: row/entry -#: book.translate.xml:7554 +#: book.translate.xml:7570 msgid "<literal>a</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7555 +#: book.translate.xml:7571 msgid "Normally contains the root file system." -msgstr "通常內含根檔案系統" +msgstr "通常含有根檔案系統。" #. (itstool) path: row/entry -#: book.translate.xml:7559 +#: book.translate.xml:7575 msgid "<literal>b</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7560 +#: book.translate.xml:7576 msgid "Normally contains swap space." -msgstr "通常內含交換空間" +msgstr "通常含有交換空間。" #. (itstool) path: row/entry -#: book.translate.xml:7564 +#: book.translate.xml:7580 msgid "<literal>c</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7565 +#: book.translate.xml:7581 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 " @@ -11014,12 +11063,12 @@ msgstr "" "執行。一般來說不會把檔案系統建立在這個分區。" #. (itstool) path: row/entry -#: book.translate.xml:7573 +#: book.translate.xml:7589 msgid "<literal>d</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7574 +#: book.translate.xml:7590 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 " @@ -11029,7 +11078,7 @@ msgstr "" "<literal>d</literal> 和一般的分區相同。" #. (itstool) path: sect1/para -#: book.translate.xml:7583 +#: book.translate.xml:7599 msgid "" "Disks in FreeBSD are divided into slices, referred to in <trademark class=" "\"registered\">Windows</trademark> as partitions, which are numbered from 1 " @@ -11041,22 +11090,22 @@ msgstr "" "再分成數個分區,每個分區內含檔案系統,且會使用字母來標示。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7588 +#: book.translate.xml:7604 msgid "<primary>slices</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7591 book.translate.xml:31844 book.translate.xml:31940 +#: book.translate.xml:7607 book.translate.xml:31957 book.translate.xml:32053 msgid "<primary>partitions</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7594 +#: book.translate.xml:7610 msgid "<primary>dangerously dedicated</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7598 +#: book.translate.xml:7614 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 " @@ -11075,7 +11124,7 @@ msgstr "" "檔案系統使用的裝置 (Device) 上均會各別佔據一個切割區。" #. (itstool) path: sect1/para -#: book.translate.xml:7608 +#: book.translate.xml:7624 msgid "" "Slices, <quote>dangerously dedicated</quote> physical drives, and other " "drives contain <firstterm>partitions</firstterm>, which are represented as " @@ -11095,7 +11144,7 @@ msgstr "" "三個切割區的第五個分區。" #. (itstool) path: sect1/para -#: book.translate.xml:7621 +#: book.translate.xml:7637 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 " @@ -11107,7 +11156,7 @@ msgstr "" "始。常見的代碼可以參考 <xref linkend=\"disks-naming\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7627 +#: book.translate.xml:7643 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 " @@ -11117,7 +11166,7 @@ msgstr "" "及分區字母。範例可以參考 <xref linkend=\"basics-disk-slice-part\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7632 +#: book.translate.xml:7648 msgid "" "<xref linkend=\"basics-concept-disk-model\"/> shows a conceptual model of a " "disk layout." @@ -11126,7 +11175,7 @@ msgstr "" "對您有些幫助。" #. (itstool) path: sect1/para -#: book.translate.xml:7635 +#: book.translate.xml:7651 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 " @@ -11137,44 +11186,44 @@ msgstr "" "哪裡。" #. (itstool) path: table/title -#: book.translate.xml:7641 +#: book.translate.xml:7657 msgid "Disk Device Names" msgstr "磁碟裝置名稱" #. (itstool) path: row/entry -#: book.translate.xml:7649 +#: book.translate.xml:7665 msgid "Drive Type" msgstr "磁碟機類型" #. (itstool) path: row/entry -#: book.translate.xml:7650 +#: book.translate.xml:7666 msgid "Drive Device Name" msgstr "磁碟機裝置稱" #. (itstool) path: row/entry -#: book.translate.xml:7656 +#: book.translate.xml:7672 msgid "<acronym>SATA</acronym> and <acronym>IDE</acronym> hard drives" msgstr "<acronym>SATA</acronym> 及 <acronym>IDE</acronym> 硬碟" #. (itstool) path: row/entry -#: book.translate.xml:7658 +#: book.translate.xml:7674 msgid "<literal>ada</literal> or <literal>ad</literal>" msgstr "<literal>ada</literal> 或 <literal>ad</literal>" #. (itstool) path: row/entry -#: book.translate.xml:7663 +#: book.translate.xml:7679 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:7665 +#: book.translate.xml:7681 msgid "<literal>da</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7669 +#: book.translate.xml:7685 msgid "" "<acronym>SATA</acronym> and <acronym>IDE</acronym> <acronym>CD-ROM</acronym> " "drives" @@ -11183,37 +11232,37 @@ msgstr "" "光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7671 +#: book.translate.xml:7687 msgid "<literal>cd</literal> or <literal>acd</literal>" msgstr "<literal>cd</literal> 或 <literal>acd</literal>" #. (itstool) path: row/entry -#: book.translate.xml:7676 +#: book.translate.xml:7692 msgid "<acronym>SCSI</acronym> <acronym>CD-ROM</acronym> drives" msgstr "<acronym>SCSI</acronym> <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7678 +#: book.translate.xml:7694 msgid "<literal>cd</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7682 +#: book.translate.xml:7698 msgid "Floppy drives" msgstr "軟碟機" #. (itstool) path: row/entry -#: book.translate.xml:7683 +#: book.translate.xml:7699 msgid "<literal>fd</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7687 +#: book.translate.xml:7703 msgid "Assorted non-standard <acronym>CD-ROM</acronym> drives" msgstr "各種非標準 <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7689 +#: book.translate.xml:7705 msgid "" "<literal>mcd</literal> for Mitsumi <acronym>CD-ROM</acronym> and " "<literal>scd</literal> for Sony <acronym>CD-ROM</acronym> devices" @@ -11222,32 +11271,32 @@ msgstr "" "<literal>scd</literal> 代表 Sony <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7695 +#: book.translate.xml:7711 msgid "<acronym>SCSI</acronym> tape drives" msgstr "<acronym>SCSI</acronym> 磁帶機" #. (itstool) path: row/entry -#: book.translate.xml:7696 +#: book.translate.xml:7712 msgid "<literal>sa</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7700 +#: book.translate.xml:7716 msgid "<acronym>IDE</acronym> tape drives" msgstr "<acronym>IDE</acronym> 磁帶機" #. (itstool) path: row/entry -#: book.translate.xml:7701 +#: book.translate.xml:7717 msgid "<literal>ast</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7705 +#: book.translate.xml:7721 msgid "RAID drives" msgstr "RAID 磁碟機" #. (itstool) path: row/entry -#: book.translate.xml:7706 +#: book.translate.xml:7722 msgid "" "Examples include <literal>aacd</literal> for <trademark class=\"registered" "\">Adaptec</trademark> AdvancedRAID, <literal>mlxd</literal> and " @@ -11266,27 +11315,27 @@ msgstr "" "trademark> RAID." #. (itstool) path: example/title -#: book.translate.xml:7718 +#: book.translate.xml:7734 msgid "Sample Disk, Slice, and Partition Names" msgstr "磁碟、切割區及分區命名範例" #. (itstool) path: row/entry -#: book.translate.xml:7727 +#: book.translate.xml:7743 msgid "Name" msgstr "名稱" #. (itstool) path: row/entry -#: book.translate.xml:7728 book.translate.xml:61583 +#: book.translate.xml:7744 book.translate.xml:62638 msgid "Meaning" msgstr "意義" #. (itstool) path: row/entry -#: book.translate.xml:7734 +#: book.translate.xml:7750 msgid "<literal>ada0s1a</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7735 +#: book.translate.xml:7751 msgid "" "The first partition (<literal>a</literal>) on the first slice (<literal>s1</" "literal>) on the first <acronym>SATA</acronym> disk (<literal>ada0</" @@ -11296,12 +11345,12 @@ msgstr "" "literal>)的第一個分區(<literal>a</literal>) 。" #. (itstool) path: row/entry -#: book.translate.xml:7742 +#: book.translate.xml:7758 msgid "<literal>da1s2e</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7743 +#: book.translate.xml:7759 msgid "" "The fifth partition (<literal>e</literal>) on the second slice (<literal>s2</" "literal>) on the second SCSI disk (<literal>da1</literal>)." @@ -11310,12 +11359,12 @@ msgstr "" "literal>) 的第五個分區 (<literal>e</literal>) 。" #. (itstool) path: example/title -#: book.translate.xml:7753 +#: book.translate.xml:7769 msgid "Conceptual Model of a Disk" msgstr "磁碟的概念模型" #. (itstool) path: example/para -#: book.translate.xml:7755 +#: book.translate.xml:7771 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 " @@ -11334,7 +11383,7 @@ msgstr "" "裝了 FreeBSD。 本範例中安裝的 FreeBSD 有四個資料分區及一個交換分區。" #. (itstool) path: example/para -#: book.translate.xml:7765 +#: book.translate.xml:7781 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/</" @@ -11354,18 +11403,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:7775 +#: book.translate.xml:7791 msgctxt "_" msgid "external ref='basics/disk-layout' md5='__failed__'" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:7782 +#: book.translate.xml:7798 msgid "Mounting and Unmounting File Systems" msgstr "掛載與卸載檔案系統" #. (itstool) path: sect1/para -#: book.translate.xml:7784 +#: book.translate.xml:7800 msgid "" "The file system is best visualized as a tree, rooted, as it were, at " "<filename>/</filename>. <filename>/dev</filename>, <filename>/usr</" @@ -11378,12 +11427,12 @@ msgstr "" "些樹枝上面又還有分支,像是 <filename>/usr/local</filename> 等。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7793 +#: book.translate.xml:7809 msgid "<primary>root file system</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7797 +#: book.translate.xml:7813 msgid "" "There are various reasons to house some of these directories on separate " "file systems. <filename>/var</filename> contains the directories " @@ -11399,7 +11448,7 @@ msgstr "" "filename> 中拉出來。" #. (itstool) path: sect1/para -#: book.translate.xml:7808 +#: book.translate.xml:7824 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 " @@ -11411,18 +11460,18 @@ msgstr "" "\"network-nfs\"/> 或是光碟機。" #. (itstool) path: sect2/title -#: book.translate.xml:7815 +#: book.translate.xml:7831 msgid "The <filename>fstab</filename> File" msgstr "<filename>fstab</filename> 檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:7817 +#: book.translate.xml:7833 msgid "" "<primary>file systems</primary> <secondary>mounted with fstab</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7822 +#: book.translate.xml:7838 msgid "" "During the boot process (<xref linkend=\"boot\"/>), file systems listed in " "<filename>/etc/fstab</filename> are automatically mounted except for the " @@ -11434,39 +11483,39 @@ msgstr "" "<option>noauto</option> 參數)。檔案內容的格式如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:7828 +#: book.translate.xml:7844 #, 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:7832 +#: book.translate.xml:7848 msgid "<literal>device</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7834 +#: book.translate.xml:7850 msgid "" "An existing device name as explained in <xref linkend=\"disks-naming\"/>." msgstr "已存在的裝置名稱,詳情請參閱 <xref linkend=\"disks-naming\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7840 +#: book.translate.xml:7856 msgid "<literal>mount-point</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7843 +#: book.translate.xml:7859 msgid "An existing directory on which to mount the file system." msgstr "檔案系統要掛載到的目錄 (該目錄必須存在)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7849 +#: book.translate.xml:7865 msgid "<literal>fstype</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7852 +#: book.translate.xml:7868 msgid "" "The file system type to pass to <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. The default FreeBSD " @@ -11477,12 +11526,12 @@ msgstr "" "檔案系統是 <literal>ufs</literal>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7859 +#: book.translate.xml:7875 msgid "<literal>options</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7862 +#: book.translate.xml:7878 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 " @@ -11498,12 +11547,12 @@ msgstr "" "manvolnum></citerefentry> 說明。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7873 +#: book.translate.xml:7889 msgid "<literal>dumpfreq</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7876 +#: book.translate.xml:7892 msgid "" "Used by <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to determine which file systems require dumping. " @@ -11513,12 +11562,12 @@ msgstr "" "citerefentry> 由此項目決定那些檔案系統需要傾印。 如果這格空白則以零為預設值。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7883 +#: book.translate.xml:7899 msgid "<literal>passno</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7886 +#: book.translate.xml:7902 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 " @@ -11538,7 +11587,7 @@ msgstr "" "的話) 檢查這些檔案系統。" #. (itstool) path: sect2/para -#: book.translate.xml:7900 +#: book.translate.xml:7916 msgid "" "Refer to <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information on the format of <filename>/" @@ -11549,7 +11598,7 @@ msgstr "" "citerefentry> 說明文件。" #. (itstool) path: sect2/title -#: book.translate.xml:7905 +#: book.translate.xml:7921 msgid "" "Using <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -11558,12 +11607,12 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:7907 +#: book.translate.xml:7923 msgid "<primary>file systems</primary> <secondary>mounting</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7912 +#: book.translate.xml:7928 msgid "" "File systems are mounted using <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. The most basic syntax " @@ -11573,13 +11622,13 @@ msgstr "" "citerefentry> 指令是拿來掛載檔案系統用的。基本的操作指令格式如下:" #. (itstool) path: informalexample/screen -#: book.translate.xml:7916 +#: book.translate.xml:7932 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount <replaceable>device</replaceable> <replaceable>mountpoint</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7919 +#: book.translate.xml:7935 msgid "" "This command provides many options which are described in " "<citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></" @@ -11589,18 +11638,18 @@ msgstr "" "manvolnum></citerefentry> 裡面有提到一大堆的選項,不過最常用的就是這些:" #. (itstool) path: variablelist/title -#: book.translate.xml:7923 +#: book.translate.xml:7939 msgid "Mount Options" msgstr "掛載選項" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:7926 book.translate.xml:23119 +#: book.translate.xml:7942 book.translate.xml:23227 msgid "<option>-a</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7929 +#: book.translate.xml:7945 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> " @@ -11610,12 +11659,12 @@ msgstr "" "filename> 而且沒有用 <option>-t</option> 排除的檔案系統掛載起來。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7938 +#: book.translate.xml:7954 msgid "<option>-d</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7942 +#: book.translate.xml:7958 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 " @@ -11628,12 +11677,12 @@ msgstr "" "用。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7950 book.translate.xml:26241 +#: book.translate.xml:7966 book.translate.xml:26335 msgid "<option>-f</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7953 +#: book.translate.xml:7969 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 " @@ -11643,12 +11692,12 @@ msgstr "" "態從可存取變成唯讀)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7961 +#: book.translate.xml:7977 msgid "<option>-r</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7964 +#: book.translate.xml:7980 msgid "" "Mount the file system read-only. This is identical to using <option>-o ro</" "option>." @@ -11656,12 +11705,12 @@ msgstr "" "用唯讀的方式掛載檔案系統。 這個選項和在 -o 選項中指定 ro 參數是一樣的。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7970 +#: book.translate.xml:7986 msgid "<option>-t</option> <replaceable>fstype</replaceable>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7974 +#: book.translate.xml:7990 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 " @@ -11671,50 +11720,50 @@ msgstr "" "只掛載指定型態的檔案系統。預設的檔案系統類型為 <quote>ufs</quote>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7982 +#: book.translate.xml:7998 msgid "<option>-u</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7985 +#: book.translate.xml:8001 msgid "Update mount options on the file system." msgstr "更新檔案系統的掛載選項。" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:7990 book.translate.xml:23136 +#: book.translate.xml:8006 book.translate.xml:23244 msgid "<option>-v</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7993 +#: book.translate.xml:8009 msgid "Be verbose." msgstr "顯示詳細資訊。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7998 +#: book.translate.xml:8014 msgid "<option>-w</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8001 +#: book.translate.xml:8017 msgid "Mount the file system read-write." msgstr "以可讀寫的模式掛載檔案系統。" #. (itstool) path: sect2/para -#: book.translate.xml:8006 +#: book.translate.xml:8022 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:8011 +#: book.translate.xml:8027 msgid "nosuid" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8014 +#: book.translate.xml:8030 msgid "" "Do not interpret setuid or setgid flags on the file system. This is also a " "useful security option." @@ -11722,7 +11771,7 @@ msgstr "" "不解析檔案系統上的 setuid 或 setgid 旗標, 這也是一個蠻有用的安全選項。" #. (itstool) path: sect2/title -#: book.translate.xml:8023 +#: book.translate.xml:8039 msgid "" "Using <citerefentry><refentrytitle>umount</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -11731,23 +11780,25 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:8025 +#: book.translate.xml:8041 msgid "<primary>file systems</primary> <secondary>unmounting</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8030 +#: book.translate.xml:8046 msgid "" "To unmount a file system use <citerefentry><refentrytitle>umount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This command takes " "one parameter which can be a mountpoint, device name, <option>-a</option> or " "<option>-A</option>." msgstr "" -"要缺載檔案系統可使用 umount(8) 指令。該指令需要一個參數可以是掛載點 " -"(mountpoint),裝置名稱,以及 -a 或是 -A 等選項。 " +"要卸載檔案系統可使用 <citerefentry><refentrytitle>umount</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 指令。該指令需要一個參" +"數可以是掛載點 (mountpoint),裝置名稱,以及 <option>-a</option> 或是 " +"<option>-A</option> 等選項。" #. (itstool) path: sect2/para -#: book.translate.xml:8034 +#: book.translate.xml:8050 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 " @@ -11758,7 +11809,7 @@ msgstr "" "案系統有可能會造成電腦當機, 或者損壞檔案系統內的資料。" #. (itstool) path: sect2/para -#: book.translate.xml:8039 +#: book.translate.xml:8055 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>. " @@ -11770,12 +11821,12 @@ msgstr "" "是 <option>-A</option> 並不會試圖卸載根檔案系統。" #. (itstool) path: sect1/title -#: book.translate.xml:8048 +#: book.translate.xml:8064 msgid "Processes and Daemons" msgstr "程序與 Daemon" #. (itstool) path: sect1/para -#: book.translate.xml:8050 +#: book.translate.xml:8066 msgid "" "FreeBSD is a multi-tasking operating system. Each program running at any one " "time is called a <firstterm>process</firstterm>. Every running command " @@ -11787,7 +11838,7 @@ msgstr "" "令都至少會開啟一個新的程序, 而有些系統程序是一直在跑以維持系統正常運作的。" #. (itstool) path: sect1/para -#: book.translate.xml:8056 +#: book.translate.xml:8072 msgid "" "Each process is uniquely identified by a number called a <firstterm>process " "ID</firstterm> (<acronym>PID</acronym>). Similar to files, each process has " @@ -11812,7 +11863,7 @@ msgstr "" "literal>。" #. (itstool) path: sect1/para -#: book.translate.xml:8068 +#: book.translate.xml:8084 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 " @@ -11831,7 +11882,7 @@ msgstr "" "情。這也就是為何 BSD 的吉祥物,是一隻穿著帆布鞋拿著三叉耙的快樂小惡魔的原因。" #. (itstool) path: sect1/para -#: book.translate.xml:8079 +#: book.translate.xml:8095 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 " @@ -11852,12 +11903,12 @@ msgstr "" "literal>。" #. (itstool) path: sect2/title -#: book.translate.xml:8093 +#: book.translate.xml:8109 msgid "Viewing Processes" msgstr "檢視程序" #. (itstool) path: sect2/para -#: book.translate.xml:8095 +#: book.translate.xml:8111 msgid "" "To see the processes running on the system, use " "<citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></" @@ -11883,7 +11934,7 @@ msgstr "" "互動式的觀看您的電腦正在做什麼。" #. (itstool) path: sect2/para -#: book.translate.xml:8103 +#: book.translate.xml:8119 msgid "" "By default, <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> only shows the commands that are running and owned " @@ -11893,7 +11944,7 @@ msgstr "" "manvolnum></citerefentry> 指令只會顯示使用者所擁有的的程序。 例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:8106 +#: book.translate.xml:8122 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ps</userinput>\n" @@ -11903,7 +11954,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8111 +#: book.translate.xml:8127 msgid "" "The output from <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> is organized into a number of columns. The " @@ -11930,7 +11981,7 @@ msgstr "" "<literal>COMMAND</literal> 是執行這個程式的指令。" #. (itstool) path: sect2/para -#: book.translate.xml:8126 +#: book.translate.xml:8142 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 " @@ -11951,7 +12002,7 @@ msgstr "" "了。" #. (itstool) path: sect2/para -#: book.translate.xml:8137 +#: book.translate.xml:8153 msgid "" "The output from <citerefentry><refentrytitle>top</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is similar:" @@ -11960,7 +12011,7 @@ msgstr "" "citerefentry> 也有類似的輸出。 一般的情況看像是這樣:" #. (itstool) path: sect2/screen -#: book.translate.xml:8139 +#: book.translate.xml:8155 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>top</userinput>\n" @@ -11986,7 +12037,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8160 +#: book.translate.xml:8176 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 " @@ -12006,7 +12057,7 @@ msgstr "" "<literal>ARC</literal> 標示有多少資料從磁碟改由記憶體快取中取得。" #. (itstool) path: sect2/para -#: book.translate.xml:8172 +#: book.translate.xml:8188 msgid "" "Below the header is a series of columns containing similar information to " "the output from <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" @@ -12028,7 +12079,7 @@ msgstr "" "式的記憶體使用量。" #. (itstool) path: sect2/para -#: book.translate.xml:8182 +#: book.translate.xml:8198 msgid "" "<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> automatically updates the display every two seconds. A " @@ -12038,12 +12089,12 @@ msgstr "" "的時間。" #. (itstool) path: sect2/title -#: book.translate.xml:8188 +#: book.translate.xml:8204 msgid "Killing Processes" msgstr "終止程序" #. (itstool) path: sect2/para -#: book.translate.xml:8190 +#: book.translate.xml:8206 msgid "" "One way to communicate with any running process or daemon is to send a " "<firstterm>signal</firstterm> using <citerefentry><refentrytitle>kill</" @@ -12064,7 +12115,7 @@ msgstr "" "systemitem>使用者,他可以送信號給任何人的程序。" #. (itstool) path: sect2/para -#: book.translate.xml:8200 +#: book.translate.xml:8216 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, " @@ -12084,7 +12135,7 @@ msgstr "" "該程式。" #. (itstool) path: sect2/para -#: book.translate.xml:8210 +#: book.translate.xml:8226 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 " @@ -12100,7 +12151,7 @@ msgstr "" "literal>,如它正在做一些不能中斷的工作的話。" #. (itstool) path: footnote/para -#: book.translate.xml:8222 +#: book.translate.xml:8238 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 " @@ -12115,7 +12166,7 @@ msgstr "" "結束掉了。" #. (itstool) path: sect2/para -#: book.translate.xml:8219 +#: book.translate.xml:8235 msgid "" "<literal>SIGKILL</literal> cannot be ignored by a process. Sending a " "<literal>SIGKILL</literal> to a process will usually stop that process there " @@ -12125,7 +12176,7 @@ msgstr "" "literal> 信號給程序通常會將程序直接中止<_:footnote-1/>。" #. (itstool) path: sect2/para -#: book.translate.xml:8231 +#: book.translate.xml:8247 msgid "" "Other commonly used signals are <literal>SIGHUP</literal>, <literal>SIGUSR1</" "literal>, and <literal>SIGUSR2</literal>. Since these are general purpose " @@ -12136,7 +12187,7 @@ msgstr "" "應。" #. (itstool) path: sect2/para -#: book.translate.xml:8236 +#: book.translate.xml:8252 msgid "" "For example, after changing a web server's configuration file, the web " "server needs to be told to re-read its configuration. Restarting " @@ -12152,12 +12203,12 @@ msgstr "" "為,所以使用前請先參考 Deamon 的說明文件查看是否可以達到想要的結果。" #. (itstool) path: procedure/title -#: book.translate.xml:8247 +#: book.translate.xml:8263 msgid "Sending a Signal to a Process" msgstr "送信號給程序" #. (itstool) path: procedure/para -#: book.translate.xml:8249 +#: book.translate.xml:8265 msgid "" "This example shows how to send a signal to " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -12176,7 +12227,7 @@ msgstr "" "citerefentry> 會在收到 <literal>SIGHUP</literal> 的時候重新讀取這個設定檔。" #. (itstool) path: step/para -#: book.translate.xml:8256 +#: book.translate.xml:8272 msgid "" "Find the <acronym>PID</acronym> of the process to send the signal to using " "<citerefentry><refentrytitle>pgrep</refentrytitle><manvolnum>1</manvolnum></" @@ -12190,7 +12241,7 @@ msgstr "" "citerefentry> 的 <acronym>PID</acronym> 為 198:" #. (itstool) path: step/screen -#: book.translate.xml:8260 +#: book.translate.xml:8276 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>pgrep -l inetd</userinput>\n" @@ -12198,7 +12249,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:8266 +#: book.translate.xml:8282 msgid "" "Use <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to send the signal. Because " @@ -12217,7 +12268,7 @@ msgstr "" "systemitem> 先。" #. (itstool) path: step/screen -#: book.translate.xml:8273 +#: book.translate.xml:8289 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>su</userinput>\n" @@ -12226,7 +12277,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:8277 +#: book.translate.xml:8293 msgid "" "Like most <trademark class=\"registered\">UNIX</trademark> commands, " "<citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></" @@ -12249,12 +12300,12 @@ msgstr "" "<replaceable>PID</replaceable>: No such process</errorname>。" #. (itstool) path: note/title -#: book.translate.xml:8290 +#: book.translate.xml:8306 msgid "Why Use <command>/bin/kill</command>?" -msgstr "為何要使用 <command>/bin/kill</command>? " +msgstr "為何要使用 <command>/bin/kill</command>?" #. (itstool) path: note/para -#: book.translate.xml:8292 +#: book.translate.xml:8308 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>/" @@ -12268,7 +12319,7 @@ msgstr "" "的直接用 <command>/bin/kill</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:8304 +#: book.translate.xml:8320 msgid "" "When sending other signals, substitute <literal>TERM</literal> or " "<literal>KILL</literal> with the name of the signal." @@ -12277,7 +12328,7 @@ msgstr "" "或 <literal>KILL</literal> 替換成其他信號的名稱即可。" #. (itstool) path: important/para -#: book.translate.xml:8309 +#: book.translate.xml:8325 msgid "" "Killing a random process on the system is a bad idea. In particular, " "<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></" @@ -12296,22 +12347,22 @@ msgstr "" "要</emphasis>記得再次確認您下的參數。" #. (itstool) path: sect1/title -#: book.translate.xml:8321 +#: book.translate.xml:8337 msgid "Shells" msgstr "Shell" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8323 +#: book.translate.xml:8339 msgid "<primary>shells</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8326 +#: book.translate.xml:8342 msgid "<primary>command line</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8330 +#: book.translate.xml:8346 msgid "" "A <firstterm>shell</firstterm> provides a command line interface for " "interacting with the operating system. A shell receives commands from the " @@ -12334,7 +12385,7 @@ msgstr "" "<command>zsh</command> 以及 <command>bash</command> 等。" #. (itstool) path: sect1/para -#: book.translate.xml:8341 +#: book.translate.xml:8357 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 " @@ -12352,7 +12403,7 @@ msgstr "" "合使用者的喜好,就是您選擇 shell 的重點了。" #. (itstool) path: sect1/para -#: book.translate.xml:8348 +#: book.translate.xml:8364 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>, " @@ -12368,7 +12419,7 @@ msgstr "" "輸入 <command>rm foo</command> 然後按下 <keycap>Tab</keycap> 來補齊檔名。" #. (itstool) path: sect1/para -#: book.translate.xml:8357 +#: book.translate.xml:8373 msgid "" "But the shell only shows <command>rm foo</command>. It was unable to " "complete the filename because both <filename>foobar</filename> and " @@ -12386,12 +12437,12 @@ msgstr "" "次,那 Shell 就能夠替您把剩下的檔名填滿了。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8367 +#: book.translate.xml:8383 msgid "<primary>environment variables</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8371 +#: book.translate.xml:8387 msgid "" "Another feature of the shell is the use of environment variables. " "Environment variables are a variable/key pair stored in the shell's " @@ -12407,42 +12458,42 @@ msgstr "" "供了常見的環境變數與其涵義的清單。 請注意環境變數的名稱永遠以大寫表示。" #. (itstool) path: table/title -#: book.translate.xml:8381 +#: book.translate.xml:8397 msgid "Common Environment Variables" msgstr "常用環境變數" #. (itstool) path: row/entry -#: book.translate.xml:8386 book.translate.xml:22933 +#: book.translate.xml:8402 book.translate.xml:23041 msgid "Variable" msgstr "變數" #. (itstool) path: row/entry -#: book.translate.xml:8393 +#: book.translate.xml:8409 msgid "<envar>USER</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8394 +#: book.translate.xml:8410 msgid "Current logged in user's name." msgstr "目前登入的使用者名稱。" #. (itstool) path: row/entry -#: book.translate.xml:8398 +#: book.translate.xml:8414 msgid "<envar>PATH</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8399 +#: book.translate.xml:8415 msgid "Colon-separated list of directories to search for binaries." msgstr "以冒號 (:) 隔開的目錄列表,用以搜尋執行檔的路徑。" #. (itstool) path: row/entry -#: book.translate.xml:8404 +#: book.translate.xml:8420 msgid "<envar>DISPLAY</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8405 +#: book.translate.xml:8421 msgid "" "Network name of the <application>Xorg</application> display to connect to, " "if available." @@ -12450,34 +12501,34 @@ msgstr "" "若存在這個環境變數,則代表 <application>Xorg</application> 顯示器的網路名稱。" #. (itstool) path: row/entry -#: book.translate.xml:8411 +#: book.translate.xml:8427 msgid "<envar>SHELL</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8412 +#: book.translate.xml:8428 msgid "The current shell." msgstr "目前使用的 Shell。" #. (itstool) path: row/entry -#: book.translate.xml:8416 +#: book.translate.xml:8432 msgid "<envar>TERM</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8418 +#: book.translate.xml:8434 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:8423 +#: book.translate.xml:8439 msgid "<envar>TERMCAP</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8425 +#: book.translate.xml:8441 msgid "" "Database entry of the terminal escape codes to perform various terminal " "functions." @@ -12485,62 +12536,62 @@ msgstr "" "用來執行各種終端機功能的終端機跳脫碼 (Terminal escape code) 的資料庫項目。" #. (itstool) path: row/entry -#: book.translate.xml:8430 +#: book.translate.xml:8446 msgid "<envar>OSTYPE</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8431 +#: book.translate.xml:8447 msgid "Type of operating system." msgstr "作業系統的類型。" #. (itstool) path: row/entry -#: book.translate.xml:8435 +#: book.translate.xml:8451 msgid "<envar>MACHTYPE</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8436 +#: book.translate.xml:8452 msgid "The system's CPU architecture." msgstr "系統的 CPU 架構。" #. (itstool) path: row/entry -#: book.translate.xml:8440 +#: book.translate.xml:8456 msgid "<envar>EDITOR</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8441 +#: book.translate.xml:8457 msgid "The user's preferred text editor." msgstr "使用者偏好的文字編輯器。" #. (itstool) path: row/entry -#: book.translate.xml:8445 +#: book.translate.xml:8461 msgid "<envar>PAGER</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8446 +#: book.translate.xml:8462 msgid "The user's preferred utility for viewing text one page at a time." msgstr "使用者偏好的文字分頁檢視工具。" #. (itstool) path: row/entry -#: book.translate.xml:8451 +#: book.translate.xml:8467 msgid "<envar>MANPATH</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8452 +#: book.translate.xml:8468 msgid "Colon-separated list of directories to search for manual pages." msgstr "以冒號 (:) 隔開的目錄列表,用以搜尋使用手冊的路徑。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8459 +#: book.translate.xml:8475 msgid "<primary>Bourne shells</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8463 +#: book.translate.xml:8479 msgid "" "How to set an environment variable differs between shells. In " "<citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></" @@ -12565,24 +12616,24 @@ msgstr "" "<filename>/usr/local/bin/emacs</filename>:" #. (itstool) path: sect1/screen -#: book.translate.xml:8472 +#: book.translate.xml:8488 #, no-wrap msgid "<prompt>%</prompt> <userinput>setenv EDITOR /usr/local/bin/emacs</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8474 +#: book.translate.xml:8490 msgid "The equivalent command for <command>bash</command> would be:" msgstr "相同功能的指令在 <command>bash</command> 下則是:" #. (itstool) path: sect1/screen -#: book.translate.xml:8477 +#: book.translate.xml:8493 #, no-wrap msgid "<prompt>%</prompt> <userinput>export EDITOR=\"/usr/local/bin/emacs\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8479 +#: book.translate.xml:8495 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. " @@ -12594,7 +12645,7 @@ msgstr "" "$TERM</envar> 的設定值。" #. (itstool) path: sect1/para -#: book.translate.xml:8485 +#: book.translate.xml:8501 msgid "" "Shells treat special characters, known as meta-characters, as special " "representations of data. The most common meta-character is <literal>*</" @@ -12611,7 +12662,7 @@ msgstr "" "<literal>*</literal> 字元的檔案由 <command>echo</command> 顯示出來。" #. (itstool) path: sect1/para -#: book.translate.xml:8495 +#: book.translate.xml:8511 msgid "" "To prevent the shell from interpreting a special character, escape it from " "the shell by starting it with a backslash (<literal>\\</literal>). For " @@ -12625,12 +12676,12 @@ msgstr "" "$TERM</command> 則會直接印出 <literal>$TERM</literal> 這幾個字。" #. (itstool) path: sect2/title -#: book.translate.xml:8503 +#: book.translate.xml:8519 msgid "Changing the Shell" msgstr "變更 Shell" #. (itstool) path: sect2/para -#: book.translate.xml:8505 +#: book.translate.xml:8521 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 " @@ -12646,7 +12697,7 @@ msgstr "" "<literal>Shell:</literal> 為新的 Shell 的完整路徑。" #. (itstool) path: sect2/para -#: book.translate.xml:8512 +#: book.translate.xml:8528 msgid "" "Alternately, use <command>chsh -s</command> which will set the specified " "shell without opening an editor. For example, to change the shell to " @@ -12656,13 +12707,13 @@ msgstr "" "器。 例如, 假設想把 Shell 更改為 <command>bash</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:8516 +#: book.translate.xml:8532 #, no-wrap msgid "<prompt>%</prompt> <userinput>chsh -s /usr/local/bin/bash</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:8519 +#: book.translate.xml:8535 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 " @@ -12676,13 +12727,13 @@ msgstr "" "Shell 的路徑):" #. (itstool) path: note/screen -#: book.translate.xml:8526 +#: book.translate.xml:8542 #, no-wrap msgid "<prompt>#</prompt> <userinput>echo <replaceable>/usr/local/bin/bash</replaceable> >> /etc/shells</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:8528 +#: book.translate.xml:8544 msgid "" "Then, rerun <citerefentry><refentrytitle>chsh</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>." @@ -12691,21 +12742,21 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:8534 +#: book.translate.xml:8550 msgid "Advanced Shell Techniques" msgstr "進階 Shell 技巧" #. (itstool) path: authorgroup/author -#: book.translate.xml:8537 book.translate.xml:30989 book.translate.xml:35394 -#: book.translate.xml:35474 book.translate.xml:37083 book.translate.xml:44364 -#: book.translate.xml:54680 book.translate.xml:55896 +#: book.translate.xml:8553 book.translate.xml:31102 book.translate.xml:35507 +#: book.translate.xml:35587 book.translate.xml:37196 book.translate.xml:44607 +#: book.translate.xml:56324 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8547 +#: book.translate.xml:8563 msgid "" "The <trademark class=\"registered\">UNIX</trademark> shell is not just a " "command interpreter, it acts as a powerful tool which allows users to " @@ -12720,7 +12771,7 @@ msgstr "" "可提供一個可以最佳化效率的環境給使用者。" #. (itstool) path: sect2/para -#: book.translate.xml:8555 +#: book.translate.xml:8571 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 " @@ -12732,13 +12783,13 @@ msgstr "" "citerefentry> 指令的輸出到一個檔案,可以重新導向輸出:" #. (itstool) path: sect2/screen -#: book.translate.xml:8560 +#: book.translate.xml:8576 #, no-wrap msgid "<prompt>%</prompt> <userinput>ls > directory_listing.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8562 +#: book.translate.xml:8578 msgid "" "The directory contents will now be listed in <filename>directory_listing." "txt</filename>. Some commands can be used to read input, such as " @@ -12751,13 +12802,13 @@ msgstr "" "導向輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:8567 +#: book.translate.xml:8583 #, no-wrap msgid "<prompt>%</prompt> <userinput>sort < directory_listing.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8569 +#: book.translate.xml:8585 msgid "" "The input will be sorted and placed on the screen. To redirect that input " "into another file, one could redirect the output of " @@ -12769,13 +12820,13 @@ msgstr "" "citerefentry> 的出輸:" #. (itstool) path: sect2/screen -#: book.translate.xml:8573 +#: book.translate.xml:8589 #, no-wrap msgid "<prompt>%</prompt> <userinput>sort < directory_listing.txt > sorted.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8575 +#: book.translate.xml:8591 msgid "" "In all of the previous examples, the commands are performing redirection " "using file descriptors. Every <trademark class=\"registered\">UNIX</" @@ -12795,7 +12846,7 @@ msgstr "" "皆被認為是以 I/O 為基礎的檔案描述符,有些也會被當做串流。" #. (itstool) path: sect2/para -#: book.translate.xml:8586 +#: book.translate.xml:8602 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. " @@ -12805,7 +12856,7 @@ msgstr "" "自檔案。另一種重新導向的方式是使用管線運算子 (Pipe operator)。" #. (itstool) path: sect2/para -#: book.translate.xml:8591 +#: book.translate.xml:8607 msgid "" "The <trademark class=\"registered\">UNIX</trademark> pipe operator, <quote>|" "</quote> allows the output of one command to be directly passed or directed " @@ -12817,13 +12868,13 @@ msgstr "" "指令的標準輸出以標準輸入傳遞給另一個指令,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:8597 +#: book.translate.xml:8613 #, no-wrap msgid "<prompt>%</prompt> <userinput>cat directory_listing.txt | sort | less</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8599 +#: book.translate.xml:8615 msgid "" "In that example, the contents of <filename>directory_listing.txt</filename> " "will be sorted and the output passed to <citerefentry><refentrytitle>less</" @@ -12837,22 +12888,22 @@ msgstr "" "果直接捲動出畫面。" #. (itstool) path: sect1/title -#: book.translate.xml:8608 +#: book.translate.xml:8624 msgid "Text Editors" msgstr "文字編輯器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8610 +#: book.translate.xml:8626 msgid "<primary>text editors</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8613 book.translate.xml:8649 +#: book.translate.xml:8629 book.translate.xml:8665 msgid "<primary>editors</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8617 +#: book.translate.xml:8633 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 " @@ -12864,19 +12915,19 @@ msgstr "" "其他的文字編輯器。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8622 +#: book.translate.xml:8638 msgid "<primary><command>ee</command></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8625 +#: book.translate.xml:8641 msgid "" "<primary>editors</primary> <secondary><citerefentry><refentrytitle>ee</" "refentrytitle><manvolnum>1</manvolnum></citerefentry></secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8630 +#: book.translate.xml:8646 msgid "" "A simple editor to learn is <citerefentry><refentrytitle>ee</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, which stands for easy " @@ -12906,17 +12957,17 @@ msgstr "" "要存檔。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8646 +#: book.translate.xml:8662 msgid "<primary><command>vi</command></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8652 +#: book.translate.xml:8668 msgid "<primary><command>emacs</command></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8656 +#: book.translate.xml:8672 msgid "" "FreeBSD also comes with more powerful text editors, such as " "<citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></" @@ -12935,7 +12986,7 @@ msgstr "" "在日後為您省下更多的時間。" #. (itstool) path: sect1/para -#: book.translate.xml:8666 +#: book.translate.xml:8682 msgid "" "Many applications which modify files or require typed input will " "automatically open a text editor. To change the default editor, set the " @@ -12946,12 +12997,12 @@ msgstr "" "可設定 <envar>EDITOR</envar> 環境變數如 <xref linkend=\"shells\"/> 所說明。" #. (itstool) path: sect1/title -#: book.translate.xml:8673 +#: book.translate.xml:8689 msgid "Devices and Device Nodes" msgstr "裝置及裝置節點" #. (itstool) path: sect1/para -#: book.translate.xml:8675 +#: book.translate.xml:8691 msgid "" "A device is a term used mostly for hardware-related activities in a system, " "including disks, printers, graphics cards, and keyboards. When FreeBSD " @@ -12964,7 +13015,7 @@ msgstr "" "裝置,開機訊息的複本也會存放在 <filename>/var/run/dmesg.boot</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:8682 +#: book.translate.xml:8698 msgid "" "Each device has a device name and number. For example, <filename>ada0</" "filename> is the first SATA hard drive, while <filename>kbd0</filename> " @@ -12974,7 +13025,7 @@ msgstr "" "台 SATA 硬碟,而 <filename>kbd0</filename> 則代表鍵盤。" #. (itstool) path: sect1/para -#: book.translate.xml:8687 +#: book.translate.xml:8703 msgid "" "Most devices in FreeBSD must be accessed through special files called device " "nodes, which are located in <filename>/dev</filename>." @@ -12983,17 +13034,17 @@ msgstr "" "些檔案會放置在 <filename>/dev</filename>。" #. (itstool) path: sect1/title -#: book.translate.xml:8693 +#: book.translate.xml:8709 msgid "Manual Pages" msgstr "操作手冊" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8695 +#: book.translate.xml:8711 msgid "<primary>manual pages</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8699 +#: book.translate.xml:8715 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 " @@ -13005,13 +13056,13 @@ msgstr "" "<command>man</command> 指令來檢視:" #. (itstool) path: sect1/screen -#: book.translate.xml:8705 +#: book.translate.xml:8721 #, no-wrap msgid "<prompt>%</prompt> <userinput>man <replaceable>command</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8707 +#: book.translate.xml:8723 msgid "" "where <replaceable>command</replaceable> is the name of the command to learn " "about. For example, to learn more about <citerefentry><refentrytitle>ls</" @@ -13022,13 +13073,13 @@ msgstr "" "citerefentry> 的詳細用法,就可以打:" #. (itstool) path: sect1/screen -#: book.translate.xml:8711 +#: book.translate.xml:8727 #, no-wrap msgid "<prompt>%</prompt> <userinput>man ls</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8713 +#: book.translate.xml:8729 msgid "" "Manual pages are divided into sections which represent the type of topic. In " "FreeBSD, the following sections are available:" @@ -13037,52 +13088,52 @@ msgstr "" "章節:" #. (itstool) path: listitem/para -#: book.translate.xml:8719 +#: book.translate.xml:8735 msgid "User commands." msgstr "使用者指令。" #. (itstool) path: listitem/para -#: book.translate.xml:8723 +#: book.translate.xml:8739 msgid "System calls and error numbers." msgstr "系統呼叫 (System call) 與錯誤編號。" #. (itstool) path: listitem/para -#: book.translate.xml:8727 +#: book.translate.xml:8743 msgid "Functions in the C libraries." msgstr "C 程式庫函數。" #. (itstool) path: listitem/para -#: book.translate.xml:8731 +#: book.translate.xml:8747 msgid "Device drivers." msgstr "裝置驅動程式。" #. (itstool) path: listitem/para -#: book.translate.xml:8735 +#: book.translate.xml:8751 msgid "File formats." msgstr "檔案格式。" #. (itstool) path: listitem/para -#: book.translate.xml:8739 +#: book.translate.xml:8755 msgid "Games and other diversions." msgstr "遊戲及其他程式。" #. (itstool) path: listitem/para -#: book.translate.xml:8743 +#: book.translate.xml:8759 msgid "Miscellaneous information." msgstr "其他資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:8747 +#: book.translate.xml:8763 msgid "System maintenance and operation commands." msgstr "系統維護與操作指令。" #. (itstool) path: listitem/para -#: book.translate.xml:8751 +#: book.translate.xml:8767 msgid "System kernel interfaces." msgstr "系統核心介面。" #. (itstool) path: sect1/para -#: book.translate.xml:8755 +#: book.translate.xml:8771 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 " @@ -13096,13 +13147,13 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 要查詢的章節編號:" #. (itstool) path: sect1/screen -#: book.translate.xml:8761 +#: book.translate.xml:8777 #, no-wrap msgid "<prompt>%</prompt> <userinput>man 1 chmod</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8763 +#: book.translate.xml:8779 msgid "" "This will display the manual page for the user command " "<citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></" @@ -13121,7 +13172,7 @@ msgstr "" "citerefentry> 則是指系統呼叫。" #. (itstool) path: sect1/para -#: book.translate.xml:8769 +#: book.translate.xml:8785 msgid "" "If the name of the manual page is unknown, use <command>man -k</command> to " "search for keywords in the manual page descriptions:" @@ -13130,13 +13181,13 @@ msgstr "" "操作手冊的描述:" #. (itstool) path: sect1/screen -#: book.translate.xml:8773 +#: book.translate.xml:8789 #, no-wrap msgid "<prompt>%</prompt> <userinput>man -k <replaceable>mail</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8775 +#: book.translate.xml:8791 msgid "" "This command displays a list of commands that have the keyword <quote>mail</" "quote> in their descriptions. This is equivalent to using " @@ -13148,14 +13199,14 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect1/para -#: book.translate.xml:8779 +#: book.translate.xml:8795 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:8782 +#: book.translate.xml:8798 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>cd /usr/bin</userinput>\n" @@ -13164,12 +13215,12 @@ msgstr "" #. (itstool) path: sect1/para #. (itstool) path: listitem/para -#: book.translate.xml:8785 book.translate.xml:49649 +#: book.translate.xml:8801 book.translate.xml:49889 msgid "or" msgstr "或" #. (itstool) path: sect1/screen -#: book.translate.xml:8787 +#: book.translate.xml:8803 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>cd /usr/bin</userinput>\n" @@ -13177,12 +13228,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:8791 +#: book.translate.xml:8807 msgid "GNU Info Files" msgstr "GNU Info 檔" #. (itstool) path: sect2/para -#: book.translate.xml:8797 +#: book.translate.xml:8813 msgid "" "FreeBSD includes several applications and utilities produced by the Free " "Software Foundation (FSF). In addition to manual pages, these programs may " @@ -13200,7 +13251,7 @@ msgstr "" "過 <application>emacs</application> 的 info 模式閱讀。" #. (itstool) path: sect2/para -#: book.translate.xml:8805 +#: book.translate.xml:8821 msgid "" "To use <citerefentry><refentrytitle>info</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, type:" @@ -13209,13 +13260,13 @@ msgstr "" "manvolnum></citerefentry> 指令,只需輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:8807 +#: book.translate.xml:8823 #, no-wrap msgid "<prompt>%</prompt> <userinput>info</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8809 +#: book.translate.xml:8825 msgid "" "For a brief introduction, type <literal>h</literal>. For a quick command " "reference, type <literal>?</literal>." @@ -13224,22 +13275,22 @@ msgstr "" "<literal>?</literal> 鍵。" #. (itstool) path: chapter/title -#: book.translate.xml:8823 +#: book.translate.xml:8839 msgid "Installing Applications: Packages and Ports" msgstr "安裝應用程式:套件與 Port" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8828 +#: book.translate.xml:8844 msgid "<primary>ports</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8829 +#: book.translate.xml:8845 msgid "<primary>packages</primary>" msgstr "<primary>套件</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:8830 +#: book.translate.xml:8846 msgid "" "FreeBSD is bundled with a rich collection of system tools as part of the " "base system. In addition, FreeBSD provides two complementary technologies " @@ -13253,45 +13304,45 @@ msgstr "" "Binary 套件集。兩種方法都可使用本地的媒體或網路來安裝軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:8842 +#: book.translate.xml:8858 msgid "The difference between binary packages and ports." msgstr "Binary 套件集與 Port 的差別。" #. (itstool) path: listitem/para -#: book.translate.xml:8846 +#: book.translate.xml:8862 msgid "How to find third-party software that has been ported to FreeBSD." msgstr "如何找到已移植到 FreeBSD 的第三方軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:8851 +#: book.translate.xml:8867 msgid "How to manage binary packages using <application>pkg</application>." msgstr "如何使用 <application>pkg</application> 管理 Binary 套件。" #. (itstool) path: listitem/para -#: book.translate.xml:8856 +#: book.translate.xml:8872 msgid "" "How to build third-party software from source using the Ports Collection." msgstr "如何編譯來自 Port 套件集的第三方軟體原始碼。" #. (itstool) path: listitem/para -#: book.translate.xml:8861 +#: book.translate.xml:8877 msgid "" "How to find the files installed with the application for post-installation " "configuration." msgstr "如何找到應用程式已安裝的檔案來完成安裝後的設定。" #. (itstool) path: listitem/para -#: book.translate.xml:8866 +#: book.translate.xml:8882 msgid "What to do if a software installation fails." msgstr "若軟體安裝失敗要如何處理。" #. (itstool) path: sect1/title -#: book.translate.xml:8872 +#: book.translate.xml:8888 msgid "Overview of Software Installation" msgstr "安裝軟體的概要" #. (itstool) path: sect1/para -#: book.translate.xml:8874 +#: book.translate.xml:8890 msgid "" "The typical steps for installing third-party software on a <trademark class=" "\"registered\">UNIX</trademark> system include:" @@ -13300,14 +13351,14 @@ msgstr "" "體時,有幾個步驟要作:" #. (itstool) path: step/para -#: book.translate.xml:8879 +#: book.translate.xml:8895 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:8884 +#: book.translate.xml:8900 msgid "" "Unpack the software from its distribution format. This is typically a " "tarball compressed with a program such as " @@ -13327,7 +13378,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: step/para -#: book.translate.xml:8891 +#: book.translate.xml:8907 msgid "" "Locate the documentation in <filename>INSTALL</filename>, <filename>README</" "filename> or some file in a <filename>doc/</filename> subdirectory and read " @@ -13337,7 +13388,7 @@ msgstr "" "<filename>doc/</filename> 子目錄底下的檔案閱讀如何安裝該軟體。" #. (itstool) path: step/para -#: book.translate.xml:8898 +#: book.translate.xml:8914 msgid "" "If the software was distributed in source format, compile it. This may " "involve editing a <filename>Makefile</filename> or running a " @@ -13347,12 +13398,12 @@ msgstr "" "<filename>Makefile</filename> 或執行 <command>configure</command> Script。" #. (itstool) path: step/para -#: book.translate.xml:8905 +#: book.translate.xml:8921 msgid "Test and install the software." msgstr "測試並安裝該軟體。" #. (itstool) path: sect1/para -#: book.translate.xml:8909 +#: book.translate.xml:8925 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 " @@ -13364,7 +13415,7 @@ msgstr "" "用程式的必要資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:8916 +#: book.translate.xml:8932 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." @@ -13372,7 +13423,7 @@ msgstr "" "若軟體尚未被 FreeBSD 採用並測試,可能會需要經過一些修正才能正常安裝並執行。" #. (itstool) path: sect1/para -#: book.translate.xml:8920 +#: book.translate.xml:8936 msgid "" "However, over <link xlink:href=\"@@URL_RELPREFIX@@/ports/index.html" "\">24,000</link> third-party applications have already been ported to " @@ -13384,13 +13435,13 @@ msgstr "" "也會做成預先編譯好的 <emphasis>套件 (Package)</emphasis> 供下載。" #. (itstool) path: sect1/para -#: book.translate.xml:8925 +#: book.translate.xml:8941 msgid "" "Packages can be manipulated with the FreeBSD package management commands." msgstr "這些 Binary 套件可使用 FreeBSD 套件管理指令來管理。" #. (itstool) path: sect1/para -#: book.translate.xml:8929 +#: book.translate.xml:8945 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 " @@ -13400,7 +13451,7 @@ msgstr "" "式,且該應用程式若有相依的程式庫尚未被安裝,則會自動先安裝該程式庫。" #. (itstool) path: sect1/para -#: book.translate.xml:8934 +#: book.translate.xml:8950 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 " @@ -13414,7 +13465,7 @@ msgstr "" "<command>pkg install</command>。" #. (itstool) path: sect1/para -#: book.translate.xml:8940 +#: book.translate.xml:8956 msgid "" "While the two technologies are similar, packages and ports each have their " "own strengths. Select the technology that meets your requirements for " @@ -13424,19 +13475,19 @@ msgstr "" "程式需求來選擇。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:8946 +#: book.translate.xml:8962 msgid "Package Benefits" msgstr "Binary 套件優點" #. (itstool) path: listitem/para -#: book.translate.xml:8949 +#: book.translate.xml:8965 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:8955 +#: book.translate.xml:8971 msgid "" "Packages do not require compilation time. For large applications, such as " "<application>Mozilla</application>, <application>KDE</application>, or " @@ -13447,19 +13498,19 @@ msgstr "" "<application>GNOME</application> 這點顯的相當重要。" #. (itstool) path: listitem/para -#: book.translate.xml:8963 +#: book.translate.xml:8979 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:8969 +#: book.translate.xml:8985 msgid "Port Benefits" msgstr "Port 套件優點" #. (itstool) path: listitem/para -#: book.translate.xml:8972 +#: book.translate.xml:8988 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 " @@ -13469,7 +13520,7 @@ msgstr "" "譯,由 Port 來編輯可更改編譯選項。" #. (itstool) path: listitem/para -#: book.translate.xml:8979 +#: book.translate.xml:8995 msgid "" "Some applications have compile-time options relating to which features are " "installed. For example, <application>Apache</application> can be configured " @@ -13479,7 +13530,7 @@ msgstr "" "application> 便有大量不同的內建選項可以設定。" #. (itstool) path: listitem/para -#: book.translate.xml:8984 +#: book.translate.xml:9000 msgid "" "In some cases, multiple packages will exist for the same application to " "specify certain settings. For example, <application>Ghostscript</" @@ -13496,7 +13547,7 @@ msgstr "" "這個方式來區別 Binary 套件。" #. (itstool) path: listitem/para -#: book.translate.xml:8996 +#: book.translate.xml:9012 msgid "" "The licensing conditions of some software forbid binary distribution. Such " "software must be distributed as source code which must be compiled by the " @@ -13506,19 +13557,19 @@ msgstr "" "使用者編譯。" #. (itstool) path: listitem/para -#: book.translate.xml:9002 +#: book.translate.xml:9018 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:9008 +#: book.translate.xml:9024 msgid "Source code is needed in order to apply custom patches." msgstr "原始碼可套用自訂的修補。" #. (itstool) path: sect1/para -#: book.translate.xml:9013 +#: book.translate.xml:9029 msgid "" "To keep track of updated ports, subscribe to the <link xlink:href=\"http://" "lists.FreeBSD.org/mailman/listinfo/freebsd-ports\">FreeBSD ports mailing " @@ -13531,20 +13582,19 @@ msgstr "" "\">FreeBSD Port 問題郵遞論壇</link>。" #. (itstool) path: warning/para -#: book.translate.xml:9017 -#, fuzzy +#: book.translate.xml:9033 msgid "" "Before installing any application, check <link xlink:href=\"https://vuxml." "freebsd.org/\"/> for security issues related to the application or type " "<command>pkg audit -F</command> to check all installed applications for " "known vulnerabilities." msgstr "" -"在安裝任何應用程式之前,請先查看 <link xlink:href=\"http://vuxml.freebsd.org/" -"\"/> 是否有與該應用程式相關的安全性問題或輸入 <command>pkg audit -F</" +"在安裝任何應用程式之前,請先查看 <link xlink:href=\"https://vuxml.freebsd." +"org/\"/> 是否有與該應用程式相關的安全性問題或輸入 <command>pkg audit -F</" "command> 來檢查所有已安裝的應用程式是否有已知的漏洞。" #. (itstool) path: sect1/para -#: book.translate.xml:9023 +#: book.translate.xml:9039 msgid "" "The remainder of this chapter explains how to use packages and ports to " "install and manage third-party software on FreeBSD." @@ -13553,12 +13603,12 @@ msgstr "" "三方軟體。" #. (itstool) path: sect1/title -#: book.translate.xml:9029 +#: book.translate.xml:9045 msgid "Finding Software" msgstr "搜尋軟體" #. (itstool) path: sect1/para -#: book.translate.xml:9031 +#: book.translate.xml:9047 msgid "" "FreeBSD's list of available applications is growing all the time. There are " "a number of ways to find software to install:" @@ -13566,7 +13616,7 @@ msgstr "" "FreeBSD 上可安裝的軟體清單不斷在增加, 有幾種方式可以來找你想安裝的軟體:" #. (itstool) path: listitem/para -#: book.translate.xml:9037 +#: book.translate.xml:9053 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." @@ -13578,12 +13628,12 @@ msgstr "" "link>。 可以依應用程式名稱或軟體分類來搜尋 Port。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9044 +#: book.translate.xml:9060 msgid "<primary>FreshPorts</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9046 +#: book.translate.xml:9062 msgid "" "Dan Langille maintains <link xlink:href=\"http://www.FreshPorts.org/" "\">FreshPorts.org</link> which provides a comprehensive search utility and " @@ -13597,12 +13647,12 @@ msgstr "" "新資訊。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9055 +#: book.translate.xml:9071 msgid "<primary>SourceForge</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9057 +#: book.translate.xml:9073 msgid "" "If finding a particular application becomes challenging, try searching a " "site like <link xlink:href=\"http://www.sourceforge.net/\">SourceForge.net</" @@ -13617,18 +13667,18 @@ msgstr "" "已被移植。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9065 +#: book.translate.xml:9081 msgid "<primary>pkg</primary> <secondary>search</secondary>" msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#pkg-search -#: book.translate.xml:9070 +#: book.translate.xml:9086 msgid "To search the binary package repository for an application:" msgstr "要搜尋 Binary 套件檔案庫中的應用程式可:" #. (itstool) path: listitem/screen -#: book.translate.xml:9073 +#: book.translate.xml:9089 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg search <replaceable>subversion</replaceable></userinput>\n" @@ -13646,7 +13696,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9086 +#: book.translate.xml:9102 msgid "" "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 " @@ -13667,7 +13717,7 @@ msgstr "" "<command>pkg search</command> 並加上 <option>-o</option> 來列出每個套件來源:" #. (itstool) path: listitem/screen -#: book.translate.xml:9100 +#: book.translate.xml:9116 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg search -o <replaceable>subversion</replaceable></userinput>\n" @@ -13685,7 +13735,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9113 +#: book.translate.xml:9129 msgid "" "Searching by shell globs, regular expressions, exact match, by description, " "or any other field in the repository database is also supported by " @@ -13701,7 +13751,7 @@ msgstr "" "manvolnum></citerefentry> 以取得更多詳細資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:9122 +#: book.translate.xml:9138 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 " @@ -13713,7 +13763,7 @@ msgstr "" "其中 <replaceable>file</replaceable> 是要安裝的程式:" #. (itstool) path: listitem/screen -#: book.translate.xml:9129 +#: book.translate.xml:9145 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>whereis lsof</userinput>\n" @@ -13721,7 +13771,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9132 +#: book.translate.xml:9148 msgid "" "Alternately, an <citerefentry><refentrytitle>echo</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> statement can be used:" @@ -13730,7 +13780,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" #. (itstool) path: listitem/screen -#: book.translate.xml:9135 +#: book.translate.xml:9151 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>echo /usr/ports/*/*lsof*</userinput>\n" @@ -13738,7 +13788,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9138 +#: book.translate.xml:9154 msgid "" "Note that this will also return any matched files downloaded into the " "<filename>/usr/ports/distfiles</filename> directory." @@ -13747,7 +13797,7 @@ msgstr "" "何已符合條件的檔案。" #. (itstool) path: listitem/para -#: book.translate.xml:9144 +#: book.translate.xml:9160 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> " @@ -13761,7 +13811,7 @@ msgstr "" "name</replaceable> 代表軟體的名稱。舉例搜尋 <command>lsof</command>:" #. (itstool) path: listitem/screen -#: book.translate.xml:9153 +#: book.translate.xml:9169 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports</userinput>\n" @@ -13776,7 +13826,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:9164 +#: book.translate.xml:9180 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 " @@ -13790,18 +13840,18 @@ msgstr "" "行請求的搜尋動作。" #. (itstool) path: listitem/para -#: book.translate.xml:9173 +#: book.translate.xml:9189 msgid "The <quote>Path:</quote> line indicates where to find the port." msgstr "<quote>Path:</quote> 此行代表 Port 的所在位置。" #. (itstool) path: listitem/para -#: book.translate.xml:9176 +#: book.translate.xml:9192 msgid "" "To receive less information, use the <command>quicksearch</command> feature:" msgstr "若不要接受這麼多資訊,可使用 <command>quicksearch</command> 功能:" #. (itstool) path: listitem/screen -#: book.translate.xml:9179 +#: book.translate.xml:9195 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports</userinput>\n" @@ -13812,7 +13862,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9185 +#: book.translate.xml:9201 msgid "" "For more in-depth searching, use <command>make search " "key=<replaceable>string</replaceable></command> or <command>make quicksearch " @@ -13828,17 +13878,17 @@ msgstr "" "特定主題相關的 Port。" #. (itstool) path: para/buildtarget -#: book.translate.xml:9196 +#: book.translate.xml:9212 msgid "search" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:9197 +#: book.translate.xml:9213 msgid "quicksearch" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9196 +#: book.translate.xml:9212 msgid "" "When using <_:buildtarget-1/> or <_:buildtarget-2/>, the search string is " "case-insensitive. Searching for <quote>LSOF</quote> will yield the same " @@ -13848,12 +13898,12 @@ msgstr "" "尋 <quote>LSOF</quote> 會與搜尋 <quote>lsof</quote> 產生相同的結果。" #. (itstool) path: sect1/title -#: book.translate.xml:9206 +#: book.translate.xml:9222 msgid "Using <application>pkg</application> for Binary Package Management" msgstr "使用 <application>pkg</application> 管理 Binary 套件" #. (itstool) path: sect1/para -#: book.translate.xml:9209 +#: book.translate.xml:9225 msgid "" "<application>pkg</application> is the next generation replacement for the " "traditional FreeBSD package management tools, offering many features that " @@ -13863,7 +13913,7 @@ msgstr "" "功能讓處理 Binary 套件更快更簡單。" #. (itstool) path: sect1/para -#: book.translate.xml:9214 +#: book.translate.xml:9230 msgid "" "For sites wishing to only use prebuilt binary packages from the FreeBSD " "mirrors, managing packages with <application>pkg</application> can be " @@ -13873,7 +13923,7 @@ msgstr "" "<application>pkg</application> 管理套件便已足夠。" #. (itstool) path: sect1/para -#: book.translate.xml:9218 +#: book.translate.xml:9234 msgid "" "However, for those sites building from source or using their own " "repositories, a separate <link linkend=\"ports-upgrading-tools\">port " @@ -13883,7 +13933,7 @@ msgstr "" "linkend=\"ports-upgrading-tools\">Port 管理工具</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:9222 +#: book.translate.xml:9238 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 " @@ -13895,12 +13945,12 @@ msgstr "" "<application>pkg</application> 僅能安裝 Binary 套件。" #. (itstool) path: sect2/title -#: book.translate.xml:9231 +#: book.translate.xml:9247 msgid "Getting Started with <application>pkg</application>" msgstr "開始使用 <application>pkg</application>" #. (itstool) path: sect2/para -#: book.translate.xml:9234 +#: book.translate.xml:9250 msgid "" "FreeBSD includes a bootstrap utility which can be used to download and " "install <application>pkg</application> and its manual pages. This utility is " @@ -13912,8 +13962,7 @@ msgstr "" "replaceable> 之後使用。" #. (itstool) path: note/para -#: book.translate.xml:9241 -#, fuzzy +#: book.translate.xml:9257 msgid "" "Not all FreeBSD versions and architectures support this bootstrap process. " "The current list is at <link xlink:href=\"https://pkg.freebsd.org/\"/>. For " @@ -13921,34 +13970,34 @@ msgid "" "the Ports Collection or as a binary package." msgstr "" "不是所有 FreeBSD 版本及架構支援此啟動程序,目前支援的清單列於 <link xlink:" -"href=\"http://pkg.freebsd.org/\"/>,對不支援的版本,必須改透過 Port 套件集或" +"href=\"https://pkg.freebsd.org/\"/>,對不支援的版本,必須改透過 Port 套件集或" "者 Binary 套件來安裝 <application>pkg</application>。" #. (itstool) path: sect2/para -#: book.translate.xml:9250 +#: book.translate.xml:9266 msgid "To bootstrap the system, run:" msgstr "要啟動 (Bootstrap) 系統請執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9252 +#: book.translate.xml:9268 #, no-wrap msgid "<prompt>#</prompt> <userinput>/usr/sbin/pkg</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9254 +#: book.translate.xml:9270 msgid "" "You must have a working Internet connection for the bootstrap process to " "succeed." msgstr "您必須有可用的網際網路連線供啟動程式使用方可成功。" #. (itstool) path: sect2/para -#: book.translate.xml:9257 +#: book.translate.xml:9273 msgid "Otherwise, to install the port, run:" msgstr "否則,要安裝 Port 套件,則須執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9259 +#: book.translate.xml:9275 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/pkg</userinput>\n" @@ -13957,7 +14006,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9263 +#: book.translate.xml:9279 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 " @@ -13970,20 +14019,20 @@ msgstr "" "須執行以下指令將套件資料庫從舊版格式轉換到新版格式:" #. (itstool) path: sect2/screen -#: book.translate.xml:9271 +#: book.translate.xml:9287 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg2ng</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9273 +#: book.translate.xml:9289 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:9278 +#: book.translate.xml:9294 msgid "" "This step is not reversible. Once the package database has been converted to " "the <application>pkg</application> format, the traditional <literal>pkg_*</" @@ -13993,7 +14042,7 @@ msgstr "" "式,舊版 <literal>pkg_*</literal> 工具就不該再繼續使用。" #. (itstool) path: note/para -#: book.translate.xml:9285 +#: book.translate.xml:9301 msgid "" "The package database conversion may emit errors as the contents are " "converted to the new version. Generally, these errors can be safely ignored. " @@ -14006,7 +14055,7 @@ msgstr "" "單,這些應用程式則必須手動重新安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:9293 +#: book.translate.xml:9309 msgid "" "To ensure that the Ports Collection registers new software with " "<application>pkg</application> instead of the traditional packages database, " @@ -14018,13 +14067,13 @@ msgstr "" "replaceable> 之前需要在 <filename>/etc/make.conf</filename> 加入此行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:9299 +#: book.translate.xml:9315 #, no-wrap msgid "WITH_PKGNG=\tyes" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9301 +#: book.translate.xml:9317 msgid "" "By default, <application>pkg</application> uses the binary packages from the " "FreeBSD package mirrors (the <emphasis>repository</emphasis>). For " @@ -14036,7 +14085,7 @@ msgstr "" "案庫的資訊,請參考 <xref linkend=\"ports-poudriere\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:9308 +#: book.translate.xml:9324 msgid "" "Additional <application>pkg</application> configuration options are " "described in <citerefentry><refentrytitle>pkg.conf</" @@ -14047,7 +14096,7 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:9311 +#: book.translate.xml:9327 msgid "" "Usage information for <application>pkg</application> is available in the " "<citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></" @@ -14059,7 +14108,7 @@ msgstr "" "citerefentry> 操作手冊或不加任何參數執行 <command>pkg</command> 來取得。" #. (itstool) path: sect2/para -#: book.translate.xml:9315 +#: book.translate.xml:9331 msgid "" "Each <application>pkg</application> command argument is documented in a " "command-specific manual page. To read the manual page for <command>pkg " @@ -14069,19 +14118,19 @@ msgstr "" "<command>pkg install</command> 的操作手冊,可執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:9320 +#: book.translate.xml:9336 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg help install</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:9322 +#: book.translate.xml:9338 #, no-wrap msgid "<prompt>#</prompt> <userinput>man pkg-install</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9324 +#: book.translate.xml:9340 msgid "" "The rest of this section demonstrates common binary package management tasks " "which can be performed using <application>pkg</application>. Each " @@ -14093,12 +14142,12 @@ msgstr "" "操作手冊以取得詳細資訊或更多範例。" #. (itstool) path: sect2/title -#: book.translate.xml:9333 +#: book.translate.xml:9349 msgid "Obtaining Information About Installed Packages" msgstr "取得有關已安裝套件的資訊" #. (itstool) path: sect2/para -#: book.translate.xml:9335 +#: book.translate.xml:9351 msgid "" "Information about the packages installed on a system can be viewed by " "running <command>pkg info</command> which, when run without any switches, " @@ -14109,14 +14158,14 @@ msgstr "" "行時未指定任何參數,將會列出所有已安裝或指定的套件版本。" #. (itstool) path: sect2/para -#: book.translate.xml:9341 +#: book.translate.xml:9357 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:9344 +#: book.translate.xml:9360 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg info pkg</userinput>\n" @@ -14124,12 +14173,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9349 +#: book.translate.xml:9365 msgid "Installing and Removing Packages" msgstr "安裝與移除套件" #. (itstool) path: sect2/para -#: book.translate.xml:9351 +#: book.translate.xml:9367 msgid "" "To install a binary package use the following command, where " "<replaceable>packagename</replaceable> is the name of the package to install:" @@ -14138,13 +14187,13 @@ msgstr "" "replaceable> 為要安裝的套件名稱:" #. (itstool) path: sect2/screen -#: book.translate.xml:9355 +#: book.translate.xml:9371 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install <replaceable>packagename</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9357 +#: book.translate.xml:9373 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 " @@ -14154,7 +14203,7 @@ msgstr "" "例如,要安裝 <application>curl</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:9362 +#: book.translate.xml:9378 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg install curl</userinput>\n" @@ -14181,14 +14230,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9384 +#: book.translate.xml:9400 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:9388 +#: book.translate.xml:9404 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg info</userinput>\n" @@ -14198,14 +14247,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9393 +#: book.translate.xml:9409 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:9396 +#: book.translate.xml:9412 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg delete curl</userinput>\n" @@ -14220,23 +14269,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9408 +#: book.translate.xml:9424 msgid "Upgrading Installed Packages" msgstr "升級已安裝套件" #. (itstool) path: sect2/para -#: book.translate.xml:9410 +#: book.translate.xml:9426 msgid "Installed packages can be upgraded to their latest versions by running:" msgstr "執行以下指令,可將已安裝的套件升級到最新版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:9413 +#: book.translate.xml:9429 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg upgrade</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9415 +#: book.translate.xml:9431 msgid "" "This command will compare the installed versions with those available in the " "repository catalogue and upgrade them from the repository." @@ -14244,12 +14293,12 @@ msgstr "" "這個指令將會比對已安裝的版本與在檔案庫分類中的版本,並從檔案庫升級這些套件。" #. (itstool) path: sect2/title -#: book.translate.xml:9421 +#: book.translate.xml:9437 msgid "Auditing Installed Packages" msgstr "稽查已安裝套件" #. (itstool) path: sect2/para -#: book.translate.xml:9423 +#: book.translate.xml:9439 msgid "" "Software vulnerabilities are regularly discovered in third-party " "applications. To address this, <application>pkg</application> includes a " @@ -14262,28 +14311,28 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: sect1/screen -#: book.translate.xml:9430 book.translate.xml:26671 +#: book.translate.xml:9446 book.translate.xml:26765 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg audit -F</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9434 -msgid "Automatically Removing Leaf Dependencies" -msgstr "自動移除不使用的相依" +#: book.translate.xml:9450 +msgid "Automatically Removing Unused Packages" +msgstr "自動移除未使用的套件" #. (itstool) path: sect2/para -#: book.translate.xml:9436 +#: book.translate.xml:9452 msgid "" "Removing a package may leave behind dependencies which are no longer " -"required. Unneeded packages that were installed as dependencies can be " -"automatically detected and removed using:" +"required. Unneeded packages that were installed as dependencies (leaf " +"packages) can be automatically detected and removed using:" msgstr "" -"移除一個套件可能會留下不再需要使用的相依套件。不再需要的相依套件可以使用以下" -"指令自動偵測並移除:" +"移除一個套件可能會留下不再需要使用的相依套件。不再需要的相依套件是當初隨著其" +"套件所安裝的套件 (枝葉套件),可以使用以下指令自動偵測並移除:" #. (itstool) path: sect2/screen -#: book.translate.xml:9441 +#: book.translate.xml:9457 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg autoremove</userinput>\n" @@ -14296,13 +14345,100 @@ msgid "" "Deinstalling ca_root_nss-3.15.1_1... done" msgstr "" +#. (itstool) path: sect2/para +#: book.translate.xml:9466 +msgid "" +"Packages installed as dependencies are called <emphasis>automatic</emphasis> " +"packages. Non-automatic packages, i.e the packages that were explicity " +"installed not as a dependency to another package, can be listed using:" +msgstr "" +"因為相依所安裝的套件稱作 <emphasis>自動 (Automatic)</emphasis> 套件,而非自動" +"套件即套件被安裝的原因不是因為其他套件所相依,可以使用以下方式查詢:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:9472 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>pkg prime-list</userinput>\n" +"nginx\n" +"openvpn\n" +"sudo" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:9477 +msgid "" +"<command>pkg prime-list</command> is an alias command declared in <filename>/" +"usr/local/etc/pkg.conf</filename>. There are many others that can be used to " +"query the package database of the system. For instance, command <command>pkg " +"prime-origins</command> can be used to get the origin port directory of the " +"list mentioned above:" +msgstr "" +"<command>pkg prime-list</command> 是一個別名指令,定義在 <filename>/usr/" +"local/etc/pkg.conf</filename>,尚還有許多其他相關指令可以用來查詢系統的套件資" +"料庫,例如,指令 <command>pkg prime-origins</command> 可用來取得上述清單的來" +"源 Port 目錄:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:9484 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>pkg prime-origins</userinput>\n" +"www/nginx\n" +"security/openvpn\n" +"security/sudo" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:9489 +msgid "" +"This list can be used to rebuild all packages installed on a system using " +"build tools such as <package> ports-mgmt/poudriere</package> or <package> " +"ports-mgmt/synth</package>." +msgstr "" +"這份清單可以用來重新編譯所有安裝在系統中的套件,使用 <package> ports-mgmt/" +"poudriere</package> 或 <package> ports-mgmt/synth</package> 這類的編譯工具。" + +#. (itstool) path: sect2/para +#: book.translate.xml:9494 +msgid "Marking an installed package as automatic can be done using:" +msgstr "要將一個安裝好的套件註記成為 \"自動\" 可以用:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:9497 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>pkg set -A 1 devel/cmake</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:9499 +msgid "" +"Once a package is a leaf package and is marked as automatic, it gets " +"selected by <command>pkg autoremove</command>." +msgstr "" +"當套件為末端套件 (Leaf Package) 且被註記為 \"自動\",則會被 <command>pkg " +"autoremove</command> 挑選出來。" + +#. (itstool) path: sect2/para +#: book.translate.xml:9503 +msgid "" +"Marking an installed package as <emphasis>not</emphasis> automatic can be " +"done using:" +msgstr "要註記一個安裝好的套件為 \"<emphasis>非</emphasis>自動\" 可以用:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:9506 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>pkg set -A 0 devel/cmake</userinput>" +msgstr "" + #. (itstool) path: sect2/title -#: book.translate.xml:9452 +#: book.translate.xml:9511 msgid "Restoring the Package Database" msgstr "還原套件資料庫" #. (itstool) path: sect2/para -#: book.translate.xml:9454 +#: book.translate.xml:9513 msgid "" "Unlike the traditional package management system, <application>pkg</" "application> includes its own package database backup mechanism. This " @@ -14312,7 +14448,7 @@ msgstr "" "機制,此功能預設是開啟的。" #. (itstool) path: tip/para -#: book.translate.xml:9460 +#: book.translate.xml:9519 msgid "" "To disable the periodic script from backing up the package database, set " "<literal>daily_backup_pkgdb_enable=\"NO\"</literal> in " @@ -14324,7 +14460,7 @@ msgstr "" "<literal>daily_backup_pkgdb_enable=\"NO\"</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:9466 +#: book.translate.xml:9525 msgid "" "To restore the contents of a previous package database backup, run the " "following command replacing <replaceable>/path/to/pkg.sql</replaceable> with " @@ -14334,20 +14470,20 @@ msgstr "" "sql</replaceable> 替換為備份的位置:" #. (itstool) path: sect2/screen -#: book.translate.xml:9471 +#: book.translate.xml:9530 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg backup -r <replaceable>/path/to/pkg.sql</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9474 +#: book.translate.xml:9533 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:9478 +#: book.translate.xml:9537 msgid "" "To run a manual backup of the <application>pkg</application> database, run " "the following command, replacing <replaceable>/path/to/pkg.sql</replaceable> " @@ -14357,18 +14493,18 @@ msgstr "" "<replaceable>/path/to/pkg.sql</replaceable> 為適當的檔案名稱與位置:" #. (itstool) path: sect2/screen -#: book.translate.xml:9483 +#: book.translate.xml:9542 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg backup -d <replaceable>/path/to/pkg.sql</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9487 +#: book.translate.xml:9546 msgid "Removing Stale Packages" msgstr "移除過時的套件" #. (itstool) path: sect2/para -#: book.translate.xml:9489 +#: book.translate.xml:9548 msgid "" "By default, <application>pkg</application> stores binary packages in a cache " "directory defined by <envar>PKG_CACHEDIR</envar> in " @@ -14384,29 +14520,29 @@ msgstr "" "要移除這些過時的 Binary 套件,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9496 +#: book.translate.xml:9555 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg clean</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9498 +#: book.translate.xml:9557 msgid "The entire cache may be cleared by running:" msgstr "使用以下指令可清空全部的快取:" #. (itstool) path: sect2/screen -#: book.translate.xml:9500 +#: book.translate.xml:9559 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg clean -a</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9504 +#: book.translate.xml:9563 msgid "Modifying Package Metadata" msgstr "修改套件 Metadata" #. (itstool) path: sect2/para -#: book.translate.xml:9506 +#: book.translate.xml:9565 msgid "" "Software within the FreeBSD Ports Collection can undergo major version " "number changes. To address this, <application>pkg</application> has a built-" @@ -14421,18 +14557,18 @@ msgstr "" "<package>lang/php5</package> 從此之後代表版本 <literal>5.4</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:9515 +#: book.translate.xml:9574 msgid "To change the package origin for the above example, run:" msgstr "要更改上述例子中的套件來源,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9518 +#: book.translate.xml:9577 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o lang/php5:lang/php53</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9520 +#: book.translate.xml:9579 msgid "" "As another example, to update <package>lang/ruby18</package> to " "<package>lang/ruby19</package>, run:" @@ -14441,13 +14577,13 @@ msgstr "" "package>,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9524 +#: book.translate.xml:9583 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9526 +#: book.translate.xml:9585 msgid "" "As a final example, to change the origin of the <filename>libglut</filename> " "shared libraries from <package>graphics/libglut</package> to " @@ -14458,13 +14594,13 @@ msgstr "" "package> 可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9531 +#: book.translate.xml:9590 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9534 +#: book.translate.xml:9593 msgid "" "When changing package origins, it is important to reinstall packages that " "are dependent on the package with the modified origin. To force a " @@ -14474,18 +14610,18 @@ msgstr "" "修改後的來源。要強制重新安裝相依套件,可執行:" #. (itstool) path: note/screen -#: book.translate.xml:9539 +#: book.translate.xml:9598 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:9545 +#: book.translate.xml:9604 msgid "Using the Ports Collection" msgstr "使用 Port 套件集" #. (itstool) path: sect1/para -#: book.translate.xml:9547 +#: book.translate.xml:9606 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 " @@ -14497,14 +14633,14 @@ msgstr "" "<emphasis>Port</emphasis>。" #. (itstool) path: sect1/para -#: book.translate.xml:9553 +#: book.translate.xml:9612 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:9556 +#: book.translate.xml:9615 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 " @@ -14514,12 +14650,12 @@ msgstr "" "沒有安裝,可以使用以下其中一種方式安裝:" #. (itstool) path: procedure/title -#: book.translate.xml:9562 +#: book.translate.xml:9621 msgid "Portsnap Method" msgstr "Portsnap 方法" #. (itstool) path: procedure/para -#: book.translate.xml:9564 +#: book.translate.xml:9623 msgid "" "The base system of FreeBSD includes <application>Portsnap</application>. " "This is a fast and user-friendly tool for retrieving the Ports Collection " @@ -14533,7 +14669,7 @@ msgstr "" "有已下載檔案的完整性。" #. (itstool) path: step/para -#: book.translate.xml:9573 +#: book.translate.xml:9632 msgid "" "To download a compressed snapshot of the Ports Collection into <filename>/" "var/db/portsnap</filename>:" @@ -14542,13 +14678,13 @@ msgstr "" "filename>:" #. (itstool) path: step/screen -#: book.translate.xml:9577 +#: book.translate.xml:9636 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap fetch</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9581 +#: book.translate.xml:9640 msgid "" "When running <application>Portsnap</application> for the first time, extract " "the snapshot into <filename>/usr/ports</filename>:" @@ -14557,13 +14693,13 @@ msgstr "" "<filename>/usr/ports</filename>:" #. (itstool) path: step/screen -#: book.translate.xml:9585 +#: book.translate.xml:9644 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap extract</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9589 +#: book.translate.xml:9648 msgid "" "After the first use of <application>Portsnap</application> has been " "completed as shown above, <filename>/usr/ports</filename> can be updated as " @@ -14573,7 +14709,7 @@ msgstr "" "需要執行以下指令來更新 <filename>/usr/ports</filename> :" #. (itstool) path: step/screen -#: book.translate.xml:9594 +#: book.translate.xml:9653 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>portsnap fetch</userinput>\n" @@ -14581,7 +14717,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9597 +#: book.translate.xml:9656 msgid "" "When using <literal>fetch</literal>, the <literal>extract</literal> or the " "<literal>update</literal> operation may be run consecutively, like so:" @@ -14590,18 +14726,18 @@ msgstr "" "<literal>update</literal> 如:" #. (itstool) path: step/screen -#: book.translate.xml:9601 +#: book.translate.xml:9660 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap fetch update</userinput>" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:9606 +#: book.translate.xml:9665 msgid "Subversion Method" msgstr "Subversion 方法" #. (itstool) path: procedure/para -#: book.translate.xml:9608 +#: book.translate.xml:9667 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 " @@ -14617,7 +14753,7 @@ msgstr "" "<application>Subversion</application> 的詳細說明。" #. (itstool) path: step/para -#: book.translate.xml:9616 +#: book.translate.xml:9675 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 " @@ -14629,7 +14765,7 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9621 book.translate.xml:65535 +#: book.translate.xml:9680 book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/devel/subversion</userinput>\n" @@ -14637,7 +14773,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9624 +#: book.translate.xml:9683 msgid "" "If the ports tree is not available, or <application>pkg</application> is " "being used to manage packages, <application>Subversion</application> can be " @@ -14648,25 +14784,25 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9629 book.translate.xml:65535 +#: book.translate.xml:9688 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install subversion</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9634 +#: book.translate.xml:9693 msgid "Check out a copy of the ports tree:" msgstr "取出 Port 樹的複本:" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9636 book.translate.xml:65535 +#: book.translate.xml:9695 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:9640 +#: book.translate.xml:9699 msgid "" "As needed, update <filename>/usr/ports</filename> after the initial " "<application>Subversion</application> checkout:" @@ -14676,13 +14812,13 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9644 book.translate.xml:65535 +#: book.translate.xml:9703 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>svn update /usr/ports</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:9648 +#: book.translate.xml:9707 msgid "" "The Ports Collection contains directories for software categories. Inside " "each category are subdirectories for individual applications. Each " @@ -14696,7 +14832,7 @@ msgstr "" "錄:" #. (itstool) path: listitem/para -#: book.translate.xml:9658 +#: book.translate.xml:9717 msgid "" "<filename>Makefile</filename>: contains statements that specify how the " "application should be compiled and where its components should be installed." @@ -14705,7 +14841,7 @@ msgstr "" "那的敘述句。" #. (itstool) path: listitem/para -#: book.translate.xml:9664 +#: book.translate.xml:9723 msgid "" "<filename>distinfo</filename>: contains the names and checksums of the files " "that must be downloaded to build the port." @@ -14714,7 +14850,7 @@ msgstr "" "(Checksum)。" #. (itstool) path: listitem/para -#: book.translate.xml:9670 +#: book.translate.xml:9729 msgid "" "<filename>files/</filename>: this directory contains any patches needed for " "the program to compile and install on FreeBSD. This directory may also " @@ -14724,14 +14860,14 @@ msgstr "" "檔。此目錄也可能含有其他用來編譯 Port 的檔案。" #. (itstool) path: listitem/para -#: book.translate.xml:9677 +#: book.translate.xml:9736 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:9682 +#: book.translate.xml:9741 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 " @@ -14741,7 +14877,7 @@ msgstr "" "統解除安裝時要移除那一些檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:9689 +#: book.translate.xml:9748 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 " @@ -14755,7 +14891,7 @@ msgstr "" "\">FreeBSD Porter's Handbook</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:9694 +#: book.translate.xml:9753 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 " @@ -14766,17 +14902,17 @@ msgstr "" "壓縮時會自動下載的原始碼到 <filename>/usr/ports/distfiles</filename>。" #. (itstool) path: sect2/title -#: book.translate.xml:9700 +#: book.translate.xml:9759 msgid "Installing Ports" msgstr "安裝 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:9702 +#: book.translate.xml:9761 msgid "<primary>ports</primary> <secondary>installing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9707 +#: book.translate.xml:9766 msgid "" "This section provides basic instructions on using the Ports Collection to " "install or remove software. The detailed description of available " @@ -14790,8 +14926,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: warning/para -#: book.translate.xml:9713 -#, fuzzy +#: book.translate.xml:9772 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 " @@ -14807,7 +14942,7 @@ msgid "" msgstr "" "在編譯任何 Port 套件前,請先確認已經如前章節所敘述之方法更新 Port 套件集。安" "裝任何第三方軟體皆可能會導致安全性漏洞,建議在安裝前先閱讀 <link xlink:href=" -"\"http://vuxml.freebsd.org/\"/> 了解 Port 已知的安全性問題。或者在每次安裝" +"\"https://vuxml.freebsd.org/\"/> 了解 Port 已知的安全性問題。或者在每次安裝" "新 Port 前執行 <command>pkg audit -F</command>。此指令可以設定在每日系統安全" "性檢查時自動完成安全性稽查以及更新漏洞資料庫。要取得更多資訊,請參考 " "<citerefentry><refentrytitle>pkg-audit</refentrytitle><manvolnum>8</" @@ -14815,7 +14950,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:9727 +#: book.translate.xml:9786 msgid "" "Using the Ports Collection assumes a working Internet connection. It also " "requires superuser privilege." @@ -14823,7 +14958,7 @@ msgstr "" "使用 Port 套件集會假設您擁有可正常連線的網路,同時也會需要超級使用者的權限。" #. (itstool) path: sect2/para -#: book.translate.xml:9730 +#: book.translate.xml:9789 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 " @@ -14833,7 +14968,7 @@ msgstr "" "install</command>,訊息中會顯示安裝的進度:" #. (itstool) path: sect2/screen -#: book.translate.xml:9735 +#: book.translate.xml:9794 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>\n" @@ -14871,7 +15006,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9768 +#: book.translate.xml:9827 msgid "" "Since <command>lsof</command> is a program that runs with increased " "privileges, a security warning is displayed as it is installed. Once the " @@ -14881,7 +15016,7 @@ msgstr "" "成時會顯示安全性警告。一旦安裝完成便會顯示指令提示。" #. (itstool) path: sect2/para -#: book.translate.xml:9773 +#: book.translate.xml:9832 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 " @@ -14898,7 +15033,7 @@ msgstr "" "的說明文件以取得更多資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:9784 +#: book.translate.xml:9843 msgid "" "During installation, a working subdirectory is created which contains all " "the temporary files used during compilation. Removing this directory saves " @@ -14909,7 +15044,7 @@ msgstr "" "碟空間並漸少往後升級新版 Port 時造成問題:" #. (itstool) path: sect2/screen -#: book.translate.xml:9790 +#: book.translate.xml:9849 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>make clean</userinput>\n" @@ -14918,7 +15053,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9795 +#: book.translate.xml:9854 msgid "" "To save this extra step, instead use <command>make install clean</command> " "when compiling the port." @@ -14927,12 +15062,12 @@ msgstr "" "command>。" #. (itstool) path: sect3/title -#: book.translate.xml:9800 +#: book.translate.xml:9859 msgid "Customizing Ports Installation" msgstr "自訂 Port 安裝" #. (itstool) path: sect3/para -#: book.translate.xml:9802 +#: book.translate.xml:9861 msgid "" "Some ports provide build options which can be used to enable or disable " "application components, provide security options, or allow for other " @@ -14955,17 +15090,17 @@ msgstr "" "與安裝該 Port。" #. (itstool) path: para/buildtarget -#: book.translate.xml:9818 +#: book.translate.xml:9877 msgid "config-recursive" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:9820 +#: book.translate.xml:9879 msgid "all-depends-list" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:9817 +#: book.translate.xml:9876 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 " @@ -14979,7 +15114,7 @@ msgstr "" "已經設定。" #. (itstool) path: sect3/para -#: book.translate.xml:9828 +#: book.translate.xml:9887 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 " @@ -15000,7 +15135,7 @@ msgstr "" "citerefentry> 中都有詳細的說明。" #. (itstool) path: sect3/para -#: book.translate.xml:9840 +#: book.translate.xml:9899 msgid "" "The ports system uses <citerefentry><refentrytitle>fetch</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to download the source " @@ -15020,7 +15155,7 @@ msgstr "" "單。" #. (itstool) path: sect3/para -#: book.translate.xml:9848 +#: book.translate.xml:9907 msgid "" "For users who cannot be connected to the Internet all the time, " "<command>make fetch</command> can be run within <filename>/usr/ports</" @@ -15039,7 +15174,7 @@ msgstr "" "<command>make fetch-recursive</command> 來下載所有相依 Port 的 distfiles。" #. (itstool) path: sect3/para -#: book.translate.xml:9860 +#: book.translate.xml:9919 msgid "" "In rare cases, such as when an organization has a local distfiles " "repository, the <varname>MASTER_SITES</varname> variable can be used to " @@ -15051,7 +15186,7 @@ msgstr "" "指定的下載位址。當要指定替代的位址時可:" #. (itstool) path: sect3/screen -#: book.translate.xml:9866 +#: book.translate.xml:9925 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput>\n" @@ -15060,7 +15195,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9870 +#: book.translate.xml:9929 msgid "" "The <varname>WRKDIRPREFIX</varname> and <varname>PREFIX</varname> variables " "can override the default working and target directories. For example:" @@ -15069,13 +15204,13 @@ msgstr "" "覆蓋預設的工作及目標目錄。例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:9874 +#: book.translate.xml:9933 #, no-wrap msgid "<prompt>#</prompt> <userinput>make WRKDIRPREFIX=/usr/home/example/ports install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9876 +#: book.translate.xml:9935 msgid "" "will compile the port in <filename>/usr/home/example/ports</filename> and " "install everything under <filename>/usr/local</filename>." @@ -15084,13 +15219,13 @@ msgstr "" "到 <filename>/usr/local</filename> 下。" #. (itstool) path: sect3/screen -#: book.translate.xml:9880 +#: book.translate.xml:9939 #, no-wrap msgid "<prompt>#</prompt> <userinput>make PREFIX=/usr/home/example/local install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9882 +#: book.translate.xml:9941 msgid "" "will compile the port in <filename>/usr/ports</filename> and install it in " "<filename>/usr/home/example/local</filename>. And:" @@ -15099,18 +15234,18 @@ msgstr "" "example/local</filename>。然後:" #. (itstool) path: sect3/screen -#: book.translate.xml:9886 +#: book.translate.xml:9945 #, no-wrap msgid "<prompt>#</prompt> <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9888 +#: book.translate.xml:9947 msgid "will combine the two." msgstr "來同時設定工作及目標目錄。" #. (itstool) path: sect3/para -#: book.translate.xml:9890 +#: book.translate.xml:9949 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." @@ -15119,17 +15254,17 @@ msgstr "" "變數的說明。" #. (itstool) path: sect2/title -#: book.translate.xml:9897 +#: book.translate.xml:9956 msgid "Removing Installed Ports" msgstr "移除已安裝的 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:9899 +#: book.translate.xml:9958 msgid "<primary>ports</primary> <secondary>removing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9904 +#: book.translate.xml:9963 msgid "" "Installed ports can be uninstalled using <command>pkg delete</command>. " "Examples for using this command can be found in the " @@ -15141,14 +15276,14 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 操作手冊找到。" #. (itstool) path: sect2/para -#: book.translate.xml:9908 +#: book.translate.xml:9967 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:9911 +#: book.translate.xml:9970 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>\n" @@ -15164,7 +15299,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9922 +#: book.translate.xml:9981 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 " @@ -15176,17 +15311,17 @@ msgstr "" "壞相依性。" #. (itstool) path: sect2/title -#: book.translate.xml:9931 +#: book.translate.xml:9990 msgid "Upgrading Ports" msgstr "升級 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:9933 +#: book.translate.xml:9992 msgid "<primary>ports</primary> <secondary>upgrading</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9938 +#: book.translate.xml:9997 msgid "" "Over time, newer versions of software become available in the Ports " "Collection. This section describes how to determine which software can be " @@ -15196,7 +15331,7 @@ msgstr "" "級的軟體及如何升級。" #. (itstool) path: sect2/para -#: book.translate.xml:9943 +#: book.translate.xml:10002 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 " @@ -15213,13 +15348,13 @@ msgstr "" "安裝的 Port 中有那些已過時:" #. (itstool) path: sect2/screen -#: book.translate.xml:9952 +#: book.translate.xml:10011 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg version -l \"<\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9954 +#: book.translate.xml:10013 msgid "" "For FreeBSD 9.<replaceable>X</replaceable> and lower, the following command " "will list the installed ports that are out of date:" @@ -15228,13 +15363,13 @@ msgstr "" "已經安裝的 Port 中有那些已過時:" #. (itstool) path: sect2/screen -#: book.translate.xml:9958 +#: book.translate.xml:10017 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg_version -l \"<\"</userinput>" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:9961 +#: book.translate.xml:10020 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 " @@ -15252,25 +15387,24 @@ msgstr "" "升級。" #. (itstool) path: sect3/title -#: book.translate.xml:9976 -#, fuzzy +#: book.translate.xml:10035 msgid "Tools to Upgrade and Manage Ports" msgstr "升級與管理 Port 的工具" #. (itstool) path: sect3/indexterm -#: book.translate.xml:9978 +#: book.translate.xml:10037 msgid "<primary>ports</primary> <secondary>upgrading-tools</secondary>" msgstr "<primary>ports</primary> <secondary>upgrading-tools</secondary>" #. (itstool) path: sect3/para -#: book.translate.xml:9983 +#: book.translate.xml:10042 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:9987 +#: book.translate.xml:10046 msgid "" "Historically, most installations used either <application>Portmaster</" "application> or <application>Portupgrade</application>. <application>Synth</" @@ -15281,7 +15415,7 @@ msgstr "" "application> 可使用。" #. (itstool) path: note/para -#: book.translate.xml:9994 +#: book.translate.xml:10053 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 " @@ -15291,17 +15425,17 @@ msgstr "" "先備份資料。" #. (itstool) path: sect3/title -#: book.translate.xml:10003 +#: book.translate.xml:10062 msgid "Upgrading Ports Using <application>Portmaster</application>" msgstr "使用 <application>Portmaster</application> 升級 Port" #. (itstool) path: sect3/indexterm -#: book.translate.xml:10006 +#: book.translate.xml:10065 msgid "<primary>portmaster</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10010 +#: book.translate.xml:10069 msgid "" "<package>ports-mgmt/portmaster</package> is a very small utility for " "upgrading installed ports. It is designed to use the tools installed with " @@ -15313,7 +15447,7 @@ msgstr "" "FreeBSD 使用,要使用 Port 安裝此工具可:" #. (itstool) path: sect3/screen -#: book.translate.xml:10018 +#: book.translate.xml:10077 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portmaster</userinput>\n" @@ -15321,38 +15455,38 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10021 +#: book.translate.xml:10080 msgid "<application>Portmaster</application> defines four categories of ports:" msgstr "<application>Portmaster</application> 將 Port 定義成四種類型:" #. (itstool) path: listitem/para -#: book.translate.xml:10026 +#: book.translate.xml:10085 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:10031 +#: book.translate.xml:10090 msgid "Trunk port: has no dependencies, but other ports depend upon it." msgstr "主幹 Port:沒有相依,但被其他 Port 相依。" #. (itstool) path: listitem/para -#: book.translate.xml:10036 +#: book.translate.xml:10095 msgid "Branch port: has dependencies and other ports depend upon it." msgstr "分支 Port:有相依,且其被其他 Port 相依。" #. (itstool) path: listitem/para -#: book.translate.xml:10041 +#: book.translate.xml:10100 msgid "Leaf port: has dependencies but no other ports depend upon it." msgstr "枝 Port:有相依,但沒有被其他 Port 相依。" #. (itstool) path: sect3/para -#: book.translate.xml:10046 +#: book.translate.xml:10105 msgid "To list these categories and search for updates:" msgstr "要列出這幾個分類並搜尋是否有新版:" #. (itstool) path: sect3/screen -#: book.translate.xml:10048 +#: book.translate.xml:10107 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>portmaster -L</userinput>\n" @@ -15379,18 +15513,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10070 +#: book.translate.xml:10129 msgid "This command is used to upgrade all outdated ports:" msgstr "此指令用來升級所有過時的 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10073 +#: book.translate.xml:10132 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -a</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:10076 +#: book.translate.xml:10135 msgid "" "By default, <application>Portmaster</application> makes a backup package " "before deleting the existing port. If the installation of the new version is " @@ -15413,7 +15547,7 @@ msgstr "" "用法。" #. (itstool) path: sect3/para -#: book.translate.xml:10090 +#: book.translate.xml:10149 msgid "" "If errors are encountered during the upgrade process, add <option>-f</" "option> to upgrade and rebuild all ports:" @@ -15421,13 +15555,13 @@ msgstr "" "若升級的過程發生錯誤,可加入 <option>-f</option> 來升級並重新編譯所有 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10094 book.translate.xml:44805 +#: book.translate.xml:10153 book.translate.xml:45046 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -af</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10096 +#: book.translate.xml:10155 msgid "" "<application>Portmaster</application> can also be used to install new ports " "on the system, upgrading all dependencies before building and installing the " @@ -15439,13 +15573,13 @@ msgstr "" "中的位置:" #. (itstool) path: sect3/screen -#: book.translate.xml:10102 +#: book.translate.xml:10161 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster <replaceable>shells/bash</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10104 +#: book.translate.xml:10163 msgid "" "More information about <package>ports-mgmt/portmaster</package> may be found " "in its <filename>pkg-descr</filename>." @@ -15454,17 +15588,17 @@ msgstr "" "descr</filename> 取得。" #. (itstool) path: sect3/title -#: book.translate.xml:10110 +#: book.translate.xml:10169 msgid "Upgrading Ports Using Portupgrade" msgstr "使用 Portupgrade 升級 Port" #. (itstool) path: sect3/indexterm -#: book.translate.xml:10112 +#: book.translate.xml:10171 msgid "<primary>portupgrade</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10116 +#: book.translate.xml:10175 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 " @@ -15475,7 +15609,7 @@ msgstr "" "Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10122 +#: book.translate.xml:10181 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput>\n" @@ -15483,7 +15617,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10125 +#: book.translate.xml:10184 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 " @@ -15493,7 +15627,7 @@ msgstr "" "Port 並修正該指令回報的所有資訊不一致的套件。" #. (itstool) path: sect3/para -#: book.translate.xml:10130 +#: book.translate.xml:10189 msgid "" "To upgrade all the outdated ports installed on the system, use " "<command>portupgrade -a</command>. Alternately, include <option>-i</option> " @@ -15503,13 +15637,13 @@ msgstr "" "或者加上 <option>-i</option> 會在每個套件升級時詢問確認:" #. (itstool) path: sect3/screen -#: book.translate.xml:10135 +#: book.translate.xml:10194 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -ai</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10137 +#: book.translate.xml:10196 msgid "" "To upgrade only a specified application instead of all available ports, use " "<command>portupgrade <replaceable>pkgname</replaceable></command>. It is " @@ -15521,13 +15655,13 @@ msgstr "" "R</option> 來先升級指定應用程式所有相依的 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10143 +#: book.translate.xml:10202 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -R firefox</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10145 +#: book.translate.xml:10204 msgid "" "If <option>-P</option> is included, <application>Portupgrade</application> " "searches for available packages in the local directories listed in " @@ -15546,13 +15680,13 @@ msgstr "" "可用時放棄安裝:" #. (itstool) path: sect3/screen -#: book.translate.xml:10158 +#: book.translate.xml:10217 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -PP gnome3</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10160 +#: book.translate.xml:10219 msgid "" "To just fetch the port distfiles, or packages, if <option>-P</option> is " "specified, without building or installing anything, use <option>-F</option>. " @@ -15564,7 +15698,7 @@ msgstr "" "command> 的操作手冊來取得所有可用選項的更多資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:10166 +#: book.translate.xml:10225 msgid "" "More information about <package>ports-mgmt/portupgrade</package> may be " "found in its <filename>pkg-descr</filename>." @@ -15573,17 +15707,17 @@ msgstr "" "<filename>pkg-descr</filename> 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:10174 +#: book.translate.xml:10233 msgid "Ports and Disk Space" msgstr "Port 與磁碟空間" #. (itstool) path: sect2/indexterm -#: book.translate.xml:10176 +#: book.translate.xml:10235 msgid "<primary>ports</primary> <secondary>disk-space</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10181 +#: book.translate.xml:10240 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 " @@ -15602,13 +15736,13 @@ msgstr "" "地複本中找到的 <filename>work</filename> 目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:10192 +#: book.translate.xml:10251 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -C</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10194 +#: book.translate.xml:10253 msgid "" "In addition, outdated source distribution files accumulate in <filename>/usr/" "ports/distfiles</filename> over time. To use <application>Portupgrade</" @@ -15620,13 +15754,13 @@ msgstr "" "Port 所引用的 distfiles:" #. (itstool) path: sect2/screen -#: book.translate.xml:10200 +#: book.translate.xml:10259 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -D</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10202 +#: book.translate.xml:10261 msgid "" "<application>Portupgrade</application> can remove all distfiles not " "referenced by any port currently installed on the system:" @@ -15635,31 +15769,31 @@ msgstr "" "Port 所引用的 distfiles:" #. (itstool) path: sect2/screen -#: book.translate.xml:10206 +#: book.translate.xml:10265 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -DD</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10208 +#: book.translate.xml:10267 msgid "If <application>Portmaster</application> is installed, use:" msgstr "若有安裝 <application>Portmaster</application>,則可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:10211 +#: book.translate.xml:10270 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster --clean-distfiles</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10213 +#: book.translate.xml:10272 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:10216 +#: book.translate.xml:10275 msgid "" "In addition to these commands, <package>ports-mgmt/pkg_cutleaves</package> " "automates the task of removing installed ports that are no longer needed." @@ -15668,12 +15802,12 @@ msgstr "" "要使用的 Port。" #. (itstool) path: sect1/title -#: book.translate.xml:10224 +#: book.translate.xml:10283 msgid "Building Packages with <application>Poudriere</application>" msgstr "使用 <application>Poudriere</application> 編譯套件" #. (itstool) path: sect1/para -#: book.translate.xml:10227 +#: book.translate.xml:10286 msgid "" "<application>Poudriere</application> is a <acronym>BSD</acronym>-licensed " "utility for creating and testing FreeBSD packages. It uses FreeBSD jails to " @@ -15694,7 +15828,7 @@ msgstr "" "用。" #. (itstool) path: sect1/para -#: book.translate.xml:10238 +#: book.translate.xml:10297 msgid "" "<application>Poudriere</application> is installed using the <package role=" "\"port\">ports-mgmt/poudriere</package> package or port. The installation " @@ -15709,7 +15843,7 @@ msgstr "" "的設定。" #. (itstool) path: sect1/para -#: book.translate.xml:10246 +#: book.translate.xml:10305 msgid "" "While <acronym>ZFS</acronym> is not required on the system running " "<application>poudriere</application>, it is beneficial. When <acronym>ZFS</" @@ -15733,7 +15867,7 @@ msgstr "" "採用預設值便足夠。" #. (itstool) path: sect1/para -#: book.translate.xml:10260 +#: book.translate.xml:10319 msgid "" "The number of processor cores detected is used to define how many builds " "will run in parallel. Supply enough virtual memory, either with " @@ -15746,12 +15880,12 @@ msgstr "" "會停止並被清除,會造成奇怪的錯誤訊息。" #. (itstool) path: sect2/title -#: book.translate.xml:10267 +#: book.translate.xml:10326 msgid "Initialize Jails and Port Trees" msgstr "初始化 Jail 與 Port 樹" #. (itstool) path: sect2/para -#: book.translate.xml:10269 +#: book.translate.xml:10328 msgid "" "After configuration, initialize <application>poudriere</application> so that " "it installs a jail with the required FreeBSD tree and a ports tree. Specify " @@ -15769,7 +15903,7 @@ msgstr "" "構。" #. (itstool) path: sect2/screen -#: book.translate.xml:10279 +#: book.translate.xml:10338 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>poudriere jail -c -j <replaceable>10amd64</replaceable> -v <replaceable>10.0-RELEASE</replaceable></userinput>\n" @@ -15791,7 +15925,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:10296 +#: book.translate.xml:10355 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>poudriere ports -c -p <replaceable>local</replaceable></userinput>\n" @@ -15826,7 +15960,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10326 +#: book.translate.xml:10385 msgid "" "On a single computer, <application>poudriere</application> can build ports " "with multiple configurations, in multiple jails, and from different port " @@ -15844,7 +15978,7 @@ msgstr "" "citerefentry> 中的 CUSTOMIZATION 章節來取得詳細的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:10335 +#: book.translate.xml:10394 msgid "" "The basic configuration shown here puts a single jail-, port-, and set-" "specific <filename>make.conf</filename> in <filename>/usr/local/etc/" @@ -15862,7 +15996,7 @@ msgstr "" "併為編譯 Jail 要使用的 <filename>make.conf</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:10345 +#: book.translate.xml:10404 msgid "" "Packages to be built are entered in <filename><replaceable>10amd64-local-" "workstation</replaceable>-pkglist</filename>:" @@ -15871,7 +16005,7 @@ msgstr "" "replaceable>-pkglist</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10348 +#: book.translate.xml:10407 #, no-wrap msgid "" "editors/emacs\n" @@ -15881,29 +16015,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10353 +#: book.translate.xml:10412 msgid "Options and dependencies for the specified ports are configured:" msgstr "可使用以下方式設定選項及相依:" #. (itstool) path: sect2/screen -#: book.translate.xml:10356 +#: book.translate.xml:10415 #, 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:10358 +#: book.translate.xml:10417 msgid "Finally, packages are built and a package repository is created:" msgstr "最後,編譯套件並建立套件檔案庫:" #. (itstool) path: sect2/screen -#: book.translate.xml:10361 +#: book.translate.xml:10420 #, 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:10363 +#: book.translate.xml:10422 msgid "" "While running, pressing <keycombo action=\"simul\"><keycap>Ctrl</" "keycap><keycap>t</keycap></keycombo> displays the current state of the " @@ -15918,7 +16052,7 @@ msgstr "" "示編譯資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:10370 +#: book.translate.xml:10429 msgid "" "After completion, the new packages are now available for installation from " "the <application>poudriere</application> repository." @@ -15927,7 +16061,7 @@ msgstr "" "裝。" #. (itstool) path: sect2/para -#: book.translate.xml:10374 +#: book.translate.xml:10433 msgid "" "For more information on using <application>poudriere</application>, see " "<citerefentry vendor=\"ports\"><refentrytitle>poudriere</" @@ -15940,12 +16074,12 @@ msgstr "" "href=\"https://github.com/freebsd/poudriere/wiki\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:10379 +#: book.translate.xml:10438 msgid "Configuring pkg Clients to Use a Poudriere Repository" msgstr "設定 pkg 客戶端使用 Poudriere 檔案庫" #. (itstool) path: sect2/para -#: book.translate.xml:10382 +#: book.translate.xml:10441 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 " @@ -15958,7 +16092,7 @@ msgstr "" "etc/pkg/repos/FreeBSD.conf</filename> 包含以下內容:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10390 +#: book.translate.xml:10449 #, no-wrap msgid "" "FreeBSD: {\n" @@ -15967,7 +16101,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10394 +#: book.translate.xml:10453 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 " @@ -15981,7 +16115,7 @@ msgstr "" "filename> 是編譯的名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:10401 +#: book.translate.xml:10460 msgid "" "If the URL to the package repository is: <literal>http://pkg.example." "com/10amd64</literal>, then the repository configuration file in <filename>/" @@ -15992,7 +16126,7 @@ msgstr "" "案庫設定檔為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10407 +#: book.translate.xml:10466 #, no-wrap msgid "" "custom: {\n" @@ -16002,12 +16136,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:10415 +#: book.translate.xml:10474 msgid "Post-Installation Considerations" msgstr "安裝後的注意事項" #. (itstool) path: sect1/para -#: book.translate.xml:10417 +#: book.translate.xml:10476 msgid "" "Regardless of whether the software was installed from a binary package or " "port, most third-party applications require some level of configuration " @@ -16018,7 +16152,7 @@ msgstr "" "設定,下列指令與位置可以用來協助找到應用程式安裝了什麼。" #. (itstool) path: listitem/para -#: book.translate.xml:10425 +#: book.translate.xml:10484 msgid "" "Most applications install at least one default configuration file in " "<filename>/usr/local/etc</filename>. In cases where an application has a " @@ -16035,7 +16169,7 @@ msgstr "" "除 <filename>.sample</filename> 副檔名。" #. (itstool) path: listitem/para -#: book.translate.xml:10438 +#: book.translate.xml:10497 msgid "" "Applications which provide documentation will install it into <filename>/usr/" "local/share/doc</filename> and many applications also install manual pages. " @@ -16045,7 +16179,7 @@ msgstr "" "應用程式也同時會安裝操作手冊,在繼續使用應用程式前應先查看這些文件。" #. (itstool) path: listitem/para -#: book.translate.xml:10445 +#: book.translate.xml:10504 msgid "" "Some applications run services which must be added to <filename>/etc/rc." "conf</filename> before starting the application. These applications usually " @@ -16059,7 +16193,7 @@ msgstr "" "services\">啟動服務</link> 來取得更多資訊。" #. (itstool) path: note/para -#: book.translate.xml:10453 +#: book.translate.xml:10512 msgid "" "By design, applications do not run their startup script upon installation, " "nor do they run their stop script upon deinstallation or upgrade. This " @@ -16069,7 +16203,7 @@ msgstr "" "中止 Script,這留給各系統的管理者去做決定。" #. (itstool) path: listitem/para -#: book.translate.xml:10462 +#: book.translate.xml:10521 msgid "" "Users of <citerefentry><refentrytitle>csh</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> should run <command>rehash</command> to rebuild " @@ -16080,7 +16214,7 @@ msgstr "" "單到 Shell 的 <envar>PATH</envar>。" #. (itstool) path: listitem/para -#: book.translate.xml:10468 +#: book.translate.xml:10527 msgid "" "Use <command>pkg info</command> to determine which files, man pages, and " "binaries were installed with the application." @@ -16089,17 +16223,17 @@ msgstr "" "Binary。" #. (itstool) path: sect1/title -#: book.translate.xml:10476 +#: book.translate.xml:10535 msgid "Dealing with Broken Ports" msgstr "處理損壞的 Port" #. (itstool) path: sect1/para -#: book.translate.xml:10478 +#: book.translate.xml:10537 msgid "When a port does not build or install, try the following:" msgstr "當發現某個 Port 無法順利編譯或安裝,可以嘗試以下幾種方法解決:" #. (itstool) path: listitem/para -#: book.translate.xml:10483 +#: book.translate.xml:10542 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, " @@ -16109,7 +16243,7 @@ msgstr "" "link> 看該 Port 有沒有待審核的修正,若有的話可以使用該修正來修正問題。" #. (itstool) path: listitem/para -#: book.translate.xml:10490 +#: book.translate.xml:10549 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</" @@ -16124,7 +16258,7 @@ msgstr "" "filename> 中的 <literal>$FreeBSD:</literal> 一整行及輸出的錯誤訊息。" #. (itstool) path: note/para -#: book.translate.xml:10500 +#: book.translate.xml:10559 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." @@ -16139,7 +16273,7 @@ msgstr "" "listname@FreeBSD.org</email> 都是,寄信時記得代入實際的論壇名稱。" #. (itstool) path: note/para -#: book.translate.xml:10507 +#: book.translate.xml:10566 msgid "" "In particular, ports maintained by <email role=\"nolink\">ports@FreeBSD.org</" "email> are not maintained by a specific individual. Instead, any fixes and " @@ -16151,7 +16285,7 @@ msgstr "" "提供,我們隨時歡迎志工參與!" #. (itstool) path: listitem/para -#: book.translate.xml:10515 +#: book.translate.xml:10574 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." @@ -16163,7 +16297,7 @@ msgstr "" "</link> 的說明使用 Bugzilla 提出問題回報。" #. (itstool) path: listitem/para -#: book.translate.xml:10522 +#: book.translate.xml:10581 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 " @@ -16172,10 +16306,10 @@ msgid "" msgstr "" "自行修正看看!<link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/" "porters-handbook/index.html\">Porter's Handbook</link> 中含有 Port 基礎架構的" -"詳細資訊,可提供資訊讓您可修正偶然損壞的 Port 或甚至您可以提交之自己的 Port。" +"詳細資訊,可提供資訊讓您可修正偶然損壞的 Port 或甚至您可以提交之自己的 Port!" #. (itstool) path: listitem/para -#: book.translate.xml:10529 +#: book.translate.xml:10588 msgid "" "Install the package instead of the port using the instructions in <xref " "linkend=\"pkgng-intro\"/>." @@ -16184,12 +16318,12 @@ msgstr "" "安裝。" #. (itstool) path: chapter/title -#: book.translate.xml:10559 +#: book.translate.xml:10618 msgid "The X Window System" msgstr "X Window 系統" #. (itstool) path: sect1/para -#: book.translate.xml:10564 +#: book.translate.xml:10623 msgid "" "An installation of FreeBSD using <application>bsdinstall</application> does " "not automatically install a graphical user interface. This chapter describes " @@ -16204,7 +16338,7 @@ msgstr "" "面環境或視窗管理程式。" #. (itstool) path: note/para -#: book.translate.xml:10573 +#: book.translate.xml:10632 msgid "" "Users who prefer an installation method that automatically configures the " "<application>Xorg</application> and offers a choice of window managers " @@ -16215,7 +16349,7 @@ msgstr "" "理程式選項的使用者請參考 <link xlink:href=\"http://www.trueos.org/\"/> 網站。" #. (itstool) path: sect1/para -#: book.translate.xml:10580 +#: book.translate.xml:10639 msgid "" "For more information on the video hardware that <application>Xorg</" "application> supports, refer to the <link xlink:href=\"http://www.x.org/\">x." @@ -16225,25 +16359,25 @@ msgstr "" "xlink:href=\"http://www.x.org/\">x.org</link> 網站。" #. (itstool) path: listitem/para -#: book.translate.xml:10587 +#: book.translate.xml:10646 msgid "" "The various components of the X Window System, and how they interoperate." msgstr "組成 X Window 系統的各種元件以及它們是如何相互運作。" #. (itstool) path: listitem/para -#: book.translate.xml:10592 +#: book.translate.xml:10651 msgid "How to install and configure <application>Xorg</application>." msgstr "如何安裝並設定 <application>Xorg</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:10597 +#: book.translate.xml:10656 msgid "" "How to install and configure several window managers and desktop " "environments." msgstr "如何安裝並設定各種視窗管理程式與桌面環境。" #. (itstool) path: listitem/para -#: book.translate.xml:10602 +#: book.translate.xml:10661 msgid "" "How to use <trademark class=\"registered\">TrueType</trademark> fonts in " "<application>Xorg</application>." @@ -16252,26 +16386,26 @@ msgstr "" "\">TrueType</trademark> 字型。" #. (itstool) path: listitem/para -#: book.translate.xml:10607 +#: book.translate.xml:10666 msgid "" "How to set up your system for graphical logins (<application>XDM</" "application>)." msgstr "如何設定系統以使用圖形化登入 (<application>XDM</application>)。" #. (itstool) path: listitem/para -#: book.translate.xml:10616 +#: book.translate.xml:10675 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:10623 +#: book.translate.xml:10682 msgid "Terminology" msgstr "術語" #. (itstool) path: sect1/para -#: book.translate.xml:10625 +#: book.translate.xml:10684 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 " @@ -16281,12 +16415,12 @@ msgstr "" "會更容易上手。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10632 +#: book.translate.xml:10691 msgid "X server" msgstr "X 伺服器 (X Server)" #. (itstool) path: listitem/para -#: book.translate.xml:10635 +#: book.translate.xml:10694 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</" @@ -16307,12 +16441,12 @@ msgstr "" "<quote>X 客戶端</quote> 才是在桌機上面執行,實際上卻是相反。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10652 +#: book.translate.xml:10711 msgid "X client" msgstr "X 客戶端 (X Client)" #. (itstool) path: listitem/para -#: book.translate.xml:10655 +#: book.translate.xml:10714 msgid "" "Each X application, such as <application>XTerm</application> or " "<application>Firefox</application>, is a <quote>client</quote>. A client " @@ -16326,7 +16460,7 @@ msgstr "" "者剛點選了確定按鈕</quote>。" #. (itstool) path: listitem/para -#: book.translate.xml:10664 +#: book.translate.xml:10723 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 " @@ -16339,12 +16473,12 @@ msgstr "" "式。 在這種情景,X 客戶端與伺服器之間的溝通就需透過網路來進行。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10674 +#: book.translate.xml:10733 msgid "window manager" msgstr "視窗管理程式 (Window Manager)" #. (itstool) path: listitem/para -#: book.translate.xml:10677 +#: book.translate.xml:10736 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 " @@ -16368,7 +16502,7 @@ msgstr "" "套件集的 <filename>x11-wm</filename> 分類找到。" #. (itstool) path: listitem/para -#: book.translate.xml:10693 +#: book.translate.xml:10752 msgid "" "Each window manager uses a different configuration mechanism. Some expect " "configuration file written by hand while others provide graphical tools for " @@ -16378,12 +16512,12 @@ msgstr "" "過圖型化工具來完成大部分的設定工作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10701 +#: book.translate.xml:10760 msgid "desktop environment" msgstr "桌面環境 (Desktop Environment)" #. (itstool) path: listitem/para -#: book.translate.xml:10704 +#: book.translate.xml:10763 msgid "" "<application>KDE</application> and <application>GNOME</application> are " "considered to be desktop environments as they include an entire suite of " @@ -16395,12 +16529,12 @@ msgstr "" "網頁瀏覽器及遊戲。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10713 +#: book.translate.xml:10772 msgid "focus policy" msgstr "聚焦政策 (Focus Policy)" #. (itstool) path: listitem/para -#: book.translate.xml:10716 +#: book.translate.xml:10775 msgid "" "The window manager is responsible for the mouse focus policy. This policy " "provides some means for choosing which window is actively receiving " @@ -16411,7 +16545,7 @@ msgstr "" "入的視窗。" #. (itstool) path: listitem/para -#: book.translate.xml:10722 +#: book.translate.xml:10781 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-" @@ -16437,7 +16571,7 @@ msgstr "" "收。" #. (itstool) path: listitem/para -#: book.translate.xml:10740 +#: book.translate.xml:10799 msgid "" "Different window managers support different focus models. All of them " "support click-to-focus, and the majority of them also support other " @@ -16448,12 +16582,12 @@ msgstr "" "支援其他模式,請查看視窗管理程式的說明文件來了解可用的聚焦模式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10749 +#: book.translate.xml:10808 msgid "widgets" msgstr "視窗元件 (Widget)" #. (itstool) path: listitem/para -#: book.translate.xml:10752 +#: book.translate.xml:10811 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, " @@ -16472,37 +16606,37 @@ msgstr "" "觀。" #. (itstool) path: sect1/title -#: book.translate.xml:10769 +#: book.translate.xml:10828 msgid "Installing <application>Xorg</application>" msgstr "安裝 <application>Xorg</application>" #. (itstool) path: sect1/para -#: book.translate.xml:10771 +#: book.translate.xml:10830 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:10774 +#: book.translate.xml:10833 msgid "" "The binary package can be installed quickly but with fewer options for " "customization:" msgstr "使用 Binary 套件的安裝速度較快,但可用的自訂選項較少:" #. (itstool) path: sect1/screen -#: book.translate.xml:10777 +#: book.translate.xml:10836 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xorg</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:10779 +#: book.translate.xml:10838 msgid "To build and install from the Ports Collection:" msgstr "要從 Port 套件集編譯與安裝:" #. (itstool) path: sect1/screen -#: book.translate.xml:10781 +#: book.translate.xml:10840 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11/xorg</userinput>\n" @@ -16510,7 +16644,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:10784 +#: book.translate.xml:10843 msgid "" "Either of these installations results in the complete <application>Xorg</" "application> system being installed. Binary packages are the best option for " @@ -16520,7 +16654,7 @@ msgstr "" "較建議使用 Binary 套件安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:10788 +#: book.translate.xml:10847 msgid "" "A smaller version of the X system suitable for experienced users is " "available in <package>x11/xorg-minimal</package>. Most of the documents, " @@ -16532,36 +16666,36 @@ msgstr "" "程式會需要這些額外的元件才能運作。" #. (itstool) path: sect1/title -#: book.translate.xml:10796 +#: book.translate.xml:10855 msgid "<application>Xorg</application> Configuration" msgstr "<application>Xorg</application> 設定" #. (itstool) path: info/author -#: book.translate.xml:10799 +#: book.translate.xml:10858 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Originally contributed by</contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:10808 +#: book.translate.xml:10867 msgid "<primary>Xorg</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:10809 +#: book.translate.xml:10868 msgid "<primary><application>Xorg</application></primary>" msgstr "" #. (itstool) path: sect2/title #. (itstool) path: sect1/title -#: book.translate.xml:10812 book.translate.xml:16736 book.translate.xml:45397 -#: book.translate.xml:61363 +#: book.translate.xml:10871 book.translate.xml:16845 book.translate.xml:45637 +#: book.translate.xml:62397 msgid "Quick Start" msgstr "快速開始" #. (itstool) path: sect2/para -#: book.translate.xml:10814 +#: book.translate.xml:10873 msgid "" "<application>Xorg</application> supports most common video cards, keyboards, " "and pointing devices." @@ -16569,7 +16703,7 @@ msgstr "" "<application>Xorg</application> 支援大多數常見的顯示卡、鍵盤以及指標裝置。" #. (itstool) path: tip/para -#: book.translate.xml:10818 +#: book.translate.xml:10877 msgid "" "Video cards, monitors, and input devices are automatically detected and do " "not require any manual configuration. Do not create <filename>xorg.conf</" @@ -16581,7 +16715,7 @@ msgstr "" "步驟。" #. (itstool) path: step/para -#: book.translate.xml:10827 +#: book.translate.xml:10886 msgid "" "If <application>Xorg</application> has been used on this computer before, " "move or remove any existing configuration files:" @@ -16590,7 +16724,7 @@ msgstr "" "名或移除:" #. (itstool) path: step/screen -#: book.translate.xml:10831 +#: book.translate.xml:10890 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mv /etc/X11/xorg.conf ~/xorg.conf.etc</userinput>\n" @@ -16598,7 +16732,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:10836 +#: book.translate.xml:10895 msgid "" "Add the user who will run <application>Xorg</application> to the " "<literal>video</literal> or <literal>wheel</literal> group to enable 3D " @@ -16610,13 +16744,13 @@ msgstr "" "使用者 <replaceable>jru</replaceable> 到任一個可用的群組:" #. (itstool) path: step/screen -#: book.translate.xml:10844 +#: book.translate.xml:10903 #, 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:10848 +#: book.translate.xml:10907 msgid "" "The <acronym>TWM</acronym> window manager is included by default. It is " "started when <application>Xorg</application> starts:" @@ -16625,13 +16759,13 @@ msgstr "" "application> 時便會啟動該視窗管理程式:" #. (itstool) path: step/screen -#: book.translate.xml:10852 +#: book.translate.xml:10911 #, no-wrap msgid "<prompt>%</prompt> <userinput>startx</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:10856 +#: book.translate.xml:10915 msgid "" "On some older versions of FreeBSD, the system console must be set to " "<citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></" @@ -16643,12 +16777,12 @@ msgstr "" "citerefentry> 才可正常運作,請參考 <xref linkend=\"x-config-kms\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:10865 +#: book.translate.xml:10924 msgid "User Group for Accelerated Video" msgstr "可加速影像處理的使用者群組" #. (itstool) path: sect2/para -#: book.translate.xml:10867 +#: book.translate.xml:10926 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 " @@ -16666,18 +16800,18 @@ msgstr "" "<literal>video</literal> 則會加入 <literal>wheel</literal> 群組:" #. (itstool) path: sect2/screen -#: book.translate.xml:10877 +#: book.translate.xml:10936 #, 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:10881 +#: book.translate.xml:10940 msgid "Kernel Mode Setting (<acronym>KMS</acronym>)" msgstr "核心模式設定 (Kernel Mode Setting, <acronym>KMS</acronym>)" #. (itstool) path: sect2/para -#: book.translate.xml:10883 +#: book.translate.xml:10942 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>. " @@ -16700,7 +16834,7 @@ msgstr "" "citerefentry> Console 可避免這個問題。" #. (itstool) path: sect2/para -#: book.translate.xml:10894 +#: book.translate.xml:10953 msgid "" "Add this line to <filename>/boot/loader.conf</filename> to enable " "<citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></" @@ -16711,26 +16845,26 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10897 +#: book.translate.xml:10956 #, no-wrap msgid "kern.vty=vt" msgstr "" #. (itstool) path: sect2/title #. (itstool) path: sect1/title -#: book.translate.xml:10901 book.translate.xml:20868 book.translate.xml:31414 +#: book.translate.xml:10960 book.translate.xml:20976 book.translate.xml:31527 msgid "Configuration Files" msgstr "設定檔" #. (itstool) path: sect2/para -#: book.translate.xml:10903 +#: book.translate.xml:10962 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:10910 +#: book.translate.xml:10969 msgid "" "<application>Xorg</application> looks in several directories for " "configuration files. <filename>/usr/local/etc/X11/</filename> is the " @@ -16742,7 +16876,7 @@ msgstr "" "可以幫助將應用程式檔案與作業系統檔案分離。" #. (itstool) path: sect3/para -#: book.translate.xml:10917 +#: book.translate.xml:10976 msgid "" "Storing configuration files in the legacy <filename>/etc/X11/</filename> " "still works. However, this mixes application files with the base FreeBSD " @@ -16752,12 +16886,12 @@ msgstr "" "程式檔案與基礎 FreeBSD 檔案混合在一起存放。" #. (itstool) path: sect3/title -#: book.translate.xml:10924 +#: book.translate.xml:10983 msgid "Single or Multiple Files" msgstr "單檔或多檔" #. (itstool) path: sect3/para -#: book.translate.xml:10926 +#: book.translate.xml:10985 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 " @@ -16771,12 +16905,12 @@ msgstr "" "d/</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:10934 +#: book.translate.xml:10993 msgid "Examples of these files are shown later in this section." msgstr "於本節稍後會有這些檔案的範例。" #. (itstool) path: sect3/para -#: book.translate.xml:10937 +#: book.translate.xml:10996 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." @@ -16786,80 +16920,75 @@ msgstr "" "<filename>xorg.conf.d/</filename> 子目錄中的多檔設定方式較不明瞭且沒有彈性。" #. (itstool) path: sect2/title -#: book.translate.xml:10945 +#: book.translate.xml:11004 msgid "Video Cards" msgstr "顯示卡" #. (itstool) path: sect2/para -#: book.translate.xml:10947 +#: book.translate.xml:11006 msgid "" "Because of changes made in recent versions of FreeBSD, it is now possible to " "use graphics drivers provided by the Ports framework or as packages. As " "such, users can use one of the following drivers available from " "<package>graphics/drm-kmod</package>." msgstr "" +"由於最近 FreeBSD 版本所做的變更,現在可以使用由 Port 或套件所提供的繪圖驅動程" +"式,所以使用者可以使用下列來自 <package>graphics/drm-kmod</package> 的驅動程" +"式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10955 +#: book.translate.xml:11014 msgid "Intel KMS driver" -msgstr "" +msgstr "Intel KMS 驅動程式" #. (itstool) path: varlistentry/term -#: book.translate.xml:10956 +#: book.translate.xml:11015 msgid "Radeon KMS driver" -msgstr "" +msgstr "Radeon KMS 驅動程式" #. (itstool) path: varlistentry/term -#: book.translate.xml:10957 -#, fuzzy +#: book.translate.xml:11016 msgid "AMD KMS driver" -msgstr "RAID 磁碟機" +msgstr "AMD KMS 驅動程式" #. (itstool) path: listitem/para -#: book.translate.xml:10960 -#, fuzzy +#: book.translate.xml:11019 msgid "" "2D and 3D acceleration is supported on most Intel KMS driver graphics cards " "provided by Intel." -msgstr "Radeon 顯示卡支援 2D 及 3D 加速,最新到 HD6000 系列。" +msgstr "大多數使用 Intel KMS 驅動程式的 Intel 顯示卡支援 2D 與 3D 加速。" #. (itstool) path: listitem/para -#: book.translate.xml:10963 -#, fuzzy +#: book.translate.xml:11022 msgid "Driver name: <literal>i915kms</literal>" -msgstr "驅動程式名稱:<literal>intel</literal>" +msgstr "驅動程式名稱:<literal>i915kms</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:10965 -#, fuzzy +#: book.translate.xml:11024 msgid "" "2D and 3D acceleration is supported on most older Radeon KMS driver graphics " "cards provided by AMD." -msgstr "Radeon 顯示卡支援 2D 及 3D 加速,最新到 HD6000 系列。" +msgstr "大多數使用 Radeon KMS 驅動程式的舊 AMD 顯示卡支援 2D 與 3D 加速。" #. (itstool) path: listitem/para -#: book.translate.xml:10968 -#, fuzzy +#: book.translate.xml:11027 msgid "Driver name: <literal>radeonkms</literal>" -msgstr "驅動程式名稱:<literal>radeon</literal>" +msgstr "驅動程式名稱:<literal>radeonkms</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:10970 -#, fuzzy +#: book.translate.xml:11029 msgid "" "2D and 3D acceleration is supported on most newer AMD KMS driver graphics " "cards provided by AMD." -msgstr "Radeon 顯示卡支援 2D 及 3D 加速,最新到 HD6000 系列。" +msgstr "大多數使用 AMD KMS 驅動程式的新 AMD 顯示卡支援 2D 與 3D 加速。" #. (itstool) path: listitem/para -#: book.translate.xml:10973 -#, fuzzy +#: book.translate.xml:11032 msgid "Driver name: <literal>amdgpu</literal>" -msgstr "驅動程式名稱:<literal>radeon</literal>" +msgstr "驅動程式名稱:<literal>amdgpu</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:10975 -#, fuzzy +#: book.translate.xml:11034 msgid "" "For reference, please see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_Intel_graphics_processing_units\"/> or <link xlink:href=\"https://en." @@ -16867,15 +16996,17 @@ msgid "" "supported GPUs." msgstr "" "參考文獻請至 <link xlink:href=\"https://en.wikipedia.org/wiki/" -"List_of_Intel_graphics_processing_units\"/>。" +"List_of_Intel_graphics_processing_units\"/> 或至 <link xlink:href=\"https://" +"en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units\"/> 取得支援的 " +"GPU 清單。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10982 +#: book.translate.xml:11041 msgid "<trademark class=\"registered\">Intel</trademark>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:10985 +#: book.translate.xml:11044 msgid "" "3D acceleration is supported on most <trademark class=\"registered\">Intel</" "trademark> graphics up to Ivy Bridge (HD Graphics 2500, 4000, and P4000), " @@ -16886,12 +17017,12 @@ msgstr "" "(HD Graphics) 與 Sandy Bridge (HD Graphics 2000)。" #. (itstool) path: listitem/para -#: book.translate.xml:10990 +#: book.translate.xml:11049 msgid "Driver name: <literal>intel</literal>" msgstr "驅動程式名稱:<literal>intel</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:10992 +#: book.translate.xml:11051 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_Intel_graphics_processing_units\"/>." @@ -16900,24 +17031,24 @@ msgstr "" "List_of_Intel_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10997 +#: book.translate.xml:11056 msgid "<trademark class=\"registered\">AMD</trademark> Radeon" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11000 +#: book.translate.xml:11059 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:11003 +#: book.translate.xml:11062 msgid "Driver name: <literal>radeon</literal>" msgstr "驅動程式名稱:<literal>radeon</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:11005 +#: book.translate.xml:11064 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_AMD_graphics_processing_units\"/>." @@ -16926,12 +17057,12 @@ msgstr "" "List_of_AMD_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11010 +#: book.translate.xml:11069 msgid "NVIDIA" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11013 +#: book.translate.xml:11072 msgid "" "Several NVIDIA drivers are available in the <filename>x11</filename> " "category of the Ports Collection. Install the driver that matches the video " @@ -16941,7 +17072,7 @@ msgstr "" "得,請安裝其中與顯示卡相符的驅動程式。" #. (itstool) path: listitem/para -#: book.translate.xml:11018 +#: book.translate.xml:11077 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_Nvidia_graphics_processing_units\"/>." @@ -16950,12 +17081,12 @@ msgstr "" "List_of_Nvidia_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11023 +#: book.translate.xml:11082 msgid "Hybrid Combination Graphics" msgstr "混合組合繪圖晶片" #. (itstool) path: listitem/para -#: book.translate.xml:11026 +#: book.translate.xml:11085 msgid "" "Some notebook computers add additional graphics processing units to those " "built into the chipset or processor. <emphasis>Optimus</emphasis> combines " @@ -16975,7 +17106,7 @@ msgstr "" "acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:11035 +#: book.translate.xml:11094 msgid "" "Implementations of these hybrid graphics systems vary, and " "<application>Xorg</application> on FreeBSD is not able to drive all versions " @@ -16985,7 +17116,7 @@ msgstr "" "尚無法驅動所有的混合繪圖系統版本。" #. (itstool) path: listitem/para -#: book.translate.xml:11039 +#: book.translate.xml:11098 msgid "" "Some computers provide a <acronym>BIOS</acronym> option to disable one of " "the graphics adapters or select a <emphasis>discrete</emphasis> mode which " @@ -17002,7 +17133,7 @@ msgstr "" "class=\"registered\">Intel</trademark> 驅動程式驅動。" #. (itstool) path: listitem/para -#: book.translate.xml:11048 +#: book.translate.xml:11107 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 " @@ -17014,12 +17145,12 @@ msgstr "" "literal> 節只使用主要的 <acronym>GPU</acronym> 便能讓系統運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11059 +#: book.translate.xml:11118 msgid "Other Video Cards" msgstr "其他顯示卡" #. (itstool) path: listitem/para -#: book.translate.xml:11062 +#: book.translate.xml:11121 msgid "" "Drivers for some less-common video cards can be found in the <filename>x11-" "drivers</filename> directory of the Ports Collection." @@ -17028,7 +17159,7 @@ msgstr "" "目錄找到。" #. (itstool) path: listitem/para -#: book.translate.xml:11066 +#: book.translate.xml:11125 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 " @@ -17044,7 +17175,7 @@ msgstr "" "式來驅動顯示卡。" #. (itstool) path: listitem/para -#: book.translate.xml:11076 +#: book.translate.xml:11135 msgid "" "<package>x11-drivers/xf86-video-scfb</package> is a similar nonspecialized " "video driver that works on many <acronym>UEFI</acronym> and <trademark class=" @@ -17055,12 +17186,12 @@ msgstr "" "trademark> 的電腦上運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11083 +#: book.translate.xml:11142 msgid "Setting the Video Driver in a File" msgstr "在檔案中設定影像驅動程式" #. (itstool) path: listitem/para -#: book.translate.xml:11086 +#: book.translate.xml:11145 msgid "" "To set the <trademark class=\"registered\">Intel</trademark> driver in a " "configuration file:" @@ -17069,7 +17200,7 @@ msgstr "" "式:" #. (itstool) path: example/title -#: book.translate.xml:11090 +#: book.translate.xml:11149 msgid "" "Select <trademark class=\"registered\">Intel</trademark> Video Driver in a " "File" @@ -17077,12 +17208,12 @@ msgstr "" "在單檔中選擇 <trademark class=\"registered\">Intel</trademark> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11092 +#: book.translate.xml:11151 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-intel.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11094 +#: book.translate.xml:11153 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17093,7 +17224,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:11100 +#: book.translate.xml:11159 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 " @@ -17105,22 +17236,22 @@ msgstr "" "lv | grep -B3 display</command> 取得。" #. (itstool) path: listitem/para -#: book.translate.xml:11108 +#: book.translate.xml:11167 msgid "To set the Radeon driver in a configuration file:" msgstr "要在設定檔設定使用 Radeon 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11112 +#: book.translate.xml:11171 msgid "Select Radeon Video Driver in a File" msgstr "在單檔中選擇 Radeon 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11114 +#: book.translate.xml:11173 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-radeon.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11116 +#: book.translate.xml:11175 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17130,22 +17261,22 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11122 +#: book.translate.xml:11181 msgid "To set the <acronym>VESA</acronym> driver in a configuration file:" msgstr "要在設定檔設定使用 <acronym>VESA</acronym> 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11126 +#: book.translate.xml:11185 msgid "Select <acronym>VESA</acronym> Video Driver in a File" msgstr "在單檔中選擇 <acronym>VESA</acronym> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11129 +#: book.translate.xml:11188 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-vesa.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11131 +#: book.translate.xml:11190 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17155,7 +17286,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11137 +#: book.translate.xml:11196 msgid "" "To set the <literal>scfb</literal> driver for use with a <acronym>UEFI</" "acronym> or <trademark class=\"registered\">ARM</trademark> computer:" @@ -17164,17 +17295,17 @@ msgstr "" "trademark> 電腦使用 <literal>scfb</literal> 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11141 +#: book.translate.xml:11200 msgid "Select <literal>scfb</literal> Video Driver in a File" msgstr "在單檔中選擇 <literal>scfb</literal> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11144 +#: book.translate.xml:11203 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-scfb.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11146 +#: book.translate.xml:11205 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17184,12 +17315,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:11157 +#: book.translate.xml:11216 msgid "Monitors" msgstr "顯示器" #. (itstool) path: sect2/para -#: book.translate.xml:11159 +#: book.translate.xml:11218 msgid "" "Almost all monitors support the Extended Display Identification Data " "standard (<acronym>EDID</acronym>). <application>Xorg</application> uses " @@ -17203,7 +17334,7 @@ msgstr "" "適合的設定組合使用該顯示器。" #. (itstool) path: sect2/para -#: book.translate.xml:11167 +#: book.translate.xml:11226 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 " @@ -17215,7 +17346,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11174 +#: book.translate.xml:11233 msgid "" "Using <citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>" @@ -17224,7 +17355,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>" #. (itstool) path: listitem/para -#: book.translate.xml:11177 +#: book.translate.xml:11236 msgid "" "Run <citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> without any parameters " @@ -17235,7 +17366,7 @@ msgstr "" "輸出及已偵測到的顯示器模式清單:" #. (itstool) path: listitem/screen -#: book.translate.xml:11180 +#: book.translate.xml:11239 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xrandr</userinput>\n" @@ -17256,7 +17387,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11196 +#: book.translate.xml:11255 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. " @@ -17268,7 +17399,7 @@ msgstr "" "與 <literal>HDMI-0</literal> 接頭。" #. (itstool) path: listitem/para -#: book.translate.xml:11203 +#: book.translate.xml:11262 msgid "" "Any of the other display modes can be selected with <citerefentry vendor=" "\"xfree86\"><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></" @@ -17279,20 +17410,20 @@ msgstr "" "式。例如要切換為 1280x1024 於 60 Hz:" #. (itstool) path: listitem/screen -#: book.translate.xml:11207 +#: book.translate.xml:11266 #, no-wrap msgid "<prompt>%</prompt> <userinput>xrandr --mode 1280x1024 --rate 60</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11209 +#: book.translate.xml:11268 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:11212 +#: book.translate.xml:11271 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 " @@ -17308,7 +17439,7 @@ msgstr "" "citerefentry> 列出所有可用的輸出:" #. (itstool) path: listitem/screen -#: book.translate.xml:11220 +#: book.translate.xml:11279 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xrandr</userinput>\n" @@ -17332,7 +17463,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11239 +#: book.translate.xml:11298 msgid "" "Four outputs were found: the built-in panel <literal>LVDS1</literal>, and " "external <literal>VGA1</literal>, <literal>HDMI1</literal>, and " @@ -17342,7 +17473,7 @@ msgstr "" "literal>, <literal>HDMI1</literal> 以及 <literal>DP1</literal> 接頭。" #. (itstool) path: listitem/para -#: book.translate.xml:11244 +#: book.translate.xml:11303 msgid "" "The projector has been connected to the <literal>VGA1</literal> output. " "<citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" @@ -17356,13 +17487,13 @@ msgstr "" "側:" #. (itstool) path: listitem/screen -#: book.translate.xml:11250 +#: book.translate.xml:11309 #, no-wrap msgid "<prompt>%</prompt> <userinput>xrandr --output VGA1 --auto --right-of LVDS1</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11252 +#: book.translate.xml:11311 msgid "" "<literal>--auto</literal> chooses the resolution and refresh rate detected " "by <acronym>EDID</acronym>. If the resolution is not correctly detected, a " @@ -17377,7 +17508,7 @@ msgstr "" "可設定 <literal>--mode 1024x768</literal>。" #. (itstool) path: listitem/para -#: book.translate.xml:11261 +#: book.translate.xml:11320 msgid "" "<citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is often run from " @@ -17388,28 +17519,28 @@ msgstr "" "xinitrc</filename> 執行以在 X 啟動時設定適合的模式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11268 +#: book.translate.xml:11327 msgid "Setting Monitor Resolution in a File" msgstr "在檔案中設定螢幕解析度" #. (itstool) path: listitem/para -#: book.translate.xml:11271 +#: book.translate.xml:11330 msgid "To set a screen resolution of 1024x768 in a configuration file:" msgstr "在設定檔設定螢幕解析度為 1024x768:" #. (itstool) path: example/title -#: book.translate.xml:11275 +#: book.translate.xml:11334 msgid "Set Screen Resolution in a File" msgstr "在單檔中設定螢幕解析度" #. (itstool) path: example/para -#: book.translate.xml:11277 +#: book.translate.xml:11336 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/screen-resolution.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11279 +#: book.translate.xml:11338 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -17422,7 +17553,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11288 +#: book.translate.xml:11347 msgid "" "The few monitors that do not have <acronym>EDID</acronym> can be configured " "by setting <literal>HorizSync</literal> and <literal>VertRefresh</literal> " @@ -17432,17 +17563,17 @@ msgstr "" "及 <literal>VertRefresh</literal> 為顯示器支援的頻率範圍。" #. (itstool) path: example/title -#: book.translate.xml:11295 +#: book.translate.xml:11354 msgid "Manually Setting Monitor Frequencies" msgstr "手動設定顯示器頻率" #. (itstool) path: example/para -#: book.translate.xml:11297 +#: book.translate.xml:11356 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/monitor0-freq.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11299 +#: book.translate.xml:11358 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -17453,22 +17584,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:11311 +#: book.translate.xml:11370 msgid "Input Devices" msgstr "輸入裝置" #. (itstool) path: sect3/title -#: book.translate.xml:11314 +#: book.translate.xml:11373 msgid "Keyboards" msgstr "鍵盤" #. (itstool) path: varlistentry/term -#: book.translate.xml:11318 +#: book.translate.xml:11377 msgid "Keyboard Layout" msgstr "鍵盤配置" #. (itstool) path: listitem/para -#: book.translate.xml:11321 +#: book.translate.xml:11380 msgid "" "The standardized location of keys on a keyboard is called a " "<emphasis>layout</emphasis>. Layouts and other adjustable parameters are " @@ -17480,7 +17611,7 @@ msgstr "" "refentrytitle><manvolnum>7</manvolnum></citerefentry>。" #. (itstool) path: listitem/para -#: book.translate.xml:11326 +#: book.translate.xml:11385 msgid "" "A United States layout is the default. To select an alternate layout, set " "the <literal>XkbLayout</literal> and <literal>XkbVariant</literal> options " @@ -17492,25 +17623,25 @@ msgstr "" "選項。這會套用所有符合該類別的輸入裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:11333 +#: book.translate.xml:11392 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:11337 +#: book.translate.xml:11396 msgid "Setting a Keyboard Layout" msgstr "設定鍵盤配置" #. (itstool) path: example/para -#: book.translate.xml:11339 +#: book.translate.xml:11398 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/keyboard-fr-oss.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11341 +#: book.translate.xml:11400 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17523,12 +17654,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:11351 +#: book.translate.xml:11410 msgid "Setting Multiple Keyboard Layouts" msgstr "設定多個鍵盤配置" #. (itstool) path: example/para -#: book.translate.xml:11353 +#: book.translate.xml:11412 msgid "" "Set United States, Spanish, and Ukrainian keyboard layouts. Cycle through " "these layouts by pressing <keycombo action=\"simul\"> <keycap>Alt</keycap> " @@ -17542,13 +17673,13 @@ msgstr "" "強配置切換控制與目前配置的指示。" #. (itstool) path: example/para -#: book.translate.xml:11364 +#: book.translate.xml:11423 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/kbd-layout-multi.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11366 +#: book.translate.xml:11425 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17559,12 +17690,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:11376 +#: book.translate.xml:11435 msgid "Closing <application>Xorg</application> From the Keyboard" msgstr "從鍵盤關閉 <application>Xorg</application>" #. (itstool) path: listitem/para -#: book.translate.xml:11380 +#: book.translate.xml:11439 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 " @@ -17575,17 +17706,17 @@ msgstr "" "指令衝突。要開啟這個選項需要更改鍵盤 <literal>InputDevice</literal> 節:" #. (itstool) path: example/title -#: book.translate.xml:11388 +#: book.translate.xml:11447 msgid "Enabling Keyboard Exit from X" msgstr "開啟鍵盤離開 X 功能" #. (itstool) path: example/para -#: book.translate.xml:11390 +#: book.translate.xml:11449 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/keyboard-zap.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11392 +#: book.translate.xml:11451 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17597,12 +17728,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:11405 +#: book.translate.xml:11464 msgid "Mice and Pointing Devices" msgstr "滑鼠與指標裝置" #. (itstool) path: sect3/para -#: book.translate.xml:11407 +#: book.translate.xml:11466 msgid "" "Many mouse parameters can be adjusted with configuration options. See " "<citerefentry vendor=\"xorg\"><refentrytitle>mousedrv</" @@ -17613,12 +17744,12 @@ msgstr "" "citerefentry> 來取得完整清單。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11412 +#: book.translate.xml:11471 msgid "Mouse Buttons" msgstr "滑鼠按鍵" #. (itstool) path: listitem/para -#: book.translate.xml:11415 +#: book.translate.xml:11474 msgid "" "The number of buttons on a mouse can be set in the mouse " "<literal>InputDevice</literal> section of <filename>xorg.conf</filename>. To " @@ -17628,17 +17759,17 @@ msgstr "" "literal> 節設定,例如要設定按鍵數為 7:" #. (itstool) path: example/title -#: book.translate.xml:11421 +#: book.translate.xml:11480 msgid "Setting the Number of Mouse Buttons" msgstr "設定滑鼠按鍵數" #. (itstool) path: example/para -#: book.translate.xml:11423 +#: book.translate.xml:11482 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/mouse0-buttons.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11425 +#: book.translate.xml:11484 #, no-wrap msgid "" "Section \"InputDevice\"\n" @@ -17648,7 +17779,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11439 +#: book.translate.xml:11498 msgid "" "In some cases, <application>Xorg</application> autoconfiguration does not " "work with particular hardware, or a different configuration is desired. For " @@ -17658,14 +17789,14 @@ msgstr "" "需要使用不同的設定。針對這些情況會建立自訂的設定檔。" #. (itstool) path: warning/para -#: book.translate.xml:11445 +#: book.translate.xml:11504 msgid "" "Do not create manual configuration files unless required. Unnecessary manual " "configuration can prevent proper operation." msgstr "非必要請勿手動建立設定檔,非必要的手動設置會造成運作不正常。" #. (itstool) path: sect2/para -#: book.translate.xml:11450 +#: book.translate.xml:11509 msgid "" "A configuration file can be generated by <application>Xorg</application> " "based on the detected hardware. This file is often a useful starting point " @@ -17675,18 +17806,18 @@ msgstr "" "開始自訂設定很有幫助。" #. (itstool) path: sect2/para -#: book.translate.xml:11455 +#: book.translate.xml:11514 msgid "Generating an <filename>xorg.conf</filename>:" msgstr "產生 <filename>xorg.conf</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:11457 +#: book.translate.xml:11516 #, no-wrap msgid "<prompt>#</prompt> <userinput>Xorg -configure</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11459 +#: book.translate.xml:11518 msgid "" "The configuration file is saved to <filename>/root/xorg.conf.new</filename>. " "Make any changes desired, then test that file with:" @@ -17695,13 +17826,13 @@ msgstr "" "後使用以下指令測試該檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:11463 +#: book.translate.xml:11522 #, no-wrap msgid "<prompt>#</prompt> <userinput>Xorg -config /root/xorg.conf.new</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11465 +#: book.translate.xml:11524 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." @@ -17711,17 +17842,17 @@ msgstr "" "usr/local/etc/X11/xorg.conf.d/</filename>。" #. (itstool) path: sect1/title -#: book.translate.xml:11483 +#: book.translate.xml:11542 msgid "Using Fonts in <application>Xorg</application>" msgstr "在 <application>Xorg</application> 使用字型" #. (itstool) path: sect2/title -#: book.translate.xml:11486 +#: book.translate.xml:11545 msgid "Type1 Fonts" msgstr "Type1 字型" #. (itstool) path: sect2/para -#: book.translate.xml:11488 +#: book.translate.xml:11547 msgid "" "The default fonts that ship with <application>Xorg</application> are less " "than ideal for typical desktop publishing applications. Large presentation " @@ -17759,27 +17890,27 @@ msgstr "" "linkend=\"truetype\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:11507 +#: book.translate.xml:11566 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:11510 +#: book.translate.xml:11569 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install urwfonts</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11512 +#: book.translate.xml:11571 msgid "" "Alternatively, to build from the Ports Collection, run the following " "commands:" msgstr "或由 Port 套件集編譯,可執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:11515 +#: book.translate.xml:11574 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput>\n" @@ -17787,7 +17918,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11518 +#: book.translate.xml:11577 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 " @@ -17798,18 +17929,18 @@ msgstr "" "filename>),內容為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11523 +#: book.translate.xml:11582 #, no-wrap msgid "FontPath \"/usr/local/share/fonts/urwfonts/\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11525 +#: book.translate.xml:11584 msgid "Alternatively, at the command line in the X session run:" msgstr "或者在 X session 的指令列執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:11528 +#: book.translate.xml:11587 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/urwfonts</userinput>\n" @@ -17817,7 +17948,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11531 +#: book.translate.xml:11590 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 " @@ -17834,22 +17965,22 @@ msgstr "" "範。" #. (itstool) path: sect2/title -#: book.translate.xml:11543 +#: book.translate.xml:11602 msgid "<trademark class=\"registered\">TrueType</trademark> Fonts" msgstr "<trademark class=\"registered\">TrueType</trademark> 字型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11545 +#: book.translate.xml:11604 msgid "<primary>TrueType Fonts</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11548 +#: book.translate.xml:11607 msgid "<primary>fonts</primary> <secondary>TrueType</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11553 +#: book.translate.xml:11612 msgid "" "<application>Xorg</application> has built in support for rendering " "<trademark class=\"registered\">TrueType</trademark> fonts. There are two " @@ -17866,13 +17997,13 @@ msgstr "" "\"</literal> section。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11561 +#: book.translate.xml:11620 #, no-wrap msgid "Load \"freetype\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11563 +#: book.translate.xml:11622 msgid "" "Now make a directory for the <trademark class=\"registered\">TrueType</" "trademark> fonts (for example, <filename>/usr/local/share/fonts/TrueType</" @@ -17884,10 +18015,10 @@ msgid "" "\">UNIX</trademark>/<trademark class=\"registered\">MS-DOS</trademark>/" "<trademark class=\"registered\">Windows</trademark> format for use by " "<application>Xorg</application>. Once the files have been copied into this " -"directory, use <application>mkfontdir</application> to create a " +"directory, use <application>mkfontscale</application> to create a " "<filename>fonts.dir</filename>, so that the X font renderer knows that these " -"new files have been installed. <command>mkfontdir</command> can be installed " -"as a package:" +"new files have been installed. <command>mkfontscale</command> can be " +"installed as a package:" msgstr "" "現在要建立一個儲存 <trademark class=\"registered\">TrueType</trademark> 字型" "的目錄 (例如,<filename>/usr/local/share/fonts/TrueType</filename>) 然後複製" @@ -17897,31 +18028,31 @@ msgstr "" "\"registered\">Mac</trademark>,<application>Xorg</application> 使用的字型必" "須為 <trademark class=\"registered\">UNIX</trademark>/<trademark class=" "\"registered\">MS-DOS</trademark>/<trademark class=\"registered\">Windows</" -"trademark> 的格式。檔案複製到讓目錄之後,使用 <application>mkfontdir</" +"trademark> 的格式。檔案複製到讓目錄之後,使用 <application>mkfontscale</" "application> 來建立 <filename>fonts.dir</filename> 來讓 X 字型繪製程式知道安" -"裝了新的檔案。<command>mkfontdir</command> 可用套件的方式安裝:" +"裝了新的檔案。<command>mkfontscale</command> 可用套件的方式安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:11577 +#: book.translate.xml:11636 #, no-wrap -msgid "<prompt>#</prompt> <userinput>pkg install mkfontdir</userinput>" -msgstr "" +msgid "<prompt>#</prompt> <userinput>pkg install mkfontscale</userinput>" +msgstr "<prompt>#</prompt> <userinput>pkg install mkfontscale</userinput>" #. (itstool) path: sect2/para -#: book.translate.xml:11579 +#: book.translate.xml:11638 msgid "Then create an index of X font files in a directory:" msgstr "然後在目錄中建立 X 字型檔的索引:" #. (itstool) path: sect2/screen -#: book.translate.xml:11582 +#: book.translate.xml:11641 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/local/share/fonts/TrueType</userinput>\n" -"<prompt>#</prompt> <userinput>mkfontdir</userinput>" +"<prompt>#</prompt> <userinput>mkfontscale</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11585 +#: book.translate.xml:11644 msgid "" "Now add the <trademark class=\"registered\">TrueType</trademark> directory " "to the font path. This is just the same as described in <xref linkend=" @@ -17931,7 +18062,7 @@ msgstr "" "徑。這個動作與 <xref linkend=\"type1\"/> 中所介紹的方式相同:" #. (itstool) path: sect2/screen -#: book.translate.xml:11588 +#: book.translate.xml:11647 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/TrueType</userinput>\n" @@ -17939,7 +18070,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11591 +#: book.translate.xml:11650 msgid "" "or add a <literal>FontPath</literal> line to <filename>xorg.conf</filename>." msgstr "" @@ -17947,7 +18078,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:11594 +#: book.translate.xml:11653 msgid "" "Now <application>Gimp</application>, <application>Apache OpenOffice</" "application>, and all of the other X applications should now recognize the " @@ -17963,22 +18094,22 @@ msgstr "" "application> 中) 現在會看起來比較像樣了。" #. (itstool) path: sect2/title -#: book.translate.xml:11615 +#: book.translate.xml:11674 msgid "Anti-Aliased Fonts" msgstr "反鋸齒字型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11617 +#: book.translate.xml:11676 msgid "<primary>anti-aliased fonts</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11620 +#: book.translate.xml:11679 msgid "<primary>fonts</primary> <secondary>anti-aliased</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11625 +#: book.translate.xml:11684 msgid "" "All fonts in <application>Xorg</application> that are found in <filename>/" "usr/local/share/fonts/</filename> and <filename>~/.fonts/</filename> are " @@ -17994,7 +18125,7 @@ msgstr "" "<application>Firefox</application>。" #. (itstool) path: sect2/para -#: book.translate.xml:11634 +#: book.translate.xml:11693 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/" @@ -18011,12 +18142,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11643 +#: book.translate.xml:11702 msgid "<primary>XML</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11645 +#: book.translate.xml:11704 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 " @@ -18028,7 +18159,7 @@ msgstr "" "fontconfig></literal> 標籤:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11651 +#: book.translate.xml:11710 #, no-wrap msgid "" "<?xml version=\"1.0\"?>\n" @@ -18037,7 +18168,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11655 +#: book.translate.xml:11714 msgid "" "As previously stated, all fonts in <filename>/usr/local/share/fonts/</" "filename> as well as <filename>~/.fonts/</filename> are already made " @@ -18051,26 +18182,26 @@ msgstr "" "local/etc/fonts/local.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11663 +#: book.translate.xml:11722 #, no-wrap msgid "<dir>/path/to/my/fonts</dir>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11665 +#: book.translate.xml:11724 msgid "" "After adding new fonts, and especially new font directories, rebuild the " "font caches:" msgstr "加入新字型及額外的新字型目錄之後,需重新建立字型快取:" #. (itstool) path: sect2/screen -#: book.translate.xml:11669 +#: book.translate.xml:11728 #, no-wrap msgid "<prompt>#</prompt> <userinput>fc-cache -f</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11671 +#: book.translate.xml:11730 msgid "" "Anti-aliasing makes borders slightly fuzzy, which makes very small text more " "readable and removes <quote>staircases</quote> from large text, but can " @@ -18082,7 +18213,7 @@ msgstr "" "的字型大小使用反鋸齒效果,可加入這些行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11678 +#: book.translate.xml:11737 #, no-wrap msgid "" " <match target=\"font\">\n" @@ -18104,12 +18235,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11695 +#: book.translate.xml:11754 msgid "<primary>fonts</primary> <secondary>spacing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11700 +#: book.translate.xml:11759 msgid "" "Spacing for some monospaced fonts might also be inappropriate with anti-" "aliasing. This seems to be an issue with <application>KDE</application>, in " @@ -18121,7 +18252,7 @@ msgstr "" "入以下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11706 +#: book.translate.xml:11765 #, no-wrap msgid "" "\t<match target=\"pattern\" name=\"family\">\n" @@ -18143,7 +18274,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11723 +#: book.translate.xml:11782 msgid "" "(this aliases the other common names for fixed fonts as <literal>\"mono\"</" "literal>), and then add:" @@ -18151,7 +18282,7 @@ msgstr "" "(這會設定等寬字型的其他常用名稱為 <literal>\"mono\"</literal>),然後加入:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11726 +#: book.translate.xml:11785 #, no-wrap msgid "" " <match target=\"pattern\" name=\"family\">\n" @@ -18165,7 +18296,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11735 +#: book.translate.xml:11794 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. " @@ -18177,7 +18308,7 @@ msgstr "" "<filename>local.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11741 +#: book.translate.xml:11800 #, no-wrap msgid "" " <match target=\"pattern\" name=\"family\">\n" @@ -18191,7 +18322,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11750 +#: book.translate.xml:11809 msgid "" "After editing <filename>local.conf</filename>, make certain to end the file " "with the <literal></fontconfig></literal> tag. Not doing this will " @@ -18201,7 +18332,7 @@ msgstr "" "fontconfig></literal> 標籤結尾,若沒有使用會讓所做的更改被忽略。" #. (itstool) path: sect2/para -#: book.translate.xml:11755 +#: book.translate.xml:11814 msgid "" "Users can add personalized settings by creating their own <filename>~/." "config/fontconfig/fonts.conf</filename>. This file uses the same " @@ -18211,17 +18342,17 @@ msgstr "" "來加入個人化的設定,此檔案使用與上述說明相同的 <acronym>XML</acronym> 格式。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11760 +#: book.translate.xml:11819 msgid "<primary>LCD screen</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11761 +#: book.translate.xml:11820 msgid "<primary>Fonts</primary> <secondary>LCD screen</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11764 +#: book.translate.xml:11823 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 " @@ -18235,7 +18366,7 @@ msgstr "" "處:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11771 +#: book.translate.xml:11830 #, no-wrap msgid "" "\t <match target=\"font\">\n" @@ -18249,7 +18380,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:11781 +#: book.translate.xml:11840 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</" @@ -18260,24 +18391,24 @@ msgstr "" "看那一個效果最好。" #. (itstool) path: info/title -#: book.translate.xml:11792 +#: book.translate.xml:11851 msgid "The X Display Manager" msgstr "X 顯示管理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:11795 +#: book.translate.xml:11854 msgid "" "<personname> <firstname>Seth</firstname> <surname>Kingsley</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:11805 +#: book.translate.xml:11864 msgid "<primary>X Display Manager</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:11806 +#: book.translate.xml:11865 msgid "" "<application>Xorg</application> provides an X Display Manager, " "<application>XDM</application>, which can be used for login session " @@ -18291,7 +18422,7 @@ msgstr "" "(登入與密碼)。" #. (itstool) path: sect1/para -#: book.translate.xml:11813 +#: book.translate.xml:11872 msgid "" "This section demonstrates how to configure the X Display Manager on FreeBSD. " "Some desktop environments provide their own graphical login manager. Refer " @@ -18305,12 +18436,12 @@ msgstr "" "> 取得如何設定 KDE 顯示管理程式 (KDE Display Manager) 的操作方式。" #. (itstool) path: sect2/title -#: book.translate.xml:11820 +#: book.translate.xml:11879 msgid "Configuring <application>XDM</application>" msgstr "設定 <application>XDM</application>" #. (itstool) path: sect2/para -#: book.translate.xml:11822 +#: book.translate.xml:11881 msgid "" "To install <application>XDM</application>, use the <package>x11/xdm</" "package> package or port. Once installed, <application>XDM</application> can " @@ -18322,13 +18453,13 @@ msgstr "" "需編輯 <filename>/etc/ttys</filename> 中的此項目:" #. (itstool) path: sect2/screen -#: book.translate.xml:11828 +#: book.translate.xml:11887 #, no-wrap msgid "ttyv8 \"/usr/local/bin/xdm -nodaemon\" xterm off secure" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11830 +#: book.translate.xml:11889 msgid "" "Change the <literal>off</literal> to <literal>on</literal> and save the " "edit. The <literal>ttyv8</literal> in this entry indicates that " @@ -18339,8 +18470,7 @@ msgstr "" "第 9 個虛擬終端機執行。" #. (itstool) path: sect2/para -#: book.translate.xml:11835 -#, fuzzy +#: book.translate.xml:11894 msgid "" "The <application>XDM</application> configuration directory is located in " "<filename>/usr/local/etc/X11/xdm</filename>. This directory contains several " @@ -18352,31 +18482,31 @@ msgid "" "\"xfree86\"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>." msgstr "" -"<application>XDM</application> 的設定目錄位於 <filename>/usr/local/lib/X11/" +"<application>XDM</application> 的設定目錄位於 <filename>/usr/local/etc/X11/" "xdm</filename>。此目錄中包含數個可用來更改 <application>XDM</application> 行" -"為與外觀的檔案以及在 <application>XDM</application> 執行時用來設定桌面的一" -"些 Script 及程式,<xref linkend=\"xdm-config-files\"/> 摘要了每個檔案的功" -"能。這些檔案正確的語法與用法在 <citerefentry vendor=" +"為與外觀的檔案以及在 <application>XDM</application> 執行時用來設定桌面的一些 " +"Script 及程式,<xref linkend=\"xdm-config-files\"/> 摘要了每個檔案的功能。這" +"些檔案正確的語法與用法在 <citerefentry vendor=" "\"xfree86\"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> 有說明。" #. (itstool) path: table/title -#: book.translate.xml:11845 +#: book.translate.xml:11904 msgid "XDM Configuration Files" msgstr "XDM 設定檔" #. (itstool) path: row/entry -#: book.translate.xml:11850 +#: book.translate.xml:11909 msgid "File" msgstr "檔案" #. (itstool) path: row/entry -#: book.translate.xml:11857 +#: book.translate.xml:11916 msgid "<filename>Xaccess</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11858 +#: book.translate.xml:11917 msgid "" "The protocol for connecting to <application>XDM</application> is called the " "X Display Manager Connection Protocol (<acronym>XDMCP</acronym>) This file " @@ -18390,12 +18520,12 @@ msgstr "" "預設此檔案並不允許任何遠端的客戶端連線。" #. (itstool) path: row/entry -#: book.translate.xml:11868 +#: book.translate.xml:11927 msgid "<filename>Xresources</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11869 +#: book.translate.xml:11928 msgid "" "This file controls the look and feel of the <application>XDM</application> " "display chooser and login screens. The default configuration is a simple " @@ -18410,41 +18540,39 @@ msgstr "" "<application>Xorg</application> 說明文件中說明的 app-defaults 檔相同。" #. (itstool) path: row/entry -#: book.translate.xml:11882 +#: book.translate.xml:11941 msgid "<filename>Xservers</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11883 +#: book.translate.xml:11942 msgid "" "The list of local and remote displays the chooser should provide as login " "choices." msgstr "登入選擇時在選擇器上要提供的本地及遠端顯示清單。" #. (itstool) path: row/entry -#: book.translate.xml:11888 +#: book.translate.xml:11947 msgid "<filename>Xsession</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11889 -#, fuzzy +#: book.translate.xml:11948 msgid "" "Default session script for logins which is run by <application>XDM</" "application> after a user has logged in. This points to a customized session " "script in <filename>~/.xsession</filename>." msgstr "" "預設的登入階段 Script,使用者登入之後由 <application>XDM</application> 執行。" -"一般每一位使用者都會有自訂的階段 Script 在 <filename>~/.xsession</filename> " -"來覆蓋此 Script 的設定。" +"這會指向使用者自訂的登入階段 Script 於 <filename>~/.xsession</filename>。" #. (itstool) path: row/entry -#: book.translate.xml:11896 +#: book.translate.xml:11955 msgid "<filename>Xsetup_</filename>*" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11897 +#: book.translate.xml:11956 msgid "" "Script to automatically launch applications before displaying the chooser or " "login interfaces. There is a script for each display being used, named " @@ -18458,22 +18586,22 @@ msgstr "" "<command>xconsole</command>。" #. (itstool) path: row/entry -#: book.translate.xml:11908 +#: book.translate.xml:11967 msgid "<filename>xdm-config</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11909 +#: book.translate.xml:11968 msgid "Global configuration for all displays running on this machine." msgstr "用來設定所有在此機器上執行的顯示的全域設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:11914 +#: book.translate.xml:11973 msgid "<filename>xdm-errors</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11915 +#: book.translate.xml:11974 msgid "" "Contains errors generated by the server program. If a display that " "<application>XDM</application> is trying to start hangs, look at this file " @@ -18485,23 +18613,23 @@ msgstr "" "寫入至使用者的 <filename>~/.xsession-errors</filename>。" #. (itstool) path: row/entry -#: book.translate.xml:11924 +#: book.translate.xml:11983 msgid "<filename>xdm-pid</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11925 +#: book.translate.xml:11984 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:11934 +#: book.translate.xml:11993 msgid "Configuring Remote Access" msgstr "設定遠端存取" #. (itstool) path: sect2/para -#: book.translate.xml:11936 +#: book.translate.xml:11995 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 " @@ -18511,20 +18639,19 @@ msgstr "" "其他系統的使用者可連線到顯示伺服器,需編輯存取控制規則及開啟連線傾聽程式。" #. (itstool) path: sect2/para -#: book.translate.xml:11941 -#, fuzzy +#: book.translate.xml:12000 msgid "" "To configure <application>XDM</application> to listen for any remote " "connection, comment out the <literal>DisplayManager.requestPort</literal> " "line in <filename>/usr/local/etc/X11/xdm/xdm-config</filename> by putting a " "<literal>!</literal> in front of it:" msgstr "" -"要設定 <application>XDM</application> 傾聽作何遠端的連線,在 <filename>/usr/" -"local/lib/X11/xdm/xdm-config</filename> 中的 <literal>DisplayManager." +"要設定 <application>XDM</application> 傾聽任何遠端的連線,在 <filename>/usr/" +"local/etc/X11/xdm/xdm-config</filename> 中的 <literal>DisplayManager." "requestPort</literal> 行前加上 <literal>!</literal> 來註解該行:" #. (itstool) path: sect2/screen -#: book.translate.xml:11947 +#: book.translate.xml:12006 #, no-wrap msgid "" "! SECURITY: do not listen for XDMCP or Chooser requests\n" @@ -18533,8 +18660,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11951 -#, fuzzy +#: book.translate.xml:12010 msgid "" "Save the edits and restart <application>XDM</application>. To restrict " "remote access, look at the example entries in <filename>/usr/local/etc/X11/" @@ -18543,24 +18669,24 @@ msgid "" "citerefentry> for further information." msgstr "" "儲存編輯並重新啟動 <application>XDM</application>,要限制遠端存取,請看 " -"<filename>/usr/local/lib/X11/xdm/Xaccess</filename> 中的範例項目,並參考 " +"<filename>/usr/local/etc/X11/xdm/Xaccess</filename> 中的範例項目,並參考 " "<citerefentry vendor=\"xfree86\"><refentrytitle>xdm</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 取得進一步資訊。" #. (itstool) path: info/title -#: book.translate.xml:11960 +#: book.translate.xml:12019 msgid "Desktop Environments" msgstr "桌面環境" #. (itstool) path: authorgroup/author -#: book.translate.xml:11963 +#: book.translate.xml:12022 msgid "" "<personname> <firstname>Valentino</firstname> <surname>Vaschetto</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:11974 +#: book.translate.xml:12033 msgid "" "This section describes how to install three popular desktop environments on " "a FreeBSD system. A desktop environment can range from a simple window " @@ -18573,12 +18699,12 @@ msgstr "" "<filename>x11-wm</filename> 分類取得。" #. (itstool) path: sect2/title -#: book.translate.xml:11982 +#: book.translate.xml:12041 msgid "GNOME" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11985 +#: book.translate.xml:12044 msgid "" "<application>GNOME</application> is a user-friendly desktop environment. It " "includes a panel for starting applications and displaying status, a desktop, " @@ -18598,18 +18724,18 @@ msgstr "" "裝、設定和管理 <application>GNOME</application> 的額外文件。" #. (itstool) path: sect2/para -#: book.translate.xml:11996 +#: book.translate.xml:12055 msgid "This desktop environment can be installed from a package:" msgstr "這套桌面環境可以從套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:11999 +#: book.translate.xml:12058 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnome3</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12001 +#: book.translate.xml:12060 msgid "" "To instead build <application>GNOME</application> from ports, use the " "following command. <application>GNOME</application> is a large application " @@ -18620,7 +18746,7 @@ msgstr "" "上,也會需要花費一些時間編譯。" #. (itstool) path: sect2/screen -#: book.translate.xml:12007 +#: book.translate.xml:12066 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11/gnome3</userinput>\n" @@ -18628,23 +18754,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12010 +#: book.translate.xml:12069 msgid "" "<application>GNOME</application> requires <filename>/proc</filename> to be " "mounted. Add this line to <filename>/etc/fstab</filename> to mount this file " "system automatically during system startup:" msgstr "" "<application>GNOME</application> 需要掛載 <filename>/proc</filename>。加入下" -"行到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統。" +"行到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12015 book.translate.xml:12104 +#: book.translate.xml:12074 book.translate.xml:12163 #, no-wrap msgid "proc /proc procfs rw 0 0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12017 +#: book.translate.xml:12076 msgid "" "<application>GNOME</application> uses <application>D-Bus</application> and " "<application>HAL</application> for a message bus and hardware abstraction. " @@ -18658,7 +18784,7 @@ msgstr "" "要在 <filename>/etc/rc.conf</filename> 開啟,這樣在系統開機時才會啟動:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12025 book.translate.xml:12114 +#: book.translate.xml:12084 book.translate.xml:12173 #, no-wrap msgid "" "dbus_enable=\"YES\"\n" @@ -18666,7 +18792,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12028 +#: book.translate.xml:12087 msgid "" "After installation, configure <application>Xorg</application> to start " "<application>GNOME</application>. The easiest way to do this is to enable " @@ -18681,13 +18807,13 @@ msgstr "" "conf</filename> 來開啟:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12037 +#: book.translate.xml:12096 #, no-wrap msgid "gdm_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12039 +#: book.translate.xml:12098 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</" @@ -18697,20 +18823,20 @@ msgstr "" "<filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12043 +#: book.translate.xml:12102 #, no-wrap msgid "gnome_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12045 +#: book.translate.xml:12104 msgid "" "<application>GDM</application> will start automatically when the system " "boots." msgstr "<application>GDM</application> 則會在系統開機時自動啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:12048 +#: book.translate.xml:12107 msgid "" "A second method for starting <application>GNOME</application> is to type " "<command>startx</command> from the command-line after configuring " @@ -18725,13 +18851,13 @@ msgstr "" "gnome-session</filename>。若檔案不存在,則使用以下指令建立一個:" #. (itstool) path: sect2/screen -#: book.translate.xml:12057 +#: book.translate.xml:12116 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \"exec /usr/local/bin/gnome-session\" > ~/.xinitrc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12059 +#: book.translate.xml:12118 msgid "" "A third method is to use <application>XDM</application> as the display " "manager. In this case, create an executable <filename>~/.xsession</filename>:" @@ -18740,18 +18866,18 @@ msgstr "" "需要建立一個可執行的 <filename>~/.xsession</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12063 +#: book.translate.xml:12122 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \"exec /usr/local/bin/gnome-session\" > ~/.xsession</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:12067 +#: book.translate.xml:12126 msgid "KDE" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12071 +#: book.translate.xml:12130 msgid "" "<application>KDE</application> is another easy-to-use desktop environment. " "This desktop provides a suite of applications with a consistent look and " @@ -18770,18 +18896,18 @@ msgstr "" "freebsd.kde.org</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:12080 +#: book.translate.xml:12139 msgid "To install the <application>KDE</application> package, type:" msgstr "要安裝 <application>KDE</application> 套件,請輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:12083 +#: book.translate.xml:12142 #, no-wrap -msgid "<prompt>#</prompt> <userinput>pkg install x11/kde4</userinput>" -msgstr "" +msgid "<prompt>#</prompt> <userinput>pkg install x11/kde5</userinput>" +msgstr "<prompt>#</prompt> <userinput>pkg install x11/kde5</userinput>" #. (itstool) path: sect2/para -#: book.translate.xml:12085 +#: book.translate.xml:12144 msgid "" "To instead build the <application>KDE</application> port, use the following " "command. Installing the port will provide a menu for selecting which " @@ -18793,20 +18919,22 @@ msgstr "" "一個大型的應用程式,即使在較快的電腦上仍需要花費一段時間來編譯。" #. (itstool) path: sect2/screen -#: book.translate.xml:12091 +#: book.translate.xml:12150 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>cd /usr/ports/x11/kde4</userinput>\n" +"<prompt>#</prompt> <userinput>cd /usr/ports/x11/kde5</userinput>\n" "<prompt>#</prompt> <userinput>make install clean</userinput>" msgstr "" +"<prompt>#</prompt> <userinput>cd /usr/ports/x11/kde5</userinput>\n" +"<prompt>#</prompt> <userinput>make install clean</userinput>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12094 +#: book.translate.xml:12153 msgid "<primary>KDE</primary> <secondary>display manager</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12099 +#: book.translate.xml:12158 msgid "" "<application>KDE</application> requires <filename>/proc</filename> to be " "mounted. Add this line to <filename>/etc/fstab</filename> to mount this file " @@ -18816,7 +18944,7 @@ msgstr "" "到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統:" #. (itstool) path: sect2/para -#: book.translate.xml:12106 +#: book.translate.xml:12165 msgid "" "<application>KDE</application> uses <application>D-Bus</application> and " "<application>HAL</application> for a message bus and hardware abstraction. " @@ -18830,24 +18958,35 @@ msgstr "" "<filename>/etc/rc.conf</filename> 開啟,這樣在系統開機時才會啟動:" #. (itstool) path: sect2/para -#: book.translate.xml:12117 +#: book.translate.xml:12176 msgid "" -"The installation of <application>KDE</application> includes the KDE Display " -"Manager, <application>KDM</application>. To enable this display manager, add " -"this line to <filename>/etc/rc.conf</filename>:" +"Since KDE Plasma 5, the KDE Display Manager, <application>KDM</application> " +"is no longer developed. A possible replacement is <application>SDDM</" +"application>. To install it, type:" msgstr "" -"<application>KDE</application> 的安裝包含了 KDE Display Manager, " -"<application>KDM</application>,要開啟這個顯示管理程式,需加入下行到 " -"<filename>/etc/rc.conf</filename>:" +"自 KDE Plasma 5 開始,KDE Display Manager, <application>KDM</application> 便" +"停止開發,可能的替代方案為 <application>SDDM</application>,要安裝該套件可輸" +"入:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:12181 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>pkg install x11/sddm</userinput>" +msgstr "<prompt>#</prompt> <userinput>pkg install x11/sddm</userinput>" + +#. (itstool) path: sect2/para +#: book.translate.xml:12183 +msgid "Add this line to <filename>/etc/rc.conf</filename>:" +msgstr "加入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12123 +#: book.translate.xml:12186 #, no-wrap -msgid "kdm4_enable=\"YES\"" +msgid "sddm_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12125 +#: book.translate.xml:12188 msgid "" "A second method for launching <application>KDE</application> is to type " "<command>startx</command> from the command line. For this to work, the " @@ -18858,13 +18997,13 @@ msgstr "" "xinitrc</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12131 +#: book.translate.xml:12194 #, no-wrap -msgid "exec /usr/local/bin/startkde" +msgid "exec ck-launch-session startkde" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12133 +#: book.translate.xml:12196 msgid "" "A third method for starting <application>KDE</application> is through " "<application>XDM</application>. To do so, create an executable <filename>~/." @@ -18875,13 +19014,13 @@ msgstr "" "filename> 如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:12138 +#: book.translate.xml:12201 #, no-wrap -msgid "<prompt>%</prompt> <userinput>echo \"exec /usr/local/bin/startkde\" > ~/.xsession</userinput>" +msgid "<prompt>%</prompt> <userinput>echo \"exec ck-launch-session startkde\" > ~/.xsession</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12140 +#: book.translate.xml:12203 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." @@ -18890,12 +19029,12 @@ msgstr "" "如何使用各種選單及應用程式的資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:12146 +#: book.translate.xml:12209 msgid "Xfce" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12148 +#: book.translate.xml:12211 msgid "" "<application>Xfce</application> is a desktop environment based on the GTK+ " "toolkit used by <application>GNOME</application>. However, it is more " @@ -18916,23 +19055,23 @@ msgstr "" "xfce.org</link> 取得。" #. (itstool) path: sect2/para -#: book.translate.xml:12159 +#: book.translate.xml:12222 msgid "To install the <application>Xfce</application> package:" msgstr "要安裝 <application>Xfce</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:12162 +#: book.translate.xml:12225 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xfce</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12164 +#: book.translate.xml:12227 msgid "Alternatively, to build the port:" msgstr "或者使用 Port 編譯:" #. (itstool) path: sect2/screen -#: book.translate.xml:12166 +#: book.translate.xml:12229 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11-wm/xfce4</userinput>\n" @@ -18940,28 +19079,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12169 -#, fuzzy +#: book.translate.xml:12232 msgid "" "<application>Xfce</application> uses <application>D-Bus</application> for a " "message bus. This application is automatically installed as dependency of " "<application>Xfce</application>. Enable it in <filename>/etc/rc.conf</" "filename> so it will be started when the system boots:" msgstr "" -"<application>KDE</application> 使用了 <application>D-Bus</application> 以及 " -"<application>HAL</application> 的 Message bus 與 Hardware abstraction。這兩個" -"應用程式會隨著 <application>KDE</application> 的相依一併自動安裝,但需要在 " -"<filename>/etc/rc.conf</filename> 開啟,這樣在系統開機時才會啟動:" +"<application>Xfce</application> 使用了 <application>D-Bus</application> 作為 " +"Message bus,由於是 <application>Xfce</application> 的相依,因此會自動安裝," +"但仍要在 <filename>/etc/rc.conf</filename> 中開啟該程式才會在系統開機時啟動:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12176 +#: book.translate.xml:12239 #, no-wrap msgid "dbus_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12178 -#, fuzzy +#: book.translate.xml:12241 msgid "" "Unlike <application>GNOME</application> or <application>KDE</application>, " "<application>Xfce</application> does not provide its own login manager. In " @@ -18970,18 +19106,18 @@ msgid "" "filename> with this command:" msgstr "" "不像 <application>GNOME</application> 或 <application>KDE</application>," -"<application>Xfce</application> 並沒有自己的登入管理程式,要由指令列啟動 " -"<application>Xfce</application> 需輸入 <command>startx</command>,在這之前需" -"先加入其項目到 <filename>~/.xinitrc</filename>:" +"<application>Xfce</application> 並沒有自己的登入管理程式,要能用 " +"<command>startx</command> 指令列啟動 <application>Xfce</application> 之前需先" +"加入其項目到 <filename>~/.xinitrc</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12186 +#: book.translate.xml:12249 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \". /usr/local/etc/xdg/xfce4/xinitrc\" > ~/.xinitrc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12188 +#: book.translate.xml:12251 msgid "" "An alternate method is to use <application>XDM</application>. To configure " "this method, create an executable <filename>~/.xsession</filename>:" @@ -18990,25 +19126,25 @@ msgstr "" "行的 <filename>~/.xsession</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12192 +#: book.translate.xml:12255 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \". /usr/local/etc/xdg/xfce4/xinitrc\" > ~/.xsession</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:12197 +#: book.translate.xml:12260 msgid "Installing Compiz Fusion" msgstr "安裝 Compiz Fusion" #. (itstool) path: sect1/para -#: book.translate.xml:12199 +#: book.translate.xml:12262 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:12202 +#: book.translate.xml:12265 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 " @@ -19018,12 +19154,12 @@ msgstr "" "一些未在 Port 說明文件中說明的步驟。" #. (itstool) path: sect2/title -#: book.translate.xml:12207 +#: book.translate.xml:12270 msgid "Setting up the FreeBSD nVidia Driver" msgstr "設定 FreeBSD nVidia 驅動程式" #. (itstool) path: sect2/para -#: book.translate.xml:12209 +#: book.translate.xml:12272 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 " @@ -19035,7 +19171,7 @@ msgstr "" "<filename>xorg.conf</filename> 設定。" #. (itstool) path: sect2/para -#: book.translate.xml:12215 +#: book.translate.xml:12278 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 " @@ -19046,7 +19182,7 @@ msgstr "" "與此主題相關的問題</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:12218 +#: book.translate.xml:12281 msgid "" "Having determined the correct driver to use for your card, installation is " "as simple as installing any other package." @@ -19055,18 +19191,18 @@ msgstr "" "件一樣簡單。" #. (itstool) path: sect2/para -#: book.translate.xml:12222 +#: book.translate.xml:12285 msgid "For example, to install the latest driver:" msgstr "例如,要安裝最新的驅動程式:" #. (itstool) path: sect2/screen -#: book.translate.xml:12224 +#: book.translate.xml:12287 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install x11/nvidia-driver</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12226 +#: book.translate.xml:12289 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>:" @@ -19075,17 +19211,17 @@ msgstr "" "loader.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12230 +#: book.translate.xml:12293 #, no-wrap msgid "nvidia_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12233 +#: book.translate.xml:12296 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 " -"that the some versions of <application>Xorg</application> will not function " +"To immediately load the kernel module into the running kernel issue a " +"command like <command>kldload nvidia</command>. However, it has been noted " +"that some versions of <application>Xorg</application> will not function " "properly if the driver is not loaded at boot time. After editing <filename>/" "boot/loader.conf</filename>, a reboot is recommended." msgstr "" @@ -19095,7 +19231,7 @@ msgstr "" "要重新開機。" #. (itstool) path: sect2/para -#: book.translate.xml:12242 +#: book.translate.xml:12305 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:" @@ -19104,29 +19240,29 @@ msgstr "" "啟專用的驅動程式:" #. (itstool) path: sect2/para -#: book.translate.xml:12246 +#: book.translate.xml:12309 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:12249 +#: book.translate.xml:12312 #, no-wrap msgid "Driver \"nv\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12251 +#: book.translate.xml:12314 msgid "and change it to:" msgstr "然後更改該行為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12253 +#: book.translate.xml:12316 #, no-wrap msgid "Driver \"nvidia\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12255 +#: book.translate.xml:12318 msgid "" "Start the GUI as usual, and you should be greeted by the nVidia splash. " "Everything should work as usual." @@ -19134,12 +19270,12 @@ msgstr "" "如往常般啟動 GUI,您應該會看到 nVidia 的啟動畫面,其他東西應如往常般運作。" #. (itstool) path: sect2/title -#: book.translate.xml:12260 +#: book.translate.xml:12323 msgid "Configuring xorg.conf for Desktop Effects" msgstr "設定 xorg.conf 來啟動桌面特效" #. (itstool) path: sect2/para -#: book.translate.xml:12262 +#: book.translate.xml:12325 msgid "" "To enable <application>Compiz Fusion</application>, <filename>/etc/X11/xorg." "conf</filename> needs to be modified:" @@ -19148,12 +19284,12 @@ msgstr "" "xorg.conf</filename>:" #. (itstool) path: sect2/para -#: book.translate.xml:12266 +#: book.translate.xml:12329 msgid "Add the following section to enable composite effects:" msgstr "加入以下 Section 來開啟合成特效:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12269 +#: book.translate.xml:12332 #, no-wrap msgid "" "Section \"Extensions\"\n" @@ -19162,14 +19298,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12273 +#: book.translate.xml:12336 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:12276 +#: book.translate.xml:12339 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -19180,12 +19316,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12282 +#: book.translate.xml:12345 msgid "and add the following two lines (after <quote>Monitor</quote> will do):" msgstr "然後加入以下兩行 (在<quote>Monitor</quote> 之後):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12285 +#: book.translate.xml:12348 #, no-wrap msgid "" "DefaultDepth 24\n" @@ -19193,7 +19329,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12288 +#: book.translate.xml:12351 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 " @@ -19205,7 +19341,7 @@ msgstr "" "中,您可以手動加入對應的項目:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12294 +#: book.translate.xml:12357 #, no-wrap msgid "" "SubSection \"Display\"\n" @@ -19215,14 +19351,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12299 +#: book.translate.xml:12362 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:12302 +#: book.translate.xml:12365 #, no-wrap msgid "" "SubSection \"Display\"\n" @@ -19233,7 +19369,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12308 +#: book.translate.xml:12371 msgid "" "Finally, confirm that the <quote>glx</quote> and <quote>extmod</quote> " "modules are loaded in the <quote>Module</quote> section:" @@ -19242,7 +19378,7 @@ msgstr "" "<quote>extmod</quote> 模組:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12312 +#: book.translate.xml:12375 #, no-wrap msgid "" "Section \"Module\"\n" @@ -19252,7 +19388,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12317 +#: book.translate.xml:12380 msgid "" "The preceding can be done automatically with <package>x11/nvidia-xconfig</" "package> by running (as root):" @@ -19261,7 +19397,7 @@ msgstr "" "用 root):" #. (itstool) path: sect2/screen -#: book.translate.xml:12321 +#: book.translate.xml:12384 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>nvidia-xconfig --add-argb-glx-visuals</userinput>\n" @@ -19270,12 +19406,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:12327 +#: book.translate.xml:12390 msgid "Installing and Configuring Compiz Fusion" msgstr "安裝與設定 Compiz Fusion" #. (itstool) path: sect2/para -#: book.translate.xml:12329 +#: book.translate.xml:12392 msgid "" "Installing <application>Compiz Fusion</application> is as simple as any " "other package:" @@ -19283,13 +19419,13 @@ msgstr "" "安裝 <application>Compiz Fusion</application> 如同安裝其他套件一樣簡單:" #. (itstool) path: sect2/screen -#: book.translate.xml:12332 +#: book.translate.xml:12395 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install x11-wm/compiz-fusion</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12334 +#: book.translate.xml:12397 msgid "" "When the installation is finished, start your graphic desktop and at a " "terminal, enter the following commands (as a normal user):" @@ -19298,7 +19434,7 @@ msgstr "" "用者):" #. (itstool) path: sect2/screen -#: book.translate.xml:12338 +#: book.translate.xml:12401 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>compiz --replace --sm-disable --ignore-desktop-hints ccp &</userinput>\n" @@ -19306,7 +19442,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12341 +#: book.translate.xml:12404 msgid "" "Your screen will flicker for a few seconds, as your window manager (e.g. " "<application>Metacity</application> if you are using <application>GNOME</" @@ -19320,7 +19456,7 @@ msgstr "" "理視窗的裝飾 (例如:關閉、最小化、最大化按鈕、標題列及其他相關)。" #. (itstool) path: sect2/para -#: book.translate.xml:12349 +#: book.translate.xml:12412 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 " @@ -19330,7 +19466,7 @@ msgstr "" "<application>GNOME</application> 桌面的 <quote>Sessions</quote> 中):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12354 +#: book.translate.xml:12417 #, no-wrap msgid "" "#! /bin/sh\n" @@ -19339,7 +19475,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12358 +#: book.translate.xml:12421 msgid "" "Save this in your home directory as, for example, <filename>start-compiz</" "filename> and make it executable:" @@ -19348,13 +19484,13 @@ msgstr "" "filename>,然後讓該檔案可以執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:12362 +#: book.translate.xml:12425 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod +x ~/start-compiz</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12364 +#: book.translate.xml:12427 msgid "" "Then use the GUI to add it to <guimenuitem>Startup Programs</guimenuitem> " "(located in <guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</" @@ -19367,7 +19503,7 @@ msgstr "" "guimenuitem>, 工作階段 <guimenuitem>Sessions</guimenuitem>)。" #. (itstool) path: sect2/para -#: book.translate.xml:12371 +#: book.translate.xml:12434 msgid "" "To actually select all the desired effects and their settings, execute " "(again as a normal user) the <application>Compiz Config Settings Manager</" @@ -19377,13 +19513,13 @@ msgstr "" "定管理程式 <application>Compiz Config Settings Manager</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12375 +#: book.translate.xml:12438 #, no-wrap msgid "<prompt>%</prompt> <userinput>ccsm</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12378 +#: book.translate.xml:12441 msgid "" "In <application>GNOME</application>, this can also be found in the " "<guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</guimenuitem> " @@ -19393,7 +19529,7 @@ msgstr "" "guimenuitem>, 偏好設定 <guimenuitem>Preferences</guimenuitem> 選單中找到。" #. (itstool) path: sect2/para -#: book.translate.xml:12383 +#: book.translate.xml:12446 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> " @@ -19403,7 +19539,7 @@ msgstr "" "editor</command> 在 <literal>apps/compiz</literal> 下查看設定。" #. (itstool) path: sect1/para -#: book.translate.xml:12394 +#: book.translate.xml:12457 msgid "" "If the mouse does not work, you will need to first configure it before " "proceeding. In recent <application>Xorg</application> versions, the " @@ -19419,13 +19555,13 @@ msgstr "" "section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12403 +#: book.translate.xml:12466 #, no-wrap msgid "Option \"AutoAddDevices\" \"false\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12405 +#: book.translate.xml:12468 msgid "" "Input devices may then be configured as in previous versions, along with any " "other options needed (e.g., keyboard layout switching)." @@ -19433,7 +19569,7 @@ msgstr "" "輸入裝置便可如先前版本一樣設定,連同其他所需的選項 (如:切換鍵盤配置)。" #. (itstool) path: note/para -#: book.translate.xml:12410 +#: book.translate.xml:12473 msgid "" "As previously explained the <application>hald</application> daemon will, by " "default, automatically detect your keyboard. There are chances that your " @@ -19454,7 +19590,7 @@ msgstr "" "協助來直接設定鍵盤屬性。" #. (itstool) path: note/para -#: book.translate.xml:12422 +#: book.translate.xml:12485 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 " @@ -19468,7 +19604,7 @@ msgstr "" "fdi/policy</filename> 目錄。這個檔案中應要有以下幾行:" #. (itstool) path: note/programlisting -#: book.translate.xml:12430 +#: book.translate.xml:12493 #, no-wrap msgid "" "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n" @@ -19483,14 +19619,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12440 +#: book.translate.xml:12503 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:12443 +#: book.translate.xml:12506 msgid "" "You will have to reboot your machine to force <application>hald</" "application> to read this file." @@ -19498,20 +19634,20 @@ msgstr "" "您會需要重新啟動您的機器來讓 <application>hald</application> 讀取這個檔案。" #. (itstool) path: note/para -#: book.translate.xml:12446 +#: book.translate.xml:12509 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:12449 +#: book.translate.xml:12512 #, no-wrap msgid "<prompt>%</prompt> <userinput>setxkbmap -model pc102 -layout fr</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12451 +#: book.translate.xml:12514 msgid "" "<filename>/usr/local/share/X11/xkb/rules/base.lst</filename> lists the " "various keyboard, layouts and options available." @@ -19520,12 +19656,12 @@ msgstr "" "的鍵盤、配置與設定。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12456 +#: book.translate.xml:12519 msgid "<primary><application>Xorg</application> tuning</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12459 +#: book.translate.xml:12522 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" @@ -19545,7 +19681,7 @@ msgstr "" "new</filename> 的 <literal>\"Monitor\"</literal> section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12467 +#: book.translate.xml:12530 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -19558,7 +19694,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12475 +#: book.translate.xml:12538 msgid "" "Most monitors support sync frequency autodetection, making manual entry of " "these values unnecessary. For the few monitors that do not support " @@ -19569,7 +19705,7 @@ msgstr "" "動偵測的顯示器,請輸入由製造商提供的數值來避免損壞顯示器。" #. (itstool) path: sect1/para -#: book.translate.xml:12481 +#: book.translate.xml:12544 msgid "" "X allows DPMS (Energy Star) features to be used with capable monitors. The " "<citerefentry vendor=\"xfree86\"><refentrytitle>xset</" @@ -19585,18 +19721,18 @@ msgstr "" "(Monitor) 的 Section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12487 +#: book.translate.xml:12550 #, no-wrap msgid "Option \"DPMS\"" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12489 +#: book.translate.xml:12552 msgid "<primary><filename>xorg.conf</filename></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12493 +#: book.translate.xml:12556 msgid "" "While the <filename>xorg.conf.new</filename> configuration file is still " "open in an editor, select the default resolution and color depth desired. " @@ -19607,7 +19743,7 @@ msgstr "" "義:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12498 +#: book.translate.xml:12561 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -19624,7 +19760,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12510 +#: book.translate.xml:12573 msgid "" "The <literal>DefaultDepth</literal> keyword describes the color depth to run " "at by default. This can be overridden with the <option>-depth</option> " @@ -19645,14 +19781,14 @@ msgstr "" "像素。" #. (itstool) path: sect1/para -#: book.translate.xml:12521 +#: book.translate.xml:12584 msgid "" "Finally, write the configuration file and test it using the test mode given " "above." msgstr "最後,儲存設定檔並使用測試模式來測試上述的設定。" #. (itstool) path: note/para -#: book.translate.xml:12525 +#: book.translate.xml:12588 msgid "" "One of the tools available to assist you during troubleshooting process are " "the <application>Xorg</application> log files, which contain information on " @@ -19669,7 +19805,7 @@ msgstr "" "<filename>Xorg.8.log</filename> 以此類推。" #. (itstool) path: sect1/para -#: book.translate.xml:12537 +#: book.translate.xml:12600 msgid "" "If all is well, the configuration file needs to be installed in a common " "location where <citerefentry vendor=\"xorg\"><refentrytitle>Xorg</" @@ -19683,13 +19819,13 @@ msgstr "" "filename> 或 <filename>/usr/local/etc/X11/xorg.conf</filename>。" #. (itstool) path: sect1/screen -#: book.translate.xml:12542 +#: book.translate.xml:12605 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp xorg.conf.new /etc/X11/xorg.conf</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12544 +#: book.translate.xml:12607 msgid "" "The <application>Xorg</application> configuration process is now complete. " "<application>Xorg</application> may be now started with the <citerefentry " @@ -19707,7 +19843,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來啟動。" #. (itstool) path: sect2/title -#: book.translate.xml:12551 +#: book.translate.xml:12614 msgid "" "Configuration with <trademark class=\"registered\">Intel</trademark> " "<literal>i810</literal> Graphics Chipsets" @@ -19716,12 +19852,12 @@ msgstr "" "literal> 繪圖晶片組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12554 +#: book.translate.xml:12617 msgid "<primary>Intel i810 graphic chipset</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12558 +#: book.translate.xml:12621 msgid "" "Configuration with <trademark class=\"registered\">Intel</trademark> i810 " "integrated chipsets requires the <filename>agpgart</filename> AGP " @@ -19736,7 +19872,7 @@ msgstr "" "更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:12564 +#: book.translate.xml:12627 msgid "" "This will allow configuration of the hardware as any other graphics board. " "Note on systems without the <citerefentry><refentrytitle>agp</" @@ -19754,17 +19890,17 @@ msgstr "" "conf</filename> 來載入。" #. (itstool) path: sect2/title -#: book.translate.xml:12573 +#: book.translate.xml:12636 msgid "Adding a Widescreen Flatpanel to the Mix" msgstr "加入寬螢幕平板顯示器到設定檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12575 +#: book.translate.xml:12638 msgid "<primary>widescreen flatpanel configuration</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12579 +#: book.translate.xml:12642 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 " @@ -19776,7 +19912,7 @@ msgstr "" "輯器。" #. (itstool) path: sect2/para -#: book.translate.xml:12586 +#: book.translate.xml:12649 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. " @@ -19786,32 +19922,32 @@ msgstr "" "及 10:9 格式或其他的寬高比可會有問題。例如一些 16:10 寬高比常見的螢幕解析度:" #. (itstool) path: listitem/para -#: book.translate.xml:12593 +#: book.translate.xml:12656 msgid "2560x1600" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12597 +#: book.translate.xml:12660 msgid "1920x1200" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12601 +#: book.translate.xml:12664 msgid "1680x1050" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12605 +#: book.translate.xml:12668 msgid "1440x900" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12609 +#: book.translate.xml:12672 msgid "1280x800" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12613 +#: book.translate.xml:12676 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\"</" @@ -19821,7 +19957,7 @@ msgstr "" "到 Section \"Screen\":" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12617 +#: book.translate.xml:12680 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -19838,7 +19974,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12629 +#: book.translate.xml:12692 msgid "" "<application>Xorg</application> is smart enough to pull the resolution " "information from the widescreen via I2C/DDC information so it knows what the " @@ -19848,7 +19984,7 @@ msgstr "" "DDC),因此能夠知道螢幕能處理的頻率及解析度。" #. (itstool) path: sect2/para -#: book.translate.xml:12634 +#: book.translate.xml:12697 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>/" @@ -19862,7 +19998,7 @@ msgstr "" "literal>。只需要在日誌檔中找到類似以下的訊息:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12642 +#: book.translate.xml:12705 #, no-wrap msgid "" "(II) MGA(0): Supported additional Video Mode:\n" @@ -19873,7 +20009,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12648 +#: book.translate.xml:12711 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 " @@ -19883,13 +20019,13 @@ msgstr "" "將數據使用正確的順序放入:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12652 +#: book.translate.xml:12715 #, no-wrap msgid "ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12654 +#: book.translate.xml:12717 msgid "" "So that the <literal>ModeLine</literal> in <literal>Section \"Monitor\"</" "literal> for this example would look like this:" @@ -19898,7 +20034,7 @@ msgstr "" "<literal>ModeLine</literal> 會看起來像這樣:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12658 +#: book.translate.xml:12721 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -19911,19 +20047,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12666 +#: book.translate.xml:12729 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:12671 +#: book.translate.xml:12734 msgid "Troubleshooting Compiz Fusion" msgstr "Compiz Fusion 疑難排解" #. (itstool) path: question/para -#: book.translate.xml:12676 +#: book.translate.xml:12739 msgid "" "I have installed <application>Compiz Fusion</application>, and after running " "the commands you mention, my windows are left without title bars and " @@ -19933,7 +20069,7 @@ msgstr "" "令後,我的視窗的標題列與按鈕便消失了。是那裡有問題?" #. (itstool) path: answer/para -#: book.translate.xml:12684 +#: book.translate.xml:12747 msgid "" "You are probably missing a setting in <filename>/etc/X11/xorg.conf</" "filename>. Review this file carefully and check especially the " @@ -19945,7 +20081,7 @@ msgstr "" "literal> 指令項。" #. (itstool) path: question/para -#: book.translate.xml:12695 +#: book.translate.xml:12758 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?" @@ -19954,7 +20090,7 @@ msgstr "" "了,然後我又返回 Console。是那裡有問題?" #. (itstool) path: answer/para -#: book.translate.xml:12702 +#: book.translate.xml:12765 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:" @@ -19963,7 +20099,7 @@ msgstr "" "所發生的錯誤訊息。最常發生的錯誤會是:" #. (itstool) path: answer/screen -#: book.translate.xml:12707 +#: book.translate.xml:12770 #, no-wrap msgid "" "(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X\n" @@ -19974,7 +20110,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:12713 +#: book.translate.xml:12776 msgid "" "This is usually the case when you upgrade <application>Xorg</application>. " "You will need to reinstall the <package>x11/nvidia-driver</package> package " @@ -19984,12 +20120,12 @@ msgstr "" "安裝 <package>x11/nvidia-driver</package> 套件來重新編譯 glx。" #. (itstool) path: part/title -#: book.translate.xml:12727 +#: book.translate.xml:12790 msgid "Common Tasks" msgstr "一般作業" #. (itstool) path: partintro/para -#: book.translate.xml:12730 +#: book.translate.xml:12793 msgid "" "Now that the basics have been covered, this part of the book discusses some " "frequently used features of FreeBSD. These chapters:" @@ -19998,50 +20134,50 @@ msgstr "" "色,這些章節包括:" #. (itstool) path: listitem/para -#: book.translate.xml:12736 +#: book.translate.xml:12799 msgid "" "Introduce popular and useful desktop applications: browsers, productivity " "tools, document viewers, and more." msgstr "介紹給您常見且實用的桌面應用軟體:瀏覽器、辦工工具、文件閱覽程式等。" #. (itstool) path: listitem/para -#: book.translate.xml:12742 +#: book.translate.xml:12805 msgid "Introduce a number of multimedia tools available for FreeBSD." msgstr "介紹給您眾多 FreeBSD 上可用的多媒體工具。" #. (itstool) path: listitem/para -#: book.translate.xml:12747 +#: book.translate.xml:12810 msgid "" "Explain the process of building a customized FreeBSD kernel to enable extra " "functionality." msgstr "解釋如何編譯量身訂做的 FreeBSD 核心以增加額外系統功能的流程。" #. (itstool) path: listitem/para -#: book.translate.xml:12752 +#: book.translate.xml:12815 msgid "" "Describe the print system in detail, both for desktop and network-connected " "printer setups." msgstr "詳細描述列印系統,包含桌上型印表機及網路印表機的設定。" #. (itstool) path: listitem/para -#: book.translate.xml:12757 +#: book.translate.xml:12820 msgid "Show how to run Linux applications on the FreeBSD system." msgstr "展示給您看如何在您的 FreeBSD 系統中執行 Linux 應用軟體。" #. (itstool) path: partintro/para -#: book.translate.xml:12762 +#: book.translate.xml:12825 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:12785 +#: book.translate.xml:12848 msgid "Desktop Applications" msgstr "桌面應用程式" #. (itstool) path: sect1/para -#: book.translate.xml:12790 +#: book.translate.xml:12853 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 " @@ -20057,7 +20193,7 @@ msgstr "" "含網頁瀏覽器、辦工軟體、文件閱覽程式以及財務軟體。" #. (itstool) path: note/para -#: book.translate.xml:12800 +#: book.translate.xml:12863 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=" @@ -20067,24 +20203,24 @@ msgstr "" "考 <link xlink:href=\"http://www.trueos.org/\">trueos.org 網站</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:12807 +#: book.translate.xml:12870 msgid "Readers of this chapter should know how to:" msgstr "在閱讀這章之前,你必須了解如何:" #. (itstool) path: listitem/para -#: book.translate.xml:12811 +#: book.translate.xml:12874 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:12816 +#: book.translate.xml:12879 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:12821 +#: book.translate.xml:12884 msgid "" "For information on how to configure a multimedia environment, refer to <xref " "linkend=\"multimedia\"/>." @@ -20092,17 +20228,17 @@ msgstr "" "要取得有關如何設定多媒體環境的資訊,請參考 <xref linkend=\"multimedia\"/>。" #. (itstool) path: sect1/title -#: book.translate.xml:12826 +#: book.translate.xml:12889 msgid "Browsers" msgstr "瀏覽器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12828 +#: book.translate.xml:12891 msgid "<primary>browsers</primary> <secondary>web</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12833 +#: book.translate.xml:12896 msgid "" "FreeBSD does not come with a pre-installed web browser. Instead, the <link " "xlink:href=\"https://www.FreeBSD.org/ports/www.html\">www</link> category of " @@ -20114,7 +20250,7 @@ msgstr "" "可以採 Binary 套件安裝或自 Port 套件集編譯的方式安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:12839 +#: book.translate.xml:12902 msgid "" "The <application>KDE</application> and <application>GNOME</application> " "desktop environments include their own HTML browser. Refer to <xref linkend=" @@ -20125,7 +20261,7 @@ msgstr "" "何設定完整桌面環境的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:12845 +#: book.translate.xml:12908 msgid "" "Some lightweight browsers include <package>www/dillo2</package>, " "<package>www/links</package>, and <package>www/w3m</package>." @@ -20134,7 +20270,7 @@ msgstr "" "links</package> 以及 <package>www/w3m</package>。" #. (itstool) path: sect1/para -#: book.translate.xml:12849 +#: book.translate.xml:12912 msgid "" "This section demonstrates how to install the following popular web browsers " "and indicates if the application is resource-heavy, takes time to compile " @@ -20144,48 +20280,48 @@ msgstr "" "源、花費大量時間自 Port 編譯或何主要的相依套件。" #. (itstool) path: row/entry -#: book.translate.xml:12858 book.translate.xml:13085 book.translate.xml:13395 -#: book.translate.xml:13619 +#: book.translate.xml:12921 book.translate.xml:13148 book.translate.xml:13458 +#: book.translate.xml:13682 msgid "Application Name" msgstr "應用程式名稱" #. (itstool) path: row/entry -#: book.translate.xml:12859 book.translate.xml:13086 book.translate.xml:13396 -#: book.translate.xml:13620 +#: book.translate.xml:12922 book.translate.xml:13149 book.translate.xml:13459 +#: book.translate.xml:13683 msgid "Resources Needed" msgstr "所需資源" #. (itstool) path: row/entry -#: book.translate.xml:12860 book.translate.xml:13087 book.translate.xml:13397 -#: book.translate.xml:13621 +#: book.translate.xml:12923 book.translate.xml:13150 book.translate.xml:13460 +#: book.translate.xml:13684 msgid "Installation from Ports" msgstr "自 Port 安裝時間" #. (itstool) path: row/entry -#: book.translate.xml:12861 book.translate.xml:17048 book.translate.xml:65141 +#: book.translate.xml:12924 book.translate.xml:17157 book.translate.xml:65535 msgid "Notes" msgstr "說明" #. (itstool) path: row/entry -#: book.translate.xml:12867 +#: book.translate.xml:12930 msgid "<application>Firefox</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12868 book.translate.xml:12883 book.translate.xml:12891 +#: book.translate.xml:12931 book.translate.xml:12946 book.translate.xml:12954 msgid "medium" msgstr "中" #. (itstool) path: row/entry -#: book.translate.xml:12869 book.translate.xml:12884 book.translate.xml:12892 -#: book.translate.xml:13096 book.translate.xml:13111 book.translate.xml:13118 -#: book.translate.xml:13435 book.translate.xml:13630 book.translate.xml:13637 -#: book.translate.xml:13644 +#: book.translate.xml:12932 book.translate.xml:12947 book.translate.xml:12955 +#: book.translate.xml:13159 book.translate.xml:13174 book.translate.xml:13181 +#: book.translate.xml:13498 book.translate.xml:13693 book.translate.xml:13700 +#: book.translate.xml:13707 msgid "heavy" msgstr "多" #. (itstool) path: row/entry -#: book.translate.xml:12870 +#: book.translate.xml:12933 msgid "" "FreeBSD, <trademark class=\"registered\">Linux</trademark>, and localized " "versions are available" @@ -20193,86 +20329,85 @@ msgstr "" "有 FreeBSD 、 <trademark class=\"registered\">Linux</trademark> 及在地化版本" #. (itstool) path: row/entry -#: book.translate.xml:12875 +#: book.translate.xml:12938 msgid "<application>Opera</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12876 book.translate.xml:12877 book.translate.xml:13095 -#: book.translate.xml:13102 book.translate.xml:13103 book.translate.xml:13110 -#: book.translate.xml:13405 book.translate.xml:13406 book.translate.xml:13412 -#: book.translate.xml:13413 book.translate.xml:13419 book.translate.xml:13420 -#: book.translate.xml:13427 book.translate.xml:13428 book.translate.xml:13434 -#: book.translate.xml:13629 book.translate.xml:13636 book.translate.xml:13643 +#: book.translate.xml:12939 book.translate.xml:12940 book.translate.xml:13158 +#: book.translate.xml:13165 book.translate.xml:13166 book.translate.xml:13173 +#: book.translate.xml:13468 book.translate.xml:13469 book.translate.xml:13475 +#: book.translate.xml:13476 book.translate.xml:13482 book.translate.xml:13483 +#: book.translate.xml:13490 book.translate.xml:13491 book.translate.xml:13497 +#: book.translate.xml:13692 book.translate.xml:13699 book.translate.xml:13706 msgid "light" msgstr "少" #. (itstool) path: row/entry -#: book.translate.xml:12878 +#: book.translate.xml:12941 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:12882 +#: book.translate.xml:12945 msgid "<application>Konqueror</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12885 +#: book.translate.xml:12948 msgid "Requires <application>KDE</application> libraries" msgstr "需要 <application>KDE</application> 程式庫" #. (itstool) path: row/entry -#: book.translate.xml:12890 +#: book.translate.xml:12953 msgid "<application>Chromium</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12893 +#: book.translate.xml:12956 msgid "Requires <application>Gtk+</application>" msgstr "需要 <application>Gtk+</application> 程式庫" #. (itstool) path: sect2/title -#: book.translate.xml:12900 +#: book.translate.xml:12963 msgid "Firefox" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12902 +#: book.translate.xml:12965 msgid "<primary><application>Firefox</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12906 -#, fuzzy +#: book.translate.xml:12969 msgid "" "<application>Firefox</application> is an open source browser that features a " "standards-compliant HTML display engine, tabbed browsing, popup blocking, " "extensions, improved security, and more. <application>Firefox</application> " "is based on the <application>Mozilla</application> codebase." msgstr "" -"<application>Firefox</application> 是一套已完整植到 FreeBSD 的開放源始碼瀏覽" -"器,它具備符合 HTML 標準的顯示引擎、頁籤瀏覽、彈出視窗封鎖、擴充套件、強化安" -"全性及其他更多功能。<application>Firefox</application> 的基礎使用了 " -"<application>Mozilla</application> 的程式庫。" +"<application>Firefox</application> 是一套開放源始碼的瀏覽器,它具備符合 HTML " +"標準的顯示引擎、頁籤瀏覽、彈出視窗封鎖、擴充套件、強化安全性及其他更多功能。" +"<application>Firefox</application> 的基礎使用了 <application>Mozilla</" +"application> 的程式庫。" #. (itstool) path: sect2/para -#: book.translate.xml:12913 +#: book.translate.xml:12976 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:12916 +#: book.translate.xml:12979 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install firefox</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12918 +#: book.translate.xml:12981 msgid "" "To instead install <application>Firefox</application> Extended Support " "Release (ESR) version, use:" @@ -20281,13 +20416,13 @@ msgstr "" "<application>Firefox</application>,可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:12921 +#: book.translate.xml:12984 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install firefox-esr</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12923 +#: book.translate.xml:12986 msgid "" "Localized versions are available in <package>www/firefox-i18n</package> and " "<package>www/firefox-esr-i18n</package>." @@ -20296,7 +20431,7 @@ msgstr "" "esr-i18n</package> 取得。" #. (itstool) path: sect2/para -#: book.translate.xml:12927 +#: book.translate.xml:12990 msgid "" "The Ports Collection can instead be used to compile the desired version of " "<application>Firefox</application> from source code. This example builds " @@ -20308,7 +20443,7 @@ msgstr "" "<literal>firefox</literal> 可替換為 ESR 或在地化版本來安裝。" #. (itstool) path: sect2/screen -#: book.translate.xml:12934 +#: book.translate.xml:12997 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/firefox</userinput>\n" @@ -20316,17 +20451,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:12939 +#: book.translate.xml:13002 msgid "Opera" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12941 +#: book.translate.xml:13004 msgid "<primary><application>Opera</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12945 +#: book.translate.xml:13008 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 " @@ -20340,7 +20475,7 @@ msgstr "" "\">Linux</trademark> 模擬模式下執行的版本。" #. (itstool) path: sect2/para -#: book.translate.xml:12952 +#: book.translate.xml:13015 msgid "" "This command installs the package of the FreeBSD version of " "<application>Opera</application>. Replace <literal>opera</literal> with " @@ -20352,20 +20487,20 @@ msgstr "" "\"registered\">Linux</trademark> 版本。" #. (itstool) path: sect2/screen -#: book.translate.xml:12957 +#: book.translate.xml:13020 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install opera</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12959 +#: book.translate.xml:13022 msgid "" "Alternately, install either version through the Ports Collection. This " "example compiles the native version:" -msgstr "或者,可安裝 Port 套件集中的版本,以下範例會編譯原生的版本。" +msgstr "或者,可安裝 Port 套件集中的版本,以下範例會編譯原生的版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:12962 +#: book.translate.xml:13025 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/opera</userinput>\n" @@ -20373,7 +20508,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12965 +#: book.translate.xml:13028 msgid "" "To install the <trademark class=\"registered\">Linux</trademark> version, " "substitute <literal>linux-opera</literal> in place of <literal>opera</" @@ -20383,8 +20518,7 @@ msgstr "" "<literal>opera</literal> 為 <literal>linux-opera</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:12969 -#, fuzzy +#: book.translate.xml:13032 msgid "" "To install <trademark class=\"registered\">Adobe</trademark> <trademark " "class=\"registered\">Flash</trademark> plugin support, first compile the " @@ -20395,12 +20529,12 @@ msgid "" msgstr "" "要安裝 <trademark class=\"registered\">Adobe</trademark> <trademark class=" "\"registered\">Flash</trademark> 附加元件,需先編譯 <package role=\"port" -"\">www/linux-c6-flashplugin11</package> Port,因受到授權條款限制無法事先做為 " -"Binary 套件。然後安裝 <package role=\"port\">www/opera-linuxplugins</" -"package>。以下範例示範編譯 Port 中的這兩個應用程式。" +"\">www/linux-flashplayer</package> Port,因受到授權條款限制無法事先編譯為 " +"Binary 套件。然後再安裝 <package role=\"port\">www/opera-linuxplugins</" +"package>。以下範例示範如何編譯 Port 中的這兩個應用程式:" #. (itstool) path: sect2/screen -#: book.translate.xml:12975 +#: book.translate.xml:13038 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/linux-flashplayer</userinput>\n" @@ -20410,7 +20544,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12980 +#: book.translate.xml:13043 msgid "" "Once installed, check the presence of the plugin by starting the browser, " "entering <literal>opera:plugins</literal> in the location bar and pressing " @@ -20422,27 +20556,26 @@ msgstr "" "附加元件。" #. (itstool) path: sect2/para -#: book.translate.xml:12986 -#, fuzzy +#: book.translate.xml:13049 msgid "" "To add the <application><trademark>Java</trademark></application> plugin, " "follow install <package role=\"port\">java/icedtea-web</package>." msgstr "" -"若要安裝 <application><trademark>Java</trademark></application> 附加元件請依" -"照 <xref linkend=\"moz-java-plugin\"/> 中的指示。" +"若要安裝 <application><trademark>Java</trademark></application> 附加元件請接" +"著安裝 <package role=\"port\">java/icedtea-web</package>。" #. (itstool) path: sect2/title -#: book.translate.xml:12992 +#: book.translate.xml:13055 msgid "Konqueror" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12994 +#: book.translate.xml:13057 msgid "<primary><application>Konqueror</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12998 +#: book.translate.xml:13061 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 " @@ -20453,7 +20586,7 @@ msgstr "" "中。" #. (itstool) path: sect2/para -#: book.translate.xml:13003 +#: book.translate.xml:13066 msgid "" "<application>Konqueror</application> supports WebKit as well as its own " "KHTML. WebKit is a rendering engine used by many modern browsers including " @@ -20467,18 +20600,18 @@ msgstr "" "kwebkitpart</package> 套件或 Port。此範例示範使用 Binary 套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13010 +#: book.translate.xml:13073 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install kwebkitpart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13012 +#: book.translate.xml:13075 msgid "To install from the Ports Collection:" msgstr "從 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13014 +#: book.translate.xml:13077 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/kwebkitpart</userinput>\n" @@ -20486,7 +20619,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13017 +#: book.translate.xml:13080 msgid "" "To enable WebKit within <application>Konqueror</application>, click " "<quote>Settings</quote>, <quote>Configure Konqueror</quote>. In the " @@ -20500,7 +20633,7 @@ msgstr "" "quote> 旁的下拉示選單並變更 <quote>KHTML</quote> 為 <quote>WebKit</quote>。" #. (itstool) path: sect2/para -#: book.translate.xml:13025 +#: book.translate.xml:13088 msgid "" "<application>Konqueror</application> also supports <application><trademark " "class=\"registered\">Flash</trademark></application>. A <quote>How To</" @@ -20517,17 +20650,17 @@ msgstr "" "howtos/konqueror-flash.php</uri>。" #. (itstool) path: sect2/title -#: book.translate.xml:13032 +#: book.translate.xml:13095 msgid "Chromium" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13034 +#: book.translate.xml:13097 msgid "<primary><application>Chromium</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13038 +#: book.translate.xml:13101 msgid "" "<application>Chromium</application> is an open source browser project that " "aims to build a safer, faster, and more stable web browsing experience. " @@ -20540,26 +20673,26 @@ msgstr "" "application> 的功能有頁籤式瀏覽、彈出視窗封鎖、擴充套件等等。" #. (itstool) path: sect2/para -#: book.translate.xml:13046 +#: book.translate.xml:13109 msgid "" "<application>Chromium</application> can be installed as a package by typing:" msgstr "<application>Chromium</application> 可以使用套件來安裝,只要輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:13049 +#: book.translate.xml:13112 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install chromium</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13051 +#: book.translate.xml:13114 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:13054 +#: book.translate.xml:13117 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/chromium</userinput>\n" @@ -20567,7 +20700,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13058 +#: book.translate.xml:13121 msgid "" "The executable for <application>Chromium</application> is <filename>/usr/" "local/bin/chrome</filename>, not <filename>/usr/local/bin/chromium</" @@ -20577,13 +20710,12 @@ msgstr "" "chrome</filename>,並非 <filename>/usr/local/bin/chromium</filename>。" #. (itstool) path: sect1/title -#: book.translate.xml:13066 +#: book.translate.xml:13129 msgid "Productivity" msgstr "辦工工具" #. (itstool) path: sect1/para -#: book.translate.xml:13068 -#, fuzzy +#: book.translate.xml:13131 msgid "" "When it comes to productivity, users often look for an office suite or an " "easy-to-use word processor. While some <link linkend=\"x11-wm\">desktop " @@ -20592,69 +20724,68 @@ msgid "" "graphical word processors are available for FreeBSD, regardless of the " "installed window manager." msgstr "" -"當開始進行辦公,新的使用者通常會去找好用的辦公室軟體或是好上手的文件處理程" -"式。 雖然有些 <link linkend=\"x11-wm\">桌面環境</link> 像是 " -"<application>KDE</application> 已經提供了辦公軟體組合的套件,FreeBSD 預設未提" -"供任何辦工工具。 不論是否有安裝視窗管理程式,FreeBSD 可安裝多套辦公軟體以及圖" -"型化文件處理程式。" +"當開始進行辦公,使用者通常會找好用的辦公軟體或是好上手的文書處理程式。 雖然有" +"些 <link linkend=\"x11-wm\">桌面環境</link> 像是 <application>KDE</" +"application> 已經提供了辦公軟體,但並沒有預設的辦公軟體,FreeBSD 提供多套辦公" +"軟體以及圖型化文書處理程式,不論您用那種的視窗管理程式都能使用。" #. (itstool) path: sect1/para -#: book.translate.xml:13076 +#: book.translate.xml:13139 msgid "" "This section demonstrates how to install the following popular productivity " "software and indicates if the application is resource-heavy, takes time to " "compile from ports, or has any major dependencies." msgstr "" -"本章節元範如何安裝以下熱門的辦工軟體以及說明該應用程式所需的資源、自 Port 編" +"本章節元範如何安裝以下熱門的辦公軟體以及說明該應用程式所需的資源、自 Port 編" "譯的時間或者是否有其他主要相依套件。" #. (itstool) path: row/entry -#: book.translate.xml:13088 book.translate.xml:13398 book.translate.xml:13622 +#: book.translate.xml:13151 book.translate.xml:13461 book.translate.xml:13685 msgid "Major Dependencies" msgstr "主要相依套件" #. (itstool) path: row/entry -#: book.translate.xml:13094 +#: book.translate.xml:13157 msgid "<application>Calligra</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13097 book.translate.xml:13436 book.translate.xml:13645 +#: book.translate.xml:13160 book.translate.xml:13499 book.translate.xml:13708 msgid "<application>KDE</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13101 +#: book.translate.xml:13164 msgid "<application>AbiWord</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13104 book.translate.xml:13421 +#: book.translate.xml:13167 book.translate.xml:13484 msgid "<application>Gtk+</application> or <application>GNOME</application>" msgstr "<application>Gtk+</application> 或 <application>GNOME</application>" #. (itstool) path: row/entry -#: book.translate.xml:13109 +#: book.translate.xml:13172 msgid "<application>The Gimp</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13112 book.translate.xml:13429 +#: book.translate.xml:13175 book.translate.xml:13492 msgid "<application>Gtk+</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13116 +#: book.translate.xml:13179 msgid "<application>Apache OpenOffice</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13119 book.translate.xml:13127 +#: book.translate.xml:13182 book.translate.xml:13190 msgid "huge" msgstr "非常多" #. (itstool) path: row/entry -#: book.translate.xml:13120 +#: book.translate.xml:13183 msgid "" "<application><trademark>JDK</trademark></application> and " "<application>Mozilla</application>" @@ -20663,17 +20794,17 @@ msgstr "" "<application>Mozilla</application>" #. (itstool) path: row/entry -#: book.translate.xml:13125 +#: book.translate.xml:13188 msgid "<application>LibreOffice</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13126 +#: book.translate.xml:13189 msgid "somewhat heavy" msgstr "有點多" #. (itstool) path: row/entry -#: book.translate.xml:13128 +#: book.translate.xml:13191 msgid "" "<application>Gtk+</application>, or <application>KDE</application>/ " "<application>GNOME</application>, or <application><trademark>JDK</" @@ -20684,24 +20815,24 @@ msgstr "" "application>" #. (itstool) path: sect2/title -#: book.translate.xml:13138 +#: book.translate.xml:13201 msgid "Calligra" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13140 +#: book.translate.xml:13203 msgid "<primary><application>Calligra</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13143 +#: book.translate.xml:13206 msgid "" "<primary>office suite</primary> <secondary><application>Calligra</" "application></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13148 +#: book.translate.xml:13211 msgid "" "The KDE desktop environment includes an office suite which can be installed " "separately from <application>KDE</application>. <application>Calligra</" @@ -20718,7 +20849,7 @@ msgstr "" "<application>Karbon</application> 用來繪製圖型文件。" #. (itstool) path: sect2/para -#: book.translate.xml:13159 +#: book.translate.xml:13222 msgid "" "In FreeBSD, <package>editors/calligra</package> can be installed as a " "package or a port. To install the package:" @@ -20727,18 +20858,18 @@ msgstr "" "安裝,要使用套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13163 +#: book.translate.xml:13226 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install calligra</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13165 +#: book.translate.xml:13228 msgid "If the package is not available, use the Ports Collection instead:" msgstr "若沒有可用的套件,可改使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13168 +#: book.translate.xml:13231 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/calligra</userinput>\n" @@ -20746,17 +20877,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13173 +#: book.translate.xml:13236 msgid "AbiWord" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13175 +#: book.translate.xml:13238 msgid "<primary><application>AbiWord</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13179 +#: book.translate.xml:13242 msgid "" "<application>AbiWord</application> is a free word processing program similar " "in look and feel to <application><trademark class=\"registered\">Microsoft</" @@ -20768,7 +20899,7 @@ msgstr "" "application>。 它非常快速,包含了許多功能而且非常容易上手。" #. (itstool) path: sect2/para -#: book.translate.xml:13184 +#: book.translate.xml:13247 msgid "" "<application>AbiWord</application> can import or export many file formats, " "including some proprietary ones like <trademark class=\"registered" @@ -20779,26 +20910,26 @@ msgstr "" "<filename>.rtf</filename> 格式。" #. (itstool) path: sect2/para -#: book.translate.xml:13188 +#: book.translate.xml:13251 msgid "To install the <application>AbiWord</application> package:" msgstr "" "要安裝 <application>AbiWord</application> Binary 套件,可使用下列指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:13191 +#: book.translate.xml:13254 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install abiword</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13193 +#: book.translate.xml:13256 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:13196 +#: book.translate.xml:13259 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/abiword</userinput>\n" @@ -20806,17 +20937,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13201 +#: book.translate.xml:13264 msgid "The GIMP" msgstr "The GIMP" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13203 +#: book.translate.xml:13266 msgid "<primary><application>The GIMP</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13207 +#: book.translate.xml:13270 msgid "" "For image authoring or picture retouching, <application>The GIMP</" "application> provides a sophisticated image manipulation program. It can be " @@ -20831,23 +20962,23 @@ msgstr "" "可以讀寫許多檔案格式。 它也支援掃描器和手寫板。" #. (itstool) path: sect2/para -#: book.translate.xml:13216 +#: book.translate.xml:13279 msgid "To install the package:" msgstr "要安裝套件可:" #. (itstool) path: sect2/screen -#: book.translate.xml:13218 +#: book.translate.xml:13281 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gimp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13220 +#: book.translate.xml:13283 msgid "Alternately, use the Ports Collection:" msgstr "或使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13222 +#: book.translate.xml:13285 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/gimp</userinput>\n" @@ -20855,7 +20986,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13225 +#: book.translate.xml:13288 msgid "" "The graphics category (<link xlink:href=\"https://www.FreeBSD.org/ports/" "graphics.html\">freebsd.org/ports/graphics.html</link>) of the Ports " @@ -20867,24 +20998,24 @@ msgstr "" "<application>GIMP</application> 相關的附加元件,說明檔及使用手冊。" #. (itstool) path: sect2/title -#: book.translate.xml:13233 +#: book.translate.xml:13296 msgid "Apache OpenOffice" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13235 +#: book.translate.xml:13298 msgid "<primary> <application>Apache OpenOffice</application> </primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13240 +#: book.translate.xml:13303 msgid "" "<primary>office suite</primary> <secondary> <application>Apache OpenOffice</" "application> </secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13247 +#: book.translate.xml:13310 msgid "" "<application>Apache OpenOffice</application> is an open source office suite " "which is developed under the wing of the Apache Software Foundation's " @@ -20902,7 +21033,7 @@ msgstr "" "同語言的使用者介面、拼字檢查和字典。" #. (itstool) path: sect2/para -#: book.translate.xml:13258 +#: book.translate.xml:13321 msgid "" "The word processor of <application>Apache OpenOffice</application> uses a " "native XML file format for increased portability and flexibility. The " @@ -20930,18 +21061,18 @@ msgstr "" "freebsd/</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:13269 +#: book.translate.xml:13332 msgid "To install the <application>Apache OpenOffice</application> package:" msgstr "要安裝 <application>Apache OpenOffice</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13272 +#: book.translate.xml:13335 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install apache-openoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13274 +#: book.translate.xml:13337 msgid "" "Once the package is installed, type the following command to launch " "<application>Apache OpenOffice</application>:" @@ -20950,13 +21081,13 @@ msgstr "" "OpenOffice</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13277 +#: book.translate.xml:13340 #, no-wrap msgid "<prompt>%</prompt> <userinput>openoffice-<replaceable>X.Y.Z</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13279 +#: book.translate.xml:13342 msgid "" "where <replaceable>X.Y.Z</replaceable> is the version number of the " "installed version of <application>Apache OpenOffice</application>. The first " @@ -20970,7 +21101,7 @@ msgstr "" "<filename>.openoffice.org</filename> 資料夾。" #. (itstool) path: sect2/para -#: book.translate.xml:13287 +#: book.translate.xml:13350 msgid "" "If the desired <application>Apache OpenOffice</application> package is not " "available, compiling the port is still an option. However, this requires a " @@ -20980,7 +21111,7 @@ msgstr "" "從 Port 編譯。 不過必須注意:編譯的過程會需要大量的磁碟空間與時間:" #. (itstool) path: sect2/screen -#: book.translate.xml:13292 +#: book.translate.xml:13355 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/openoffice-4</userinput>\n" @@ -20988,18 +21119,18 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13296 +#: book.translate.xml:13359 msgid "To build a localized version, replace the previous command with:" msgstr "如果想要編譯在地化的版本,將前面的指令替換成為:" #. (itstool) path: note/screen -#: book.translate.xml:13299 +#: book.translate.xml:13362 #, no-wrap msgid "<prompt>#</prompt> <userinput>make LOCALIZED_LANG=<replaceable>your_language</replaceable> install clean</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13301 +#: book.translate.xml:13364 msgid "" "Replace <replaceable>your_language</replaceable> with the correct language " "ISO-code. A list of supported language codes is available in <filename>files/" @@ -21010,24 +21141,24 @@ msgstr "" "錄。" #. (itstool) path: sect2/title -#: book.translate.xml:13311 +#: book.translate.xml:13374 msgid "LibreOffice" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13313 +#: book.translate.xml:13376 msgid "<primary><application>LibreOffice</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13316 +#: book.translate.xml:13379 msgid "" "<primary>office suite</primary> <secondary><application>LibreOffice</" "application></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13321 +#: book.translate.xml:13384 msgid "" "<application>LibreOffice</application> is a free software office suite " "developed by <link xlink:href=\"http://www.documentfoundation.org/" @@ -21049,7 +21180,7 @@ msgstr "" "到介面、拼字檢查程式與字典。" #. (itstool) path: sect2/para -#: book.translate.xml:13334 +#: book.translate.xml:13397 msgid "" "The word processor of <application>LibreOffice</application> uses a native " "XML file format for increased portability and flexibility. The spreadsheet " @@ -21071,20 +21202,20 @@ msgstr "" "到。" #. (itstool) path: sect2/para -#: book.translate.xml:13344 +#: book.translate.xml:13407 msgid "" "To install the English version of the <application>LibreOffice</application> " "package:" msgstr "要安裝英文版本的 <application>LibreOffice</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13347 +#: book.translate.xml:13410 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install libreoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13349 +#: book.translate.xml:13412 msgid "" "The editors category (<link xlink:href=\"https://www.FreeBSD.org/ports/" "editors.html\">freebsd.org/ports/editors.html</link>) of the Ports " @@ -21098,7 +21229,7 @@ msgstr "" "<literal>libreoffice</literal> 為在地化套件的名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:13355 +#: book.translate.xml:13418 msgid "" "Once the package is installed, type the following command to run " "<application>LibreOffice</application>:" @@ -21106,13 +21237,13 @@ msgstr "" "套件安裝之後,輸入以下指令來執行 <application>LibreOffice</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13358 +#: book.translate.xml:13421 #, no-wrap msgid "<prompt>%</prompt> <userinput>libreoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13360 +#: book.translate.xml:13423 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." @@ -21121,7 +21252,7 @@ msgstr "" "libreoffice</filename> 資料夾。" #. (itstool) path: sect2/para -#: book.translate.xml:13364 +#: book.translate.xml:13427 msgid "" "If the desired <application>LibreOffice</application> package is not " "available, compiling the port is still an option. However, this requires a " @@ -21132,7 +21263,7 @@ msgstr "" "譯,但這會要大量的磁碟空間及漫長的時間編譯。以下例子示範編譯英文版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:13370 +#: book.translate.xml:13433 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/libreoffice</userinput>\n" @@ -21140,7 +21271,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13374 +#: book.translate.xml:13437 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 " @@ -21152,12 +21283,12 @@ msgstr "" "ports/editors.html\">freebsd.org/ports/editors.html</link>) 中找到。" #. (itstool) path: sect1/title -#: book.translate.xml:13384 +#: book.translate.xml:13447 msgid "Document Viewers" msgstr "文件閱覽程式" #. (itstool) path: sect1/para -#: book.translate.xml:13386 +#: book.translate.xml:13449 msgid "" "Some new document formats have gained popularity since the advent of " "<trademark class=\"registered\">UNIX</trademark> and the viewers they " @@ -21169,58 +21300,58 @@ msgstr "" "以下文件檢視程式:" #. (itstool) path: row/entry -#: book.translate.xml:13404 +#: book.translate.xml:13467 msgid "<application>Xpdf</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13407 +#: book.translate.xml:13470 msgid "<application>FreeType</application>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: sect2/title -#: book.translate.xml:13411 book.translate.xml:13476 +#: book.translate.xml:13474 book.translate.xml:13539 msgid "<application>gv</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13414 +#: book.translate.xml:13477 msgid "<application>Xaw3d</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13418 +#: book.translate.xml:13481 msgid "<application>Geeqie</application>" msgstr "<application>Geeqie</application>" #. (itstool) path: row/entry -#: book.translate.xml:13426 +#: book.translate.xml:13489 msgid "<application>ePDFView</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13433 +#: book.translate.xml:13496 msgid "<application>Okular</application>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13443 +#: book.translate.xml:13506 msgid "Xpdf" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13445 +#: book.translate.xml:13508 msgid "<primary><application>Xpdf</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13448 book.translate.xml:13481 book.translate.xml:13547 +#: book.translate.xml:13511 book.translate.xml:13544 book.translate.xml:13610 msgid "<primary>PDF</primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13453 +#: book.translate.xml:13516 msgid "" "For users that prefer a small FreeBSD PDF viewer, <application>Xpdf</" "application> provides a light-weight and efficient viewer which requires few " @@ -21232,24 +21363,24 @@ msgstr "" "準的 X 字型且不需要額外的工具包(Toolkit)。" #. (itstool) path: sect2/para -#: book.translate.xml:13459 +#: book.translate.xml:13522 msgid "To install the <application>Xpdf</application> package:" msgstr "安裝 <application>Xpdf</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13462 +#: book.translate.xml:13525 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xpdf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13464 book.translate.xml:13534 book.translate.xml:13679 -#: book.translate.xml:13713 book.translate.xml:13746 +#: book.translate.xml:13527 book.translate.xml:13597 book.translate.xml:13742 +#: book.translate.xml:13776 book.translate.xml:13809 msgid "If the package is not available, use the Ports Collection:" msgstr "若沒有可用的套件版本,可使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13467 +#: book.translate.xml:13530 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/xpdf</userinput>\n" @@ -21257,24 +21388,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13470 +#: book.translate.xml:13533 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:13478 +#: book.translate.xml:13541 msgid "<primary><application>gv</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13485 +#: book.translate.xml:13548 msgid "<primary>PostScript</primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13490 +#: book.translate.xml:13553 msgid "" "<application>gv</application> is a <trademark class=\"registered" "\">PostScript</trademark> and PDF viewer. It is based on " @@ -21292,23 +21423,23 @@ msgstr "" "可以從鍵盤或滑鼠來完成。" #. (itstool) path: sect2/para -#: book.translate.xml:13499 +#: book.translate.xml:13562 msgid "To install <application>gv</application> as a package:" msgstr "安裝 <application>gv</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13502 +#: book.translate.xml:13565 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13504 book.translate.xml:13566 book.translate.xml:13596 +#: book.translate.xml:13567 book.translate.xml:13629 book.translate.xml:13659 msgid "If a package is unavailable, use the Ports Collection:" msgstr "若沒有可用的套件版本,可使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13507 +#: book.translate.xml:13570 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/print/gv</userinput>\n" @@ -21316,17 +21447,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13512 +#: book.translate.xml:13575 msgid "Geeqie" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13514 +#: book.translate.xml:13577 msgid "<primary><application>Geeqie</application></primary>" msgstr "<primary><application>Geeqie</application></primary>" #. (itstool) path: sect2/para -#: book.translate.xml:13518 +#: book.translate.xml:13581 msgid "" "<application>Geeqie</application> is a fork from the unmaintained " "<application>GQView</application> project, in an effort to move development " @@ -21345,18 +21476,18 @@ msgstr "" "用全螢幕閱覽以及國際化。" #. (itstool) path: sect2/para -#: book.translate.xml:13529 +#: book.translate.xml:13592 msgid "To install the <application>Geeqie</application> package:" msgstr "安裝 <application>Geeqie</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13532 +#: book.translate.xml:13595 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install geeqie</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13537 +#: book.translate.xml:13600 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/geeqie</userinput>\n" @@ -21364,17 +21495,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13542 +#: book.translate.xml:13605 msgid "ePDFView" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13544 +#: book.translate.xml:13607 msgid "<primary><application>ePDFView</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13552 +#: book.translate.xml:13615 msgid "" "<application>ePDFView</application> is a lightweight <acronym>PDF</acronym> " "document viewer that only uses the <application>Gtk+</application> and " @@ -21390,18 +21521,18 @@ msgstr "" "application> 來列印。" #. (itstool) path: sect2/para -#: book.translate.xml:13561 +#: book.translate.xml:13624 msgid "To install <application>ePDFView</application> as a package:" msgstr "要以套件安裝 <application>ePDFView</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13564 +#: book.translate.xml:13627 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install epdfview</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13569 +#: book.translate.xml:13632 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/epdfview</userinput>\n" @@ -21409,23 +21540,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13574 +#: book.translate.xml:13637 msgid "Okular" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13576 +#: book.translate.xml:13639 msgid "<primary><application>Okular</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13579 +#: book.translate.xml:13642 msgid "" "<primary><acronym>PDF</acronym></primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13584 +#: book.translate.xml:13647 msgid "" "<application>Okular</application> is a universal document viewer based on " "<application>KPDF</application> for <application>KDE</application>. It can " @@ -21440,18 +21571,18 @@ msgstr "" "<acronym>XPS</acronym> 以及 ePub。" #. (itstool) path: sect2/para -#: book.translate.xml:13591 +#: book.translate.xml:13654 msgid "To install <application>Okular</application> as a package:" msgstr "要以套件安裝 <application>Okular</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13594 +#: book.translate.xml:13657 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install okular</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13599 +#: book.translate.xml:13662 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/okular</userinput>\n" @@ -21459,12 +21590,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:13605 +#: book.translate.xml:13668 msgid "Finance" msgstr "財務" #. (itstool) path: sect1/para -#: book.translate.xml:13607 +#: book.translate.xml:13670 msgid "" "For managing personal finances on a FreeBSD desktop, some powerful and easy-" "to-use applications can be installed. Some are compatible with widespread " @@ -21476,42 +21607,42 @@ msgstr "" "<application>Quicken</application> 或 <application>Excel</application> 文件。" #. (itstool) path: sect1/para -#: book.translate.xml:13613 +#: book.translate.xml:13676 msgid "This section covers these programs:" msgstr "這節涵蓋了下面這些軟體:" #. (itstool) path: row/entry -#: book.translate.xml:13628 +#: book.translate.xml:13691 msgid "<application>GnuCash</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13631 book.translate.xml:13638 +#: book.translate.xml:13694 book.translate.xml:13701 msgid "<application>GNOME</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13635 +#: book.translate.xml:13698 msgid "<application>Gnumeric</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13642 +#: book.translate.xml:13705 msgid "<application>KMyMoney</application>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13652 +#: book.translate.xml:13715 msgid "GnuCash" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13654 +#: book.translate.xml:13717 msgid "<primary><application>GnuCash</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13658 +#: book.translate.xml:13721 msgid "" "<application>GnuCash</application> is part of the <application>GNOME</" "application> effort to provide user-friendly, yet powerful, applications to " @@ -21525,7 +21656,7 @@ msgstr "" "蹤收入與花費、銀行帳戶以及股票證券等。 它的特性是介面直覺但功能仍非常專業。" #. (itstool) path: sect2/para -#: book.translate.xml:13666 +#: book.translate.xml:13729 msgid "" "<application>GnuCash</application> provides a smart register, a hierarchical " "system of accounts, and many keyboard accelerators and auto-completion " @@ -21540,18 +21671,18 @@ msgstr "" "application> QIF 檔案。 它也能處理大部分國際的日期及通用貨幣之格式。" #. (itstool) path: sect2/para -#: book.translate.xml:13674 +#: book.translate.xml:13737 msgid "To install the <application>GnuCash</application> package:" msgstr "安裝 <application>GnuCash</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13677 +#: book.translate.xml:13740 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnucash</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13682 +#: book.translate.xml:13745 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/finance/gnucash</userinput>\n" @@ -21559,17 +21690,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13687 +#: book.translate.xml:13750 msgid "Gnumeric" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13689 +#: book.translate.xml:13752 msgid "<primary><application>Gnumeric</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13692 +#: book.translate.xml:13755 msgid "" "<primary>spreadsheet</primary> <secondary><application>Gnumeric</" "application></secondary>" @@ -21578,7 +21709,7 @@ msgstr "" "secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:13697 +#: book.translate.xml:13760 msgid "" "<application>Gnumeric</application> is a spreadsheet program developed by " "the <application>GNOME</application> community. It features convenient " @@ -21597,18 +21728,18 @@ msgstr "" "儲存格格式,像是:數字、貨幣、日期、時間及其他格式等。" #. (itstool) path: sect2/para -#: book.translate.xml:13708 +#: book.translate.xml:13771 msgid "To install <application>Gnumeric</application> as a package:" msgstr "安裝 <application>Gnumeric</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13711 +#: book.translate.xml:13774 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnumeric</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13716 +#: book.translate.xml:13779 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/math/gnumeric</userinput>\n" @@ -21616,17 +21747,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13721 +#: book.translate.xml:13784 msgid "KMyMoney" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13723 +#: book.translate.xml:13786 msgid "<primary><application>KMyMoney</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13725 +#: book.translate.xml:13788 msgid "" "<primary>spreadsheet</primary> <secondary><application>KMyMoney</" "application></secondary>" @@ -21635,7 +21766,7 @@ msgstr "" "secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:13730 +#: book.translate.xml:13793 msgid "" "<application>KMyMoney</application> is a personal finance application " "created by the <application>KDE</application> community. " @@ -21654,18 +21785,18 @@ msgstr "" "多種貨幣並提供財務報表。" #. (itstool) path: sect2/para -#: book.translate.xml:13741 +#: book.translate.xml:13804 msgid "To install <application>KMyMoney</application> as a package:" msgstr "要以套件安裝 <application>KMyMoney</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13744 +#: book.translate.xml:13807 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install kmymoney-kde4</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13749 +#: book.translate.xml:13812 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/finance/kmymoney-kde4</userinput>\n" @@ -21673,19 +21804,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:13764 +#: book.translate.xml:13827 msgid "Multimedia" msgstr "多媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:13767 +#: book.translate.xml:13830 msgid "" "<personname> <firstname>Ross</firstname> <surname>Lippert</surname> </" "personname> <contrib>Edited by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13780 +#: book.translate.xml:13843 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 " @@ -21701,17 +21832,17 @@ msgstr "" "制 MIDI 配備的應用程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13789 +#: book.translate.xml:13852 msgid "" "FreeBSD also supports the playback of video files and <acronym>DVD</" "acronym>s. The FreeBSD Ports Collection contains applications to encode, " "convert, and playback various video media." msgstr "" -" FreeBSD 也能播放一般的視訊檔和 <acronym>DVD</acronym>。 FreeBSD Port 套件集" -"中含有可編碼、轉換以及播放格種影像媒體的應用程式。" +"FreeBSD 也能播放一般的視訊檔和 <acronym>DVD</acronym>。 FreeBSD Port 套件集中" +"含有可編碼、轉換以及播放格種影像媒體的應用程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13794 +#: book.translate.xml:13857 msgid "" "This chapter describes how to configure sound cards, video playback, TV " "tuner cards, and scanners on FreeBSD. It also describes some of the " @@ -21721,32 +21852,32 @@ msgstr "" "有那些應用程式可以使用這些裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:13799 +#: book.translate.xml:13862 msgid "After reading this chapter, you will know how to:" msgstr "讀完這章,您將了解:" #. (itstool) path: listitem/para -#: book.translate.xml:13803 +#: book.translate.xml:13866 msgid "Configure a sound card on FreeBSD." msgstr "設定 FreeBSD 上的音效卡。" #. (itstool) path: listitem/para -#: book.translate.xml:13807 +#: book.translate.xml:13870 msgid "Troubleshoot the sound setup." msgstr "音效設定疑難排解。" #. (itstool) path: listitem/para -#: book.translate.xml:13811 +#: book.translate.xml:13874 msgid "Playback and encode MP3s and other audio." msgstr "播放、錄製 MP3 及其他聲音檔案格式。" #. (itstool) path: listitem/para -#: book.translate.xml:13815 +#: book.translate.xml:13878 msgid "Prepare a FreeBSD system for video playback." msgstr "FreeBSD 系統播放影像的準備工具。" #. (itstool) path: listitem/para -#: book.translate.xml:13819 +#: book.translate.xml:13882 msgid "" "Play <acronym>DVD</acronym>s, <filename>.mpg</filename>, and <filename>.avi</" "filename> files." @@ -21755,65 +21886,69 @@ msgstr "" "filename> 檔。" #. (itstool) path: listitem/para -#: book.translate.xml:13824 +#: book.translate.xml:13887 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:13829 +#: book.translate.xml:13892 msgid "Configure a TV card." msgstr "設定電視卡。" #. (itstool) path: listitem/para -#: book.translate.xml:13833 +#: book.translate.xml:13896 msgid "Install and setup MythTV on FreeBSD" -msgstr "在 FreeBSD 安裝 MythTV 。" +msgstr "在 FreeBSD 安裝 MythTV" #. (itstool) path: listitem/para -#: book.translate.xml:13837 +#: book.translate.xml:13900 msgid "Configure an image scanner." msgstr "設定影像掃描機。" #. (itstool) path: listitem/para -#: book.translate.xml:13844 +#: book.translate.xml:13904 +msgid "Configure a Bluetooth headset." +msgstr "設定藍芽耳機。" + +#. (itstool) path: listitem/para +#: book.translate.xml:13911 msgid "" "Know how to install applications as described in <xref linkend=\"ports\"/>." msgstr "知道如何安裝應用程式如 <xref linkend=\"ports\"/> 所敘述。" #. (itstool) path: info/title -#: book.translate.xml:13851 +#: book.translate.xml:13918 msgid "Setting Up the Sound Card" msgstr "設定音效卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:13854 +#: book.translate.xml:13921 msgid "" "<personname> <firstname>Moses</firstname> <surname>Moore</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:13864 +#: book.translate.xml:13931 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:13874 +#: book.translate.xml:13941 msgid "<primary>PCI</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:13875 +#: book.translate.xml:13942 msgid "<primary>sound cards</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13876 -#, fuzzy +#: book.translate.xml:13943 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 " @@ -21823,16 +21958,16 @@ msgid "" msgstr "" "開始設定之前,必須先知道你的音效卡型號、晶片為何。 FreeBSD 支援許多種音效卡," "請檢查支援的音效硬體表 <link xlink:href=\"https://www.FreeBSD.org/" -"releases/11.1R/hardware.html\">Hardware Notes</link>,以確認你的音效卡是否支" +"releases/12.0R/hardware.html\">Hardware Notes</link>,以確認你的音效卡是否支" "援以及如何在 FreeBSD 上驅動。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:13883 +#: book.translate.xml:13950 msgid "<primary>kernel</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13888 +#: book.translate.xml:13955 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 " @@ -21843,16 +21978,16 @@ msgstr "" "要使用音效裝置,必須要載入正確的驅動程式才行。最簡單方式就是以 " "<citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> 來載入核心模組。以下範例示範載入 Intel 規格內建的音" -"效晶片驅動程式。" +"效晶片驅動程式:" #. (itstool) path: sect1/screen -#: book.translate.xml:13894 +#: book.translate.xml:13961 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload snd_hda</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13896 +#: book.translate.xml:13963 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:" @@ -21861,13 +21996,13 @@ msgstr "" "filename> 檔,以此驅動程式為例:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:13900 +#: book.translate.xml:13967 #, no-wrap msgid "snd_hda_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13902 +#: book.translate.xml:13969 msgid "" "Other available sound modules are listed in <filename>/boot/defaults/loader." "conf</filename>. When unsure which driver to use, load the " @@ -21878,13 +22013,13 @@ msgstr "" "filename> 模組:" #. (itstool) path: sect1/screen -#: book.translate.xml:13907 +#: book.translate.xml:13974 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload snd_driver</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13909 +#: book.translate.xml:13976 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 " @@ -21896,7 +22031,7 @@ msgstr "" "所有音效驅動程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13915 +#: book.translate.xml:13982 msgid "" "To determine which driver was selected for the sound card after loading the " "<filename>snd_driver</filename> metadriver, type <command>cat /dev/sndstat</" @@ -21906,12 +22041,12 @@ msgstr "" "程式,請輸入 <command>cat /dev/sndstat</command>。" #. (itstool) path: sect2/title -#: book.translate.xml:13920 +#: book.translate.xml:13987 msgid "Configuring a Custom Kernel with Sound Support" msgstr "設定自訂核心支援音效" #. (itstool) path: sect2/para -#: book.translate.xml:13922 +#: book.translate.xml:13989 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 " @@ -21919,20 +22054,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13926 +#: book.translate.xml:13993 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:13930 +#: book.translate.xml:13997 #, no-wrap msgid "device sound" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13932 +#: book.translate.xml:13999 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, " @@ -21940,20 +22075,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:13937 +#: book.translate.xml:14004 #, no-wrap msgid "device snd_hda" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13939 +#: book.translate.xml:14006 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:13942 +#: book.translate.xml:14009 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 " @@ -21968,7 +22103,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:13952 +#: book.translate.xml:14019 #, no-wrap msgid "" "device snd_sbc\n" @@ -21976,7 +22111,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13955 +#: book.translate.xml:14022 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</" @@ -21984,7 +22119,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:13959 +#: book.translate.xml:14026 #, no-wrap msgid "" "hint.sbc.0.at=\"isa\"\n" @@ -21995,7 +22130,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13965 +#: book.translate.xml:14032 msgid "" "The syntax used in <filename>/boot/device.hints</filename> is described in " "<citerefentry><refentrytitle>sound</refentrytitle><manvolnum>4</manvolnum></" @@ -22003,7 +22138,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13969 +#: book.translate.xml:14036 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 " @@ -22012,12 +22147,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13976 +#: book.translate.xml:14043 msgid "Testing Sound" msgstr "測試音效" #. (itstool) path: sect2/para -#: book.translate.xml:13978 +#: book.translate.xml:14045 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</" @@ -22026,7 +22161,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13983 +#: book.translate.xml:14050 #, no-wrap msgid "" "pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 5 on hdaa0\n" @@ -22035,12 +22170,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13987 +#: book.translate.xml:14054 msgid "The status of the sound card may also be checked using this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13990 +#: book.translate.xml:14057 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat /dev/sndstat</userinput>\n" @@ -22052,7 +22187,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13997 +#: book.translate.xml:14064 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 " @@ -22061,7 +22196,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14003 +#: book.translate.xml:14070 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 " @@ -22071,13 +22206,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14009 +#: book.translate.xml:14076 #, no-wrap msgid "<prompt>%</prompt> <userinput>cdcontrol -f /dev/acd0 play 1</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:14012 +#: book.translate.xml:14079 msgid "" "Audio <acronym>CD</acronym>s have specialized encodings which means that " "they should not be mounted using <citerefentry><refentrytitle>mount</" @@ -22085,7 +22220,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14017 +#: book.translate.xml:14084 msgid "" "Various applications, such as <package>audio/workman</package>, provide a " "friendlier interface. The <package>audio/mpg123</package> port can be " @@ -22093,20 +22228,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14022 +#: book.translate.xml:14089 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:14025 +#: book.translate.xml:14092 #, no-wrap msgid "<prompt>%</prompt> <userinput>cat <replaceable>filename</replaceable> > /dev/dsp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14027 +#: book.translate.xml:14094 msgid "" "where <filename><replaceable>filename</replaceable></filename> can be any " "type of file. This command should produce some noise, confirming that the " @@ -22114,7 +22249,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14033 +#: book.translate.xml:14100 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 " @@ -22123,91 +22258,177 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14041 +#: book.translate.xml:14108 +msgid "Setting up Bluetooth Sound Devices" +msgstr "設定藍芽音效裝置" + +#. (itstool) path: sect2/indexterm +#: book.translate.xml:14110 +msgid "<primary>Bluetooth audio</primary>" +msgstr "<primary>藍牙音訊</primary>" + +#. (itstool) path: sect2/para +#: book.translate.xml:14114 +msgid "" +"Connecting to a Bluetooth device is out of scope for this chapter. Refer to " +"<xref linkend=\"network-bluetooth\"/> for more information." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:14117 +msgid "" +"To get Bluetooth sound sink working with FreeBSD's sound system, users have " +"to install <package>audio/virtual_oss</package> first:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:14121 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>pkg install virtual_oss</userinput>" +msgstr "<prompt>#</prompt> <userinput>pkg install virtual_oss</userinput>" + +#. (itstool) path: sect2/para +#: book.translate.xml:14123 +msgid "" +"<package>audio/virtual_oss</package> requires <literal>cuse</literal> to be " +"loaded into the kernel:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:14126 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>kldload cuse</userinput>" +msgstr "<prompt>#</prompt> <userinput>kldload cuse</userinput>" + +#. (itstool) path: sect2/para +#: book.translate.xml:14128 +msgid "" +"To load <literal>cuse</literal> during system startup, run this command:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:14131 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf cuse_load=yes</userinput>" +msgstr "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf cuse_load=yes</userinput>" + +#. (itstool) path: sect2/para +#: book.translate.xml:14133 +msgid "" +"To use headphones as a sound sink with <package>audio/virtual_oss</package>, " +"users need to create a virtual device after connecting to a Bluetooth audio " +"device:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:14138 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>virtual_oss -C 2 -c 2 -r 48000 -b 16 -s 768 -R /dev/null -P /dev/bluetooth/<replaceable>headphones</replaceable> -d dsp</userinput>" +msgstr "<prompt>#</prompt> <userinput>virtual_oss -C 2 -c 2 -r 48000 -b 16 -s 768 -R /dev/null -P /dev/bluetooth/<replaceable>headphones</replaceable> -d dsp</userinput>" + +#. (itstool) path: note/para +#: book.translate.xml:14141 +msgid "" +"<replaceable>headphones</replaceable> in this example is a hostname from " +"<filename>/etc/bluetooth/hosts</filename>. <literal>BT_ADDR</literal> could " +"be used instead." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:14146 +msgid "" +"Refer to <citerefentry vendor=\"ports\"><refentrytitle>virtual_oss</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> for more information." +msgstr "" +"請參考 <citerefentry vendor=\"ports\"><refentrytitle>virtual_oss</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得更多資訊。" + +#. (itstool) path: sect2/title +#: book.translate.xml:14150 msgid "Troubleshooting Sound" msgstr "疑難排解音效" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14043 +#: book.translate.xml:14152 msgid "<primary>device nodes</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14044 +#: book.translate.xml:14153 msgid "<primary>I/O port</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14045 +#: book.translate.xml:14154 msgid "<primary>IRQ</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14046 +#: book.translate.xml:14155 msgid "<primary>DSP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14048 +#: book.translate.xml:14157 msgid "" "<xref linkend=\"multimedia-sound-common-error-messages\"/> lists some common " "error messages and their solutions:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:14052 +#: book.translate.xml:14161 msgid "Common Error Messages" msgstr "常見錯誤訊息" #. (itstool) path: row/entry -#: book.translate.xml:14057 +#: book.translate.xml:14166 msgid "Error" msgstr "錯誤" #. (itstool) path: row/entry -#: book.translate.xml:14058 +#: book.translate.xml:14167 msgid "Solution" msgstr "解決方式" #. (itstool) path: row/entry -#: book.translate.xml:14064 +#: book.translate.xml:14173 msgid "<errorname>sb_dspwr(XX) timed out</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14066 +#: book.translate.xml:14175 msgid "The I/O port is not set correctly." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:14071 +#: book.translate.xml:14180 msgid "<errorname>bad irq XX</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14072 +#: book.translate.xml:14181 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:14078 +#: book.translate.xml:14187 msgid "<errorname>xxx: gus pcm not attached, out of memory</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14080 +#: book.translate.xml:14189 msgid "There is not enough available memory to use the device." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:14085 +#: book.translate.xml:14194 msgid "<errorname>xxx: can't open /dev/dsp!</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14087 +#: book.translate.xml:14196 msgid "" "Type <command>fstat | grep dsp</command> to check if another application is " "holding the device open. Noteworthy troublemakers are <application>esound</" @@ -22215,7 +22436,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14098 +#: book.translate.xml:14207 msgid "" "Modern graphics cards often come with their own sound driver for use with " "<acronym>HDMI</acronym>. This sound device is sometimes enumerated before " @@ -22226,7 +22447,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14107 +#: book.translate.xml:14216 #, no-wrap msgid "" "...\n" @@ -22249,7 +22470,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14125 +#: book.translate.xml:14234 msgid "" "In this example, the graphics card (<literal>NVidia</literal>) has been " "enumerated before the sound card (<literal>Realtek ALC889</literal>). To use " @@ -22258,13 +22479,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14132 +#: book.translate.xml:14241 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14134 +#: book.translate.xml:14243 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 " @@ -22272,25 +22493,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14140 +#: book.translate.xml:14249 #, no-wrap msgid "hw.snd.default_unit=<replaceable>4</replaceable>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14145 +#: book.translate.xml:14254 msgid "Utilizing Multiple Sound Sources" msgstr "使用多個音效來源" #. (itstool) path: authorgroup/author -#: book.translate.xml:14148 +#: book.translate.xml:14257 msgid "" "<personname> <firstname>Munish</firstname> <surname>Chopra</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14158 +#: book.translate.xml:14267 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 " @@ -22298,7 +22519,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14163 +#: book.translate.xml:14272 msgid "" "Three <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> knobs are available for configuring virtual " @@ -22306,7 +22527,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14166 +#: book.translate.xml:14275 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>\n" @@ -22315,7 +22536,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14170 +#: book.translate.xml:14279 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 " @@ -22330,7 +22551,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14183 +#: book.translate.xml:14292 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 " @@ -22338,26 +22559,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14188 +#: book.translate.xml:14297 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:14195 +#: book.translate.xml:14304 msgid "Setting Default Values for Mixer Channels" msgstr "設定混音器頻道的預設值" #. (itstool) path: authorgroup/author -#: book.translate.xml:14198 +#: book.translate.xml:14307 msgid "" "<personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14208 +#: book.translate.xml:14317 msgid "" "The default values for the different mixer channels are hardcoded in the " "source code of the <citerefentry><refentrytitle>pcm</" @@ -22370,13 +22591,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14217 +#: book.translate.xml:14326 #, no-wrap msgid "hint.pcm.0.vol=\"50\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14219 +#: book.translate.xml:14328 msgid "" "This will set the volume channel to a default value of <literal>50</literal> " "when the <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</" @@ -22384,19 +22605,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14227 +#: book.translate.xml:14336 msgid "MP3 Audio" msgstr "MP3 音樂" #. (itstool) path: authorgroup/author -#: book.translate.xml:14230 book.translate.xml:59052 +#: book.translate.xml:14339 book.translate.xml:59574 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14240 +#: book.translate.xml:14349 msgid "" "This section describes some <acronym>MP3</acronym> players available for " "FreeBSD, how to rip audio <acronym>CD</acronym> tracks, and how to encode " @@ -22404,12 +22625,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14246 +#: book.translate.xml:14355 msgid "MP3 Players" msgstr "MP3 播放器" #. (itstool) path: sect2/para -#: book.translate.xml:14248 +#: book.translate.xml:14357 msgid "" "A popular graphical <acronym>MP3</acronym> player is <application>Audacious</" "application>. It supports <application>Winamp</application> skins and " @@ -22422,7 +22643,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14259 +#: book.translate.xml:14368 msgid "" "The <package>audio/mpg123</package> package or port provides an alternative, " "command-line <acronym>MP3</acronym> player. Once installed, specify the " @@ -22431,7 +22652,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14265 +#: book.translate.xml:14374 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mpg123 <replaceable>-a /dev/dsp1.0 Foobar-GreatestHits.mp3</replaceable></userinput>\n" @@ -22444,19 +22665,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14273 +#: book.translate.xml:14382 msgid "" "Additional <acronym>MP3</acronym> players are available in the FreeBSD Ports " "Collection." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14278 +#: book.translate.xml:14387 msgid "Ripping <acronym>CD</acronym> Audio Tracks" msgstr "擷取 <acronym>CD</acronym> 音軌" #. (itstool) path: sect2/para -#: book.translate.xml:14280 +#: book.translate.xml:14389 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 " @@ -22466,7 +22687,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14287 +#: book.translate.xml:14396 msgid "" "The <command>cdda2wav</command> tool, which is installed with the " "<package>sysutils/cdrtools</package> suite, can be used to rip audio " @@ -22474,7 +22695,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14292 +#: book.translate.xml:14401 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 " @@ -22483,13 +22704,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14298 +#: book.translate.xml:14407 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14300 +#: book.translate.xml:14409 msgid "" "In this example, the <option>-D <replaceable>0,1,0</replaceable></option> " "indicates the <acronym>SCSI</acronym> device <filename>0,1,0</filename> " @@ -22498,29 +22719,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14307 +#: book.translate.xml:14416 msgid "To rip individual tracks, use <option>-t</option> to specify the track:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14310 +#: book.translate.xml:14419 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14312 +#: book.translate.xml:14421 msgid "To rip a range of tracks, such as track one to seven, specify a range:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14315 +#: book.translate.xml:14424 #, 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:14317 +#: book.translate.xml:14426 msgid "" "To rip from an <acronym>ATAPI</acronym> (<acronym>IDE</acronym>) " "<acronym>CDROM</acronym> drive, specify the device name in place of the " @@ -22529,13 +22750,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14323 +#: book.translate.xml:14432 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>/dev/acd0 -t 7</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14325 +#: book.translate.xml:14434 msgid "" "Alternately, <command>dd</command> can be used to extract audio tracks on " "<acronym>ATAPI</acronym> drives, as described in <xref linkend=\"duplicating-" @@ -22543,12 +22764,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14331 +#: book.translate.xml:14440 msgid "Encoding and Decoding MP3s" msgstr "MP3 編碼與解碼" #. (itstool) path: sect2/para -#: book.translate.xml:14333 +#: book.translate.xml:14442 msgid "" "<application>Lame</application> is a popular <acronym>MP3</acronym> encoder " "which can be installed from the <package>audio/lame</package> port. Due to " @@ -22556,7 +22777,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14338 +#: book.translate.xml:14447 msgid "" "The following command will convert the ripped <acronym>WAV</acronym> file " "<filename><replaceable>audio01.wav</replaceable></filename> to " @@ -22564,7 +22785,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14343 +#: book.translate.xml:14452 #, 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" @@ -22572,7 +22793,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14346 +#: book.translate.xml:14455 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 " @@ -22585,7 +22806,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14359 +#: book.translate.xml:14468 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. " @@ -22596,72 +22817,72 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14367 +#: book.translate.xml:14476 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:14371 +#: book.translate.xml:14480 #, 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:14373 +#: book.translate.xml:14482 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:14378 +#: book.translate.xml:14487 msgid "" "Converting to <acronym>WAV</acronym> Format in <application>XMMS</" "application>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14382 +#: book.translate.xml:14491 msgid "Launch <application>XMMS</application>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14386 +#: book.translate.xml:14495 msgid "" "Right-click the window to bring up the <application>XMMS</application> menu." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14391 +#: book.translate.xml:14500 msgid "Select <literal>Preferences</literal> under <literal>Options</literal>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14396 +#: book.translate.xml:14505 msgid "Change the Output Plugin to <quote>Disk Writer Plugin</quote>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14401 +#: book.translate.xml:14510 msgid "Press <literal>Configure</literal>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14405 +#: book.translate.xml:14514 msgid "Enter or browse to a directory to write the uncompressed files to." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14410 +#: book.translate.xml:14519 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:14416 +#: book.translate.xml:14525 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 " @@ -22669,14 +22890,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14424 +#: book.translate.xml:14533 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:14430 +#: book.translate.xml:14539 msgid "" "Both the <acronym>WAV</acronym> and <acronym>PCM</acronym> formats can be " "used with <application>cdrecord</application>. When using <acronym>WAV</" @@ -22687,32 +22908,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14438 +#: book.translate.xml:14547 #, 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:14440 +#: book.translate.xml:14549 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:14448 +#: book.translate.xml:14557 msgid "Video Playback" msgstr "影片播放" #. (itstool) path: authorgroup/author -#: book.translate.xml:14451 +#: book.translate.xml:14560 msgid "" "<personname> <firstname>Ross</firstname> <surname>Lippert</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14461 +#: book.translate.xml:14570 msgid "" "Before configuring video playback, determine the model and chipset of the " "video card. While <application>Xorg</application> supports a wide variety of " @@ -22723,7 +22944,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14470 +#: book.translate.xml:14579 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 " @@ -22733,13 +22954,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:14477 +#: book.translate.xml:14586 #, no-wrap msgid "<prompt>#</prompt> <userinput>ln -sf /dev/cd0 /dev/dvd</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14479 +#: book.translate.xml:14588 msgid "" "Due to the nature of <citerefentry vendor=\"current\"><refentrytitle>devfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, manually created " @@ -22749,20 +22970,20 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:14484 +#: book.translate.xml:14593 #, no-wrap msgid "link cd0 dvd" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14486 +#: book.translate.xml:14595 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:14490 +#: book.translate.xml:14599 msgid "" "To enhance the shared memory <application>Xorg</application> interface, it " "is recommended to increase the values of these " @@ -22771,7 +22992,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:14495 +#: book.translate.xml:14604 #, no-wrap msgid "" "kern.ipc.shmmax=67108864\n" @@ -22779,27 +23000,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14499 +#: book.translate.xml:14608 msgid "Determining Video Capabilities" msgstr "偵測影像處理能力" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14501 +#: book.translate.xml:14610 msgid "<primary>XVideo</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14502 +#: book.translate.xml:14611 msgid "<primary>SDL</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14503 +#: book.translate.xml:14612 msgid "<primary>DGA</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14505 +#: book.translate.xml:14614 msgid "" "There are several possible ways to display video under <application>Xorg</" "application> and what works is largely hardware dependent. Each method " @@ -22807,17 +23028,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14510 +#: book.translate.xml:14619 msgid "Common video interfaces include:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14514 +#: book.translate.xml:14623 msgid "<application>Xorg</application>: normal output using shared memory." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14519 +#: book.translate.xml:14628 msgid "" "XVideo: an extension to the <application>Xorg</application> interface which " "allows video to be directly displayed in drawable objects through a special " @@ -22827,7 +23048,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14529 +#: book.translate.xml:14638 msgid "" "<acronym>SDL</acronym>: the Simple Directmedia Layer is a porting layer for " "many operating systems, allowing cross-platform applications to be developed " @@ -22839,7 +23060,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14541 +#: book.translate.xml:14650 msgid "" "<acronym>DGA</acronym>: the Direct Graphics Access is an <application>Xorg</" "application> extension which allows a program to bypass the " @@ -22853,34 +23074,34 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14556 +#: book.translate.xml:14665 msgid "SVGAlib: a low level console graphics layer." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:14561 +#: book.translate.xml:14670 msgid "XVideo" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14563 +#: book.translate.xml:14672 msgid "" "To check whether this extension is running, use <command>xvinfo</command>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14566 +#: book.translate.xml:14675 #, no-wrap msgid "<prompt>%</prompt> <userinput>xvinfo</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14568 +#: book.translate.xml:14677 msgid "XVideo is supported for the card if the result is similar to:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14571 +#: book.translate.xml:14680 #, no-wrap msgid "" "X-Video Extension version 2.2\n" @@ -22954,19 +23175,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14640 +#: book.translate.xml:14749 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:14644 +#: book.translate.xml:14753 msgid "If the result instead looks like:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14646 +#: book.translate.xml:14755 #, no-wrap msgid "" "X-Video Extension version 2.2\n" @@ -22975,7 +23196,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14650 +#: book.translate.xml:14759 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 " @@ -22983,36 +23204,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14658 +#: book.translate.xml:14767 msgid "Ports and Packages Dealing with Video" msgstr "可處理影像的 Port 與套件" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14660 +#: book.translate.xml:14769 msgid "<primary>video ports</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14661 +#: book.translate.xml:14770 msgid "<primary>video packages</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14663 +#: book.translate.xml:14772 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:14668 +#: book.translate.xml:14777 msgid "" "<application>MPlayer</application> and <application>MEncoder</application>" msgstr "" "<application>MPlayer</application> 與 <application>MEncoder</application>" #. (itstool) path: sect3/para -#: book.translate.xml:14671 +#: book.translate.xml:14780 msgid "" "<application>MPlayer</application> is a command-line video player with an " "optional graphical interface which aims to provide speed and flexibility. " @@ -23021,12 +23242,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:14677 +#: book.translate.xml:14786 msgid "<primary>MPlayer</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14679 +#: book.translate.xml:14788 msgid "" "<application>MPlayer</application> can be installed using the " "<package>multimedia/mplayer</package> package or port. Several compile " @@ -23036,7 +23257,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14686 +#: book.translate.xml:14795 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, " @@ -23047,7 +23268,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14695 +#: book.translate.xml:14804 msgid "" "By default, the package or port will build the <command>mplayer</command> " "command line utility and the <command>gmplayer</command> graphical utility. " @@ -23057,7 +23278,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14702 +#: book.translate.xml:14811 msgid "" "The first time <application>MPlayer</application> is run, it will create " "<filename>~/.mplayer</filename> in the user's home directory. This " @@ -23066,14 +23287,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14707 +#: book.translate.xml:14816 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:14711 +#: book.translate.xml:14820 msgid "" "To play the file <filename><replaceable>testfile.avi</replaceable></" "filename>, specify the video interfaces with <option>-vo</option>, as seen " @@ -23081,44 +23302,44 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14716 +#: book.translate.xml:14825 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo xv <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14718 +#: book.translate.xml:14827 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo sdl <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14720 +#: book.translate.xml:14829 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo x11 <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14722 +#: book.translate.xml:14831 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo dga <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14724 +#: book.translate.xml:14833 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo 'sdl:dga' <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14726 +#: book.translate.xml:14835 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:14730 +#: book.translate.xml:14839 msgid "" "To play a <acronym>DVD</acronym>, replace <filename><replaceable>testfile." "avi</replaceable></filename> with <option>dvd://<replaceable>N</replaceable> " @@ -23129,13 +23350,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14739 +#: book.translate.xml:14848 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14742 +#: book.translate.xml:14851 msgid "" "The default <acronym>DVD</acronym> device can be defined during the build of " "the <application>MPlayer</application> port by including the " @@ -23145,14 +23366,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14752 +#: book.translate.xml:14861 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:14756 +#: book.translate.xml:14865 msgid "" "Additional playback options include <option>-fs -zoom</option>, which " "engages fullscreen mode, and <option>-framedrop</option>, which helps " @@ -23160,14 +23381,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14760 +#: book.translate.xml:14869 msgid "" "Each user can add commonly used options to their <filename>~/.mplayer/" "config</filename> like so:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:14763 +#: book.translate.xml:14872 #, no-wrap msgid "" "vo=xv\n" @@ -23176,7 +23397,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14767 +#: book.translate.xml:14876 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 " @@ -23184,20 +23405,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14772 +#: book.translate.xml:14881 #, 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:14774 +#: book.translate.xml:14883 msgid "" "The output file, <filename>out.vob</filename>, will be in <acronym>MPEG</" "acronym> format." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14777 +#: book.translate.xml:14886 msgid "" "Anyone wishing to obtain a high level of expertise with <trademark class=" "\"registered\">UNIX</trademark> video should consult <link xlink:href=" @@ -23207,12 +23428,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:14783 +#: book.translate.xml:14892 msgid "<primary>mencoder</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14787 +#: book.translate.xml:14896 msgid "" "Before using <command>mencoder</command>, it is a good idea to become " "familiar with the options described at <link xlink:href=\"http://www." @@ -23225,25 +23446,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14796 +#: book.translate.xml:14905 msgid "Here is an example of a simple copy:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14798 +#: book.translate.xml:14907 #, 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:14800 +#: book.translate.xml:14909 msgid "" "To rip to a file, use <option>-dumpfile</option> with <command>mplayer</" "command>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14803 +#: book.translate.xml:14912 msgid "" "To convert <filename><replaceable>input.avi</replaceable></filename> to the " "MPEG4 codec with MPEG3 audio encoding, first install the <package>audio/" @@ -23252,7 +23473,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14810 +#: book.translate.xml:14919 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \\\n" @@ -23260,14 +23481,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14813 +#: book.translate.xml:14922 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:14817 +#: book.translate.xml:14926 msgid "" "<filename><replaceable>input.avi</replaceable></filename> can be replaced " "with <option>dvd://1 -dvd-device /dev/dvd</option> and run as <systemitem " @@ -23277,12 +23498,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:14827 +#: book.translate.xml:14936 msgid "The <application>xine</application> Video Player" msgstr "<application>xine</application> 影像播放器" #. (itstool) path: sect3/para -#: book.translate.xml:14830 +#: book.translate.xml:14939 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 " @@ -23290,7 +23511,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14835 +#: book.translate.xml:14944 msgid "" "In practice, <application>xine</application> requires either a fast CPU with " "a fast video card, or support for the XVideo extension. The " @@ -23299,39 +23520,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14840 +#: book.translate.xml:14949 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:14844 +#: book.translate.xml:14953 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:14848 +#: book.translate.xml:14957 #, no-wrap msgid "<prompt>%</prompt> <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14850 +#: book.translate.xml:14959 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:14856 +#: book.translate.xml:14965 msgid "The <application>Transcode</application> Utilities" msgstr "<application>Transcode</application> 工具" #. (itstool) path: sect3/para -#: book.translate.xml:14859 +#: book.translate.xml:14968 msgid "" "<application>Transcode</application> provides a suite of tools for re-" "encoding video and audio files. <application>Transcode</application> can be " @@ -23340,7 +23561,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14865 +#: book.translate.xml:14974 msgid "" "In FreeBSD, <application>Transcode</application> can be installed using the " "<package>multimedia/transcode</package> package or port. Many users prefer " @@ -23353,14 +23574,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14876 +#: book.translate.xml:14985 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:14879 +#: book.translate.xml:14988 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>transcode -i <replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>\n" @@ -23368,7 +23589,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14882 +#: book.translate.xml:14991 msgid "" "The resulting <acronym>MPEG</acronym> file, " "<filename><replaceable>output_vcd.mpg</replaceable></filename>, is ready to " @@ -23379,7 +23600,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14891 +#: book.translate.xml:15000 msgid "" "In addition to the manual page for <command>transcode</command>, refer to " "<link xlink:href=\"http://www.transcoding.org/cgi-bin/transcode" @@ -23388,31 +23609,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14900 +#: book.translate.xml:15009 msgid "TV Cards" msgstr "電視卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:14903 +#: book.translate.xml:15012 msgid "" "<personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </" "personname> <contrib>Original contribution by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:14913 +#: book.translate.xml:15022 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Enhanced and adapted by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:14923 +#: book.translate.xml:15032 msgid "<primary>TV cards</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14927 +#: book.translate.xml:15036 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 " @@ -23423,7 +23644,7 @@ msgstr "" "<acronym>FM</acronym> 廣播的功能。" #. (itstool) path: sect1/para -#: book.translate.xml:14932 +#: book.translate.xml:15041 msgid "" "FreeBSD provides support for PCI-based TV cards using a Brooktree " "Bt848/849/878/879 video capture chip with the " @@ -23441,12 +23662,12 @@ msgstr "" "manvolnum></citerefentry> 說明,以查看所支援的硬體清單。" #. (itstool) path: sect2/title -#: book.translate.xml:14939 +#: book.translate.xml:15048 msgid "Loading the Driver" msgstr "載入驅動程式" #. (itstool) path: sect2/para -#: book.translate.xml:14941 +#: book.translate.xml:15050 msgid "" "In order to use the card, the <citerefentry><refentrytitle>bktr</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver must be loaded. " @@ -23458,13 +23679,13 @@ msgstr "" "在 <filename>/boot/loader.conf</filename> 檔加上下面這一行就可以了:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14945 +#: book.translate.xml:15054 #, no-wrap msgid "bktr_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14947 +#: book.translate.xml:15056 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 " @@ -23474,7 +23695,7 @@ msgstr "" "加入以下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14952 +#: book.translate.xml:15061 #, no-wrap msgid "" "device\t bktr\n" @@ -23484,7 +23705,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14957 +#: book.translate.xml:15066 msgid "" "These additional devices are necessary as the card components are " "interconnected via an I2C bus. Then, build and install a new kernel." @@ -23493,7 +23714,7 @@ msgstr "" "連接的。接下來,請編譯、安裝新的核心 。" #. (itstool) path: sect2/para -#: book.translate.xml:14961 +#: book.translate.xml:15070 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:" @@ -23502,7 +23723,7 @@ msgstr "" "機訊息檔中,如同此範例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14965 +#: book.translate.xml:15074 #, no-wrap msgid "" "bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0\n" @@ -23514,7 +23735,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14972 +#: book.translate.xml:15081 msgid "" "The messages will differ according to the hardware. If necessary, it is " "possible to override some of the detected parameters using " @@ -23529,13 +23750,13 @@ msgstr "" "SECAM 調諧器則可加入下列行至自訂核心設定檔:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14979 +#: book.translate.xml:15088 #, no-wrap msgid "options OVERRIDE_TUNER=6" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14981 +#: book.translate.xml:15090 msgid "" "or, use <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>:" @@ -23544,13 +23765,13 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:14983 +#: book.translate.xml:15092 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl hw.bt848.tuner=6</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14985 +#: book.translate.xml:15094 msgid "" "Refer to <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> for a description of the available " @@ -23563,43 +23784,43 @@ msgstr "" "項。" #. (itstool) path: sect2/title -#: book.translate.xml:14990 +#: book.translate.xml:15099 msgid "Useful Applications" msgstr "好用的應用程式" #. (itstool) path: sect2/para -#: book.translate.xml:14992 +#: book.translate.xml:15101 msgid "To use the TV card, install one of the following applications:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14997 +#: book.translate.xml:15106 msgid "" "<package>multimedia/fxtv</package> provides TV-in-a-window and image/audio/" "video capture capabilities." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:15002 +#: book.translate.xml:15111 msgid "" "<package>multimedia/xawtv</package> is another TV application with similar " "features." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:15006 +#: book.translate.xml:15115 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:15012 +#: book.translate.xml:15121 msgid "More applications are available in the FreeBSD Ports Collection." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15019 +#: book.translate.xml:15128 msgid "" "If any problems are encountered with the TV card, check that the video " "capture chip and the tuner are supported by " @@ -23611,12 +23832,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:15028 +#: book.translate.xml:15137 msgid "MythTV" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15030 +#: book.translate.xml:15139 msgid "" "MythTV is a popular, open source Personal Video Recorder (<acronym>PVR</" "acronym>) application. This section demonstrates how to install and setup " @@ -23625,14 +23846,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15035 +#: book.translate.xml:15144 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:15039 +#: book.translate.xml:15148 msgid "" "The frontend can be installed on FreeBSD using the <package>multimedia/" "mythtv-frontend</package> package or port. <application>Xorg</application> " @@ -23643,7 +23864,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15048 +#: book.translate.xml:15157 msgid "" "To install both the backend and the frontend on FreeBSD, use the " "<package>multimedia/mythtv</package> package or port. A <trademark>MySQL</" @@ -23653,12 +23874,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15056 +#: book.translate.xml:15165 msgid "Hardware" msgstr "硬體" #. (itstool) path: sect2/para -#: book.translate.xml:15058 +#: book.translate.xml:15167 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 " @@ -23677,7 +23898,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15076 +#: book.translate.xml:15185 msgid "" "The <link xlink:href=\"https://wiki.freebsd.org/HTPC\">wiki.freebsd.org/" "HTPC</link> page contains a list of all available <acronym>DVB</acronym> " @@ -23685,28 +23906,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15082 +#: book.translate.xml:15191 msgid "Setting up the MythTV Backend" msgstr "設定 MythTV 後端" #. (itstool) path: sect2/para -#: book.translate.xml:15084 +#: book.translate.xml:15193 msgid "To install MythTV using binary packages:" msgstr "要使用 Binary 套件安裝 MythTV 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:15086 +#: book.translate.xml:15195 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install mythtv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15088 +#: book.translate.xml:15197 msgid "Alternatively, to install from the Ports Collection:" msgstr "或從 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:15090 +#: book.translate.xml:15199 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/multimedia/mythtv</userinput>\n" @@ -23714,34 +23935,34 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15093 +#: book.translate.xml:15202 msgid "Once installed, set up the MythTV database:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15095 +#: book.translate.xml:15204 #, 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:15097 +#: book.translate.xml:15206 msgid "Then, configure the backend:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15099 +#: book.translate.xml:15208 #, no-wrap msgid "<prompt>#</prompt> <userinput>mythtv-setup</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15101 +#: book.translate.xml:15210 msgid "Finally, start the backend:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15103 +#: book.translate.xml:15212 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysrc mythbackend_enable=yes</userinput>\n" @@ -23749,24 +23970,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:15110 +#: book.translate.xml:15219 msgid "Image Scanners" msgstr "影像掃描器" #. (itstool) path: authorgroup/author -#: book.translate.xml:15113 +#: book.translate.xml:15222 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15123 +#: book.translate.xml:15232 msgid "<primary>image scanners</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15127 +#: book.translate.xml:15236 msgid "" "In FreeBSD, access to image scanners is provided by <application>SANE</" "application> (Scanner Access Now Easy), which is available in the FreeBSD " @@ -23775,7 +23996,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15133 +#: book.translate.xml:15242 msgid "" "FreeBSD supports both <acronym>SCSI</acronym> and <acronym>USB</acronym> " "scanners. Depending upon the scanner interface, different device drivers are " @@ -23787,7 +24008,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15141 +#: book.translate.xml:15250 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 " @@ -23795,12 +24016,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15147 +#: book.translate.xml:15256 msgid "Checking the Scanner" msgstr "檢查掃描器" #. (itstool) path: sect2/para -#: book.translate.xml:15149 +#: book.translate.xml:15258 msgid "" "The <filename>GENERIC</filename> kernel includes the device drivers needed " "to support <acronym>USB</acronym> scanners. Users with a custom kernel " @@ -23809,7 +24030,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15155 +#: book.translate.xml:15264 #, no-wrap msgid "" "device usb\n" @@ -23819,7 +24040,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15160 +#: book.translate.xml:15269 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 " @@ -23828,13 +24049,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15166 +#: book.translate.xml:15275 #, no-wrap msgid "ugen0.2: <EPSON> at usbus0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15168 +#: book.translate.xml:15277 msgid "" "In this example, an <trademark class=\"registered\">EPSON Perfection</" "trademark> 1650 <acronym>USB</acronym> scanner was detected on <filename>/" @@ -23842,7 +24063,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15173 +#: book.translate.xml:15282 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 " @@ -23856,7 +24077,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15185 +#: book.translate.xml:15294 #, no-wrap msgid "" "device scbus\n" @@ -23864,12 +24085,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15188 +#: book.translate.xml:15297 msgid "Verify that the device is displayed in the system message buffer:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15191 +#: book.translate.xml:15300 #, no-wrap msgid "" "pass2 at aic0 bus 0 target 2 lun 0\n" @@ -23878,7 +24099,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15195 +#: book.translate.xml:15304 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 " @@ -23886,7 +24107,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15200 +#: book.translate.xml:15309 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol rescan all</userinput>\n" @@ -23897,13 +24118,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15206 +#: book.translate.xml:15315 msgid "" "The scanner should now appear in the <acronym>SCSI</acronym> devices list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15209 +#: book.translate.xml:15318 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -23914,7 +24135,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15215 +#: book.translate.xml:15324 msgid "" "Refer to <citerefentry><refentrytitle>scsi</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>camcontrol</" @@ -23923,12 +24144,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15220 +#: book.translate.xml:15329 msgid "<application>SANE</application> Configuration" msgstr "<application>SANE</application> 設定" #. (itstool) path: sect2/para -#: book.translate.xml:15222 +#: book.translate.xml:15331 msgid "" "The <application>SANE</application> system is split in two parts: the " "backends (<package>graphics/sane-backends</package>) and the frontends " @@ -23943,23 +24164,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15235 +#: book.translate.xml:15344 msgid "To install the two parts from binary packages:" msgstr "要由 Binary 套件安裝這兩個部份可:" #. (itstool) path: sect2/screen -#: book.translate.xml:15237 +#: book.translate.xml:15346 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xsane sane-frontends</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15239 +#: book.translate.xml:15348 msgid "Alternatively, to install from the Ports Collection" -msgstr "或由 Port 套件集安裝:" +msgstr "或由 Port 套件集安裝" #. (itstool) path: sect2/screen -#: book.translate.xml:15241 +#: book.translate.xml:15350 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/sane-frontends</userinput>\n" @@ -23969,7 +24190,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15246 +#: book.translate.xml:15355 msgid "" "After installing the <package>graphics/sane-backends</package> port or " "package, use <command>sane-find-scanner</command> to check the scanner " @@ -23977,7 +24198,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15252 +#: book.translate.xml:15361 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sane-find-scanner -q</userinput>\n" @@ -23985,7 +24206,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15255 +#: book.translate.xml:15364 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 " @@ -23993,14 +24214,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:15260 +#: book.translate.xml:15369 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:15265 +#: book.translate.xml:15374 msgid "" "Next, check if the scanner will be identified by a scanning frontend. The " "<application>SANE</application> backends include <command>scanimage</" @@ -24011,7 +24232,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15273 +#: book.translate.xml:15382 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24021,7 +24242,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15278 +#: book.translate.xml:15387 msgid "" "In this second example, <literal>'epson2:libusb:/dev/usb:/dev/ugen0.2'</" "literal> is the backend name (<literal>epson2</literal>) and <literal>/dev/" @@ -24029,14 +24250,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15284 +#: book.translate.xml:15393 msgid "" "If <command>scanimage</command> is unable to identify the scanner, this " "message will appear:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15287 +#: book.translate.xml:15396 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24048,7 +24269,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15294 +#: book.translate.xml:15403 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 " @@ -24060,20 +24281,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15304 +#: book.translate.xml:15413 #, no-wrap msgid "usb /dev/ugen0.2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15306 +#: book.translate.xml:15415 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:15309 +#: book.translate.xml:15418 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24081,14 +24302,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15312 +#: book.translate.xml:15421 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:15316 +#: book.translate.xml:15425 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 " @@ -24098,7 +24319,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15323 +#: book.translate.xml:15432 msgid "" "Alternately, <application>xsane</application>, which is installed with the " "<package>graphics/xsane</package> package or port, is another popular " @@ -24108,12 +24329,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15332 +#: book.translate.xml:15441 msgid "Scanner Permissions" msgstr "掃描器權限" #. (itstool) path: sect2/para -#: book.translate.xml:15334 +#: book.translate.xml:15443 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, " @@ -24129,20 +24350,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15347 +#: book.translate.xml:15456 msgid "" "This example creates a group called <systemitem class=\"groupname" "\"><replaceable>usb</replaceable></systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15349 +#: book.translate.xml:15458 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupadd usb</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15351 +#: book.translate.xml:15460 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=" @@ -24152,7 +24373,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15358 +#: book.translate.xml:15467 #, no-wrap msgid "" "[system=5]\n" @@ -24161,38 +24382,38 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15362 +#: book.translate.xml:15471 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:15365 +#: book.translate.xml:15474 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15367 +#: book.translate.xml:15476 msgid "" "For more details refer to <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:15397 +#: book.translate.xml:15506 msgid "Configuring the FreeBSD Kernel" msgstr "設定 FreeBSD 核心" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15402 +#: book.translate.xml:15511 msgid "" "<primary>kernel</primary> <secondary>building a custom kernel</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15407 +#: book.translate.xml:15516 msgid "" "The kernel is the core of the FreeBSD operating system. It is responsible " "for managing memory, enforcing security controls, networking, disk access, " @@ -24204,38 +24425,38 @@ msgstr "" "定並編譯自訂的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15417 +#: book.translate.xml:15526 msgid "When to build a custom kernel." msgstr "何時需要編譯自訂核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15421 +#: book.translate.xml:15530 msgid "How to take a hardware inventory." msgstr "如何取得硬體資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:15425 +#: book.translate.xml:15534 msgid "How to customize a kernel configuration file." msgstr "如何量身訂做核心設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:15429 +#: book.translate.xml:15538 msgid "" "How to use the kernel configuration file to create and build a new kernel." msgstr "如何使用核心設定檔來建立並編譯新的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15434 +#: book.translate.xml:15543 msgid "How to install the new kernel." msgstr "如何安裝新的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15438 +#: book.translate.xml:15547 msgid "How to troubleshoot if things go wrong." msgstr "發生錯誤時如何排除問題。" #. (itstool) path: sect1/para -#: book.translate.xml:15442 +#: book.translate.xml:15551 msgid "" "All of the commands listed in the examples in this chapter should be " "executed as <systemitem class=\"username\">root</systemitem>." @@ -24244,12 +24465,12 @@ msgstr "" "systemitem> 來執行。" #. (itstool) path: sect1/title -#: book.translate.xml:15447 +#: book.translate.xml:15556 msgid "Why Build a Custom Kernel?" msgstr "為何要編譯自訂的核心?" #. (itstool) path: sect1/para -#: book.translate.xml:15449 +#: book.translate.xml:15558 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 " @@ -24260,7 +24481,7 @@ msgstr "" "重新開機,才能使用。" #. (itstool) path: sect1/para -#: book.translate.xml:15454 +#: book.translate.xml:15563 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 " @@ -24273,7 +24494,7 @@ msgstr "" "功能,這就是所謂模組化核心 (Modular Kernel)。" #. (itstool) path: sect1/para -#: book.translate.xml:15461 +#: book.translate.xml:15570 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 " @@ -24286,7 +24507,7 @@ msgstr "" "載核心模組,且只要將需要的功能靜態的編譯到核心當中。" #. (itstool) path: sect1/para -#: book.translate.xml:15468 +#: book.translate.xml:15577 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 " @@ -24297,10 +24518,10 @@ msgstr "" "編譯自訂的核心幾乎是每位進階的 BSD 使用者所必須經歷的過程。儘管這項工作可能比" "較耗時,但在 FreeBSD 的使用上會有許多好處。 跟必須支援大多數各式硬體的 " "<filename>GENERIC</filename> 核心相比的話, 自訂的核心可以更『體貼』,只支援" -"『自己硬體』的部分就好。 自訂核心有許多項優點,如︰" +"『自己硬體』的部分就好。 自訂核心有許多項優點,如:" #. (itstool) path: listitem/para -#: book.translate.xml:15478 +#: book.translate.xml:15587 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." @@ -24309,7 +24530,7 @@ msgstr "" "流暢快速。" #. (itstool) path: listitem/para -#: book.translate.xml:15484 +#: book.translate.xml:15593 msgid "" "Lower memory usage. A custom kernel often uses less memory than the " "<filename>GENERIC</filename> kernel by omitting unused features and device " @@ -24323,7 +24544,7 @@ msgstr "" "使用。因此,自訂核心對於記憶體較小的系統來說,發揮很大的作用。" #. (itstool) path: listitem/para -#: book.translate.xml:15495 +#: book.translate.xml:15604 msgid "" "Additional hardware support. A custom kernel can add support for devices " "which are not present in the <filename>GENERIC</filename> kernel." @@ -24332,7 +24553,7 @@ msgstr "" "提供的硬體支援。" #. (itstool) path: sect1/para -#: book.translate.xml:15501 +#: book.translate.xml:15610 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." @@ -24341,7 +24562,7 @@ msgstr "" "已有既有的模組可以使用。" #. (itstool) path: sect1/para -#: book.translate.xml:15505 +#: book.translate.xml:15614 msgid "" "Kernel modules exist in <filename>/boot/kernel</filename> and may be " "dynamically loaded into the running kernel using " @@ -24359,7 +24580,7 @@ msgstr "" "其操作手冊有以下資訊:" #. (itstool) path: sect1/screen -#: book.translate.xml:15511 +#: book.translate.xml:15620 #, no-wrap msgid "" "Alternatively, to load the driver as a module at boot time, place the\n" @@ -24369,7 +24590,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15516 +#: book.translate.xml:15625 msgid "" "Adding <literal>if_ath_load=\"YES\"</literal> to <filename>/boot/loader." "conf</filename> will load this module dynamically at boot time." @@ -24378,7 +24599,7 @@ msgstr "" "filename> 會於開機期間自動載入這個模組。" #. (itstool) path: sect1/para -#: book.translate.xml:15520 +#: book.translate.xml:15629 msgid "" "In some cases, there is no associated module in <filename>/boot/kernel</" "filename>. This is mostly true for certain subsystems." @@ -24387,12 +24608,12 @@ msgstr "" "統大多是真的。" #. (itstool) path: sect1/title -#: book.translate.xml:15537 +#: book.translate.xml:15646 msgid "Finding the System Hardware" msgstr "偵測系統硬體" #. (itstool) path: sect1/para -#: book.translate.xml:15539 +#: book.translate.xml:15648 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 " @@ -24406,7 +24627,7 @@ msgstr "" "application> (Device Manager) 內會有目前已安裝的硬體資訊。" #. (itstool) path: note/para -#: book.translate.xml:15547 +#: book.translate.xml:15656 msgid "" "Some versions of <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> have a " @@ -24418,7 +24639,7 @@ msgstr "" "(System) 圖示可用來進入 <application>裝置管理員</application>。" #. (itstool) path: sect1/para -#: book.translate.xml:15552 +#: book.translate.xml:15661 msgid "" "If FreeBSD is the only installed operating system, use " "<citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></" @@ -24436,7 +24657,7 @@ msgstr "" "citerefentry> 驅動程式偵測到了一隻滑鼠:" #. (itstool) path: sect1/screen -#: book.translate.xml:15559 +#: book.translate.xml:15668 #, no-wrap msgid "" "psm0: <PS/2 Mouse> irq 12 on atkbdc0\n" @@ -24446,14 +24667,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15564 +#: book.translate.xml:15673 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:15567 +#: book.translate.xml:15676 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." @@ -24463,7 +24684,7 @@ msgstr "" "<filename>/var/run/dmesg.boot</filename> 檔案的內容。" #. (itstool) path: sect1/para -#: book.translate.xml:15571 +#: book.translate.xml:15680 msgid "" "Another tool for finding hardware is <citerefentry><refentrytitle>pciconf</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, which provides more " @@ -24474,7 +24695,7 @@ msgstr "" "訊,該工具會列出更詳細的硬體資訊如:" #. (itstool) path: sect1/screen -#: book.translate.xml:15574 +#: book.translate.xml:15683 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>pciconf -lv</userinput>\n" @@ -24486,7 +24707,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15581 +#: book.translate.xml:15690 msgid "" "This output shows that the <filename>ath</filename> driver located a " "wireless Ethernet device." @@ -24495,7 +24716,7 @@ msgstr "" "置。" #. (itstool) path: sect1/para -#: book.translate.xml:15584 +#: book.translate.xml:15693 msgid "" "The <option>-k</option> flag of <citerefentry><refentrytitle>man</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> can be used to provide " @@ -24507,7 +24728,7 @@ msgstr "" "出有包含指定裝置品牌或名稱的手冊頁面清單:" #. (itstool) path: sect1/screen -#: book.translate.xml:15589 +#: book.translate.xml:15698 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>man -k <replaceable>Atheros</replaceable></userinput>\n" @@ -24516,7 +24737,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15593 +#: book.translate.xml:15702 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 " @@ -24527,12 +24748,12 @@ msgstr "" #. (itstool) path: sect1/title #. (itstool) path: sect2/title -#: book.translate.xml:15610 book.translate.xml:44424 +#: book.translate.xml:15719 book.translate.xml:44667 msgid "The Configuration File" msgstr "設定檔" #. (itstool) path: sect1/para -#: book.translate.xml:15612 +#: book.translate.xml:15721 msgid "" "In order to create a custom kernel configuration file and build a custom " "kernel, the full FreeBSD source tree must first be installed." @@ -24540,7 +24761,7 @@ msgstr "" "為了要建立自訂核心設定檔並編譯自訂核心,必須先安裝完整的 FreeBSD 原始碼樹。" #. (itstool) path: sect1/para -#: book.translate.xml:15616 +#: book.translate.xml:15725 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</" @@ -24551,8 +24772,7 @@ msgstr "" "> 中的操作說明來安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:15621 -#, fuzzy +#: book.translate.xml:15730 msgid "" "Once source is installed, review the contents of <filename>/usr/src/sys</" "filename>. This directory contains a number of subdirectories, including " @@ -24565,17 +24785,16 @@ msgid "" "filename> subdirectory which contains the <filename>GENERIC</filename> " "kernel configuration file for that architecture." msgstr "" -"完成原始碼完成後,需檢查 <filename>/usr/src/sys</filename> 內的檔案。該目錄內" -"包含數個子目錄,這些子目錄中包了支援的硬體架構 (Architecture) 如下:" +"完成原始碼安裝完成後,需檢查 <filename>/usr/src/sys</filename> 內的檔案。該目" +"錄內包含數個子目錄,這些子目錄代表著支援的硬體架構 (Architecture) 如下:" "<filename>amd64</filename>, <filename>i386</filename>, <filename>ia64</" -"filename>, <filename>pc98</filename>, <filename>powerpc</filename> 以及 " -"<filename>sparc64</filename>。在指定架構目錄中的內容只對該架構有效,其餘部份" -"的程式碼與硬體架構無關,可通用所有平台。每個支援的硬體架構中會有 " -"<filename>conf</filename> 子目錄,裡面含有供該架構使用的 <filename>GENERIC</" -"filename> 核心設定檔。" +"filename>, <filename>powerpc</filename> 以及 <filename>sparc64</filename>。在" +"指定架構目錄中的內容只對該架構有效,其餘部份的程式碼與硬體架構無關,可通用所" +"有平台。每個支援的硬體架構中會有 <filename>conf</filename> 子目錄,裡面含有供" +"該架構使用的 <filename>GENERIC</filename> 核心設定檔。" #. (itstool) path: sect1/para -#: book.translate.xml:15635 +#: book.translate.xml:15744 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 " @@ -24592,7 +24811,7 @@ msgstr "" "filename> 設定檔建立了一個複本名稱為 <filename>MYKERNEL</filename>:" #. (itstool) path: sect1/screen -#: book.translate.xml:15644 +#: book.translate.xml:15753 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/sys/<replaceable>amd64</replaceable>/conf</userinput>\n" @@ -24600,7 +24819,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15647 +#: book.translate.xml:15756 msgid "" "<filename><replaceable>MYKERNEL</replaceable></filename> can now be " "customized with any <acronym>ASCII</acronym> text editor. The default editor " @@ -24613,22 +24832,22 @@ msgstr "" "做 <application>ee</application>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15654 +#: book.translate.xml:15763 msgid "<primary>kernel</primary> <secondary>NOTES</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15658 +#: book.translate.xml:15767 msgid "<primary>NOTES</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15659 +#: book.translate.xml:15768 msgid "<primary>kernel</primary> <secondary>configuration file</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15664 +#: book.translate.xml:15773 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 " @@ -24645,7 +24864,7 @@ msgstr "" "除 <literal>#</literal> 符號。" #. (itstool) path: warning/para -#: book.translate.xml:15675 +#: book.translate.xml:15784 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</" @@ -24659,7 +24878,7 @@ msgstr "" "會無法開機。因此當您不確定時,請在核心保留該項目的支援。" #. (itstool) path: sect1/para -#: book.translate.xml:15682 +#: book.translate.xml:15791 msgid "" "In addition to the brief descriptions provided in this file, additional " "descriptions are contained in <filename>NOTES</filename>, which can be found " @@ -24673,7 +24892,7 @@ msgstr "" "filename>。" #. (itstool) path: tip/para -#: book.translate.xml:15690 +#: book.translate.xml:15799 msgid "" "When finished customizing the kernel configuration file, save a backup copy " "to a location outside of <filename>/usr/src</filename>." @@ -24681,7 +24900,7 @@ msgstr "" "當完成自訂的核心設定檔,請備份到 <filename>/usr/src</filename> 位置之外。" #. (itstool) path: tip/para -#: book.translate.xml:15694 +#: book.translate.xml:15803 msgid "" "Alternately, keep the kernel configuration file elsewhere and create a " "symbolic link to the file:" @@ -24690,7 +24909,7 @@ msgstr "" "案:" #. (itstool) path: tip/screen -#: book.translate.xml:15697 +#: book.translate.xml:15806 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/sys/amd64/conf</userinput>\n" @@ -24700,7 +24919,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15703 +#: book.translate.xml:15812 msgid "" "An <literal>include</literal> directive is available for use in " "configuration files. This allows another configuration file to be included " @@ -24715,7 +24934,7 @@ msgstr "" "並設定額外增加的選項,如範例所示:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:15711 +#: book.translate.xml:15820 #, no-wrap msgid "" "include GENERIC\n" @@ -24728,7 +24947,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15719 +#: book.translate.xml:15828 msgid "" "Using this method, the local configuration file expresses local differences " "from a <filename>GENERIC</filename> kernel. As upgrades are performed, new " @@ -24746,7 +24965,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 找到。" #. (itstool) path: note/para -#: book.translate.xml:15729 +#: book.translate.xml:15838 msgid "" "To build a file which contains all available options, run the following " "command as <systemitem class=\"username\">root</systemitem>:" @@ -24755,59 +24974,59 @@ msgstr "" "systemitem> 執行以下指令:" #. (itstool) path: note/screen -#: book.translate.xml:15732 +#: book.translate.xml:15841 #, 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:16548 +#: book.translate.xml:16657 msgid "Building and Installing a Custom Kernel" msgstr "編譯與安裝自訂核心" #. (itstool) path: sect1/para -#: book.translate.xml:16550 +#: book.translate.xml:16659 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:16555 +#: book.translate.xml:16664 msgid "Building a Kernel" msgstr "編譯核心" #. (itstool) path: procedure/indexterm -#: book.translate.xml:16557 +#: book.translate.xml:16666 msgid "<primary>kernel</primary> <secondary>building / installing</secondary>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16563 +#: book.translate.xml:16672 msgid "Change to this directory:" msgstr "切換至此目錄:" #. (itstool) path: step/screen -#: book.translate.xml:16565 +#: book.translate.xml:16674 #, no-wrap msgid "<prompt>#</prompt> <userinput>cd /usr/src</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16569 +#: book.translate.xml:16678 msgid "" "Compile the new kernel by specifying the name of the custom kernel " "configuration file:" msgstr "指定自訂核心設定檔的名稱來編譯新的核心:" #. (itstool) path: step/screen -#: book.translate.xml:16572 +#: book.translate.xml:16681 #, no-wrap msgid "<prompt>#</prompt> <userinput>make buildkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16576 +#: book.translate.xml:16685 msgid "" "Install the new kernel associated with the specified kernel configuration " "file. This command will copy the new kernel to <filename>/boot/kernel/" @@ -24819,13 +25038,13 @@ msgstr "" "filename>:" #. (itstool) path: step/screen -#: book.translate.xml:16582 +#: book.translate.xml:16691 #, no-wrap msgid "<prompt>#</prompt> <userinput>make installkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16586 +#: book.translate.xml:16695 msgid "" "Shutdown the system and reboot into the new kernel. If something goes wrong, " "refer to <xref linkend=\"kernelconfig-noboot\"/>." @@ -24834,7 +25053,7 @@ msgstr "" "noboot\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:16591 +#: book.translate.xml:16700 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 " @@ -24844,33 +25063,33 @@ msgstr "" "自訂的模組,需在開始編譯之前先編輯 <filename>/etc/make.conf</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:16596 +#: book.translate.xml:16705 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:16600 +#: book.translate.xml:16709 #, no-wrap msgid "MODULES_OVERRIDE = linux acpi" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:16602 +#: book.translate.xml:16711 msgid "" "Alternately, this variable lists which modules to exclude from the build " "process:" msgstr "或者,可使用以下變數來從編譯程序中排除要編譯的模組:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:16605 +#: book.translate.xml:16714 #, no-wrap msgid "WITHOUT_MODULES = linux acpi sound" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:16607 +#: book.translate.xml:16716 msgid "" "Additional variables are available. Refer to " "<citerefentry><refentrytitle>make.conf</refentrytitle><manvolnum>5</" @@ -24880,29 +25099,29 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 取得詳細資訊。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:16610 +#: book.translate.xml:16719 msgid "<primary><filename>/boot/kernel.old</filename></primary>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:16616 +#: book.translate.xml:16725 msgid "If Something Goes Wrong" msgstr "如果發生錯誤" #. (itstool) path: sect1/para -#: book.translate.xml:16618 +#: book.translate.xml:16727 msgid "" "There are four categories of trouble that can occur when building a custom " "kernel:" msgstr "當編譯自訂核心時可能發生以下四種類型的問題:" #. (itstool) path: varlistentry/term -#: book.translate.xml:16623 +#: book.translate.xml:16732 msgid "<command>config</command> fails" msgstr "<command>config</command> 失敗" #. (itstool) path: listitem/para -#: book.translate.xml:16626 +#: book.translate.xml:16735 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 " @@ -24914,18 +25133,18 @@ msgstr "" "17 行輸入的內容正確:" #. (itstool) path: listitem/screen -#: book.translate.xml:16632 +#: book.translate.xml:16741 #, no-wrap msgid "config: line 17: syntax error" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:16637 +#: book.translate.xml:16746 msgid "<command>make</command> fails" msgstr "<command>make</command> 失敗" #. (itstool) path: listitem/para -#: book.translate.xml:16640 +#: book.translate.xml:16749 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</" @@ -24941,12 +25160,12 @@ msgstr "" "設定檔。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16650 +#: book.translate.xml:16759 msgid "The kernel does not boot" msgstr "無法使用核心開機" #. (itstool) path: listitem/para -#: book.translate.xml:16653 +#: book.translate.xml:16762 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 " @@ -24963,7 +25182,7 @@ msgstr "" "replaceable></command> 或替換為任何其他已經知道可以正常開機的核心名稱。" #. (itstool) path: listitem/para -#: book.translate.xml:16665 +#: book.translate.xml:16774 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</" @@ -24978,7 +25197,7 @@ msgstr "" "citerefentry> 也會印出自本次開機後的核心訊息。" #. (itstool) path: note/para -#: book.translate.xml:16673 +#: book.translate.xml:16782 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 " @@ -24992,10 +25211,10 @@ msgstr "" "知可以運作的核心,並使用不同的名稱來確保下次編譯時不會被刪除,這很重要,因此" "每當新的核心被安裝之後,<filename>kernel.old</filename> 都會被最後安裝的核心" "覆寫,有可能會無法開機。盡快,透過重新命名將可運作的核心目錄移動到目前運作的" -"核心目錄。" +"核心目錄:" #. (itstool) path: note/screen -#: book.translate.xml:16683 +#: book.translate.xml:16792 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mv /boot/kernel <replaceable>/boot/kernel.bad</replaceable></userinput>\n" @@ -25003,7 +25222,7 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:16690 +#: book.translate.xml:16799 msgid "" "The kernel works, but <citerefentry><refentrytitle>ps</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> does not" @@ -25012,7 +25231,7 @@ msgstr "" "manvolnum></citerefentry> 無法運作" #. (itstool) path: listitem/para -#: book.translate.xml:16693 +#: book.translate.xml:16802 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 " @@ -25035,19 +25254,19 @@ msgstr "" "是個好主意。" #. (itstool) path: info/title -#: book.translate.xml:16718 +#: book.translate.xml:16827 msgid "Printing" msgstr "列印" #. (itstool) path: authorgroup/author -#: book.translate.xml:16721 book.translate.xml:28562 +#: book.translate.xml:16830 book.translate.xml:28675 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname><contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: chapter/para -#: book.translate.xml:16730 +#: book.translate.xml:16839 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 " @@ -25057,7 +25276,7 @@ msgstr "" "本元件組成,包含了資料傳送到印表機的方式以及印表機可以理解的資料形式。" #. (itstool) path: sect1/para -#: book.translate.xml:16738 +#: book.translate.xml:16847 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 " @@ -25068,13 +25287,13 @@ msgstr "" "filters\"/>。" #. (itstool) path: step/para -#: book.translate.xml:16745 +#: book.translate.xml:16854 msgid "Create a directory to store files while they are being printed:" msgstr "建立一個目錄來儲存要被列印的檔案:" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:16748 book.translate.xml:17157 +#: book.translate.xml:16857 book.translate.xml:17266 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir -p /var/spool/lpd/lp</userinput>\n" @@ -25083,7 +25302,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16754 +#: book.translate.xml:16863 msgid "" "As <systemitem class=\"username\">root</systemitem>, create <filename>/etc/" "printcap</filename> with these contents:" @@ -25092,7 +25311,7 @@ msgstr "" "printcap</filename> 內容如下:" #. (itstool) path: step/programlisting -#: book.translate.xml:16758 +#: book.translate.xml:16867 #, no-wrap msgid "" "lp:\\\n" @@ -25104,37 +25323,37 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16767 +#: book.translate.xml:16876 msgid "This line is for a printer connected to a <acronym>USB</acronym> port." -msgstr "此行是針對連接到 <acronym>USB</acronym> 埠的印表機:" +msgstr "此行是針對連接到 <acronym>USB</acronym> 埠的印表機。" #. (itstool) path: callout/para -#: book.translate.xml:16770 +#: book.translate.xml:16879 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:16773 book.translate.xml:17214 +#: book.translate.xml:16882 book.translate.xml:17323 #, no-wrap msgid ":lp=/dev/lpt0:\\" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16775 +#: book.translate.xml:16884 msgid "For a printer connected directly to a network, use:" msgstr "直接連接到網路的印表機要使用:" #. (itstool) path: callout/programlisting #. (itstool) path: entry/programlisting -#: book.translate.xml:16778 book.translate.xml:17223 +#: book.translate.xml:16887 book.translate.xml:17332 #, no-wrap msgid ":lp=:rm=<replaceable>network-printer-name</replaceable>:rp=raw:\\" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16780 +#: book.translate.xml:16889 msgid "" "Replace <replaceable>network-printer-name</replaceable> with the " "<acronym>DNS</acronym> host name of the network printer." @@ -25143,7 +25362,7 @@ msgstr "" "<acronym>DNS</acronym> 主機名稱。" #. (itstool) path: step/para -#: book.translate.xml:16789 +#: book.translate.xml:16898 msgid "" "Enable <command>lpd</command> by editing <filename>/etc/rc.conf</filename>, " "adding this line:" @@ -25153,19 +25372,19 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: sect2/programlisting -#: book.translate.xml:16792 book.translate.xml:17280 +#: book.translate.xml:16901 book.translate.xml:17389 #, no-wrap msgid "lpd_enable=\"YES\"" msgstr "" #. (itstool) path: step/para #. (itstool) path: sect2/para -#: book.translate.xml:16794 book.translate.xml:17282 +#: book.translate.xml:16903 book.translate.xml:17391 msgid "Start the service:" msgstr "啟動服務:" #. (itstool) path: step/screen -#: book.translate.xml:16796 +#: book.translate.xml:16905 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service lpd start</userinput>\n" @@ -25173,18 +25392,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16801 +#: book.translate.xml:16910 msgid "Print a test:" msgstr "測試列印:" #. (itstool) path: step/screen -#: book.translate.xml:16803 +#: book.translate.xml:16912 #, 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:16806 +#: book.translate.xml:16915 msgid "" "If both lines do not start at the left border, but <quote>stairstep</quote> " "instead, see <xref linkend=\"printing-lpd-filters-stairstep\"/>." @@ -25193,7 +25412,7 @@ msgstr "" "考 <xref linkend=\"printing-lpd-filters-stairstep\"/>。" #. (itstool) path: step/para -#: book.translate.xml:16811 +#: book.translate.xml:16920 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>." @@ -25202,7 +25421,7 @@ msgstr "" "或者將輸出使用管線符號 (Pipe) 傳送給 <command>lpr</command>。" #. (itstool) path: step/screen -#: book.translate.xml:16816 +#: book.translate.xml:16925 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpr textfile.txt</userinput>\n" @@ -25210,12 +25429,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:16823 +#: book.translate.xml:16932 msgid "Printer Connections" msgstr "印表機連線" #. (itstool) path: sect1/para -#: book.translate.xml:16825 +#: book.translate.xml:16934 msgid "" "Printers are connected to computer systems in a variety of ways. Small " "desktop printers are usually connected directly to a computer's " @@ -25230,18 +25449,18 @@ msgstr "" "電腦共享使用,還有少部分印表機則是連接到較罕見的序列 (Serial) 埠。" #. (itstool) path: sect1/para -#: book.translate.xml:16833 +#: book.translate.xml:16942 msgid "FreeBSD can communicate with all of these types of printers." msgstr "FreeBSD 可以與這些類型的印表機溝通。" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:16838 book.translate.xml:17200 +#: book.translate.xml:16947 book.translate.xml:17309 msgid "<acronym>USB</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:16841 +#: book.translate.xml:16950 msgid "" "<acronym>USB</acronym> printers can be connected to any available " "<acronym>USB</acronym> port on the computer." @@ -25250,7 +25469,7 @@ msgstr "" "acronym> 埠。" #. (itstool) path: listitem/para -#: book.translate.xml:16845 +#: book.translate.xml:16954 msgid "" "When FreeBSD detects a <acronym>USB</acronym> printer, two device entries " "are created: <filename>/dev/ulpt0</filename> and <filename>/dev/unlpt0</" @@ -25268,12 +25487,12 @@ msgstr "" "裝置。<filename>unlpt0</filename> 不會重設 USB 埠。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16860 +#: book.translate.xml:16969 msgid "Parallel (<acronym>IEEE</acronym>-1284)" msgstr "並列 (<acronym>IEEE</acronym>-1284)" #. (itstool) path: listitem/para -#: book.translate.xml:16863 +#: book.translate.xml:16972 msgid "" "The parallel port device is <filename>/dev/lpt0</filename>. This device " "appears whether a printer is attached or not, it is not autodetected." @@ -25282,7 +25501,7 @@ msgstr "" "存在,它並不會自動偵測。" #. (itstool) path: listitem/para -#: book.translate.xml:16868 +#: book.translate.xml:16977 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 " @@ -25298,12 +25517,12 @@ msgstr "" "網路。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16880 +#: book.translate.xml:16989 msgid "Serial (RS-232)" msgstr "序列 (RS-232)" #. (itstool) path: listitem/para -#: book.translate.xml:16883 +#: book.translate.xml:16992 msgid "" "Serial ports are another legacy port, rarely used for printers except in " "certain niche applications. Cables, connectors, and required wiring vary " @@ -25313,7 +25532,7 @@ msgstr "" "接頭與需要的佈線方式依需求變化性很大。" #. (itstool) path: listitem/para -#: book.translate.xml:16887 +#: book.translate.xml:16996 msgid "" "For serial ports built into a motherboard, the serial device name is " "<filename>/dev/cuau0</filename> or <filename>/dev/cuau1</filename>. Serial " @@ -25326,7 +25545,7 @@ msgstr "" "filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:16894 +#: book.translate.xml:17003 msgid "" "Several communication parameters must be known to communicate with a serial " "printer. The most important are <emphasis>baud rate</emphasis> or " @@ -25341,17 +25560,17 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:16904 book.translate.xml:17218 +#: book.translate.xml:17013 book.translate.xml:17327 msgid "Network" msgstr "網路" #. (itstool) path: listitem/para -#: book.translate.xml:16907 +#: book.translate.xml:17016 msgid "Network printers are connected directly to the local computer network." msgstr "網路印表機可直接連接到區域網路。" #. (itstool) path: listitem/para -#: book.translate.xml:16910 +#: book.translate.xml:17019 msgid "" "The <acronym>DNS</acronym> hostname of the printer must be known. If the " "printer is assigned a dynamic address by <acronym>DHCP</acronym>, " @@ -25365,7 +25584,7 @@ msgstr "" "<acronym>IP</acronym> 位址可避免這個問題。" #. (itstool) path: listitem/para -#: book.translate.xml:16918 +#: book.translate.xml:17027 msgid "" "Most network printers understand print jobs sent with the <acronym>LPD</" "acronym> protocol. A print queue name can also be specified. Some printers " @@ -25379,12 +25598,12 @@ msgstr "" "<literal>text</literal> 佇列則會在純文字上增加換行符號 (Carriage return)。" #. (itstool) path: listitem/para -#: book.translate.xml:16926 +#: book.translate.xml:17035 msgid "Many network printers can also print data sent directly to port 9100." msgstr "大部份網路印表機也可列印直接傳送到埠號 9100 的資料。" #. (itstool) path: sect2/para -#: book.translate.xml:16935 +#: book.translate.xml:17044 msgid "" "Wired network connections are usually the easiest to set up and give the " "fastest printing. For direct connection to the computer, <acronym>USB</" @@ -25400,12 +25619,12 @@ msgstr "" "式不同,且通訊參數如傳輸速率及同位檢查增加了複雜性,所幸序列印表機並不多。" #. (itstool) path: sect1/title -#: book.translate.xml:16948 +#: book.translate.xml:17057 msgid "Common Page Description Languages" msgstr "常見的頁面描述語言" #. (itstool) path: sect1/para -#: book.translate.xml:16950 +#: book.translate.xml:17059 msgid "" "Data sent to a printer must be in a language that the printer can " "understand. These languages are called Page Description Languages, or " @@ -25415,12 +25634,12 @@ msgstr "" "(Page Description Languages) 或 <acronym>PDL</acronym>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16956 +#: book.translate.xml:17065 msgid "<acronym>ASCII</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:16959 +#: book.translate.xml:17068 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 " @@ -25438,7 +25657,7 @@ msgstr "" "至不需要編碼或轉譯,列印的結果可直接對應傳送的內容。" #. (itstool) path: listitem/para -#: book.translate.xml:16970 +#: book.translate.xml:17079 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." @@ -25447,12 +25666,12 @@ msgstr "" "定。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16978 +#: book.translate.xml:17087 msgid "<trademark class=\"registered\">PostScript</trademark>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:16981 +#: book.translate.xml:17090 msgid "" "<trademark class=\"registered\">PostScript</trademark> is almost the " "opposite of <acronym>ASCII</acronym>. Rather than simple text, a <trademark " @@ -25469,7 +25688,7 @@ msgstr "" "通常這個程式語言會由應用程式產生,所以使用者是看不到的。" #. (itstool) path: listitem/para -#: book.translate.xml:16990 +#: book.translate.xml:17099 msgid "" "Inexpensive printers sometimes leave out <trademark class=\"registered" "\">PostScript</trademark> compatibility as a cost-saving measure." @@ -25478,12 +25697,12 @@ msgstr "" "trademark> 的相容性來節省成本。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16996 +#: book.translate.xml:17105 msgid "<acronym>PCL</acronym> (Printer Command Language)" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:16999 +#: book.translate.xml:17108 msgid "" "<acronym>PCL</acronym> is an extension of <acronym>ASCII</acronym>, adding " "escape sequences for formatting, font selection, and printing graphics. Many " @@ -25498,12 +25717,12 @@ msgstr "" "(Superset),並可以提供更快的列印速度。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17011 +#: book.translate.xml:17120 msgid "Host-Based" msgstr "以主機為基礎 (Host-Based)" #. (itstool) path: listitem/para -#: book.translate.xml:17014 +#: book.translate.xml:17123 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 " @@ -25516,7 +25735,7 @@ msgstr "" "稱為<emphasis>以主機為基礎 (Host-based)</emphasis> 的印表機。" #. (itstool) path: listitem/para -#: book.translate.xml:17022 +#: book.translate.xml:17131 msgid "" "Communication between the driver and a host-based printer is often through " "proprietary or undocumented protocols, making them functional only on the " @@ -25526,7 +25745,7 @@ msgstr "" "印表機只能在最常用的作業系統上運作。" #. (itstool) path: sect2/title -#: book.translate.xml:17031 +#: book.translate.xml:17140 msgid "" "Converting <trademark class=\"registered\">PostScript</trademark> to Other " "<acronym>PDL</acronym>s" @@ -25535,7 +25754,7 @@ msgstr "" "<acronym>PDL</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:17034 +#: book.translate.xml:17143 msgid "" "Many applications from the Ports Collection and FreeBSD utilities produce " "<trademark class=\"registered\">PostScript</trademark> output. This table " @@ -25548,32 +25767,32 @@ msgstr "" "acronym> 的工具:" #. (itstool) path: table/title -#: book.translate.xml:17040 +#: book.translate.xml:17149 msgid "Output <acronym>PDL</acronym>s" msgstr "輸出 <acronym>PDL</acronym> 格式" #. (itstool) path: row/entry -#: book.translate.xml:17045 +#: book.translate.xml:17154 msgid "Output <acronym>PDL</acronym>" msgstr "輸出 <acronym>PDL</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17047 +#: book.translate.xml:17156 msgid "Generated By" msgstr "產生由" #. (itstool) path: row/entry -#: book.translate.xml:17054 +#: book.translate.xml:17163 msgid "<acronym>PCL</acronym> or <acronym>PCL5</acronym>" msgstr "<acronym>PCL</acronym> 或 <acronym>PCL5</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17056 book.translate.xml:17064 book.translate.xml:17072 -msgid "<package role=\"port\">print/ghostscript9</package>" +#: book.translate.xml:17165 book.translate.xml:17173 book.translate.xml:17181 +msgid "<package role=\"port\">print/ghostscript9-base</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17057 +#: book.translate.xml:17166 msgid "" "<literal>-sDEVICE=ljet4</literal> for monochrome, <literal>-sDEVICE=cljet5</" "literal> for color" @@ -25582,12 +25801,12 @@ msgstr "" "sDEVICE=cljet5</literal>" #. (itstool) path: row/entry -#: book.translate.xml:17062 +#: book.translate.xml:17171 msgid "<acronym>PCLXL</acronym> or <acronym>PCL6</acronym>" msgstr "<acronym>PCLXL</acronym> 或 <acronym>PCL6</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17065 +#: book.translate.xml:17174 msgid "" "<literal>-sDEVICE=pxlmono</literal> for monochrome, <literal>-" "sDEVICE=pxlcolor</literal> for color" @@ -25596,65 +25815,65 @@ msgstr "" "sDEVICE=pxlcolor</literal>" #. (itstool) path: row/entry -#: book.translate.xml:17071 +#: book.translate.xml:17180 msgid "<acronym>ESC/P2</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17073 +#: book.translate.xml:17182 msgid "<literal>-sDEVICE=uniprint</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17077 +#: book.translate.xml:17186 msgid "<acronym>XQX</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17078 +#: book.translate.xml:17187 msgid "<package role=\"port\">print/foo2zjs</package>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17089 +#: book.translate.xml:17198 msgid "" "For the easiest printing, choose a printer that supports <trademark class=" "\"registered\">PostScript</trademark>. Printers that support <acronym>PCL</" "acronym> are the next preferred. With <package role=\"port\">print/" -"ghostscript</package>, these printers can be used as if they understood " -"<trademark class=\"registered\">PostScript</trademark> natively. Printers " -"that support <trademark class=\"registered\">PostScript</trademark> or " -"<acronym>PCL</acronym> directly almost always support direct printing of " +"ghostscript9-base</package>, these printers can be used as if they " +"understood <trademark class=\"registered\">PostScript</trademark> natively. " +"Printers that support <trademark class=\"registered\">PostScript</trademark> " +"or <acronym>PCL</acronym> directly almost always support direct printing of " "plain <acronym>ASCII</acronym> text files also." msgstr "" -"要最簡單可以列印,可選擇支援 <trademark class=\"registered\">PostScript</" -"trademark> 的印表機。其次則為支援 <acronym>PCL</acronym> 的印表機,有了 " -"<package role=\"port\">print/ghostscript</package> 這些印表機也可像原生支援 " -"<trademark class=\"registered\">PostScript</trademark> 的印表機一般使用。有直" -"接支援 <trademark class=\"registered\">PostScript</trademark> 或 " -"<acronym>PCL</acronym> 的印表機通常也會直接支援純 <acronym>ASCII</acronym> 文" -"字檔案。" +"要可以列印最簡單的方式就是選擇支援 <trademark class=\"registered" +"\">PostScript</trademark> 的印表機,再來是支援 <acronym>PCL</acronym> 的印表" +"機,有了 <package role=\"port\">print/ghostscript9-base</package> 這些印表機" +"也可像原生支援 <trademark class=\"registered\">PostScript</trademark> 的印表" +"機一般使用。有直接支援 <trademark class=\"registered\">PostScript</" +"trademark> 或 <acronym>PCL</acronym> 的印表機通常也會直接支援純 " +"<acronym>ASCII</acronym> 文字檔案。" #. (itstool) path: sect2/para -#: book.translate.xml:17099 +#: book.translate.xml:17208 msgid "" "Line-based printers like typical inkjets usually do not support <trademark " "class=\"registered\">PostScript</trademark> or <acronym>PCL</acronym>. They " "often can print plain <acronym>ASCII</acronym> text files. <package role=" -"\"port\">print/ghostscript</package> supports the <acronym>PDL</acronym>s " -"used by some of these printers. However, printing an entire graphic-based " -"page on these printers is often very slow due to the large amount of data to " -"be transferred and printed." +"\"port\">print/ghostscript9-base</package> supports the <acronym>PDL</" +"acronym>s used by some of these printers. However, printing an entire " +"graphic-based page on these printers is often very slow due to the large " +"amount of data to be transferred and printed." msgstr "" "行列式印表機如同典型的噴墨式印表機通常不支援 <trademark class=\"registered" "\">PostScript</trademark> 或 <acronym>PCL</acronym>,這種印表機通常可以列印" "純 <acronym>ASCII</acronym> 文字檔案。<package role=\"port\">print/" -"ghostscript</package> 支援部份這種印表機使用的 <acronym>PDL</acronym>,不過要" -"在這種印表機上列印完全以圖型為基礎的頁面通常會非常緩慢,由於需要傳送大量的資" -"料並列印。" +"ghostscript9-base</package> 支援部份這種印表機使用的 <acronym>PDL</acronym>," +"不過要在這種印表機上列印完全以圖型為基礎的頁面通常會非常緩慢,由於需要傳送大" +"量的資料並列印。" #. (itstool) path: sect2/para -#: book.translate.xml:17108 +#: book.translate.xml:17217 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 " @@ -25664,7 +25883,7 @@ msgstr "" "acronym> 而無法使用,盡可能避免使用這類的印表機。" #. (itstool) path: sect2/para -#: book.translate.xml:17113 +#: book.translate.xml:17222 msgid "" "Descriptions of many <acronym>PDL</acronym>s can be found at <link xlink:" "href=\"http://www.undocprint.org/formats/page_description_languages\"/>. The " @@ -25677,12 +25896,12 @@ msgstr "" "org/printers\"/> 查詢。" #. (itstool) path: sect1/title -#: book.translate.xml:17121 +#: book.translate.xml:17230 msgid "Direct Printing" msgstr "直接列印" #. (itstool) path: sect1/para -#: book.translate.xml:17123 +#: book.translate.xml:17232 msgid "" "For occasional printing, files can be sent directly to a printer device " "without any setup. For example, a file called <filename>sample.txt</" @@ -25693,13 +25912,13 @@ msgstr "" "機:" #. (itstool) path: sect1/screen -#: book.translate.xml:17128 +#: book.translate.xml:17237 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp sample.txt /dev/unlpt0</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17130 +#: book.translate.xml:17239 msgid "" "Direct printing to network printers depends on the abilities of the printer, " "but most accept print jobs on port 9100, and " @@ -25714,18 +25933,18 @@ msgstr "" "<replaceable>netlaser</replaceable> 的印表機列印與上述相同的檔案可:" #. (itstool) path: sect1/screen -#: book.translate.xml:17136 +#: book.translate.xml:17245 #, no-wrap msgid "<prompt>#</prompt> <userinput>nc <replaceable>netlaser</replaceable> 9100 < sample.txt</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:17140 +#: book.translate.xml:17249 msgid "<acronym>LPD</acronym> (Line Printer Daemon)" msgstr "<acronym>LPD</acronym> (行列式印表機 Daemon)" #. (itstool) path: sect1/para -#: book.translate.xml:17142 +#: book.translate.xml:17251 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 " @@ -25735,7 +25954,7 @@ msgstr "" "用者能夠繼續執行電腦的其他程式而不需要等候印表機緩慢的完成列印工作。" #. (itstool) path: sect1/para -#: book.translate.xml:17147 +#: book.translate.xml:17256 msgid "" "FreeBSD includes a spooler called <citerefentry><refentrytitle>lpd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Print jobs are " @@ -25748,12 +25967,12 @@ msgstr "" "citerefentry> 來提交。" #. (itstool) path: sect2/title -#: book.translate.xml:17151 book.translate.xml:28651 +#: book.translate.xml:17260 book.translate.xml:28764 msgid "Initial Setup" msgstr "初始設定" #. (itstool) path: sect2/para -#: book.translate.xml:17153 +#: book.translate.xml:17262 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 " @@ -25763,7 +25982,7 @@ msgstr "" "些檔案的內容:" #. (itstool) path: sect2/para -#: book.translate.xml:17161 +#: book.translate.xml:17270 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, " @@ -25775,7 +25994,7 @@ msgstr "" "filename> 使用以下內容:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17167 +#: book.translate.xml:17276 #, no-wrap msgid "" "lp:\\\t\t\t\t<co xml:id=\"printing-lpd-co-name\"/>\n" @@ -25787,7 +26006,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:17176 +#: book.translate.xml:17285 msgid "" "The name of this printer. <citerefentry><refentrytitle>lpr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> sends print jobs to " @@ -25801,30 +26020,30 @@ msgstr "" "<literal>lp</literal>。" #. (itstool) path: callout/para -#: book.translate.xml:17184 +#: book.translate.xml:17293 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:17192 +#: book.translate.xml:17301 msgid "Connection Type" msgstr "連線類型" #. (itstool) path: row/entry -#: book.translate.xml:17193 +#: book.translate.xml:17302 msgid "Device Entry in <filename>/etc/printcap</filename>" msgstr "在 <filename>/etc/printcap</filename> 的裝置項目" #. (itstool) path: entry/programlisting -#: book.translate.xml:17201 +#: book.translate.xml:17310 #, no-wrap msgid ":lp=/dev/unlpt0:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17203 +#: book.translate.xml:17312 msgid "" "This is the <emphasis>non-resetting</emphasis> <acronym>USB</acronym> " "printer device. If problems are experienced, use <filename>ulpt0</filename> " @@ -25835,28 +26054,28 @@ msgstr "" "<acronym>USB</acronym> 埠。" #. (itstool) path: row/entry -#: book.translate.xml:17213 +#: book.translate.xml:17322 msgid "Parallel" msgstr "並列" #. (itstool) path: entry/para -#: book.translate.xml:17220 +#: book.translate.xml:17329 msgid "For a printer supporting the <acronym>LPD</acronym> protocol:" msgstr "針對支援 <acronym>LPD</acronym> 通訊協定的印表機:" #. (itstool) path: entry/para -#: book.translate.xml:17225 +#: book.translate.xml:17334 msgid "For printers supporting port 9100 printing:" msgstr "針對支援使用埠號 9100 列印的印表機:" #. (itstool) path: entry/programlisting -#: book.translate.xml:17228 +#: book.translate.xml:17337 #, no-wrap msgid ":lp=9100@<replaceable>network-printer-name</replaceable>:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17230 +#: book.translate.xml:17339 msgid "" "For both types, replace <replaceable>network-printer-name</replaceable> with " "the <acronym>DNS</acronym> host name of the network printer." @@ -25865,18 +26084,18 @@ msgstr "" "replaceable> 為網路印表機的 <acronym>DNS</acronym> 主機名稱。" #. (itstool) path: row/entry -#: book.translate.xml:17237 +#: book.translate.xml:17346 msgid "Serial" msgstr "序列" #. (itstool) path: entry/programlisting -#: book.translate.xml:17238 +#: book.translate.xml:17347 #, no-wrap msgid ":lp=/dev/cuau0:br=9600:pa=none:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17240 +#: book.translate.xml:17349 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." @@ -25885,17 +26104,17 @@ msgstr "" "9600 且無同位檢查 (No Parity)。" #. (itstool) path: callout/para -#: book.translate.xml:17251 +#: book.translate.xml:17360 msgid "Suppress the printing of a header page at the start of a print job." msgstr "在列印工作開始時不列印首頁。" #. (itstool) path: callout/para -#: book.translate.xml:17256 +#: book.translate.xml:17365 msgid "Do not limit the maximum size of a print job." msgstr "不限制列印工作的最大尺寸。" #. (itstool) path: callout/para -#: book.translate.xml:17260 +#: book.translate.xml:17369 msgid "" "The path to the spooling directory for this printer. Each printer uses its " "own spooling directory." @@ -25904,12 +26123,12 @@ msgstr "" "(Spooling) 目錄。" #. (itstool) path: callout/para -#: book.translate.xml:17265 +#: book.translate.xml:17374 msgid "The log file where errors on this printer will be reported." msgstr "回報此印表機的錯誤的日誌檔。" #. (itstool) path: sect2/para -#: book.translate.xml:17270 +#: book.translate.xml:17379 msgid "" "After creating <filename>/etc/printcap</filename>, use " "<citerefentry><refentrytitle>chkprintcap</refentrytitle><manvolnum>8</" @@ -25920,18 +26139,18 @@ msgstr "" "manvolnum></citerefentry> 測試印表機是否有錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:17273 +#: book.translate.xml:17382 #, no-wrap msgid "<prompt>#</prompt> <userinput>chkprintcap</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17275 +#: book.translate.xml:17384 msgid "Fix any reported problems before continuing." msgstr "在繼續之前修正任何回報的問題。" #. (itstool) path: sect2/para -#: book.translate.xml:17277 +#: book.translate.xml:17386 msgid "" "Enable <citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> in <filename>/etc/rc.conf</filename>:" @@ -25941,13 +26160,13 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:17284 +#: book.translate.xml:17393 #, no-wrap msgid "<prompt>#</prompt> <userinput>service lpd start</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17288 +#: book.translate.xml:17397 msgid "" "Printing with <citerefentry><refentrytitle>lpr</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>" @@ -25956,7 +26175,7 @@ msgstr "" "manvolnum></citerefentry> 列印" #. (itstool) path: sect2/para -#: book.translate.xml:17290 +#: book.translate.xml:17399 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</" @@ -25965,7 +26184,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:17296 +#: book.translate.xml:17405 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpr doc.txt</userinput>\n" @@ -25973,25 +26192,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17299 +#: book.translate.xml:17408 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:17303 +#: book.translate.xml:17412 #, no-wrap msgid "<prompt>%</prompt> <userinput>lpr -Plaser doc.txt</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17307 +#: book.translate.xml:17416 msgid "Filters" msgstr "過濾器" #. (itstool) path: sect2/para -#: book.translate.xml:17309 +#: book.translate.xml:17418 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, " @@ -25999,14 +26218,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17314 +#: book.translate.xml:17423 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:17317 +#: book.translate.xml:17426 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 " @@ -26017,7 +26236,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17325 +#: book.translate.xml:17434 msgid "" "The filters discussed here are <emphasis>input filters</emphasis> or " "<emphasis>text filters</emphasis>. These filters convert the incoming file " @@ -26027,7 +26246,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17332 +#: book.translate.xml:17441 msgid "" "Filters are specified in <filename>/etc/printcap</filename> with the " "<literal>if=</literal> identifier. To use <filename>/usr/local/libexec/" @@ -26036,7 +26255,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17338 +#: book.translate.xml:17447 #, no-wrap msgid "" "lp:\\\n" @@ -26049,14 +26268,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:17348 +#: book.translate.xml:17457 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:17355 +#: book.translate.xml:17464 msgid "" "The backslash <emphasis>line continuation</emphasis> characters at the end " "of the lines in <filename>printcap</filename> entries reveal that an entry " @@ -26066,18 +26285,18 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:17362 +#: book.translate.xml:17471 #, 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:17366 +#: book.translate.xml:17475 msgid "Preventing Stairstepping on Plain Text Printers" msgstr "避免在純文字印表機階梯狀列印" #. (itstool) path: sect3/para -#: book.translate.xml:17368 +#: book.translate.xml:17477 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 " @@ -26085,7 +26304,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17372 +#: book.translate.xml:17481 #, no-wrap msgid "" "A printed file looks\n" @@ -26094,7 +26313,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17376 +#: book.translate.xml:17485 msgid "" "A filter can convert the newline characters into carriage returns and " "newlines. The carriage returns make the printer return to the left after " @@ -26103,7 +26322,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17382 +#: book.translate.xml:17491 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26112,37 +26331,37 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17386 book.translate.xml:17421 book.translate.xml:17453 -#: book.translate.xml:17507 +#: book.translate.xml:17495 book.translate.xml:17530 book.translate.xml:17562 +#: book.translate.xml:17616 msgid "Set the permissions and make it executable:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17388 +#: book.translate.xml:17497 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/lf2crlf</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17390 book.translate.xml:17425 +#: book.translate.xml:17499 book.translate.xml:17534 msgid "Modify <filename>/etc/printcap</filename> to use the new filter:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17393 +#: book.translate.xml:17502 #, no-wrap msgid ":if=/usr/local/libexec/lf2crlf:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17395 +#: book.translate.xml:17504 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:17401 +#: book.translate.xml:17510 msgid "" "Fancy Plain Text on <trademark class=\"registered\">PostScript</trademark> " "Printers with <package>print/enscript</package>" @@ -26151,7 +26370,7 @@ msgstr "" "\">PostScript</trademark> 印表機美化純文字內容" #. (itstool) path: sect3/para -#: book.translate.xml:17404 +#: book.translate.xml:17513 msgid "" "<acronym>GNU</acronym> <application>Enscript</application> converts plain " "text files into nicely-formatted <trademark class=\"registered\">PostScript</" @@ -26164,13 +26383,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17415 +#: book.translate.xml:17524 msgid "" "Create <filename>/usr/local/libexec/enscript</filename> with these contents:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17418 +#: book.translate.xml:17527 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26178,24 +26397,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17423 +#: book.translate.xml:17532 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/enscript</userinput>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17428 +#: book.translate.xml:17537 #, no-wrap msgid ":if=/usr/local/libexec/enscript:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17430 +#: book.translate.xml:17539 msgid "Test the filter by printing a plain text file." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17434 +#: book.translate.xml:17543 msgid "" "Printing <trademark class=\"registered\">PostScript</trademark> to " "<acronym>PCL</acronym> Printers" @@ -26204,7 +26423,7 @@ msgstr "" "acronym> 印表機" #. (itstool) path: sect3/para -#: book.translate.xml:17437 +#: book.translate.xml:17546 msgid "" "Many programs produce <trademark class=\"registered\">PostScript</trademark> " "documents. However, inexpensive printers often only understand plain text or " @@ -26214,21 +26433,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17443 +#: book.translate.xml:17552 msgid "" "Install the Ghostscript <trademark class=\"registered\">PostScript</" -"trademark> interpreter, <package role=\"port\">print/ghostscript9</package>, " -"from the Ports Collection." +"trademark> interpreter, <package role=\"port\">print/ghostscript9-base</" +"package>, from the Ports Collection." msgstr "" +"由 Port 套件集安裝 Ghostscript <trademark class=\"registered\">PostScript</" +"trademark> 直譯器,<package role=\"port\">print/ghostscript9-base</package>。" #. (itstool) path: sect3/para -#: book.translate.xml:17447 +#: book.translate.xml:17556 msgid "" "Create <filename>/usr/local/libexec/ps2pcl</filename> with these contents:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17450 +#: book.translate.xml:17559 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26236,13 +26457,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17455 +#: book.translate.xml:17564 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/ps2pcl</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17457 +#: book.translate.xml:17566 msgid "" "<trademark class=\"registered\">PostScript</trademark> input sent to this " "script will be rendered and converted to <acronym>PCL</acronym> before being " @@ -26250,25 +26471,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17461 book.translate.xml:17511 +#: book.translate.xml:17570 book.translate.xml:17620 msgid "Modify <filename>/etc/printcap</filename> to use this new input filter:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17464 +#: book.translate.xml:17573 #, no-wrap msgid ":if=/usr/local/libexec/ps2pcl:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17466 +#: book.translate.xml:17575 msgid "" "Test the filter by sending a small <trademark class=\"registered" "\">PostScript</trademark> program to it:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17469 +#: book.translate.xml:17578 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>printf \"%%\\!PS \\n /Helvetica findfont 18 scalefont setfont \\\n" @@ -26276,12 +26497,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17474 +#: book.translate.xml:17583 msgid "Smart Filters" msgstr "智慧過濾器" #. (itstool) path: sect3/para -#: book.translate.xml:17476 +#: book.translate.xml:17585 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 " @@ -26296,7 +26517,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17487 +#: book.translate.xml:17596 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26321,31 +26542,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17509 +#: book.translate.xml:17618 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/psif</userinput>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17514 +#: book.translate.xml:17623 #, no-wrap msgid ":if=/usr/local/libexec/psif:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17516 +#: book.translate.xml:17625 msgid "" "Test the filter by printing <trademark class=\"registered\">PostScript</" "trademark> and plain text files." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17521 +#: book.translate.xml:17630 msgid "Other Smart Filters" msgstr "其他智慧過濾器" #. (itstool) path: sect3/para -#: book.translate.xml:17523 +#: book.translate.xml:17632 msgid "" "Writing a filter that detects many different types of input and formats them " "correctly is challenging. <package role=\"port\">print/apsfilter</package> " @@ -26356,12 +26577,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17535 +#: book.translate.xml:17644 msgid "Multiple Queues" msgstr "多序列" #. (itstool) path: sect2/para -#: book.translate.xml:17537 +#: book.translate.xml:17646 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 " @@ -26370,7 +26591,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17543 +#: book.translate.xml:17652 msgid "" "As an example, consider a networked <trademark class=\"registered" "\">PostScript</trademark> laser printer in an office. Most users want to " @@ -26381,7 +26602,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17549 +#: book.translate.xml:17658 #, no-wrap msgid "" "textprinter:\\\n" @@ -26401,7 +26622,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17564 +#: book.translate.xml:17673 msgid "" "Documents sent to <literal>textprinter</literal> will be formatted by the " "<filename>/usr/local/libexec/enscript</filename> filter shown in an earlier " @@ -26411,7 +26632,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17571 +#: book.translate.xml:17680 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, " @@ -26421,26 +26642,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17580 +#: book.translate.xml:17689 msgid "Monitoring and Controlling Printing" msgstr "監視與控制列印" #. (itstool) path: sect2/para -#: book.translate.xml:17582 +#: book.translate.xml:17691 msgid "" "Several utilities are available to monitor print jobs and check and control " "printer operation." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17586 +#: book.translate.xml:17695 msgid "" "<citerefentry><refentrytitle>lpq</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17588 +#: book.translate.xml:17697 msgid "" "<citerefentry><refentrytitle>lpq</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> shows the status of a user's print jobs. Print jobs from other " @@ -26448,12 +26669,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17591 +#: book.translate.xml:17700 msgid "Show the current user's pending jobs on a single printer:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17594 +#: book.translate.xml:17703 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq -P<replaceable>lp</replaceable></userinput>\n" @@ -26462,12 +26683,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17598 +#: book.translate.xml:17707 msgid "Show the current user's pending jobs on all printers:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17601 +#: book.translate.xml:17710 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq -a</userinput>\n" @@ -26481,14 +26702,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17612 +#: book.translate.xml:17721 msgid "" "<citerefentry><refentrytitle>lprm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17614 +#: book.translate.xml:17723 msgid "" "<citerefentry><refentrytitle>lprm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> is used to remove print jobs. Normal users are only allowed to " @@ -26497,12 +26718,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17619 +#: book.translate.xml:17728 msgid "Remove all pending jobs from a printer:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17621 +#: book.translate.xml:17730 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lprm -P<replaceable>lp</replaceable> -</userinput>\n" @@ -26515,7 +26736,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17629 +#: book.translate.xml:17738 msgid "" "Remove a single job from a printer. <citerefentry><refentrytitle>lpq</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is used to find the " @@ -26523,7 +26744,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17632 +#: book.translate.xml:17741 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq</userinput>\n" @@ -26535,14 +26756,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17641 +#: book.translate.xml:17750 msgid "" "<citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17643 +#: book.translate.xml:17752 msgid "" "<citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> is used to check and modify printer status. <literal>lpc</" @@ -26550,17 +26771,17 @@ msgid "" "<literal>all</literal> can be used instead of a specific printer name, and " "the command will be applied to all printers. Normal users can view status " "with <citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry>. Only <systemitem> class=\"username\">root</" +"manvolnum></citerefentry>. Only <systemitem class=\"username\">root</" "systemitem> can use commands which modify printer status." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17652 +#: book.translate.xml:17761 msgid "Show the status of all printers:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17654 +#: book.translate.xml:17763 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpc status all</userinput>\n" @@ -26577,14 +26798,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17666 +#: book.translate.xml:17775 msgid "" "Prevent a printer from accepting new jobs, then begin accepting new jobs " "again:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17669 +#: book.translate.xml:17778 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc disable <replaceable>lp</replaceable></userinput>\n" @@ -26596,13 +26817,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17676 +#: book.translate.xml:17785 msgid "" "Stop printing, but continue to accept new jobs. Then begin printing again:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17679 +#: book.translate.xml:17788 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc stop <replaceable>lp</replaceable></userinput>\n" @@ -26615,12 +26836,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17687 +#: book.translate.xml:17796 msgid "Restart a printer after some error condition:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17689 +#: book.translate.xml:17798 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc restart <replaceable>lp</replaceable></userinput>\n" @@ -26631,14 +26852,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17695 +#: book.translate.xml:17804 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:17698 +#: book.translate.xml:17807 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc down <replaceable>lp</replaceable> Repair parts will arrive on Monday</userinput>\n" @@ -26648,12 +26869,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17703 +#: book.translate.xml:17812 msgid "Re-enable a printer that is down:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17705 +#: book.translate.xml:17814 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc up <replaceable>lp</replaceable></userinput>\n" @@ -26663,31 +26884,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17710 +#: book.translate.xml:17819 msgid "" "See <citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for more commands and options." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17715 +#: book.translate.xml:17824 msgid "Shared Printers" msgstr "分享印表機" #. (itstool) path: sect2/para -#: book.translate.xml:17717 +#: book.translate.xml:17826 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:17722 +#: book.translate.xml:17831 msgid "Aliases" msgstr "別名" #. (itstool) path: sect3/para -#: book.translate.xml:17724 +#: book.translate.xml:17833 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 " @@ -26696,39 +26917,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17730 +#: book.translate.xml:17839 #, no-wrap msgid "lp|<replaceable>repairsprinter</replaceable>|<replaceable>salesprinter</replaceable>:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17732 +#: book.translate.xml:17841 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:17736 +#: book.translate.xml:17845 #, 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:17738 +#: book.translate.xml:17847 msgid "" "Users in the Repairs department print to <emphasis>their</emphasis> printer " "with" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17741 +#: book.translate.xml:17850 #, 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:17743 +#: book.translate.xml:17852 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 " @@ -26738,12 +26959,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17752 +#: book.translate.xml:17861 msgid "Header Pages" msgstr "頁首" #. (itstool) path: sect3/para -#: book.translate.xml:17754 +#: book.translate.xml:17863 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> " @@ -26754,7 +26975,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17762 +#: book.translate.xml:17871 msgid "" "Enabling header pages differs depending on whether the printer is connected " "directly to the computer with a <acronym>USB</acronym>, parallel, or serial " @@ -26762,7 +26983,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17767 +#: book.translate.xml:17876 msgid "" "Header pages on directly-connected printers are enabled by removing the " "<literal>:sh:\\</literal> (Suppress Header) line from the entry in " @@ -26774,7 +26995,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17777 +#: book.translate.xml:17886 msgid "" "Header pages for network printers must be configured on the printer itself. " "Header page entries in <filename>/etc/printcap</filename> are ignored. " @@ -26783,26 +27004,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17788 book.translate.xml:22589 +#: book.translate.xml:17897 book.translate.xml:22697 msgid "References" msgstr "參考文獻" #. (itstool) path: sect2/para -#: book.translate.xml:17790 +#: book.translate.xml:17899 msgid "" "Example files: <filename role=\"directory\">/usr/share/examples/printing/</" "filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17792 +#: book.translate.xml:17901 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:17796 +#: book.translate.xml:17905 msgid "" "Manual pages: <citerefentry><refentrytitle>printcap</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, " @@ -26816,12 +27037,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:17802 +#: book.translate.xml:17911 msgid "Other Printing Systems" msgstr "其他列印系統" #. (itstool) path: sect1/para -#: book.translate.xml:17804 +#: book.translate.xml:17913 msgid "" "Several other printing systems are available in addition to the built-in " "<citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</manvolnum></" @@ -26830,14 +27051,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17809 +#: book.translate.xml:17918 msgid "" "<acronym>CUPS</acronym> (Common <trademark class=\"registered\">UNIX</" "trademark> Printing System)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17812 +#: book.translate.xml:17921 msgid "" "<acronym>CUPS</acronym> is a popular printing system available on many " "operating systems. Using <acronym>CUPS</acronym> on FreeBSD is documented in " @@ -26846,12 +27067,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17819 +#: book.translate.xml:17928 msgid "HPLIP" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17821 +#: book.translate.xml:17930 msgid "" "Hewlett Packard provides a printing system that supports many of their " "inkjet and laser printers. The port is <package role=\"port\">print/hplip</" @@ -26862,12 +27083,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17830 +#: book.translate.xml:17939 msgid "LPRng" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17832 +#: book.translate.xml:17941 msgid "" "<application>LPRng</application> was developed as an enhanced alternative to " "<citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</manvolnum></" @@ -26877,38 +27098,38 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:17850 +#: book.translate.xml:17959 msgid "<trademark class=\"registered\">Linux</trademark> Binary Compatibility" msgstr "<trademark class=\"registered\">Linux</trademark> Binary 相容性" #. (itstool) path: authorgroup/author -#: book.translate.xml:17853 +#: book.translate.xml:17962 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured and parts updated by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:17864 +#: book.translate.xml:17973 msgid "" "<personname> <firstname>Brian N.</firstname> <surname>Handy</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:17872 +#: book.translate.xml:17981 msgid "" "<personname> <firstname>Rich</firstname> <surname>Murphey</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:17884 +#: book.translate.xml:17993 msgid "<primary>Linux binary compatibility</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17892 +#: book.translate.xml:18001 msgid "" "FreeBSD provides binary compatibility with <trademark class=\"registered" "\">Linux</trademark>, allowing users to install and run most <trademark " @@ -26925,7 +27146,7 @@ msgstr "" "現比在 <trademark class=\"registered\">Linux</trademark> 好。" #. (itstool) path: sect1/para -#: book.translate.xml:17898 +#: book.translate.xml:18007 msgid "" "However, some <trademark class=\"registered\">Linux</trademark>-specific " "operating system features are not supported under FreeBSD. For example, " @@ -26939,7 +27160,7 @@ msgstr "" "擬 8086 模式,會無法在 FreeBSD 執行。" #. (itstool) path: note/para -#: book.translate.xml:17904 +#: book.translate.xml:18013 msgid "" "Support for 64-bit binary compatibility with <trademark class=\"registered" "\">Linux</trademark> was added in FreeBSD 10.3." @@ -26948,7 +27169,7 @@ msgstr "" "trademark> Binary 相容性。" #. (itstool) path: listitem/para -#: book.translate.xml:17912 +#: book.translate.xml:18021 msgid "" "How to enable <trademark class=\"registered\">Linux</trademark> binary " "compatibility on a FreeBSD system." @@ -26957,7 +27178,7 @@ msgstr "" "Binary 相容模式。" #. (itstool) path: listitem/para -#: book.translate.xml:17917 +#: book.translate.xml:18026 msgid "" "How to install additional <trademark class=\"registered\">Linux</trademark> " "shared libraries." @@ -26965,7 +27186,7 @@ msgstr "" "如何安裝其他的 <trademark class=\"registered\">Linux</trademark> 共用程式庫。" #. (itstool) path: listitem/para -#: book.translate.xml:17922 +#: book.translate.xml:18031 msgid "" "How to install <trademark class=\"registered\">Linux</trademark> " "applications on a FreeBSD system." @@ -26974,7 +27195,7 @@ msgstr "" "用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:17927 +#: book.translate.xml:18036 msgid "" "The implementation details of <trademark class=\"registered\">Linux</" "trademark> compatibility in FreeBSD." @@ -26983,26 +27204,26 @@ msgstr "" "細節。" #. (itstool) path: listitem/para -#: book.translate.xml:17936 +#: book.translate.xml:18045 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:17944 +#: book.translate.xml:18053 msgid "" "Configuring <trademark class=\"registered\">Linux</trademark> Binary " "Compatibility" msgstr "設定 <trademark class=\"registered\">Linux</trademark> Binary 相容性" #. (itstool) path: sect1/indexterm -#: book.translate.xml:17946 +#: book.translate.xml:18055 msgid "<primary>Ports Collection</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17948 +#: book.translate.xml:18057 msgid "" "By default, <trademark class=\"registered\">Linux</trademark> libraries are " "not installed and <trademark class=\"registered\">Linux</trademark> binary " @@ -27016,7 +27237,7 @@ msgstr "" "FreeBSD Port 套件集安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:17953 +#: book.translate.xml:18062 msgid "" "Before attempting to build the port, load the <trademark class=\"registered" "\">Linux</trademark> kernel module, otherwise the build will fail:" @@ -27025,29 +27246,29 @@ msgstr "" "核心模組,否則編譯會失敗:" #. (itstool) path: sect1/screen -#: book.translate.xml:17956 +#: book.translate.xml:18065 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload linux</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17958 +#: book.translate.xml:18067 msgid "For 64-bit compatibility:" msgstr "對 64-位元的相容性:" #. (itstool) path: sect1/screen -#: book.translate.xml:17960 +#: book.translate.xml:18069 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload linux64</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17962 +#: book.translate.xml:18071 msgid "To verify that the module is loaded:" msgstr "確認模組已載入:" #. (itstool) path: sect1/screen -#: book.translate.xml:17964 +#: book.translate.xml:18073 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>kldstat</userinput>\n" @@ -27057,7 +27278,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17969 +#: book.translate.xml:18078 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</" @@ -27068,13 +27289,13 @@ msgstr "" "件或是 Port 。要安裝 Port:" #. (itstool) path: sect1/screen -#: book.translate.xml:17974 +#: book.translate.xml:18083 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install emulators/linux_base-c6</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17976 +#: book.translate.xml:18085 msgid "" "For <trademark class=\"registered\">Linux</trademark> compatibility to be " "enabled at boot time, add this line to <filename>/etc/rc.conf</filename>:" @@ -27083,13 +27304,13 @@ msgstr "" "加入這行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:17979 +#: book.translate.xml:18088 #, no-wrap msgid "linux_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17981 +#: book.translate.xml:18090 msgid "" "On 64-bit machines, <filename>/etc/rc.d/abi</filename> will automatically " "load the module for 64-bit emulation." @@ -27098,30 +27319,32 @@ msgstr "" "元模擬的模組。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:17984 +#: book.translate.xml:18093 msgid "<primary>kernel options</primary> <secondary>COMPAT_LINUX</secondary>" msgstr "<primary>核心選項</primary> <secondary>COMPAT_LINUX</secondary>" #. (itstool) path: sect1/para -#: book.translate.xml:17989 +#: book.translate.xml:18098 msgid "" -"Since the Linux binary compatibility layer has gained support for running " -"both 32- and 64-bit Linux binaries (on 64-bit x86 hosts), it is no longer " -"possible to link the emulation functionality statically into a custom kernel." +"Since the <trademark class=\"registered\">Linux</trademark> binary " +"compatibility layer has gained support for running both 32- and 64-bit " +"<trademark class=\"registered\">Linux</trademark> binaries (on 64-bit x86 " +"hosts), it is no longer possible to link the emulation functionality " +"statically into a custom kernel." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17995 +#: book.translate.xml:18104 msgid "Installing Additional Libraries Manually" msgstr "手動安裝其他程式庫" #. (itstool) path: sect2/indexterm -#: book.translate.xml:17997 +#: book.translate.xml:18106 msgid "<primary>shared libraries</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18001 +#: book.translate.xml:18110 msgid "" "If a <trademark class=\"registered\">Linux</trademark> application complains " "about missing shared libraries after configuring <trademark class=" @@ -27135,7 +27358,7 @@ msgstr "" "Binary 需要哪個共用程式庫並手動安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:18006 +#: book.translate.xml:18115 msgid "" "From a <trademark class=\"registered\">Linux</trademark> system, " "<command>ldd</command> can be used to determine which shared libraries the " @@ -27151,7 +27374,7 @@ msgstr "" "個指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:18013 +#: book.translate.xml:18122 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ldd linuxdoom</userinput>\n" @@ -27161,12 +27384,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18018 +#: book.translate.xml:18127 msgid "<primary>symbolic links</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18022 +#: book.translate.xml:18131 msgid "" "Then, copy all the files in the last column of the output from the " "<trademark class=\"registered\">Linux</trademark> system into <filename>/" @@ -27180,7 +27403,7 @@ msgstr "" "FreeBSD 系統產生以下檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:18029 +#: book.translate.xml:18138 #, no-wrap msgid "" "/compat/linux/usr/X11/lib/libXt.so.3.1.0\n" @@ -27192,7 +27415,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18036 +#: book.translate.xml:18145 msgid "" "If a <trademark class=\"registered\">Linux</trademark> shared library " "already exists with a matching major revision number to the first column of " @@ -27207,12 +27430,12 @@ msgstr "" "只要符號連結指向新版的程式庫,舊版便可移除。" #. (itstool) path: sect2/para -#: book.translate.xml:18044 +#: book.translate.xml:18153 msgid "For example, these libraries already exist on the FreeBSD system:" msgstr "例如,以下程式庫已存在 FreeBSD 系統:" #. (itstool) path: sect2/screen -#: book.translate.xml:18047 +#: book.translate.xml:18156 #, no-wrap msgid "" "/compat/linux/lib/libc.so.4.6.27\n" @@ -27220,19 +27443,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18050 +#: book.translate.xml:18159 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:18053 +#: book.translate.xml:18162 #, no-wrap msgid "libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18055 +#: book.translate.xml:18164 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. " @@ -27244,7 +27467,7 @@ msgstr "" "本:" #. (itstool) path: sect2/screen -#: book.translate.xml:18061 +#: book.translate.xml:18170 #, no-wrap msgid "" "/compat/linux/lib/libc.so.4.6.29\n" @@ -27252,7 +27475,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18064 +#: book.translate.xml:18173 msgid "" "Generally, one will need to look for the shared libraries that <trademark " "class=\"registered\">Linux</trademark> binaries depend on only the first few " @@ -27269,7 +27492,7 @@ msgstr "" "\"registered\">Linux</trademark> Binary,便不再需要額外的動作。" #. (itstool) path: sect2/title -#: book.translate.xml:18073 +#: book.translate.xml:18182 msgid "" "Installing <trademark class=\"registered\">Linux</trademark> <acronym>ELF</" "acronym> Binaries" @@ -27278,12 +27501,12 @@ msgstr "" "acronym> Binary" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18076 +#: book.translate.xml:18185 msgid "<primary>Linux</primary> <secondary>ELF binaries</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18081 +#: book.translate.xml:18190 msgid "" "<acronym>ELF</acronym> binaries sometimes require an extra step. When an " "unbranded <acronym>ELF</acronym> binary is executed, it will generate an " @@ -27293,7 +27516,7 @@ msgstr "" "的 <acronym>ELF</acronym> Binary,會產生錯誤訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:18085 +#: book.translate.xml:18194 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>./my-linux-elf-binary</userinput>\n" @@ -27302,7 +27525,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18089 +#: book.translate.xml:18198 msgid "" "To help the FreeBSD kernel distinguish between a FreeBSD <acronym>ELF</" "acronym> binary and a <trademark class=\"registered\">Linux</trademark> " @@ -27315,18 +27538,18 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:18093 +#: book.translate.xml:18202 #, no-wrap msgid "<prompt>%</prompt> <userinput>brandelf -t Linux my-linux-elf-binary</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18095 +#: book.translate.xml:18204 msgid "<primary>GNU toolchain</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18099 +#: book.translate.xml:18208 msgid "" "Since the GNU toolchain places the appropriate branding information into " "<acronym>ELF</acronym> binaries automatically, this step is usually not " @@ -27336,7 +27559,7 @@ msgstr "" "不需要這個步驟。" #. (itstool) path: sect2/title -#: book.translate.xml:18105 +#: book.translate.xml:18214 msgid "" "Installing a <trademark class=\"registered\">Linux</trademark> <acronym>RPM</" "acronym> Based Application" @@ -27345,7 +27568,7 @@ msgstr "" "acronym> 為基礎的應用程式" #. (itstool) path: sect2/para -#: book.translate.xml:18108 +#: book.translate.xml:18217 msgid "" "To install a <trademark class=\"registered\">Linux</trademark> <acronym>RPM</" "acronym>-based application, first install the <package>archivers/rpm4</" @@ -27359,7 +27582,7 @@ msgstr "" "這個指令安裝 <filename>.rpm</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:18115 +#: book.translate.xml:18224 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /compat/linux</userinput>\n" @@ -27367,7 +27590,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18118 +#: book.translate.xml:18227 msgid "" "If necessary, <command>brandelf</command> the installed <acronym>ELF</" "acronym> binaries. Note that this will prevent a clean uninstall." @@ -27376,17 +27599,17 @@ msgstr "" "Binary。注意,這將會無法乾淨地解除安裝。" #. (itstool) path: sect2/title -#: book.translate.xml:18124 +#: book.translate.xml:18233 msgid "Configuring the Hostname Resolver" msgstr "設定主機名稱解析器" #. (itstool) path: sect2/para -#: book.translate.xml:18126 +#: book.translate.xml:18235 msgid "If <acronym>DNS</acronym> does not work or this error appears:" msgstr "如果 <acronym>DNS</acronym> 無法運作或出現這個錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:18129 +#: book.translate.xml:18238 #, no-wrap msgid "" "resolv+: \"bind\" is an invalid keyword resolv+:\n" @@ -27394,12 +27617,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18132 +#: book.translate.xml:18241 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:18135 +#: book.translate.xml:18244 #, no-wrap msgid "" "order hosts, bind\n" @@ -27407,7 +27630,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18138 +#: book.translate.xml:18247 msgid "" "This specifies that <filename>/etc/hosts</filename> is searched first and " "<acronym>DNS</acronym> is searched second. When <filename>/compat/linux/etc/" @@ -27424,12 +27647,12 @@ msgstr "" "literal>。" #. (itstool) path: sect1/title -#: book.translate.xml:18973 book.translate.xml:40145 book.translate.xml:51433 +#: book.translate.xml:19081 book.translate.xml:40258 book.translate.xml:51673 msgid "Advanced Topics" msgstr "進階主題" #. (itstool) path: sect1/para -#: book.translate.xml:18975 +#: book.translate.xml:19083 msgid "" "This section describes how <trademark class=\"registered\">Linux</trademark> " "binary compatibility works and is based on an email written to <link xlink:" @@ -27440,12 +27663,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:18980 +#: book.translate.xml:19088 msgid "<primary>execution class loader</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18982 +#: book.translate.xml:19090 msgid "" "FreeBSD has an abstraction called an <quote>execution class loader</quote>. " "This is a wedge into the <citerefentry><refentrytitle>execve</" @@ -27453,7 +27676,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18986 +#: book.translate.xml:19094 msgid "" "Historically, the <trademark class=\"registered\">UNIX</trademark> loader " "examined the magic number (generally the first 4 or 8 bytes of the file) to " @@ -27462,7 +27685,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18991 +#: book.translate.xml:19099 msgid "" "If it was not the binary type for the system, the " "<citerefentry><refentrytitle>execve</refentrytitle><manvolnum>2</manvolnum></" @@ -27472,7 +27695,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18997 +#: book.translate.xml:19105 msgid "" "Later, a hack was made for <citerefentry><refentrytitle>sh</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to examine the first " @@ -27482,7 +27705,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19001 +#: book.translate.xml:19109 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 " @@ -27490,17 +27713,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19005 +#: book.translate.xml:19113 msgid "<primary>ELF</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19009 book.translate.xml:53483 +#: book.translate.xml:19117 book.translate.xml:53723 msgid "<primary>Solaris</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19013 +#: book.translate.xml:19121 msgid "" "For the <trademark class=\"registered\">Linux</trademark> <acronym>ABI</" "acronym> support, FreeBSD sees the magic number as an ELF binary. The ELF " @@ -27510,7 +27733,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19019 +#: book.translate.xml:19127 msgid "" "For <trademark class=\"registered\">Linux</trademark> binaries to function, " "they must be <emphasis>branded</emphasis> as type <literal>Linux</literal> " @@ -27519,18 +27742,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:19023 +#: book.translate.xml:19131 #, no-wrap msgid "<prompt>#</prompt> <userinput>brandelf -t Linux file</userinput>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19025 +#: book.translate.xml:19133 msgid "<primary>ELF</primary> <secondary>branding</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19030 +#: book.translate.xml:19138 msgid "" "When the ELF loader sees the <literal>Linux</literal> brand, the loader " "replaces a pointer in the <literal>proc</literal> structure. All system " @@ -27541,7 +27764,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19038 +#: book.translate.xml:19146 msgid "" "The <trademark class=\"registered\">Linux</trademark> system call vector " "contains, among other things, a list of <literal>sysent[]</literal> entries " @@ -27549,7 +27772,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19042 +#: book.translate.xml:19150 msgid "" "When a system call is called by the <trademark class=\"registered\">Linux</" "trademark> binary, the trap code dereferences the system call function " @@ -27559,21 +27782,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19047 +#: book.translate.xml:19155 msgid "" "<trademark class=\"registered\">Linux</trademark> mode dynamically " -"<emphasis>reroots</emphasis> lookups. This is, in effect, equivalent to the " -"<option>union</option> option to file system mounts. First, an attempt is " -"made to lookup the file in <filename>/compat/linux/<replaceable>original-" -"path</replaceable></filename>. If that fails, the lookup is done in " -"<filename>/<replaceable>original-path</replaceable></filename>. This makes " -"sure that binaries that require other binaries can run. For example, the " -"<trademark class=\"registered\">Linux</trademark> toolchain can all run " -"under <trademark class=\"registered\">Linux</trademark> <acronym>ABI</" -"acronym> support. It also means that the <trademark class=\"registered" -"\">Linux</trademark> binaries can load and execute FreeBSD binaries, if " -"there are no corresponding <trademark class=\"registered\">Linux</trademark> " -"binaries present, and that a <citerefentry><refentrytitle>uname</" +"<emphasis>reroots</emphasis> lookups. This is, in effect, equivalent to " +"<option>union</option> to file system mounts. First, an attempt is made to " +"lookup the file in <filename>/compat/linux/<replaceable>original-path</" +"replaceable></filename>. If that fails, the lookup is done in <filename>/" +"<replaceable>original-path</replaceable></filename>. This makes sure that " +"binaries that require other binaries can run. For example, the <trademark " +"class=\"registered\">Linux</trademark> toolchain can all run under " +"<trademark class=\"registered\">Linux</trademark> <acronym>ABI</acronym> " +"support. It also means that the <trademark class=\"registered\">Linux</" +"trademark> binaries can load and execute FreeBSD binaries, if there are no " +"corresponding <trademark class=\"registered\">Linux</trademark> binaries " +"present, and that a <citerefentry><refentrytitle>uname</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> command can be placed " "in the <filename>/compat/linux</filename> directory tree to ensure that the " "<trademark class=\"registered\">Linux</trademark> binaries cannot tell they " @@ -27581,7 +27804,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19064 +#: book.translate.xml:19172 msgid "" "In effect, there is a <trademark class=\"registered\">Linux</trademark> " "kernel in the FreeBSD kernel. The various underlying functions that " @@ -27599,7 +27822,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19077 +#: book.translate.xml:19185 msgid "" "Technically, this is not really emulation, it is an <acronym>ABI</acronym> " "implementation. It is sometimes called <quote><trademark class=\"registered" @@ -27610,12 +27833,12 @@ msgid "" msgstr "" #. (itstool) path: part/title -#: book.translate.xml:19089 +#: book.translate.xml:19197 msgid "System Administration" msgstr "系統管理" #. (itstool) path: partintro/para -#: book.translate.xml:19092 +#: book.translate.xml:19200 msgid "" "The remaining chapters cover all aspects of FreeBSD system administration. " "Each chapter starts by describing what will be learned as a result of " @@ -27627,7 +27850,7 @@ msgstr "" "的一些背景知識。" #. (itstool) path: partintro/para -#: book.translate.xml:19098 +#: book.translate.xml:19206 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 " @@ -27637,43 +27860,43 @@ msgstr "" "要將這些章節全部過讀之後才開始用 FreeBSD。" #. (itstool) path: info/title -#: book.translate.xml:19113 +#: book.translate.xml:19221 msgid "Configuration and Tuning" msgstr "設定與調校" #. (itstool) path: authorgroup/author -#: book.translate.xml:19116 +#: book.translate.xml:19224 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:19126 +#: book.translate.xml:19234 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:19136 +#: book.translate.xml:19244 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:19149 +#: book.translate.xml:19257 msgid "<primary>system configuration</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19152 +#: book.translate.xml:19260 msgid "<primary>system optimization</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19156 +#: book.translate.xml:19264 msgid "" "One of the important aspects of FreeBSD is proper system configuration. This " "chapter explains much of the FreeBSD configuration process, including some " @@ -27683,7 +27906,7 @@ msgstr "" "紹 FreeBSD 的設定流程,包括一些可以調整 FreeBSD 效能的參數設定。" #. (itstool) path: listitem/para -#: book.translate.xml:19165 +#: book.translate.xml:19273 msgid "" "The basics of <filename>rc.conf</filename> configuration and <filename>/usr/" "local/etc/rc.d</filename> startup scripts." @@ -27692,23 +27915,23 @@ msgstr "" "filename> 啟動 Script。" #. (itstool) path: listitem/para -#: book.translate.xml:19171 +#: book.translate.xml:19279 msgid "How to configure and test a network card." msgstr "如何設定並測試網路卡。" #. (itstool) path: listitem/para -#: book.translate.xml:19175 +#: book.translate.xml:19283 msgid "How to configure virtual hosts on network devices." msgstr "如何在網路裝置上設定虛擬主機。" #. (itstool) path: listitem/para -#: book.translate.xml:19180 +#: book.translate.xml:19288 msgid "" "How to use the various configuration files in <filename>/etc</filename>." msgstr "如何使用在 <filename>/etc</filename> 中的各種設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:19185 +#: book.translate.xml:19293 msgid "" "How to tune FreeBSD using <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variables." @@ -27717,13 +27940,13 @@ msgstr "" "manvolnum></citerefentry> 變數調校 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:19189 +#: book.translate.xml:19297 msgid "How to tune disk performance and modify kernel limitations." msgstr "如何調校磁碟效能及修改核心限制。" #. (itstool) path: listitem/para -#: book.translate.xml:19198 book.translate.xml:29306 book.translate.xml:31053 -#: book.translate.xml:34885 book.translate.xml:46001 +#: book.translate.xml:19306 book.translate.xml:29419 book.translate.xml:31166 +#: book.translate.xml:34998 book.translate.xml:46241 msgid "" "Understand <trademark class=\"registered\">UNIX</trademark> and FreeBSD " "basics (<xref linkend=\"basics\"/>)." @@ -27732,24 +27955,24 @@ msgstr "" "linkend=\"basics\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:19203 +#: book.translate.xml:19311 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:19211 +#: book.translate.xml:19319 msgid "Starting Services" msgstr "啟動服務" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19224 +#: book.translate.xml:19332 msgid "<primary>services</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19228 +#: book.translate.xml:19336 msgid "" "Many users install third party software on FreeBSD from the Ports Collection " "and require the installed services to be started upon system initialization. " @@ -27764,7 +27987,7 @@ msgstr "" "將說明可用來啟動第三方軟體的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:19237 +#: book.translate.xml:19345 msgid "" "In FreeBSD, most included services, such as " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -27775,12 +27998,12 @@ msgstr "" "Script 來執行。" #. (itstool) path: sect2/title -#: book.translate.xml:19241 +#: book.translate.xml:19349 msgid "Extended Application Configuration" msgstr "延伸應用程式設定" #. (itstool) path: sect2/para -#: book.translate.xml:19243 +#: book.translate.xml:19351 msgid "" "Now that FreeBSD includes <filename>rc.d</filename>, configuration of " "application startup is easier and provides more features. Using the key " @@ -27796,7 +28019,7 @@ msgstr "" "Script 可能會如下例所示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19252 +#: book.translate.xml:19360 #, no-wrap msgid "" "#!/bin/sh\n" @@ -27825,7 +28048,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19276 +#: book.translate.xml:19384 msgid "" "This script will ensure that the provided <literal>utility</literal> will be " "started after the <literal>DAEMON</literal> pseudo-service. It also provides " @@ -27836,20 +28059,20 @@ msgstr "" "<acronym>PID</acronym>) 的方法。" #. (itstool) path: sect2/para -#: book.translate.xml:19282 +#: book.translate.xml:19390 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:19285 +#: book.translate.xml:19393 #, no-wrap msgid "utility_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19287 +#: book.translate.xml:19395 msgid "" "This method allows for easier manipulation of command line arguments, " "inclusion of the default functions provided in <filename>/etc/rc.subr</" @@ -27863,12 +28086,12 @@ msgstr "" "<filename>rc.conf</filename> 簡單的設定。" #. (itstool) path: sect2/title -#: book.translate.xml:19295 +#: book.translate.xml:19403 msgid "Using Services to Start Services" msgstr "使用服務來啟動其他服務" #. (itstool) path: sect2/para -#: book.translate.xml:19297 +#: book.translate.xml:19405 msgid "" "Other services can be started using <citerefentry><refentrytitle>inetd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Working with " @@ -27882,7 +28105,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 以及其設定的深入說明。" #. (itstool) path: sect2/para -#: book.translate.xml:19302 +#: book.translate.xml:19410 msgid "" "In some cases, it may make more sense to use " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -27901,7 +28124,7 @@ msgstr "" "序,所以這個方法有不少優點,這讓一般的使用者也可以啟動與維護自己的應用程式。" #. (itstool) path: sect2/para -#: book.translate.xml:19309 +#: book.translate.xml:19417 msgid "" "The <literal>@reboot</literal> feature of <citerefentry><refentrytitle>cron</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, may be used in place " @@ -27915,7 +28138,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 後執行。" #. (itstool) path: info/title -#: book.translate.xml:19318 +#: book.translate.xml:19426 msgid "" "Configuring <citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -27924,12 +28147,12 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19331 +#: book.translate.xml:19439 msgid "<primary>cron</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19336 +#: book.translate.xml:19444 msgid "" "One of the most useful utilities in FreeBSD is <application>cron</" "application>. This utility runs in the background and regularly checks " @@ -27947,7 +28170,7 @@ msgstr "" "firstterm>。" #. (itstool) path: sect1/para -#: book.translate.xml:19346 +#: book.translate.xml:19454 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 " @@ -27968,7 +28191,7 @@ msgstr "" "行指令,而在使用者 crontab,會以建立 crontab 的使用者來執行指令。" #. (itstool) path: sect1/para -#: book.translate.xml:19357 +#: book.translate.xml:19465 msgid "" "User crontabs allow individual users to schedule their own tasks. The " "<systemitem class=\"username\">root</systemitem> user can also have a user " @@ -27980,14 +28203,14 @@ msgstr "" "安排不在系統 <filename>crontab</filename> 中的工作。" #. (itstool) path: sect1/para -#: book.translate.xml:19363 +#: book.translate.xml:19471 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:19366 +#: book.translate.xml:19474 #, no-wrap msgid "" "# /etc/crontab - root's crontab for FreeBSD\n" @@ -28003,7 +28226,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:19379 +#: book.translate.xml:19487 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 " @@ -28016,7 +28239,7 @@ msgstr "" "新的一行,空白行則會被忽略掉。" #. (itstool) path: callout/para -#: book.translate.xml:19388 +#: book.translate.xml:19496 msgid "" "The equals (<literal>=</literal>) character is used to define any " "environment settings. In this example, it is used to define the " @@ -28031,7 +28254,7 @@ msgstr "" "若 <envar>PATH</envar> 被省略,則必須指定指令或 Script 的完整路徑才能執行。" #. (itstool) path: callout/para -#: book.translate.xml:19399 +#: book.translate.xml:19507 msgid "" "This line defines the seven fields used in a system crontab: " "<literal>minute</literal>, <literal>hour</literal>, <literal>mday</literal>, " @@ -28058,7 +28281,7 @@ msgstr "" "一個使用者來執行指令。最後一個欄位則是要執行的指令。" #. (itstool) path: callout/para -#: book.translate.xml:19418 +#: book.translate.xml:19526 msgid "" "This entry defines the values for this cron job. The <literal>*/5</literal>, " "followed by several more <literal>*</literal> characters, specifies that " @@ -28072,7 +28295,7 @@ msgstr "" "libexec/atrun</command>。" #. (itstool) path: callout/para -#: book.translate.xml:19426 +#: book.translate.xml:19534 msgid "" "Commands can include any number of switches. However, commands which extend " "to multiple lines need to be broken with the backslash <quote>\\</quote> " @@ -28082,25 +28305,25 @@ msgstr "" "字元換行。" #. (itstool) path: sect2/title -#: book.translate.xml:19434 +#: book.translate.xml:19542 msgid "Creating a User Crontab" msgstr "建立使用者的 Crontab" #. (itstool) path: sect2/para -#: book.translate.xml:19436 +#: book.translate.xml:19544 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:19439 +#: book.translate.xml:19547 #, no-wrap msgid "<prompt>%</prompt> <userinput>crontab -e</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19441 +#: book.translate.xml:19549 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 " @@ -28111,7 +28334,7 @@ msgstr "" "編輯。" #. (itstool) path: sect2/para -#: book.translate.xml:19446 +#: book.translate.xml:19554 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 " @@ -28121,7 +28344,7 @@ msgstr "" "非常有用:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19450 +#: book.translate.xml:19558 #, no-wrap msgid "" "SHELL=/bin/sh\n" @@ -28131,7 +28354,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19455 +#: book.translate.xml:19563 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 " @@ -28143,13 +28366,13 @@ msgstr "" "literal> 指定 Script 的路徑,所以必須給予完整的 Script 路徑:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19462 +#: book.translate.xml:19570 #, no-wrap msgid "0\t14\t*\t*\t*\t/usr/home/dru/bin/mycustomscript.sh" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:19465 +#: book.translate.xml:19573 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 " @@ -28159,13 +28382,13 @@ msgstr "" "境變數下測試。要複製一個用來執行上述 cron 項目的環境可以使用:" #. (itstool) path: tip/programlisting -#: book.translate.xml:19470 +#: book.translate.xml:19578 #, 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:19472 +#: book.translate.xml:19580 msgid "" "The environment set by cron is discussed in " "<citerefentry><refentrytitle>crontab</refentrytitle><manvolnum>5</" @@ -28179,7 +28402,7 @@ msgstr "" "要。" #. (itstool) path: sect2/para -#: book.translate.xml:19478 +#: book.translate.xml:19586 msgid "" "When finished editing the crontab, save the file. It will automatically be " "installed and <application>cron</application> will read the crontab and run " @@ -28191,7 +28414,7 @@ msgstr "" "job。要列出 crontab 中有那一些 cron job 可以使用此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:19484 +#: book.translate.xml:19592 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>crontab -l</userinput>\n" @@ -28199,12 +28422,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19487 +#: book.translate.xml:19595 msgid "To remove all of the cron jobs in a user crontab:" msgstr "要移除使用在使用者 crontab 中的 cron job 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:19489 +#: book.translate.xml:19597 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>crontab -r</userinput>\n" @@ -28212,12 +28435,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:19496 +#: book.translate.xml:19604 msgid "Managing Services in FreeBSD" msgstr "管理 FreeBSD 中的服務" #. (itstool) path: sect1/para -#: book.translate.xml:19509 +#: book.translate.xml:19617 msgid "" "FreeBSD uses the <citerefentry><refentrytitle>rc</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> system of startup " @@ -28239,13 +28462,13 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect1/screen -#: book.translate.xml:19517 +#: book.translate.xml:19625 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd restart</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19519 +#: book.translate.xml:19627 msgid "" "This procedure can be used to start services on a running system. Services " "will be started automatically at boot time as specified in " @@ -28262,13 +28485,13 @@ msgstr "" "manvolnum></citerefentry>,可入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:19525 +#: book.translate.xml:19633 #, no-wrap msgid "natd_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19527 +#: book.translate.xml:19635 msgid "" "If a <option>natd_enable=\"NO\"</option> line is already present, change the " "<literal>NO</literal> to <literal>YES</literal>. The " @@ -28282,7 +28505,7 @@ msgstr "" "相依的服務,詳細如下所述。" #. (itstool) path: sect1/para -#: book.translate.xml:19533 +#: book.translate.xml:19641 msgid "" "Since the <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> system is primarily intended to start and stop " @@ -28312,13 +28535,13 @@ msgstr "" "manvolnum></citerefentry> 可執行以下指令:" #. (itstool) path: sect1/screen -#: book.translate.xml:19549 +#: book.translate.xml:19657 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd onerestart</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19551 +#: book.translate.xml:19659 msgid "" "To check if a service is enabled in <filename>/etc/rc.conf</filename>, run " "the appropriate <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</" @@ -28334,7 +28557,7 @@ msgstr "" "citerefentry> 是否在 <filename>/etc/rc.conf</filename> 已經開啟:" #. (itstool) path: sect1/screen -#: book.translate.xml:19557 +#: book.translate.xml:19665 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sshd rcvar</userinput>\n" @@ -28345,7 +28568,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:19564 +#: book.translate.xml:19672 msgid "" "The <literal># sshd</literal> line is output from the above command, not a " "<systemitem class=\"username\">root</systemitem> console." @@ -28354,7 +28577,7 @@ msgstr "" "\"username\">root</systemitem> console。" #. (itstool) path: sect1/para -#: book.translate.xml:19569 +#: book.translate.xml:19677 msgid "" "To determine whether or not a service is running, use <option>status</" "option>. For instance, to verify that <citerefentry><refentrytitle>sshd</" @@ -28365,7 +28588,7 @@ msgstr "" "citerefentry> 是否正常在執行:" #. (itstool) path: sect1/screen -#: book.translate.xml:19573 +#: book.translate.xml:19681 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sshd status</userinput>\n" @@ -28373,7 +28596,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19576 +#: book.translate.xml:19684 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 " @@ -28386,7 +28609,7 @@ msgstr "" "是 <literal>SIGHUP</literal>。並不是每個服務都有支援此功能。" #. (itstool) path: sect1/para -#: book.translate.xml:19583 +#: book.translate.xml:19691 msgid "" "The <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> system is used for network services and it also contributes to " @@ -28398,20 +28621,20 @@ msgstr "" "<filename>/etc/rc.d/bgfsck</filename> Script 會列印出以下訊息:" #. (itstool) path: sect1/screen -#: book.translate.xml:19589 +#: book.translate.xml:19697 #, no-wrap msgid "Starting background file system checks in 60 seconds." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19591 +#: book.translate.xml:19699 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:19594 +#: book.translate.xml:19702 msgid "" "Many system services depend on other services to function properly. For " "example, <citerefentry><refentrytitle>yp</refentrytitle><manvolnum>8</" @@ -28435,7 +28658,7 @@ msgstr "" "要以什麼順序來執行系統服務以滿足相依。" #. (itstool) path: sect1/para -#: book.translate.xml:19605 +#: book.translate.xml:19713 msgid "" "The following key word must be included in all startup scripts as it is " "required by <citerefentry><refentrytitle>rc.subr</" @@ -28447,12 +28670,12 @@ msgstr "" "可 <quote>enable</quote> 啟動 Script:" #. (itstool) path: listitem/para -#: book.translate.xml:19611 +#: book.translate.xml:19719 msgid "<literal>PROVIDE</literal>: Specifies the services this file provides." msgstr "<literal>PROVIDE</literal>: 設定此檔案所提供的服務。" #. (itstool) path: sect1/para -#: book.translate.xml:19616 +#: book.translate.xml:19724 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 " @@ -28464,7 +28687,7 @@ msgstr "" "manvolnum></citerefentry> 是非常有用的提示:" #. (itstool) path: listitem/para -#: book.translate.xml:19622 +#: book.translate.xml:19730 msgid "" "<literal>REQUIRE</literal>: Lists services which are required for this " "service. The script containing this key word will run <emphasis>after</" @@ -28474,7 +28697,7 @@ msgstr "" "Script 會在指定服務啟動 <emphasis>之後</emphasis> 才執行。" #. (itstool) path: listitem/para -#: book.translate.xml:19629 +#: book.translate.xml:19737 msgid "" "<literal>BEFORE</literal>: Lists services which depend on this service. The " "script containing this key word will run <emphasis>before</emphasis> the " @@ -28484,7 +28707,7 @@ msgstr "" "指定的服務啟動 <emphasis>之前</emphasis> 執行。" #. (itstool) path: sect1/para -#: book.translate.xml:19636 +#: book.translate.xml:19744 msgid "" "By carefully setting these keywords for each startup script, an " "administrator has a fine-grained level of control of the startup order of " @@ -28496,7 +28719,7 @@ msgstr "" "業系統所使用的 <quote>runlevels</quote>。" #. (itstool) path: sect1/para -#: book.translate.xml:19642 +#: book.translate.xml:19750 msgid "" "Additional information can be found in <citerefentry><refentrytitle>rc</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> and " @@ -28514,19 +28737,19 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> Script 的操作說明。" #. (itstool) path: sect2/title -#: book.translate.xml:19648 +#: book.translate.xml:19756 msgid "Managing System-Specific Configuration" msgstr "管理系統特定的設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:19650 +#: book.translate.xml:19758 msgid "" "<primary>rc files</primary> <secondary><filename>rc.conf</filename></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19655 +#: book.translate.xml:19763 msgid "" "The principal location for system configuration information is <filename>/" "etc/rc.conf</filename>. This file contains a wide range of configuration " @@ -28539,7 +28762,7 @@ msgstr "" "filename> 檔案使用。" #. (itstool) path: sect2/para -#: book.translate.xml:19662 +#: book.translate.xml:19770 msgid "" "The entries in <filename>/etc/rc.conf</filename> override the default " "settings in <filename>/etc/defaults/rc.conf</filename>. The file containing " @@ -28551,7 +28774,7 @@ msgstr "" "系統特定的設定應到 <filename>/etc/rc.conf</filename> 所修改。" #. (itstool) path: sect2/para -#: book.translate.xml:19669 +#: book.translate.xml:19777 msgid "" "A number of strategies may be applied in clustered applications to separate " "site-wide configuration from system-specific configuration in order to " @@ -28566,7 +28789,7 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19678 +#: book.translate.xml:19786 #, no-wrap msgid "" "sshd_enable=\"YES\"\n" @@ -28575,14 +28798,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19682 +#: book.translate.xml:19790 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:19686 +#: book.translate.xml:19794 #, no-wrap msgid "" "hostname=\"node1.example.org\"\n" @@ -28590,7 +28813,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19689 +#: book.translate.xml:19797 msgid "" "Distribute <filename>/etc/rc.conf</filename> to every system using an " "application such as <application>rsync</application> or <application>puppet</" @@ -28601,7 +28824,7 @@ msgstr "" "保留自己的 <filename>/etc/rc.conf.local</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:19696 +#: book.translate.xml:19804 msgid "" "Upgrading the system will not overwrite <filename>/etc/rc.conf</filename>, " "so system configuration information will not be lost." @@ -28610,7 +28833,7 @@ msgstr "" "此遺失。" #. (itstool) path: tip/para -#: book.translate.xml:19701 +#: book.translate.xml:19809 msgid "" "Both <filename>/etc/rc.conf</filename> and <filename>/etc/rc.conf.local</" "filename> are parsed by <citerefentry><refentrytitle>sh</" @@ -28627,13 +28850,13 @@ msgstr "" "資訊。" #. (itstool) path: info/title -#: book.translate.xml:19713 +#: book.translate.xml:19821 msgid "Setting Up Network Interface Cards" msgstr "設定網路介面卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:19716 book.translate.xml:32070 book.translate.xml:32367 -#: book.translate.xml:32750 +#: book.translate.xml:19824 book.translate.xml:32183 book.translate.xml:32480 +#: book.translate.xml:32863 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Contributed by </contrib>" @@ -28641,12 +28864,12 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:19726 book.translate.xml:19939 +#: book.translate.xml:19834 book.translate.xml:20047 msgid "<primary>network cards</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19731 +#: book.translate.xml:19839 msgid "" "Adding and configuring a network interface card (<acronym>NIC</acronym>) is " "a common task for any FreeBSD administrator." @@ -28655,17 +28878,17 @@ msgstr "" "<acronym>NIC</acronym>) 會是一件常見的工作。" #. (itstool) path: sect2/title -#: book.translate.xml:19736 +#: book.translate.xml:19844 msgid "Locating the Correct Driver" msgstr "找到正確的驅動程式" #. (itstool) path: sect2/indexterm -#: book.translate.xml:19738 +#: book.translate.xml:19846 msgid "<primary>network cards</primary> <secondary>driver</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19743 +#: book.translate.xml:19851 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 " @@ -28677,7 +28900,7 @@ msgstr "" "支援該 <acronym>NIC</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:19749 +#: book.translate.xml:19857 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/" @@ -28695,7 +28918,7 @@ msgstr "" "驅動程式已知問題的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:19759 +#: book.translate.xml:19867 msgid "" "The drivers for common <acronym>NIC</acronym>s are already present in the " "<filename>GENERIC</filename> kernel, meaning the <acronym>NIC</acronym> " @@ -28714,7 +28937,7 @@ msgstr "" "citerefentry> 驅動程式:" #. (itstool) path: sect2/screen -#: book.translate.xml:19768 +#: book.translate.xml:19876 #, no-wrap msgid "" "dc0: <82c169 PNIC 10/100BaseTX> port 0xa000-0xa0ff mem 0xd3800000-0xd38\n" @@ -28734,7 +28957,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19783 +#: book.translate.xml:19891 msgid "" "If the driver for the <acronym>NIC</acronym> is not present in " "<filename>GENERIC</filename>, but a driver is available, the driver will " @@ -28746,7 +28969,7 @@ msgstr "" "驅動程式,有兩種方式可以完成這件事:" #. (itstool) path: listitem/para -#: book.translate.xml:19791 +#: book.translate.xml:19899 msgid "" "The easiest way is to load a kernel module for the <acronym>NIC</acronym> " "using <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</" @@ -28761,7 +28984,7 @@ msgstr "" "模組使用。" #. (itstool) path: listitem/para -#: book.translate.xml:19801 +#: book.translate.xml:19909 msgid "" "Alternatively, statically compile support for the <acronym>NIC</acronym> " "into a custom kernel. Refer to <filename>/usr/src/sys/conf/NOTES</filename>, " @@ -28779,7 +29002,7 @@ msgstr "" "編譯核心。" #. (itstool) path: sect3/title -#: book.translate.xml:19814 +#: book.translate.xml:19922 msgid "" "Using <trademark class=\"registered\">Windows</trademark> <acronym>NDIS</" "acronym> Drivers" @@ -28788,24 +29011,24 @@ msgstr "" "acronym> 驅動程式" #. (itstool) path: sect3/indexterm -#: book.translate.xml:19816 +#: book.translate.xml:19924 msgid "<primary><acronym>NDIS</acronym></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:19819 +#: book.translate.xml:19927 msgid "<primary>NDISulator</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:19822 +#: book.translate.xml:19930 msgid "" "<primary><trademark class=\"registered\">Windows</trademark> drivers</" "primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:19825 +#: book.translate.xml:19933 msgid "" "<primary><trademark class=\"registered\">Microsoft</trademark> <trademark " "class=\"registered\">Windows</trademark></primary> <secondary>device " @@ -28813,12 +29036,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:19829 +#: book.translate.xml:19937 msgid "<primary><acronym>KLD</acronym> (kernel loadable object)</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:19837 +#: book.translate.xml:19945 msgid "" "Unfortunately, there are still many vendors that do not provide schematics " "for their drivers to the open source community because they regard such " @@ -28835,7 +29058,7 @@ msgstr "" "\">Windows</trademark> 平台用的驅動程式 Binary。" #. (itstool) path: sect3/para -#: book.translate.xml:19846 +#: book.translate.xml:19954 msgid "" "FreeBSD provides <quote>native</quote> support for the Network Driver " "Interface Specification (<acronym>NDIS</acronym>). It includes " @@ -28861,7 +29084,7 @@ msgstr "" "<acronym>USB</acronym> 裝置也都有支援。" #. (itstool) path: sect3/para -#: book.translate.xml:19856 +#: book.translate.xml:19964 msgid "" "To use <citerefentry><refentrytitle>ndisgen</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>, three things are needed:" @@ -28870,12 +29093,12 @@ msgstr "" "manvolnum></citerefentry> 需要三樣東西:" #. (itstool) path: listitem/para -#: book.translate.xml:19860 +#: book.translate.xml:19968 msgid "FreeBSD kernel sources." msgstr "FreeBSD 核心原始碼。" #. (itstool) path: listitem/para -#: book.translate.xml:19864 +#: book.translate.xml:19972 msgid "" "A <trademark class=\"registered\">Windows</trademark> XP driver binary with " "a <filename>.SYS</filename> extension." @@ -28884,7 +29107,7 @@ msgstr "" "\">Windows</trademark> XP 驅動程式 Binary。" #. (itstool) path: listitem/para -#: book.translate.xml:19869 +#: book.translate.xml:19977 msgid "" "A <trademark class=\"registered\">Windows</trademark> XP driver " "configuration file with a <filename>.INF</filename> extension." @@ -28893,7 +29116,7 @@ msgstr "" "\">Windows</trademark> XP 驅動程式設定檔。" #. (itstool) path: sect3/para -#: book.translate.xml:19874 +#: book.translate.xml:19982 msgid "" "Download the <filename>.SYS</filename> and <filename>.INF</filename> files " "for the specific <acronym>NIC</acronym>. Generally, these can be found on " @@ -28906,7 +29129,7 @@ msgstr "" "<filename>W32DRIVER.INF</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:19881 +#: book.translate.xml:19989 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 " @@ -28919,7 +29142,7 @@ msgstr "" "64-bit 驅動程式。" #. (itstool) path: sect3/para -#: book.translate.xml:19885 +#: book.translate.xml:19993 msgid "" "The next step is to compile the driver binary into a loadable kernel module. " "As <systemitem class=\"username\">root</systemitem>, use " @@ -28932,13 +29155,13 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect3/screen -#: book.translate.xml:19890 +#: book.translate.xml:19998 #, 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:19892 +#: book.translate.xml:20000 msgid "" "This command is interactive and prompts for any extra information it " "requires. A new kernel module will be generated in the current directory. " @@ -28950,13 +29173,13 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 來載入新的模組:" #. (itstool) path: sect3/screen -#: book.translate.xml:19897 +#: book.translate.xml:20005 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload <replaceable>./W32DRIVER_SYS.ko</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:19899 +#: book.translate.xml:20007 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 " @@ -28971,7 +29194,7 @@ msgstr "" "載入。若沒有自動載入,則需使用以下指令手動載入:" #. (itstool) path: sect3/screen -#: book.translate.xml:19906 +#: book.translate.xml:20014 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload ndis</userinput>\n" @@ -28979,7 +29202,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:19909 +#: book.translate.xml:20017 msgid "" "The first command loads the <citerefentry><refentrytitle>ndis</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> miniport driver " @@ -28990,7 +29213,7 @@ msgstr "" "式,而第二個指令會載入產生的 <acronym>NIC</acronym> 驅動程式。" #. (itstool) path: sect3/para -#: book.translate.xml:19913 +#: book.translate.xml:20021 msgid "" "Check <citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to see if there were any load errors. If all went " @@ -29001,7 +29224,7 @@ msgstr "" "下所示:" #. (itstool) path: sect3/screen -#: book.translate.xml:19917 +#: book.translate.xml:20025 #, no-wrap msgid "" "ndis0: <Wireless-G PCI Adapter> mem 0xf4100000-0xf4101fff irq 3 at device 8.0 on pci1\n" @@ -29012,7 +29235,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:19923 +#: book.translate.xml:20031 msgid "" "From here, <filename>ndis0</filename> can be configured like any other " "<acronym>NIC</acronym>." @@ -29021,7 +29244,7 @@ msgstr "" "定使用。" #. (itstool) path: sect3/para -#: book.translate.xml:19926 +#: book.translate.xml:20034 msgid "" "To configure the system to load the <citerefentry><refentrytitle>ndis</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> modules at boot time, " @@ -29035,18 +29258,18 @@ msgstr "" "然後加入下行到 <filename>/boot/loader.conf</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:19932 +#: book.translate.xml:20040 #, no-wrap msgid "W32DRIVER_SYS_load=\"YES\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:19937 +#: book.translate.xml:20045 msgid "Configuring the Network Card" msgstr "設定網路卡" #. (itstool) path: sect2/para -#: book.translate.xml:19944 +#: book.translate.xml:20052 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 " @@ -29058,14 +29281,14 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 設定過了。" #. (itstool) path: sect2/para -#: book.translate.xml:19949 +#: book.translate.xml:20057 msgid "" "To display the <acronym>NIC</acronym> configuration, enter the following " "command:" msgstr "要查看 <acronym>NIC</acronym> 設定可輸入以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:19952 +#: book.translate.xml:20060 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig</userinput>\n" @@ -29090,27 +29313,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19972 +#: book.translate.xml:20080 msgid "In this example, the following devices were displayed:" msgstr "在這個例子中列出了以下裝置:" #. (itstool) path: listitem/para -#: book.translate.xml:19977 +#: book.translate.xml:20085 msgid "<filename>dc0</filename>: The first Ethernet interface." msgstr "<filename>dc0</filename>: 第一個乙太網路介面。" #. (itstool) path: listitem/para -#: book.translate.xml:19982 +#: book.translate.xml:20090 msgid "<filename>dc1</filename>: The second Ethernet interface." msgstr "<filename>dc1</filename>: 第二個乙太網路介面。" #. (itstool) path: listitem/para -#: book.translate.xml:19987 +#: book.translate.xml:20095 msgid "<filename>lo0</filename>: The loopback device." msgstr "<filename>lo0</filename>: Loopback 裝置。" #. (itstool) path: sect2/para -#: book.translate.xml:19992 +#: book.translate.xml:20100 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, " @@ -29124,19 +29347,19 @@ msgstr "" "citerefentry> 驅動程式的第三個 <acronym>NIC</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:19999 +#: book.translate.xml:20107 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:20004 +#: book.translate.xml:20112 msgid "<literal>UP</literal> means that the card is configured and ready." msgstr "<literal>UP</literal> 代表介面卡已設定好並且準備就緒。" #. (itstool) path: listitem/para -#: book.translate.xml:20009 +#: book.translate.xml:20117 msgid "" "The card has an Internet (<literal>inet</literal>) address, <systemitem " "class=\"ipaddress\">192.168.1.3</systemitem>." @@ -29145,7 +29368,7 @@ msgstr "" "\"ipaddress\">192.168.1.3</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20014 +#: book.translate.xml:20122 msgid "" "It has a valid subnet mask (<literal>netmask</literal>), where <systemitem " "class=\"netmask\">0xffffff00</systemitem> is the same as <systemitem class=" @@ -29156,7 +29379,7 @@ msgstr "" "\">255.255.255.0</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20021 +#: book.translate.xml:20129 msgid "" "It has a valid broadcast address, <systemitem class=\"ipaddress" "\">192.168.1.255</systemitem>." @@ -29165,7 +29388,7 @@ msgstr "" "systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20025 +#: book.translate.xml:20133 msgid "" "The <acronym>MAC</acronym> address of the card (<literal>ether</literal>) is " "<systemitem class=\"etheraddress\">00:a0:cc:da:da:da</systemitem>." @@ -29174,7 +29397,7 @@ msgstr "" "<systemitem class=\"etheraddress\">00:a0:cc:da:da:da</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20030 +#: book.translate.xml:20138 msgid "" "The physical media selection is on autoselection mode (<literal>media: " "Ethernet autoselect (100baseTX <full-duplex>)</literal>). In this " @@ -29188,7 +29411,7 @@ msgstr "" "請參考操作手冊。" #. (itstool) path: listitem/para -#: book.translate.xml:20040 +#: book.translate.xml:20148 msgid "" "The status of the link (<literal>status</literal>) is <literal>active</" "literal>, indicating that the carrier signal is detected. For <filename>dc1</" @@ -29200,7 +29423,7 @@ msgstr "" "面卡未插入乙太網路線則狀態為 <literal>status: no carrier</literal> 是正常的。" #. (itstool) path: sect2/para -#: book.translate.xml:20049 +#: book.translate.xml:20157 msgid "" "If the <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> output had shown something similar to:" @@ -29209,7 +29432,7 @@ msgstr "" "manvolnum></citerefentry> 的輸出結果如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:20052 +#: book.translate.xml:20160 #, no-wrap msgid "" "dc0: flags=8843<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500\n" @@ -29220,12 +29443,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20058 +#: book.translate.xml:20166 msgid "it would indicate the card has not been configured." msgstr "則代表尚未設定介面卡。" #. (itstool) path: sect2/para -#: book.translate.xml:20060 +#: book.translate.xml:20168 msgid "" "The card must be configured as <systemitem class=\"username\">root</" "systemitem>. The <acronym>NIC</acronym> configuration can be performed from " @@ -29243,19 +29466,19 @@ msgstr "" "器,則只需加入此行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20069 +#: book.translate.xml:20177 #, no-wrap msgid "ifconfig_dc0=\"DHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20071 +#: book.translate.xml:20179 msgid "" "Replace <replaceable>dc0</replaceable> with the correct value for the system." msgstr "替換 <replaceable>dc0</replaceable> 為該系統的正確值。" #. (itstool) path: sect2/para -#: book.translate.xml:20074 +#: book.translate.xml:20182 msgid "" "The line added, then, follow the instructions given in <xref linkend=" "\"config-network-testing\"/>." @@ -29263,17 +29486,17 @@ msgstr "" "加入這行之後,接著依據 <xref linkend=\"config-network-testing\"/> 指示操作。" #. (itstool) path: note/para -#: book.translate.xml:20078 +#: book.translate.xml:20186 msgid "" "If the network was configured during installation, some entries for the " "<acronym>NIC</acronym>(s) may be already present. Double check <filename>/" "etc/rc.conf</filename> before adding any lines." msgstr "" "若網路在安裝時已設定,可能會已經有 <acronym>NIC</acronym> 的設定項目。在加入" -"任何設定前請再次檢查 <filename>/etc/rc.conf</filename>。 " +"任何設定前請再次檢查 <filename>/etc/rc.conf</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:20084 +#: book.translate.xml:20192 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 " @@ -29283,7 +29506,7 @@ msgstr "" "acronym>。提每一個在系統上的 <acronym>NIC</acronym> 加入一行設定,如此例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20089 +#: book.translate.xml:20197 #, no-wrap msgid "" "ifconfig_dc0=\"inet 192.168.1.3 netmask 255.255.255.0\"\n" @@ -29291,7 +29514,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20092 +#: book.translate.xml:20200 msgid "" "Replace <filename>dc0</filename> and <filename>dc1</filename> and the " "<acronym>IP</acronym> address information with the correct values for the " @@ -29309,7 +29532,7 @@ msgstr "" "及 <filename>/etc/rc.conf</filename> 的語法。" #. (itstool) path: sect2/para -#: book.translate.xml:20099 +#: book.translate.xml:20207 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 " @@ -29325,7 +29548,7 @@ msgstr "" "share/examples/etc/hosts</filename>。" #. (itstool) path: note/para -#: book.translate.xml:20107 +#: book.translate.xml:20215 msgid "" "If there is no <acronym>DHCP</acronym> server and access to the Internet is " "needed, manually configure the default gateway and the nameserver:" @@ -29334,7 +29557,7 @@ msgstr "" "閘道及名稱伺服器:" #. (itstool) path: note/screen -#: book.translate.xml:20111 +#: book.translate.xml:20219 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>echo 'defaultrouter=\"<replaceable>your_default_router</replaceable>\"' >> /etc/rc.conf</userinput>\n" @@ -29342,12 +29565,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:20117 +#: book.translate.xml:20225 msgid "Testing and Troubleshooting" msgstr "測試與疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:20119 +#: book.translate.xml:20227 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 " @@ -29360,13 +29583,13 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:20126 book.translate.xml:61428 +#: book.translate.xml:20234 book.translate.xml:62462 #, no-wrap msgid "<prompt>#</prompt> <userinput>service netif restart</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:20129 +#: book.translate.xml:20237 msgid "" "If a default gateway has been set in <filename>/etc/rc.conf</filename>, also " "issue this command:" @@ -29374,30 +29597,30 @@ msgstr "" "若預設的通訊閘已設定於 <filename>/etc/rc.conf</filename> 也同樣要下這個指令:" #. (itstool) path: note/screen -#: book.translate.xml:20133 +#: book.translate.xml:20241 #, no-wrap msgid "<prompt>#</prompt> <userinput>service routing restart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20136 +#: book.translate.xml:20244 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:20140 +#: book.translate.xml:20248 msgid "Testing the Ethernet Card" msgstr "測試乙太網路卡" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20142 +#: book.translate.xml:20250 msgid "<primary>network cards</primary> <secondary>testing</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20147 +#: book.translate.xml:20255 msgid "" "To verify that an Ethernet card is configured correctly, " "<citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</manvolnum></" @@ -29411,7 +29634,7 @@ msgstr "" "citerefentry> 其他於 <acronym>LAN</acronym> 上的主機:" #. (itstool) path: sect3/screen -#: book.translate.xml:20151 +#: book.translate.xml:20259 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ping -c5 192.168.1.3</userinput>\n" @@ -29428,7 +29651,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20163 +#: book.translate.xml:20271 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ping -c5 192.168.1.2</userinput>\n" @@ -29445,7 +29668,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20175 +#: book.translate.xml:20283 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 " @@ -29465,12 +29688,12 @@ msgstr "" "citerefentry> 及 <filename>/usr/share/examples/etc/hosts</filename>。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20190 +#: book.translate.xml:20298 msgid "<primary>network cards</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20195 +#: book.translate.xml:20303 msgid "" "When troubleshooting hardware and software configurations, check the simple " "things first. Is the network cable plugged in? Are the network services " @@ -29485,7 +29708,7 @@ msgstr "" "STABLE 版本、檢查郵遞論壇封存記錄以及上網查詢。" #. (itstool) path: sect3/para -#: book.translate.xml:20204 +#: book.translate.xml:20312 msgid "" "If the card works, yet performance is poor, read through " "<citerefentry><refentrytitle>tuning</refentrytitle><manvolnum>7</manvolnum></" @@ -29497,7 +29720,7 @@ msgstr "" "因為不正確的網路設定會造成連線速度緩慢。" #. (itstool) path: sect3/para -#: book.translate.xml:20209 +#: book.translate.xml:20317 msgid "" "Some users experience one or two <errorname>device timeout</errorname> " "messages, which is normal for some cards. If they continue, or are " @@ -29509,7 +29732,7 @@ msgstr "" "次檢查網路線,或考慮使用其他介面卡。" #. (itstool) path: sect3/para -#: book.translate.xml:20216 +#: book.translate.xml:20324 msgid "" "To resolve <errorname>watchdog timeout</errorname> errors, first check the " "network cable. Many cards require a <acronym>PCI</acronym> slot which " @@ -29523,7 +29746,7 @@ msgstr "" "<acronym>NIC</acronym> 以及主機板說明文件來確定是否為此問題。" #. (itstool) path: sect3/para -#: book.translate.xml:20225 +#: book.translate.xml:20333 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 " @@ -29537,7 +29760,7 @@ msgstr "" "有,請閱讀 <xref linkend=\"network-routing\"/>。" #. (itstool) path: sect3/para -#: book.translate.xml:20233 +#: book.translate.xml:20341 msgid "" "<errorname>ping: sendto: Permission denied</errorname> error messages are " "often caused by a misconfigured firewall. If a firewall is enabled on " @@ -29553,7 +29776,7 @@ msgstr "" "\"firewalls\"/> 取得更多資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:20240 +#: book.translate.xml:20348 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 " @@ -29569,22 +29792,22 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:20252 +#: book.translate.xml:20360 msgid "Virtual Hosts" msgstr "虛擬主機" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20254 +#: book.translate.xml:20362 msgid "<primary>virtual hosts</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20255 +#: book.translate.xml:20363 msgid "<primary><acronym>IP</acronym> aliases</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20258 +#: book.translate.xml:20366 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 " @@ -29594,7 +29817,7 @@ msgstr "" "器,這可以透過指定多個網路位置到一個網路介面來做到。" #. (itstool) path: sect1/para -#: book.translate.xml:20263 +#: book.translate.xml:20371 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 " @@ -29606,13 +29829,13 @@ msgstr "" "名項目來增加別名,如下例:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20269 +#: book.translate.xml:20377 #, no-wrap msgid "ifconfig_fxp0_alias0=\"inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20271 +#: book.translate.xml:20379 msgid "" "Alias entries must start with <literal>alias<replaceable>0</replaceable></" "literal> using a sequential number such as <literal>alias0</literal>, " @@ -29624,7 +29847,7 @@ msgstr "" "推,設定程序會在第一個遇到缺號的地方中止。" #. (itstool) path: sect1/para -#: book.translate.xml:20278 +#: book.translate.xml:20386 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 " @@ -29639,7 +29862,7 @@ msgstr "" "<systemitem class=\"netmask\">0xffffffff</systemitem> 來表示。" #. (itstool) path: sect1/para -#: book.translate.xml:20286 +#: book.translate.xml:20394 msgid "" "For example, consider the case where the <filename>fxp0</filename> interface " "is connected to two networks: <systemitem class=\"ipaddress\">10.1.1.0</" @@ -29674,7 +29897,7 @@ msgstr "" "罩。" #. (itstool) path: sect1/para -#: book.translate.xml:20308 +#: book.translate.xml:20416 msgid "" "The following <filename>/etc/rc.conf</filename> entries configure the " "adapter correctly for this scenario:" @@ -29683,7 +29906,7 @@ msgstr "" "目:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20311 +#: book.translate.xml:20419 #, no-wrap msgid "" "ifconfig_fxp0=\"inet 10.1.1.1 netmask 255.255.255.0\"\n" @@ -29698,7 +29921,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20321 +#: book.translate.xml:20429 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 " @@ -29710,43 +29933,43 @@ msgstr "" "<literal>255.255.255.255</literal> 的子網路遮罩。" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20327 +#: book.translate.xml:20435 #, 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:20332 +#: book.translate.xml:20440 msgid "Configuring System Logging" msgstr "設定系統日誌" #. (itstool) path: authorgroup/author -#: book.translate.xml:20335 +#: book.translate.xml:20443 msgid "" "<personname> <firstname>Niclas</firstname> <surname>Zeising</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20345 +#: book.translate.xml:20453 msgid "<primary>system logging</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:20348 book.translate.xml:56151 +#: book.translate.xml:20456 book.translate.xml:56579 msgid "<primary>syslog</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20351 +#: book.translate.xml:20459 msgid "" "<primary><citerefentry><refentrytitle>syslogd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20355 +#: book.translate.xml:20463 msgid "" "Generating and reading system logs is an important aspect of system " "administration. The information in system logs can be used to detect " @@ -29761,7 +29984,7 @@ msgstr "" "生日誌項目。" #. (itstool) path: sect1/para -#: book.translate.xml:20363 +#: book.translate.xml:20471 msgid "" "FreeBSD provides a system logger, <application>syslogd</application>, to " "manage logging. By default, <application>syslogd</application> is started " @@ -29781,7 +30004,7 @@ msgstr "" "manvolnum></citerefentry> 來取得更多可用參數的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:20374 +#: book.translate.xml:20482 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." @@ -29790,17 +30013,17 @@ msgstr "" "誌翻轉 (Log rotation) 與日誌管理。" #. (itstool) path: sect2/title -#: book.translate.xml:20379 +#: book.translate.xml:20487 msgid "Configuring Local Logging" msgstr "設定本地日誌" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20381 +#: book.translate.xml:20489 msgid "<primary>syslog.conf</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20383 +#: book.translate.xml:20491 msgid "" "The configuration file, <filename>/etc/syslog.conf</filename>, controls what " "<application>syslogd</application> does with log entries as they are " @@ -29821,7 +30044,7 @@ msgstr "" "名稱來決定後續處置的動作。" #. (itstool) path: sect2/para -#: book.translate.xml:20398 +#: book.translate.xml:20506 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 " @@ -29845,7 +30068,7 @@ msgstr "" "以下為 FreeBSD 預設的 <filename>syslog.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20413 +#: book.translate.xml:20521 #, no-wrap msgid "" "# <_:phrase-1/>\n" @@ -29886,12 +30109,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20449 +#: book.translate.xml:20557 msgid "In this example:" msgstr "在這個範例中:" #. (itstool) path: listitem/para -#: book.translate.xml:20453 +#: book.translate.xml:20561 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</" @@ -29904,7 +30127,7 @@ msgstr "" "(<filename>/dev/console</filename>)。" #. (itstool) path: listitem/para -#: book.translate.xml:20463 +#: book.translate.xml:20571 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>/" @@ -29915,7 +30138,7 @@ msgstr "" "filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:20470 +#: book.translate.xml:20578 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." @@ -29925,7 +30148,7 @@ msgstr "" "literal> 層級的訊息,並將訊息記錄至 <filename>/var/log/debug.log</filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:20477 +#: book.translate.xml:20585 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 " @@ -29937,7 +30160,7 @@ msgstr "" "<filename>/var/log/ppp.log</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:20485 +#: book.translate.xml:20593 msgid "" "The available levels, in order from most to least critical are " "<literal>emerg</literal>, <literal>alert</literal>, <literal>crit</literal>, " @@ -29950,7 +30173,7 @@ msgstr "" "literal> 以及 <literal>debug</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:20492 +#: book.translate.xml:20600 msgid "" "The facilities, in no particular order, are <literal>auth</literal>, " "<literal>authpriv</literal>, <literal>console</literal>, <literal>cron</" @@ -29971,7 +30194,7 @@ msgstr "" "統的設施可能會不同。" #. (itstool) path: sect2/para -#: book.translate.xml:20504 +#: book.translate.xml:20612 msgid "" "To log everything of level <literal>notice</literal> and higher to " "<filename>/var/log/daemon.log</filename>, add the following entry:" @@ -29980,13 +30203,13 @@ msgstr "" "log/daemon.log</filename> 可加入以下項目:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20508 +#: book.translate.xml:20616 #, no-wrap msgid "daemon.notice /var/log/daemon.log" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20510 +#: book.translate.xml:20618 msgid "" "For more information about the different levels and facilities, refer to " "<citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></" @@ -30005,32 +30228,32 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:20518 +#: book.translate.xml:20626 msgid "Log Management and Rotation" msgstr "日誌管理與翻轉" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20520 +#: book.translate.xml:20628 msgid "<primary>newsyslog</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20521 +#: book.translate.xml:20629 msgid "<primary>newsyslog.conf</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20522 +#: book.translate.xml:20630 msgid "<primary>log rotation</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20523 +#: book.translate.xml:20631 msgid "<primary>log management</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20525 +#: book.translate.xml:20633 msgid "" "Log files can grow quickly, taking up disk space and making it more " "difficult to locate useful information. Log management attempts to mitigate " @@ -30055,7 +30278,7 @@ msgstr "" "次。" #. (itstool) path: sect2/para -#: book.translate.xml:20538 +#: book.translate.xml:20646 msgid "" "To know which actions to take, <application>newsyslog</application> reads " "its configuration file, <filename>/etc/newsyslog.conf</filename>. This file " @@ -30072,7 +30295,7 @@ msgstr "" "知的程式。以下為 FreeBSD 的預設設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20548 +#: book.translate.xml:20656 #, no-wrap msgid "" "# configuration file for newsyslog\n" @@ -30117,7 +30340,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20588 +#: book.translate.xml:20696 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 " @@ -30146,7 +30369,7 @@ msgstr "" "信號 (Signal) 編號。" #. (itstool) path: sect2/para -#: book.translate.xml:20606 +#: book.translate.xml:20714 msgid "" "For more information on all fields, valid flags, and how to specify the " "rotation time, refer to <citerefentry><refentrytitle>newsyslog.conf</" @@ -30166,12 +30389,12 @@ msgstr "" "頻繁的執行翻轉檔案。" #. (itstool) path: info/title -#: book.translate.xml:20615 +#: book.translate.xml:20723 msgid "Configuring Remote Logging" msgstr "設定遠端日誌" #. (itstool) path: sect2/para -#: book.translate.xml:20628 +#: book.translate.xml:20736 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 " @@ -30179,7 +30402,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20633 +#: book.translate.xml:20741 msgid "" "In FreeBSD, centralized log file aggregation, merging, and rotation can be " "configured using <application>syslogd</application> and " @@ -30192,12 +30415,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20645 +#: book.translate.xml:20753 msgid "Log Server Configuration" msgstr "日誌伺服器設定" #. (itstool) path: sect3/para -#: book.translate.xml:20647 +#: book.translate.xml:20755 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 " @@ -30205,7 +30428,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:20653 +#: book.translate.xml:20761 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 " @@ -30213,7 +30436,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:20660 +#: book.translate.xml:20768 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 " @@ -30223,7 +30446,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20670 +#: book.translate.xml:20778 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 " @@ -30233,12 +30456,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:20680 +#: book.translate.xml:20788 msgid "Sample Log Server Configuration" msgstr "日誌伺服器設定範例" #. (itstool) path: example/programlisting -#: book.translate.xml:20682 +#: book.translate.xml:20790 #, no-wrap msgid "" "+logclient.example.com\n" @@ -30246,7 +30469,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20686 +#: book.translate.xml:20794 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 " @@ -30255,12 +30478,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20690 +#: book.translate.xml:20798 msgid "Next, configure <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20693 +#: book.translate.xml:20801 #, no-wrap msgid "" "syslogd_enable=\"YES\"\n" @@ -30268,7 +30491,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20696 +#: book.translate.xml:20804 msgid "" "The first entry starts <application>syslogd</application> at system boot. " "The second entry allows log entries from the specified client. The <option>-" @@ -30278,7 +30501,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20704 +#: book.translate.xml:20812 msgid "" "Multiple <option>-a</option> options may be specified to allow logging from " "multiple clients. <acronym>IP</acronym> addresses and whole netblocks may " @@ -30288,25 +30511,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20710 +#: book.translate.xml:20818 msgid "Finally, create the log file:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20712 +#: book.translate.xml:20820 #, no-wrap msgid "<prompt>#</prompt> <userinput>touch /var/log/logclient.log</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20714 +#: book.translate.xml:20822 msgid "" "At this point, <application>syslogd</application> should be restarted and " "verified:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20717 +#: book.translate.xml:20825 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service syslogd restart</userinput>\n" @@ -30314,7 +30537,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20720 +#: book.translate.xml:20828 msgid "" "If a <acronym>PID</acronym> is returned, the server restarted successfully, " "and client configuration can begin. If the server did not restart, consult " @@ -30322,26 +30545,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20727 +#: book.translate.xml:20835 msgid "Log Client Configuration" msgstr "日誌客戶端設定" #. (itstool) path: sect3/para -#: book.translate.xml:20729 +#: book.translate.xml:20837 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:20733 +#: book.translate.xml:20841 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:20737 +#: book.translate.xml:20845 #, no-wrap msgid "" "syslogd_enable=\"YES\"\n" @@ -30349,7 +30572,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20740 +#: book.translate.xml:20848 msgid "" "The first entry enables <application>syslogd</application> on boot up. The " "second entry prevents logs from being accepted by this client from other " @@ -30357,7 +30580,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20746 +#: book.translate.xml:20854 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 " @@ -30366,26 +30589,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20752 +#: book.translate.xml:20860 #, no-wrap msgid "*.*\t\t@logserv.example.com" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20754 +#: book.translate.xml:20862 msgid "" "After saving the edit, restart <application>syslogd</application> for the " "changes to take effect:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20758 book.translate.xml:20802 +#: book.translate.xml:20866 book.translate.xml:20910 #, no-wrap msgid "<prompt>#</prompt> <userinput>service syslogd restart</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20760 +#: book.translate.xml:20868 msgid "" "To test that log messages are being sent across the network, use " "<citerefentry><refentrytitle>logger</refentrytitle><manvolnum>1</manvolnum></" @@ -30394,13 +30617,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20764 +#: book.translate.xml:20872 #, no-wrap msgid "<prompt>#</prompt> <userinput>logger \"<replaceable>Test message from logclient</replaceable>\"</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20766 +#: book.translate.xml:20874 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 " @@ -30408,12 +30631,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20773 +#: book.translate.xml:20881 msgid "Debugging Log Servers" msgstr "日誌伺服器除錯" #. (itstool) path: sect3/para -#: book.translate.xml:20775 +#: book.translate.xml:20883 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 " @@ -30427,7 +30650,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20789 +#: book.translate.xml:20897 msgid "" "If the <command>ping</command> succeeds on both hosts but log messages are " "still not being received, temporarily increase logging verbosity to narrow " @@ -30439,20 +30662,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20800 +#: book.translate.xml:20908 #, no-wrap msgid "syslogd_flags=\"-d -a logclient.example.com -v -v\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20804 +#: book.translate.xml:20912 msgid "" "Debugging data similar to the following will flash on the console " "immediately after the restart:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20807 +#: book.translate.xml:20915 #, no-wrap msgid "" "logmsg: pri 56, flags 4, from logserv.example.com, msg syslogd: restart\n" @@ -30466,7 +30689,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20816 +#: book.translate.xml:20924 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 " @@ -30475,7 +30698,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20822 +#: book.translate.xml:20930 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service syslogd restart</userinput>\n" @@ -30494,7 +30717,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20836 +#: book.translate.xml:20944 msgid "" "At this point, the messages are being properly received and placed in the " "correct file." @@ -30502,12 +30725,12 @@ msgstr "" #. (itstool) path: sect3/title #. (itstool) path: sect2/title -#: book.translate.xml:20841 book.translate.xml:52907 +#: book.translate.xml:20949 book.translate.xml:53147 msgid "Security Considerations" msgstr "安全注意事項" #. (itstool) path: sect3/para -#: book.translate.xml:20843 +#: book.translate.xml:20951 msgid "" "As with any network service, security requirements should be considered " "before implementing a logging server. Log files may contain sensitive data " @@ -30519,7 +30742,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20853 +#: book.translate.xml:20961 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 " @@ -30533,44 +30756,44 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:20871 +#: book.translate.xml:20979 msgid "<filename>/etc</filename> Layout" msgstr "<filename>/etc</filename> 配置" #. (itstool) path: sect2/para -#: book.translate.xml:20874 +#: book.translate.xml:20982 msgid "" "There are a number of directories in which configuration information is " "kept. These include:" msgstr "有數個目錄中儲存著設定資訊,這些目錄有:" #. (itstool) path: row/entry -#: book.translate.xml:20884 +#: book.translate.xml:20992 msgid "<filename>/etc</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20885 +#: book.translate.xml:20993 msgid "Generic system-specific configuration information." msgstr "通用系統特定的設定資訊。" #. (itstool) path: row/entry -#: book.translate.xml:20890 +#: book.translate.xml:20998 msgid "<filename>/etc/defaults</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20891 +#: book.translate.xml:20999 msgid "Default versions of system configuration files." msgstr "系統設定檔的預設版本。" #. (itstool) path: row/entry -#: book.translate.xml:20896 +#: book.translate.xml:21004 msgid "<filename>/etc/mail</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20897 +#: book.translate.xml:21005 msgid "" "Extra <citerefentry><refentrytitle>sendmail</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> configuration and other <acronym>MTA</acronym> " @@ -30580,34 +30803,34 @@ msgstr "" "manvolnum></citerefentry> 額外的設定以及其他 <acronym>MTA</acronym> 設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:20902 +#: book.translate.xml:21010 msgid "<filename>/etc/ppp</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20903 +#: book.translate.xml:21011 msgid "Configuration for both user- and kernel-ppp programs." msgstr "user- 及 kernel-ppp 程式的設定。" #. (itstool) path: row/entry -#: book.translate.xml:20908 +#: book.translate.xml:21016 msgid "<filename>/usr/local/etc</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20909 +#: book.translate.xml:21017 msgid "" "Configuration files for installed applications. May contain per-application " "subdirectories." msgstr "已安裝應用程式的設定檔,可能會有以應用程式區分的子目錄。" #. (itstool) path: row/entry -#: book.translate.xml:20914 +#: book.translate.xml:21022 msgid "<filename>/usr/local/etc/rc.d</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20915 +#: book.translate.xml:21023 msgid "" "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> scripts for installed applications." @@ -30616,12 +30839,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> Script。" #. (itstool) path: row/entry -#: book.translate.xml:20920 +#: book.translate.xml:21028 msgid "<filename>/var/db</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20921 +#: book.translate.xml:21029 msgid "" "Automatically generated system-specific database files, such as the package " "database and the <citerefentry><refentrytitle>locate</" @@ -30632,34 +30855,34 @@ msgstr "" "citerefentry> 資料庫。" #. (itstool) path: sect2/title -#: book.translate.xml:20931 +#: book.translate.xml:21039 msgid "Hostnames" msgstr "主機名稱" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20933 +#: book.translate.xml:21041 msgid "<primary>hostname</primary>" msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:20934 book.translate.xml:49560 book.translate.xml:50662 -#: book.translate.xml:51548 book.translate.xml:55393 +#: book.translate.xml:21042 book.translate.xml:49800 book.translate.xml:50902 +#: book.translate.xml:51788 book.translate.xml:55821 msgid "<primary>DNS</primary>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20937 +#: book.translate.xml:21045 msgid "<filename>/etc/resolv.conf</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20939 +#: book.translate.xml:21047 msgid "<primary><filename>resolv.conf</filename></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20943 +#: book.translate.xml:21051 msgid "" "How a FreeBSD system accesses the Internet Domain Name System (<acronym>DNS</" "acronym>) is controlled by <citerefentry><refentrytitle>resolv.conf</" @@ -30670,17 +30893,17 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 來控制。" #. (itstool) path: sect3/para -#: book.translate.xml:20947 +#: book.translate.xml:21055 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:20957 +#: book.translate.xml:21065 msgid "<literal>nameserver</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20958 +#: book.translate.xml:21066 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." @@ -30689,34 +30912,34 @@ msgstr "" "會依所列的順序來查詢,最多可以有三個。" #. (itstool) path: row/entry -#: book.translate.xml:20965 +#: book.translate.xml:21073 msgid "<literal>search</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20966 +#: book.translate.xml:21074 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:20972 +#: book.translate.xml:21080 msgid "<literal>domain</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:20973 +#: book.translate.xml:21081 msgid "The local domain name." msgstr "本地網域名稱。" #. (itstool) path: sect3/para -#: book.translate.xml:20979 +#: book.translate.xml:21087 msgid "A typical <filename>/etc/resolv.conf</filename> looks like this:" msgstr "典型的 <filename>/etc/resolv.conf</filename> 會如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20982 +#: book.translate.xml:21090 #, no-wrap msgid "" "search example.com\n" @@ -30725,7 +30948,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:20987 +#: book.translate.xml:21095 msgid "" "Only one of the <literal>search</literal> and <literal>domain</literal> " "options should be used." @@ -30733,7 +30956,7 @@ msgstr "" "<literal>search</literal> 與 <literal>domain</literal> 選項應擇一使用。" #. (itstool) path: sect3/para -#: book.translate.xml:20991 +#: book.translate.xml:21099 msgid "" "When using <acronym>DHCP</acronym>, <citerefentry><refentrytitle>dhclient</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> usually rewrites " @@ -30746,17 +30969,17 @@ msgstr "" "filename>。" #. (itstool) path: sect3/title -#: book.translate.xml:20998 +#: book.translate.xml:21106 msgid "<filename>/etc/hosts</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21000 +#: book.translate.xml:21108 msgid "<primary>hosts</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21002 +#: book.translate.xml:21110 msgid "" "<filename>/etc/hosts</filename> is a simple text database which works in " "conjunction with <acronym>DNS</acronym> and <acronym>NIS</acronym> to " @@ -30777,7 +31000,7 @@ msgstr "" "用名稱向外部 <acronym>DNS</acronym> 伺服器查詢的需求。" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21015 +#: book.translate.xml:21123 #, no-wrap msgid "" "# <_:phrase-1/>\n" @@ -30815,29 +31038,29 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21048 +#: book.translate.xml:21156 msgid "The format of <filename>/etc/hosts</filename> is as follows:" msgstr "<filename>/etc/hosts</filename> 的格式如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21051 +#: book.translate.xml:21159 #, no-wrap msgid "[Internet address] [official hostname] [alias1] [alias2] ..." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21053 +#: book.translate.xml:21161 msgid "For example:" msgstr "例如:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21055 +#: book.translate.xml:21163 #, no-wrap msgid "10.0.0.1 myRealHostname.example.com myRealHostname foobar1 foobar2" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21057 +#: book.translate.xml:21165 msgid "" "Consult <citerefentry><refentrytitle>hosts</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information." @@ -30846,7 +31069,7 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: sect1/title -#: book.translate.xml:21063 +#: book.translate.xml:21171 msgid "" "Tuning with <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -30856,17 +31079,17 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:21065 book.translate.xml:21110 +#: book.translate.xml:21173 book.translate.xml:21218 msgid "<primary>sysctl</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:21066 +#: book.translate.xml:21174 msgid "<primary>tuning</primary> <secondary>with sysctl</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21071 +#: book.translate.xml:21179 msgid "" "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> is used to make changes to a running FreeBSD system. This " @@ -30883,7 +31106,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 來讀取與設定。" #. (itstool) path: sect1/para -#: book.translate.xml:21078 +#: book.translate.xml:21186 msgid "" "At its core, <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> serves two functions: " @@ -30893,23 +31116,23 @@ msgstr "" "citerefentry> 主要提供兩個功能:讀取與修改系統設定。" #. (itstool) path: sect1/para -#: book.translate.xml:21081 +#: book.translate.xml:21189 msgid "To view all readable variables:" msgstr "檢視所有可讀取的變數:" #. (itstool) path: sect1/screen -#: book.translate.xml:21083 +#: book.translate.xml:21191 #, no-wrap msgid "<prompt>%</prompt> <userinput>sysctl -a</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21085 +#: book.translate.xml:21193 msgid "To read a particular variable, specify its name:" msgstr "要讀取特定變數只要指定其名稱:" #. (itstool) path: sect1/screen -#: book.translate.xml:21087 +#: book.translate.xml:21195 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sysctl kern.maxproc</userinput>\n" @@ -30917,7 +31140,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21090 +#: book.translate.xml:21198 msgid "" "To set a particular variable, use the <replaceable>variable</" "replaceable>=<replaceable>value</replaceable> syntax:" @@ -30926,7 +31149,7 @@ msgstr "" "replaceable> 語法:" #. (itstool) path: sect1/screen -#: book.translate.xml:21094 +#: book.translate.xml:21202 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl kern.maxfiles=5000</userinput>\n" @@ -30934,7 +31157,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21097 +#: book.translate.xml:21205 msgid "" "Settings of sysctl variables are usually either strings, numbers, or " "booleans, where a boolean is <literal>1</literal> for yes or <literal>0</" @@ -30944,7 +31167,7 @@ msgstr "" "表是,<literal>0</literal> 代表否。" #. (itstool) path: sect1/para -#: book.translate.xml:21101 +#: book.translate.xml:21209 msgid "" "To automatically set some variables each time the machine boots, add them to " "<filename>/etc/sysctl.conf</filename>. For more information, refer to " @@ -30957,17 +31180,17 @@ msgstr "" "\"configtuning-sysctlconf\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:21107 +#: book.translate.xml:21215 msgid "<filename>sysctl.conf</filename>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21109 +#: book.translate.xml:21217 msgid "<primary>sysctl.conf</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21112 +#: book.translate.xml:21220 msgid "" "The configuration file for <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, <filename>/etc/sysctl." @@ -30983,7 +31206,7 @@ msgstr "" "此模式設定。" #. (itstool) path: sect2/para -#: book.translate.xml:21119 +#: book.translate.xml:21227 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 " @@ -30993,7 +31216,7 @@ msgstr "" "行的程序,可加入以下設定到 <filename>/etc/sysctl.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:21124 +#: book.translate.xml:21232 #, no-wrap msgid "" "# Do not log fatal signal exits (e.g., sig 11)\n" @@ -31005,7 +31228,7 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:21134 +#: book.translate.xml:21242 msgid "" "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> Read-only" @@ -31014,7 +31237,7 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/para -#: book.translate.xml:21147 +#: book.translate.xml:21255 msgid "" "In some cases it may be desirable to modify read-only " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31025,7 +31248,7 @@ msgstr "" "動系統。" #. (itstool) path: sect2/para -#: book.translate.xml:21151 +#: book.translate.xml:21259 msgid "" "For instance, on some laptop models the " "<citerefentry><refentrytitle>cardbus</refentrytitle><manvolnum>4</" @@ -31037,7 +31260,7 @@ msgstr "" "圍而且會失效並有類似以下的錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:21155 +#: book.translate.xml:21263 #, no-wrap msgid "" "cbb0: Could not map register memory\n" @@ -31045,7 +31268,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21158 +#: book.translate.xml:21266 msgid "" "The fix requires the modification of a read-only " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31061,12 +31284,12 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry> 應可正常運作。" #. (itstool) path: sect1/title -#: book.translate.xml:21167 +#: book.translate.xml:21275 msgid "Tuning Disks" msgstr "調校磁碟" #. (itstool) path: sect1/para -#: book.translate.xml:21169 +#: book.translate.xml:21277 msgid "" "The following section will discuss various tuning mechanisms and options " "which may be applied to disk devices. In many cases, disks with mechanical " @@ -31089,22 +31312,22 @@ msgstr "" "<acronym>IO</acronym> 相關的有用資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:21183 +#: book.translate.xml:21291 msgid "Sysctl Variables" msgstr "Sysctl 變數" #. (itstool) path: sect3/title -#: book.translate.xml:21186 +#: book.translate.xml:21294 msgid "<varname>vfs.vmiodirenable</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21188 +#: book.translate.xml:21296 msgid "<primary><varname>vfs.vmiodirenable</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21192 +#: book.translate.xml:21300 msgid "" "The <varname>vfs.vmiodirenable</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31128,17 +31351,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21218 +#: book.translate.xml:21326 msgid "<varname>vfs.write_behind</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21220 +#: book.translate.xml:21328 msgid "<primary><varname>vfs.write_behind</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21224 +#: book.translate.xml:21332 msgid "" "The <varname>vfs.write_behind</varname> <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable defaults to " @@ -31150,17 +31373,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21236 +#: book.translate.xml:21344 msgid "<varname>vfs.hirunningspace</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21238 +#: book.translate.xml:21346 msgid "<primary><varname>vfs.hirunningspace</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21242 +#: book.translate.xml:21350 msgid "" "The <varname>vfs.hirunningspace</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31174,7 +31397,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21253 +#: book.translate.xml:21361 msgid "" "There are various other buffer cache and <acronym>VM</acronym> page cache " "related <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" @@ -31184,17 +31407,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21261 +#: book.translate.xml:21369 msgid "<varname>vm.swap_idle_enabled</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21263 +#: book.translate.xml:21371 msgid "<primary><varname>vm.swap_idle_enabled</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21267 +#: book.translate.xml:21375 msgid "" "The <varname>vm.swap_idle_enabled</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31214,17 +31437,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21288 +#: book.translate.xml:21396 msgid "<varname>hw.ata.wc</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21290 +#: book.translate.xml:21398 msgid "<primary><varname>hw.ata.wc</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21294 +#: book.translate.xml:21402 msgid "" "Turning off <acronym>IDE</acronym> write caching reduces write bandwidth to " "<acronym>IDE</acronym> disks, but may sometimes be necessary due to data " @@ -31242,24 +31465,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21312 +#: book.translate.xml:21420 msgid "" "For more information, refer to <citerefentry><refentrytitle>ata</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21316 +#: book.translate.xml:21424 msgid "<literal>SCSI_DELAY</literal> (<varname>kern.cam.scsi_delay</varname>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21319 +#: book.translate.xml:21427 msgid "<primary><varname>kern.cam.scsi_delay</varname></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21323 +#: book.translate.xml:21431 msgid "" "<primary>kernel options</primary> <secondary><literal>SCSI DELAY</literal></" "secondary>" @@ -31268,7 +31491,7 @@ msgstr "" "secondary>" #. (itstool) path: sect3/para -#: book.translate.xml:21328 +#: book.translate.xml:21436 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 " @@ -31281,24 +31504,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21344 +#: book.translate.xml:21452 msgid "Soft Updates" msgstr "軟更新" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21346 +#: book.translate.xml:21454 msgid "<primary>Soft Updates</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21347 +#: book.translate.xml:21455 msgid "" "<primary><citerefentry><refentrytitle>tunefs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21349 +#: book.translate.xml:21457 msgid "" "To fine-tune a file system, use <citerefentry><refentrytitle>tunefs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This program has many " @@ -31306,7 +31529,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:21353 +#: book.translate.xml:21461 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>tunefs -n enable /filesystem</userinput>\n" @@ -31314,7 +31537,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21356 +#: book.translate.xml:21464 msgid "" "A file system cannot be modified with <citerefentry><refentrytitle>tunefs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> while it is mounted. A " @@ -31323,7 +31546,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21360 +#: book.translate.xml:21468 msgid "" "Soft Updates is recommended for <acronym>UFS</acronym> file systems as it " "drastically improves meta-data performance, mainly file creation and " @@ -31338,17 +31561,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21374 +#: book.translate.xml:21482 msgid "More Details About Soft Updates" msgstr "有關軟更新的更多詳細資訊" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21376 +#: book.translate.xml:21484 msgid "<primary>Soft Updates</primary> <secondary>details</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21381 +#: book.translate.xml:21489 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 " @@ -31356,7 +31579,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21385 +#: book.translate.xml:21493 msgid "" "Historically, the default behavior was to write out meta-data updates " "synchronously. If a directory changed, the system waited until the change " @@ -31379,7 +31602,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21408 +#: book.translate.xml:21516 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 " @@ -31405,7 +31628,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21435 +#: book.translate.xml:21543 msgid "" "The usual solution for this problem is to implement <emphasis>dirty region " "logging</emphasis>, which is also referred to as <emphasis>journaling</" @@ -31424,7 +31647,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21454 +#: book.translate.xml:21562 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 " @@ -31464,7 +31687,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21492 +#: book.translate.xml:21600 msgid "" "The advantage is that meta-data operations are nearly as fast as " "asynchronous updates and are faster than <emphasis>logging</emphasis>, which " @@ -31484,32 +31707,32 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:21514 +#: book.translate.xml:21622 msgid "Tuning Kernel Limits" msgstr "調校核心限制" #. (itstool) path: sect1/indexterm -#: book.translate.xml:21516 +#: book.translate.xml:21624 msgid "<primary>tuning</primary> <secondary>kernel limits</secondary>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21522 +#: book.translate.xml:21630 msgid "File/Process Limits" msgstr "檔案/程序限制" #. (itstool) path: sect3/title -#: book.translate.xml:21525 +#: book.translate.xml:21633 msgid "<varname>kern.maxfiles</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21527 +#: book.translate.xml:21635 msgid "<primary><varname>kern.maxfiles</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21531 +#: book.translate.xml:21639 msgid "" "The <varname>kern.maxfiles</varname> <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable can be raised " @@ -31522,7 +31745,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21539 +#: book.translate.xml:21647 msgid "" "Each open file, socket, or fifo uses one file descriptor. A large-scale " "production server may easily require many thousands of file descriptors, " @@ -31530,7 +31753,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21544 +#: book.translate.xml:21652 msgid "" "In older FreeBSD releases, the default value of <varname>kern.maxfiles</" "varname> is derived from <option>maxusers</option> in the kernel " @@ -31543,7 +31766,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21556 +#: book.translate.xml:21664 msgid "" "The read-only <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable <varname>kern." @@ -31562,7 +31785,7 @@ msgid "" msgstr "" #. (itstool) path: footnote/para -#: book.translate.xml:21578 +#: book.translate.xml:21686 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 " @@ -31570,7 +31793,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21575 +#: book.translate.xml:21683 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 " @@ -31593,7 +31816,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:21607 +#: book.translate.xml:21715 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 " @@ -31602,17 +31825,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21617 +#: book.translate.xml:21725 msgid "<varname>kern.ipc.soacceptqueue</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21619 +#: book.translate.xml:21727 msgid "<primary><varname>kern.ipc.soacceptqueue</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21623 +#: book.translate.xml:21731 msgid "" "The <varname>kern.ipc.soacceptqueue</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31629,12 +31852,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21640 +#: book.translate.xml:21748 msgid "Network Limits" msgstr "網路限制" #. (itstool) path: sect2/para -#: book.translate.xml:21642 +#: book.translate.xml:21750 msgid "" "The <literal>NMBCLUSTERS</literal> kernel configuration option dictates the " "amount of network Mbufs available to the system. A heavily-trafficked server " @@ -31656,7 +31879,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21666 +#: book.translate.xml:21774 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 " @@ -31666,7 +31889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21672 +#: book.translate.xml:21780 msgid "" "For busy servers that make extensive use of the " "<citerefentry><refentrytitle>sendfile</refentrytitle><manvolnum>2</" @@ -31685,7 +31908,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:21686 +#: book.translate.xml:21794 msgid "" "Even though a socket has been marked as non-blocking, calling " "<citerefentry><refentrytitle>sendfile</refentrytitle><manvolnum>2</" @@ -31696,17 +31919,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21694 +#: book.translate.xml:21802 msgid "<varname>net.inet.ip.portrange.*</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21696 +#: book.translate.xml:21804 msgid "<primary>net.inet.ip.portrange.*</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21700 +#: book.translate.xml:21808 msgid "" "The <varname>net.inet.ip.portrange.*</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31733,19 +31956,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21731 +#: book.translate.xml:21839 msgid "<literal>TCP</literal> Bandwidth Delay Product" msgstr "<literal>TCP</literal> 頻寬延遲乘積" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21733 +#: book.translate.xml:21841 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:21739 +#: book.translate.xml:21847 msgid "" "<literal>TCP</literal> bandwidth delay product limiting can be enabled by " "setting the <varname>net.inet.tcp.inflight.enable</varname> " @@ -31757,7 +31980,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21748 +#: book.translate.xml:21856 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 " @@ -31777,7 +32000,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21768 +#: book.translate.xml:21876 msgid "" "Adjusting <varname>net.inet.tcp.inflight.stab</varname> is <emphasis>not</" "emphasis> recommended. This parameter defaults to <literal>20</literal>, " @@ -31794,17 +32017,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21787 +#: book.translate.xml:21895 msgid "Virtual Memory" msgstr "虛擬記憶體" #. (itstool) path: sect3/title -#: book.translate.xml:21790 +#: book.translate.xml:21898 msgid "<varname>kern.maxvnodes</varname>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21792 +#: book.translate.xml:21900 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. " @@ -31815,12 +32038,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21802 +#: book.translate.xml:21910 msgid "To see the current number of vnodes in use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:21804 +#: book.translate.xml:21912 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl vfs.numvnodes</userinput>\n" @@ -31828,12 +32051,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21807 +#: book.translate.xml:21915 msgid "To see the maximum vnodes:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:21809 +#: book.translate.xml:21917 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl kern.maxvnodes</userinput>\n" @@ -31841,7 +32064,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21812 +#: book.translate.xml:21920 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 " @@ -31853,12 +32076,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:21825 +#: book.translate.xml:21933 msgid "Adding Swap Space" msgstr "增加交換空間" #. (itstool) path: sect1/para -#: book.translate.xml:21827 +#: book.translate.xml:21935 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 " @@ -31869,7 +32092,7 @@ msgstr "" "交換檔。" #. (itstool) path: sect1/para -#: book.translate.xml:21832 +#: book.translate.xml:21940 msgid "" "For information on how to encrypt swap space, which options exist, and why " "it should be done, refer to <xref linkend=\"swap-encrypting\"/>." @@ -31878,12 +32101,12 @@ msgstr "" "考 <xref linkend=\"swap-encrypting\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:21836 +#: book.translate.xml:21944 msgid "Swap on a New Hard Drive or Existing Partition" msgstr "使用新硬碟或既有分割區增加交換空間" #. (itstool) path: sect2/para -#: book.translate.xml:21838 +#: book.translate.xml:21946 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 " @@ -31896,20 +32119,20 @@ msgstr "" "\"configtuning-initial\"/> 會討論到分割區的配置與交換分割區大小需考量的事項。" #. (itstool) path: sect2/para -#: book.translate.xml:21843 +#: book.translate.xml:21951 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:21846 +#: book.translate.xml:21954 #, no-wrap msgid "<prompt>#</prompt> <userinput>swapon <replaceable>/dev/ada1s1b</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:21849 +#: book.translate.xml:21957 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 " @@ -31922,7 +32145,7 @@ msgstr "" "在執行 <command>swapon</command> 之前確認真的要使用該分割區增加交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:21857 +#: book.translate.xml:21965 msgid "" "To automatically add this swap partition on boot, add an entry to <filename>/" "etc/fstab</filename>:" @@ -31931,13 +32154,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:21860 +#: book.translate.xml:21968 #, no-wrap msgid "<replaceable>/dev/ada1s1b</replaceable>\tnone\tswap\tsw\t0\t0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21862 +#: book.translate.xml:21970 msgid "" "See <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for an explanation of the entries in <filename>/" @@ -31952,12 +32175,12 @@ msgstr "" "citerefentry> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:21869 +#: book.translate.xml:21977 msgid "Creating a Swap File" msgstr "建立交換檔" #. (itstool) path: sect2/para -#: book.translate.xml:21871 +#: book.translate.xml:21979 msgid "" "These examples create a 64M swap file called <filename>/usr/swap0</filename> " "instead of using a partition." @@ -31966,7 +32189,7 @@ msgstr "" "分割區建立交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:21875 +#: book.translate.xml:21983 msgid "" "Using swap files requires that the module needed by " "<citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</manvolnum></" @@ -31980,48 +32203,48 @@ msgstr "" "譯自訂核心的資訊。" #. (itstool) path: example/title -#: book.translate.xml:21882 +#: book.translate.xml:21990 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:21887 +#: book.translate.xml:21995 msgid "Create the swap file:" msgstr "建立交換檔:" #. (itstool) path: step/screen -#: book.translate.xml:21889 book.translate.xml:21927 +#: book.translate.xml:21997 book.translate.xml:22035 #, 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:21893 +#: book.translate.xml:22001 msgid "Set the proper permissions on the new file:" msgstr "在新檔案設定適當的權限:" #. (itstool) path: step/screen -#: book.translate.xml:21895 book.translate.xml:21934 +#: book.translate.xml:22003 book.translate.xml:22042 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 0600 <replaceable>/usr/swap0</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:21899 +#: book.translate.xml:22007 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:21902 +#: book.translate.xml:22010 #, no-wrap msgid "md99\tnone\tswap\tsw,file=/usr/swap0,late\t0\t0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:21904 +#: book.translate.xml:22012 msgid "" "The <citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</manvolnum></" "citerefentry> device <filename>md99</filename> is used, leaving lower device " @@ -32032,7 +32255,7 @@ msgstr "" "號供互動操作時使用。" #. (itstool) path: step/para -#: book.translate.xml:21910 +#: book.translate.xml:22018 msgid "" "Swap space will be added on system startup. To add swap space immediately, " "use <citerefentry><refentrytitle>swapon</refentrytitle><manvolnum>8</" @@ -32043,40 +32266,40 @@ msgstr "" "citerefentry>:" #. (itstool) path: step/screen -#: book.translate.xml:21913 +#: book.translate.xml:22021 #, no-wrap msgid "<prompt>#</prompt> <userinput>swapon -aL</userinput>" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:21919 +#: book.translate.xml:22027 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:21924 +#: book.translate.xml:22032 msgid "Create the swap file, <filename>/usr/swap0</filename>:" msgstr "建立交換檔 <filename>/usr/swap0</filename>:" #. (itstool) path: step/para -#: book.translate.xml:21931 +#: book.translate.xml:22039 msgid "Set the proper permissions on <filename>/usr/swap0</filename>:" msgstr "設定適當的權限於 <filename>/usr/swap0</filename>:" #. (itstool) path: step/para -#: book.translate.xml:21938 +#: book.translate.xml:22046 msgid "Enable the swap file in <filename>/etc/rc.conf</filename>:" msgstr "在 <filename>/etc/rc.conf</filename> 開啟交換檔:" #. (itstool) path: step/programlisting -#: book.translate.xml:21941 +#: book.translate.xml:22049 #, no-wrap msgid "swapfile=\"<replaceable>/usr/swap0</replaceable>\" # Set to name of swap file" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:21945 +#: book.translate.xml:22053 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-" @@ -32086,32 +32309,32 @@ msgstr "" "置。請參考 <xref linkend=\"disks-virtual\"/> 取得更多有關記憶體裝置的資訊。" #. (itstool) path: step/screen -#: book.translate.xml:21950 +#: book.translate.xml:22058 #, 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:21959 +#: book.translate.xml:22067 msgid "Power and Resource Management" msgstr "電源與資源管理" #. (itstool) path: authorgroup/author -#: book.translate.xml:21962 +#: book.translate.xml:22070 msgid "" "<personname> <firstname>Hiten</firstname> <surname>Pandya</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:21970 book.translate.xml:22450 +#: book.translate.xml:22078 book.translate.xml:22558 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21979 +#: book.translate.xml:22087 msgid "" "It is important to utilize hardware resources in an efficient manner. Power " "and resource management allows the operating system to monitor system limits " @@ -32139,7 +32362,7 @@ msgstr "" "取 <acronym>APM</acronym> 軟體介面才能夠管理電源等級。" #. (itstool) path: sect1/para -#: book.translate.xml:21998 +#: book.translate.xml:22106 msgid "" "There are four major problems in <acronym>APM</acronym>. First, power " "management is done by the vendor-specific <acronym>BIOS</acronym>, separate " @@ -32173,7 +32396,7 @@ msgstr "" "源管理政策或可良好適應主機用途的程式。" #. (itstool) path: sect1/para -#: book.translate.xml:22020 +#: book.translate.xml:22128 msgid "" "The Plug and Play <acronym>BIOS</acronym> (<acronym>PNPBIOS</acronym>) was " "unreliable in many situations. <acronym>PNPBIOS</acronym> is 16-bit " @@ -32192,17 +32415,17 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22030 +#: book.translate.xml:22138 msgid "<primary>ACPI</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22034 +#: book.translate.xml:22142 msgid "<primary>APM</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22038 +#: book.translate.xml:22146 msgid "" "The successor to <acronym>APM</acronym> is the Advanced Configuration and " "Power Interface (<acronym>ACPI</acronym>). <acronym>ACPI</acronym> is a " @@ -32219,7 +32442,7 @@ msgstr "" "Management)</emphasis> 關鍵的要素,提供了作業系統更多的控制方式與彈性。" #. (itstool) path: sect1/para -#: book.translate.xml:22047 +#: book.translate.xml:22155 msgid "" "This chapter demonstrates how to configure <acronym>ACPI</acronym> on " "FreeBSD. It then offers some tips on how to debug <acronym>ACPI</acronym> " @@ -32231,12 +32454,12 @@ msgstr "" "人員能夠診斷並修正 <acronym>ACPI</acronym> 的問題。" #. (itstool) path: sect2/title -#: book.translate.xml:22054 +#: book.translate.xml:22162 msgid "Configuring <acronym>ACPI</acronym>" msgstr "設定 <acronym>ACPI</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:22056 +#: book.translate.xml:22164 msgid "" "In FreeBSD the <citerefentry><refentrytitle>acpi</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver is loaded by " @@ -32257,7 +32480,7 @@ msgstr "" "如 <xref linkend=\"boot-loader\"/> 中的說明。" #. (itstool) path: note/para -#: book.translate.xml:22068 +#: book.translate.xml:22176 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 " @@ -32267,7 +32490,7 @@ msgstr "" "若有偵測到有另一個正在執行,要載入的後者將會中斷。" #. (itstool) path: sect2/para -#: book.translate.xml:22074 +#: book.translate.xml:22182 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 " @@ -32285,7 +32508,7 @@ msgstr "" "<command>halt -p</command> 一樣。" #. (itstool) path: sect2/para -#: book.translate.xml:22084 +#: book.translate.xml:22192 msgid "" "Other options are available using <command>sysctl</command>. Refer to " "<citerefentry><refentrytitle>acpi</refentrytitle><manvolnum>4</manvolnum></" @@ -32298,17 +32521,17 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 以取得更多資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:22090 +#: book.translate.xml:22198 msgid "Common Problems" msgstr "常見問題" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22092 +#: book.translate.xml:22200 msgid "<primary><acronym>ACPI</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22096 +#: book.translate.xml:22204 msgid "" "<acronym>ACPI</acronym> is present in all modern computers that conform to " "the ia32 (x86), ia64 (Itanium), and amd64 (<acronym>AMD</acronym>) " @@ -32322,7 +32545,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22108 +#: book.translate.xml:22216 msgid "" "An <acronym>ACPI</acronym>-compliant system has various components. The " "<acronym>BIOS</acronym> and chipset vendors provide various fixed tables, " @@ -32334,7 +32557,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22118 +#: book.translate.xml:22226 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 " @@ -32350,12 +32573,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22131 book.translate.xml:22459 book.translate.xml:22514 +#: book.translate.xml:22239 book.translate.xml:22567 book.translate.xml:22622 msgid "<primary>ACPI</primary> <secondary>problems</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22136 +#: book.translate.xml:22244 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 " @@ -32365,12 +32588,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22144 +#: book.translate.xml:22252 msgid "Mouse Issues" msgstr "滑鼠問題" #. (itstool) path: sect3/para -#: book.translate.xml:22146 +#: book.translate.xml:22254 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\"</" @@ -32378,12 +32601,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22153 +#: book.translate.xml:22261 msgid "Suspend/Resume" msgstr "待機/喚醒" #. (itstool) path: sect3/para -#: book.translate.xml:22155 +#: book.translate.xml:22263 msgid "" "<acronym>ACPI</acronym> has three suspend to <acronym>RAM</acronym> " "(<acronym>STR</acronym>) states, <literal>S1</literal>-<literal>S3</" @@ -32397,14 +32620,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22168 +#: book.translate.xml:22276 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:22172 +#: book.translate.xml:22280 #, no-wrap msgid "" "hw.acpi.supported_sleep_state: S3 S4 S5\n" @@ -32412,7 +32635,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22175 +#: book.translate.xml:22283 msgid "" "Use <command>acpiconf -s</command> to test <literal>S3</literal>, " "<literal>S4</literal>, and <literal>S5</literal>. An <option>s4bios</option> " @@ -32421,7 +32644,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22182 +#: book.translate.xml:22290 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 " @@ -32432,7 +32655,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22191 +#: book.translate.xml:22299 msgid "" "A common problem with suspend/resume is that many device drivers do not " "save, restore, or reinitialize their firmware, registers, or device memory " @@ -32440,7 +32663,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22196 +#: book.translate.xml:22304 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl debug.bootverbose=1</userinput>\n" @@ -32449,7 +32672,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22200 +#: book.translate.xml:22308 msgid "" "This test emulates the suspend/resume cycle of all device drivers without " "actually going into <literal>S3</literal> state. In some cases, problems " @@ -32461,7 +32684,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22210 +#: book.translate.xml:22318 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 " @@ -32470,7 +32693,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22215 +#: book.translate.xml:22323 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 " @@ -32485,7 +32708,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22231 +#: book.translate.xml:22339 msgid "" "Try loading a recent <trademark class=\"registered\">Linux</trademark> " "distribution to see if suspend/resume works on the same hardware. If it " @@ -32502,7 +32725,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22243 +#: book.translate.xml:22351 msgid "" "Finally, try disabling <acronym>ACPI</acronym> and enabling <acronym>APM</" "acronym> instead. If suspend/resume works with <acronym>APM</acronym>, stick " @@ -32513,12 +32736,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22254 +#: book.translate.xml:22362 msgid "System Hangs" msgstr "系統無回應" #. (itstool) path: sect3/para -#: book.translate.xml:22256 +#: book.translate.xml:22364 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> " @@ -32528,12 +32751,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:22263 +#: book.translate.xml:22371 msgid "<primary>interrupt storms</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22267 +#: book.translate.xml:22375 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 " @@ -32545,12 +32768,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:22280 +#: book.translate.xml:22388 msgid "<primary>APIC</primary> <secondary>disabling</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22285 +#: book.translate.xml:22393 msgid "" "When dealing with interrupt problems, try disabling <acronym>APIC</acronym> " "support with <literal>hint.apic.0.disabled=\"1\"</literal> in <filename>/" @@ -32558,12 +32781,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22292 +#: book.translate.xml:22400 msgid "Panics" msgstr "當機" #. (itstool) path: sect3/para -#: book.translate.xml:22294 +#: book.translate.xml:22402 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 " @@ -32576,7 +32799,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22305 +#: book.translate.xml:22413 msgid "" "Then, try to isolate the problem by booting with <acronym>ACPI</acronym> " "disabled. If that works, isolate the <acronym>ACPI</acronym> subsystem by " @@ -32586,12 +32809,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22313 +#: book.translate.xml:22421 msgid "System Powers Up After Suspend or Shutdown" msgstr "系統在待機或關機後仍開機" #. (itstool) path: sect3/para -#: book.translate.xml:22315 +#: book.translate.xml:22423 msgid "" "First, try setting <literal>hw.acpi.disable_on_poweroff=\"0\"</literal> in " "<filename>/boot/loader.conf</filename>. This keeps <acronym>ACPI</acronym> " @@ -32602,27 +32825,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22326 +#: book.translate.xml:22434 msgid "BIOS Contains Buggy Bytecode" msgstr "BIOS 含有有問題的 Bytecode" #. (itstool) path: sect3/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22328 book.translate.xml:22359 +#: book.translate.xml:22436 book.translate.xml:22467 msgid "" "<primary><acronym>ACPI</acronym></primary> <secondary><acronym>ASL</" "acronym></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22333 +#: book.translate.xml:22441 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:22337 +#: book.translate.xml:22445 #, no-wrap msgid "" "ACPI-1287: *** Error: Method execution failed [\\\\_SB_.PCI0.LPC0.FIGD._STA] \\\\\n" @@ -32630,7 +32853,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22340 +#: book.translate.xml:22448 msgid "" "Often, these problems may be resolved by updating the <acronym>BIOS</" "acronym> to the latest revision. Most console messages are harmless, but if " @@ -32639,12 +32862,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:22350 +#: book.translate.xml:22458 msgid "Overriding the Default <acronym>AML</acronym>" msgstr "覆蓋預設的 <acronym>AML</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:22352 +#: book.translate.xml:22460 msgid "" "The <acronym>BIOS</acronym> bytecode, known as <acronym>ACPI</acronym> " "Machine Language (<acronym>AML</acronym>), is compiled from a source " @@ -32654,7 +32877,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22364 +#: book.translate.xml:22472 msgid "" "The goal of FreeBSD is for everyone to have working <acronym>ACPI</acronym> " "without any user intervention. Workarounds are still being developed for " @@ -32671,7 +32894,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22379 +#: book.translate.xml:22487 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 " @@ -32681,13 +32904,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22387 +#: book.translate.xml:22495 #, no-wrap msgid "<prompt>#</prompt> <userinput>acpidump -td > <replaceable>my.asl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22389 +#: book.translate.xml:22497 msgid "" "Some <acronym>AML</acronym> versions assume the user is running <trademark " "class=\"registered\">Windows</trademark>. To override this, set <literal>hw." @@ -32698,7 +32921,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22396 +#: book.translate.xml:22504 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 " @@ -32707,13 +32930,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22402 +#: book.translate.xml:22510 #, no-wrap msgid "<prompt>#</prompt> <userinput>iasl -f <replaceable>my.asl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22404 +#: book.translate.xml:22512 msgid "" "Including <option>-f</option> forces creation of the <acronym>AML</acronym>, " "even if there are errors during compilation. Some errors, such as missing " @@ -32722,7 +32945,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22410 +#: book.translate.xml:22518 msgid "" "The default output filename for <command>iasl</command> is <filename>DSDT." "aml</filename>. Load this file instead of the <acronym>BIOS</acronym>'s " @@ -32731,7 +32954,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:22416 +#: book.translate.xml:22524 #, no-wrap msgid "" "acpi_dsdt_load=\"YES\"\n" @@ -32739,7 +32962,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22419 +#: book.translate.xml:22527 msgid "" "Be sure to copy <filename>DSDT.aml</filename> to <filename>/boot</filename>, " "then reboot the system. If this fixes the problem, send a " @@ -32751,31 +32974,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:22429 +#: book.translate.xml:22537 msgid "Getting and Submitting Debugging Info" msgstr "取得與回報除錯資訊" #. (itstool) path: authorgroup/author -#: book.translate.xml:22432 +#: book.translate.xml:22540 msgid "" "<personname> <firstname>Nate</firstname> <surname>Lawson</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:22442 +#: book.translate.xml:22550 msgid "" "<personname> <firstname>Peter</firstname> <surname>Schultz</surname> </" "personname> <contrib>With contributions from </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22464 +#: book.translate.xml:22572 msgid "<primary>ACPI</primary> <secondary>debugging</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22469 +#: book.translate.xml:22577 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 " @@ -32793,7 +33016,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22485 +#: book.translate.xml:22593 msgid "" "Debugging output is not enabled by default. To enable it, add " "<literal>options ACPI_DEBUG</literal> to the custom kernel configuration " @@ -32804,13 +33027,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22493 +#: book.translate.xml:22601 #, 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:22495 +#: book.translate.xml:22603 msgid "" "Copy the compiled <filename>acpi.ko</filename> to <filename>/boot/kernel</" "filename> and add the desired level and layer to <filename>/boot/loader." @@ -32820,7 +33043,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:22502 +#: book.translate.xml:22610 #, no-wrap msgid "" "debug.acpi.layer=\"ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS\"\n" @@ -32828,7 +33051,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22505 +#: book.translate.xml:22613 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</" @@ -32839,7 +33062,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22519 +#: book.translate.xml:22627 msgid "" "Once the debugging information is gathered, it can be sent to <link xlink:" "href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-acpi\">freebsd-" @@ -32849,7 +33072,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:22525 +#: book.translate.xml:22633 msgid "" "Before submitting debugging information to this mailing list, ensure the " "latest <acronym>BIOS</acronym> version is installed and, if available, the " @@ -32857,12 +33080,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22531 +#: book.translate.xml:22639 msgid "When submitting a problem report, include the following information:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22536 +#: book.translate.xml:22644 msgid "" "Description of the buggy behavior, including system type, model, and " "anything that causes the bug to appear. Note as accurately as possible when " @@ -32870,14 +33093,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22543 +#: book.translate.xml:22651 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:22549 +#: book.translate.xml:22657 msgid "" "The <command>dmesg</command> output from <command>boot -v</command> with " "<acronym>ACPI</acronym> disabled, if disabling <acronym>ACPI</acronym> helps " @@ -32885,14 +33108,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22556 +#: book.translate.xml:22664 msgid "" "Output from <command>sysctl hw.acpi</command>. This lists which features the " "system offers." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22561 +#: book.translate.xml:22669 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> " @@ -32901,13 +33124,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:22568 +#: book.translate.xml:22676 #, no-wrap msgid "<prompt>#</prompt> <userinput>acpidump -dt > <replaceable>name</replaceable>-<replaceable>system</replaceable>.asl</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22570 +#: book.translate.xml:22678 msgid "" "Substitute the login name for <replaceable>name</replaceable> and " "manufacturer/model for <replaceable>system</replaceable>. For example, use " @@ -32915,7 +33138,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22577 +#: book.translate.xml:22685 msgid "" "Most FreeBSD developers watch the <link xlink:href=\"http://lists.FreeBSD." "org/mailman/listinfo/freebsd-current\">FreeBSD-CURRENT mailing list</link>, " @@ -32931,14 +33154,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22591 +#: book.translate.xml:22699 msgid "" "More information about <acronym>ACPI</acronym> may be found in the following " "locations:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22596 +#: book.translate.xml:22704 msgid "" "The FreeBSD <acronym>ACPI</acronym> Mailing List Archives (<uri xlink:href=" "\"https://lists.freebsd.org/pipermail/freebsd-acpi/\">https://lists.freebsd." @@ -32946,14 +33169,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22601 +#: book.translate.xml:22709 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:22605 +#: book.translate.xml:22713 msgid "" "<citerefentry><refentrytitle>acpi</refentrytitle><manvolnum>4</manvolnum></" "citerefentry>, <citerefentry><refentrytitle>acpi_thermal</" @@ -32966,22 +33189,22 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:22622 +#: book.translate.xml:22730 msgid "The FreeBSD Booting Process" msgstr "FreeBSD 開機程序" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22627 +#: book.translate.xml:22735 msgid "<primary>booting</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22628 +#: book.translate.xml:22736 msgid "<primary>bootstrap</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22630 +#: book.translate.xml:22738 msgid "" "The process of starting a computer and loading the operating system is " "referred to as <quote>the bootstrap process</quote>, or <quote>booting</" @@ -32997,7 +33220,7 @@ msgstr "" "作業系統的功能。" #. (itstool) path: sect1/para -#: book.translate.xml:22639 +#: book.translate.xml:22747 msgid "" "This chapter details the configuration options that can be set. It " "demonstrates how to customize the FreeBSD boot process, including everything " @@ -33012,53 +33235,53 @@ msgstr "" "citerefentry>。這些事會發生在開機訊息的文字顏色會從亮白變成灰色之間。" #. (itstool) path: sect1/para -#: book.translate.xml:22646 +#: book.translate.xml:22754 msgid "After reading this chapter, you will recognize:" msgstr "在閱讀本章之後,您會了解:" #. (itstool) path: listitem/para -#: book.translate.xml:22650 +#: book.translate.xml:22758 msgid "The components of the FreeBSD bootstrap system and how they interact." msgstr "FreeBSD 開機系統的元件以及它們如何互動。" #. (itstool) path: listitem/para -#: book.translate.xml:22655 +#: book.translate.xml:22763 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:22660 +#: book.translate.xml:22768 msgid "How to configure a customized boot splash screen." msgstr "如何設定自訂的開機啟動畫面 (Splash screen)。" #. (itstool) path: listitem/para -#: book.translate.xml:22664 +#: book.translate.xml:22772 msgid "The basics of setting device hints." msgstr "設定 Device Hints 的基礎。" #. (itstool) path: listitem/para -#: book.translate.xml:22668 +#: book.translate.xml:22776 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:22674 +#: book.translate.xml:22782 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:22680 +#: book.translate.xml:22788 msgid "FreeBSD Boot Process" msgstr "FreeBSD 開機程序" #. (itstool) path: sect1/para -#: book.translate.xml:22682 +#: book.translate.xml:22790 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 " @@ -33073,7 +33296,7 @@ msgstr "" "統要如何啟動呢?" #. (itstool) path: sect1/para -#: book.translate.xml:22690 +#: book.translate.xml:22798 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 " @@ -33088,19 +33311,19 @@ msgstr "" "制,後來被縮短為 <quote>booting</quote>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22698 +#: book.translate.xml:22806 msgid "<primary><acronym>BIOS</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22700 +#: book.translate.xml:22808 msgid "" "<primary>Basic Input/Output System</primary><see><acronym>BIOS</acronym></" "see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22703 +#: book.translate.xml:22811 msgid "" "On x86 hardware, the Basic Input/Output System (<acronym>BIOS</acronym>) is " "responsible for loading the operating system. The <acronym>BIOS</acronym> " @@ -33119,7 +33342,7 @@ msgstr "" "助下可以完成接下來載入作業系統的工作。" #. (itstool) path: note/para -#: book.translate.xml:22715 +#: book.translate.xml:22823 msgid "" "FreeBSD provides for booting from both the older <acronym>MBR</acronym> " "standard, and the newer GUID Partition Table (<acronym>GPT</acronym>). " @@ -33142,23 +33365,23 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22726 book.translate.xml:22782 +#: book.translate.xml:22834 book.translate.xml:22890 msgid "<primary>Master Boot Record (<acronym>MBR</acronym>)</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22729 book.translate.xml:22780 +#: book.translate.xml:22837 book.translate.xml:22888 msgid "<primary>Boot Manager</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22731 +#: book.translate.xml:22839 msgid "<primary>Boot Loader</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22733 +#: book.translate.xml:22841 msgid "" "The code within the <acronym>MBR</acronym> is typically referred to as a " "<emphasis>boot manager</emphasis>, especially when it interacts with the " @@ -33177,7 +33400,7 @@ msgstr "" "class=\"registered\">Linux</trademark> 發行版。" #. (itstool) path: sect1/para -#: book.translate.xml:22743 +#: book.translate.xml:22851 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 " @@ -33192,7 +33415,7 @@ msgstr "" "擇要啟動的作業系統。" #. (itstool) path: sect1/para -#: book.translate.xml:22751 +#: book.translate.xml:22859 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 " @@ -33210,20 +33433,20 @@ msgstr "" "更有彈性的載入程式。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22762 +#: book.translate.xml:22870 msgid "<primary>kernel</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22763 book.translate.xml:23089 +#: book.translate.xml:22871 book.translate.xml:23197 msgid "" "<primary><citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22765 +#: book.translate.xml:22873 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 " @@ -33241,19 +33464,19 @@ msgstr "" "線網路、啟動那些被設定在開機時要啟動的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:22774 +#: book.translate.xml:22882 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:22778 +#: book.translate.xml:22886 msgid "The Boot Manager" msgstr "開機管理程式" #. (itstool) path: sect2/para -#: book.translate.xml:22785 +#: book.translate.xml:22893 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 " @@ -33264,7 +33487,7 @@ msgstr "" "application> 開機管理程式。" #. (itstool) path: sect2/para -#: book.translate.xml:22790 +#: book.translate.xml:22898 msgid "" "The <acronym>MBR</acronym> installed by the FreeBSD installer is based on " "<filename>/boot/boot0</filename>. The size and capability of " @@ -33281,12 +33504,12 @@ msgstr "" "application> ,則會在開機時顯示如下範例的訊息:" #. (itstool) path: example/title -#: book.translate.xml:22800 +#: book.translate.xml:22908 msgid "<filename>boot0</filename> Screenshot" msgstr "<filename>boot0</filename> 螢幕截圖" #. (itstool) path: example/screen -#: book.translate.xml:22802 +#: book.translate.xml:22910 #, no-wrap msgid "" "F1 Win\n" @@ -33296,7 +33519,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22808 +#: book.translate.xml:22916 msgid "" "Other operating systems will overwrite an existing <acronym>MBR</acronym> if " "they are installed after FreeBSD. If this happens, or to replace the " @@ -33308,13 +33531,13 @@ msgstr "" "<acronym>MBR</acronym> 可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:22814 +#: book.translate.xml:22922 #, no-wrap msgid "<prompt>#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>device</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22816 +#: book.translate.xml:22924 msgid "" "where <replaceable>device</replaceable> is the boot disk, such as " "<filename>ad0</filename> for the first <acronym>IDE</acronym> disk, " @@ -33332,12 +33555,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:22827 +#: book.translate.xml:22935 msgid "Stage One and Stage Two" msgstr "階段一與階段二" #. (itstool) path: sect2/para -#: book.translate.xml:22829 +#: book.translate.xml:22937 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 " @@ -33350,7 +33573,7 @@ msgstr "" "<command>bsdlabel</command> 從 <filename>/boot/boot</filename> 複製而來。" #. (itstool) path: sect2/para -#: book.translate.xml:22836 +#: book.translate.xml:22944 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 " @@ -33362,7 +33585,7 @@ msgstr "" "式所會儲存的地方,並會尋找可以執行的程式以繼續開機程序。" #. (itstool) path: sect2/para -#: book.translate.xml:22842 +#: book.translate.xml:22950 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 " @@ -33374,7 +33597,7 @@ msgstr "" "尋找並執行 <filename>boot2</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:22848 +#: book.translate.xml:22956 msgid "" "Stage two, <filename>boot2</filename>, is slightly more sophisticated, and " "understands the FreeBSD file system enough to find files. It can provide a " @@ -33389,13 +33612,13 @@ msgstr "" "在階段二中斷,則會顯示以下的互動畫面:" #. (itstool) path: example/title -#: book.translate.xml:22858 +#: book.translate.xml:22966 msgid "<filename>boot2</filename> Screenshot" msgstr "<filename>boot2</filename> 螢幕截圖" #. (itstool) path: example/screen #. (itstool) path: step/screen -#: book.translate.xml:22860 book.translate.xml:48739 +#: book.translate.xml:22968 book.translate.xml:48979 #, no-wrap msgid "" ">> FreeBSD/i386 BOOT\n" @@ -33404,7 +33627,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22865 +#: book.translate.xml:22973 msgid "" "To replace the installed <filename>boot1</filename> and <filename>boot2</" "filename>, use <command>bsdlabel</command>, where <replaceable>diskslice</" @@ -33417,13 +33640,13 @@ msgstr "" "<acronym>IDE</acronym> 磁碟的第一個切割區:" #. (itstool) path: sect2/screen -#: book.translate.xml:22871 +#: book.translate.xml:22979 #, no-wrap msgid "<prompt>#</prompt> <userinput>bsdlabel -B <replaceable>diskslice</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:22874 +#: book.translate.xml:22982 msgid "" "If just the disk name is used, such as <filename>ad0</filename>, " "<command>bsdlabel</command> will create the disk in <quote>dangerously " @@ -33437,17 +33660,17 @@ msgstr "" "<replaceable>diskslice</replaceable>。" #. (itstool) path: sect2/title -#: book.translate.xml:22885 +#: book.translate.xml:22993 msgid "Stage Three" msgstr "階段三" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22887 +#: book.translate.xml:22995 msgid "<primary>boot-loader</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22889 +#: book.translate.xml:22997 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>/" @@ -33457,7 +33680,7 @@ msgstr "" "於檔案系統之中,通常在 <filename>/boot/loader</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:22894 +#: book.translate.xml:23002 msgid "" "The <application>loader</application> is intended as an interactive method " "for configuration, using a built-in command set, backed up by a more " @@ -33467,7 +33690,7 @@ msgstr "" "做為基礎的內建指令集提供一個互動的方式來做設定。" #. (itstool) path: sect2/para -#: book.translate.xml:22899 +#: book.translate.xml:23007 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 " @@ -33479,17 +33702,17 @@ msgstr "" "數並啟動直譯器。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22905 +#: book.translate.xml:23013 msgid "<primary>loader</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22906 +#: book.translate.xml:23014 msgid "<primary>loader configuration</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22908 +#: book.translate.xml:23016 msgid "" "The <application>loader</application> will then read <filename>/boot/loader." "rc</filename>, which by default reads in <filename>/boot/defaults/loader." @@ -33505,7 +33728,7 @@ msgstr "" "些變數來運作,讀取選擇模組與核心。" #. (itstool) path: sect2/para -#: book.translate.xml:22917 +#: book.translate.xml:23025 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 " @@ -33526,17 +33749,17 @@ msgstr "" "citerefentry>。" #. (itstool) path: table/title -#: book.translate.xml:22928 +#: book.translate.xml:23036 msgid "Loader Built-In Commands" msgstr "載入程式內建指令" #. (itstool) path: row/entry -#: book.translate.xml:22940 +#: book.translate.xml:23048 msgid "autoboot <replaceable>seconds</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22942 +#: book.translate.xml:23050 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." @@ -33545,14 +33768,14 @@ msgstr "" "10 秒鐘。" #. (itstool) path: row/entry -#: book.translate.xml:22949 +#: book.translate.xml:23057 msgid "" "boot <optional><replaceable>-options</replaceable></optional> " "<optional><replaceable>kernelname</replaceable></optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22952 +#: book.translate.xml:23060 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 " @@ -33567,12 +33790,12 @@ msgstr "" "kernel</emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。" #. (itstool) path: row/entry -#: book.translate.xml:22964 +#: book.translate.xml:23072 msgid "boot-conf" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22965 +#: book.translate.xml:23073 msgid "" "Goes through the same automatic configuration of modules based on specified " "variables, most commonly <envar>kernel</envar>. This only makes sense if " @@ -33582,12 +33805,12 @@ msgstr "" "只有在執行 <command>unload</command> 之後,尚未變更變數之前方可使用。" #. (itstool) path: row/entry -#: book.translate.xml:22973 +#: book.translate.xml:23081 msgid "help <optional><replaceable>topic</replaceable></optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22975 +#: book.translate.xml:23083 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 " @@ -33597,12 +33820,12 @@ msgstr "" "<literal>index</literal> 則會顯示所有可用的主題。" #. (itstool) path: row/entry -#: book.translate.xml:22982 +#: book.translate.xml:23090 msgid "include <replaceable>filename</replaceable> …" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22984 +#: book.translate.xml:23092 msgid "" "Reads the specified file and interprets it line by line. An error " "immediately stops the <command>include</command>." @@ -33610,14 +33833,14 @@ msgstr "" "讀取指定的檔案並直譯每一行。若有錯誤則會立即中止 <command>include</command>。" #. (itstool) path: row/entry -#: book.translate.xml:22990 +#: book.translate.xml:23098 msgid "" "load <optional>-t <replaceable>type</replaceable></optional> " "<replaceable>filename</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:22993 +#: book.translate.xml:23101 msgid "" "Loads the kernel, kernel module, or file of the type given, with the " "specified filename. Any arguments after <replaceable>filename</replaceable> " @@ -33631,14 +33854,14 @@ msgstr "" "emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。" #. (itstool) path: row/entry -#: book.translate.xml:23004 +#: book.translate.xml:23112 msgid "" "ls <optional>-l</optional> <optional><replaceable>path</replaceable></" "optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23006 +#: book.translate.xml:23114 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 " @@ -33648,12 +33871,12 @@ msgstr "" "l</option>,則會連檔案大小一同顯示。" #. (itstool) path: row/entry -#: book.translate.xml:23013 +#: book.translate.xml:23121 msgid "lsdev <optional>-v</optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23014 +#: book.translate.xml:23122 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." @@ -33662,69 +33885,69 @@ msgstr "" "會顯示更詳細的資訊。" #. (itstool) path: row/entry -#: book.translate.xml:23020 +#: book.translate.xml:23128 msgid "lsmod <optional>-v</optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23021 +#: book.translate.xml:23129 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:23026 +#: book.translate.xml:23134 msgid "more <replaceable>filename</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23027 +#: book.translate.xml:23135 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:23032 +#: book.translate.xml:23140 msgid "reboot" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23033 +#: book.translate.xml:23141 msgid "Immediately reboots the system." msgstr "立即重新啟動系統。" #. (itstool) path: row/entry -#: book.translate.xml:23037 +#: book.translate.xml:23145 msgid "" "set <replaceable>variable</replaceable>, set <replaceable>variable</" "replaceable>=<replaceable>value</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23039 +#: book.translate.xml:23147 msgid "Sets the specified environment variables." msgstr "設定指定的環境變數。" #. (itstool) path: row/entry -#: book.translate.xml:23043 +#: book.translate.xml:23151 msgid "unload" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23044 +#: book.translate.xml:23152 msgid "Removes all loaded modules." msgstr "移除所有已載入的模組。" #. (itstool) path: para/indexterm #. (itstool) path: sect3/indexterm -#: book.translate.xml:23052 book.translate.xml:23162 +#: book.translate.xml:23160 book.translate.xml:23270 msgid "<primary>single-user mode</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23050 +#: book.translate.xml:23158 msgid "" "Here are some practical examples of loader usage. To boot the usual kernel " "in single-user mode <_:indexterm-1/>:" @@ -33733,20 +33956,20 @@ msgstr "" "(Single-user mode<_:indexterm-1/>) 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:23055 +#: book.translate.xml:23163 #, no-wrap msgid "<userinput>boot -s</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23057 +#: book.translate.xml:23165 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:23060 +#: book.translate.xml:23168 #, no-wrap msgid "" "<userinput>unload</userinput>\n" @@ -33754,7 +33977,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23063 +#: book.translate.xml:23171 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 " @@ -33766,12 +33989,12 @@ msgstr "" "心。" #. (itstool) path: sect2/para -#: book.translate.xml:23069 +#: book.translate.xml:23177 msgid "Use the following to load the usual modules with another kernel:" msgstr "使用以下指令來使用另一個核心載入一般的模組:" #. (itstool) path: sect2/screen -#: book.translate.xml:23072 +#: book.translate.xml:23180 #, no-wrap msgid "" "<userinput>unload</userinput>\n" @@ -33780,28 +34003,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23076 +#: book.translate.xml:23184 msgid "To load an automated kernel configuration script:" msgstr "要載入一個已自動化的核心設置 Script 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:23078 +#: book.translate.xml:23186 #, no-wrap msgid "<userinput>load -t userconfig_script <replaceable>/boot/kernel.conf</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23080 +#: book.translate.xml:23188 msgid "<primary>kernel</primary> <secondary>boot interaction</secondary>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:23087 +#: book.translate.xml:23195 msgid "Last Stage" msgstr "最終階段" #. (itstool) path: sect2/para -#: book.translate.xml:23093 +#: book.translate.xml:23201 msgid "" "Once the kernel is loaded by either <application>loader</application> or by " "<application>boot2</application>, which bypasses <application>loader</" @@ -33819,49 +34042,49 @@ msgstr "" "資訊。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23101 +#: book.translate.xml:23209 msgid "<primary>kernel</primary> <secondary>bootflags</secondary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:23107 +#: book.translate.xml:23215 msgid "Kernel Interaction During Boot" msgstr "開機時核心互動參數" #. (itstool) path: row/entry -#: book.translate.xml:23120 +#: book.translate.xml:23228 msgid "" "During kernel initialization, ask for the device to mount as the root file " "system." msgstr "核心初始化時,會詢問要掛載為根檔案系統的裝置。" #. (itstool) path: row/entry -#: book.translate.xml:23125 +#: book.translate.xml:23233 msgid "<option>-C</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23126 +#: book.translate.xml:23234 msgid "Boot the root file system from a <acronym>CDROM</acronym>." msgstr "由 <acronym>CDROM</acronym> 做為根檔案系統開機。" #. (itstool) path: row/entry -#: book.translate.xml:23131 +#: book.translate.xml:23239 msgid "<option>-s</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23132 +#: book.translate.xml:23240 msgid "Boot into single-user mode." msgstr "開機進入單使用者模式。" #. (itstool) path: row/entry -#: book.translate.xml:23137 +#: book.translate.xml:23245 msgid "Be more verbose during kernel startup." msgstr "核心啟動時提供更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:23143 +#: book.translate.xml:23251 msgid "" "Once the kernel has finished booting, it passes control to the user process " "<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></" @@ -33876,7 +34099,7 @@ msgstr "" "這是開機程序的最後一個階段。" #. (itstool) path: sect2/para -#: book.translate.xml:23150 +#: book.translate.xml:23258 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 " @@ -33891,12 +34114,12 @@ msgstr "" "直接解決問題,否則系統會開機進入多使用者模式。" #. (itstool) path: sect3/title -#: book.translate.xml:23160 +#: book.translate.xml:23268 msgid "Single-User Mode" msgstr "單使用者模式" #. (itstool) path: sect3/para -#: book.translate.xml:23165 +#: book.translate.xml:23273 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</" @@ -33909,13 +34132,13 @@ msgstr "" "會出現此訊息:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:23172 +#: book.translate.xml:23280 #, no-wrap msgid "Enter full pathname of shell or RETURN for /bin/sh:" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23174 +#: book.translate.xml:23282 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 " @@ -33925,7 +34148,7 @@ msgstr "" "使用其他的 Shell 則輸入該 Shell 的完整路徑。" #. (itstool) path: sect3/para -#: book.translate.xml:23178 +#: book.translate.xml:23286 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 " @@ -33940,7 +34163,7 @@ msgstr "" "網路功能。" #. (itstool) path: sect3/para -#: book.translate.xml:23187 +#: book.translate.xml:23295 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 " @@ -33952,7 +34175,7 @@ msgstr "" "整控制權。" #. (itstool) path: sect3/para -#: book.translate.xml:23193 +#: book.translate.xml:23301 msgid "" "If the system <literal>console</literal> is changed to <literal>insecure</" "literal> in <filename>/etc/ttys</filename>, the system will first prompt for " @@ -33968,12 +34191,12 @@ msgstr "" "重設密碼。" #. (itstool) path: example/title -#: book.translate.xml:23203 +#: book.translate.xml:23311 msgid "Configuring an Insecure Console in <filename>/etc/ttys</filename>" msgstr "在 <filename>/etc/ttys</filename> 設定不安全的 Console" #. (itstool) path: example/programlisting -#: book.translate.xml:23206 +#: book.translate.xml:23314 #, no-wrap msgid "" "# name getty type status comments\n" @@ -33984,7 +34207,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23213 +#: book.translate.xml:23321 msgid "" "An <literal>insecure</literal> console means that physical security to the " "console is considered to be insecure, so only someone who knows the " @@ -33996,17 +34219,17 @@ msgstr "" "systemitem> 密碼的人可以使用單使用者模式。" #. (itstool) path: sect3/title -#: book.translate.xml:23220 +#: book.translate.xml:23328 msgid "Multi-User Mode" msgstr "多使用者模式" #. (itstool) path: sect3/indexterm -#: book.translate.xml:23222 +#: book.translate.xml:23330 msgid "<primary>multi-user mode</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23224 +#: book.translate.xml:23332 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 " @@ -34018,12 +34241,12 @@ msgstr "" "模式,在這個模式便會開始系統的資源設置。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:23231 +#: book.translate.xml:23339 msgid "<primary>rc files</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23233 +#: book.translate.xml:23341 msgid "" "The resource configuration system reads in configuration defaults from " "<filename>/etc/defaults/rc.conf</filename> and system-specific details from " @@ -34039,7 +34262,7 @@ msgstr "" "Script。" #. (itstool) path: sect3/para -#: book.translate.xml:23242 +#: book.translate.xml:23350 msgid "" "To learn more about the resource configuration system, refer to " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -34051,19 +34274,19 @@ msgstr "" "<filename>/etc/rc.d</filename> 的 Script。" #. (itstool) path: info/title -#: book.translate.xml:23257 +#: book.translate.xml:23365 msgid "Configuring Boot Time Splash Screens" msgstr "設定開機啟動畫面" #. (itstool) path: authorgroup/author -#: book.translate.xml:23260 book.translate.xml:56946 +#: book.translate.xml:23368 book.translate.xml:57473 msgid "" "<personname> <firstname>Joseph J.</firstname> <surname>Barbish</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23270 +#: book.translate.xml:23378 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 " @@ -34080,7 +34303,7 @@ msgstr "" "示中的啟動畫面。" #. (itstool) path: sect1/para -#: book.translate.xml:23280 +#: book.translate.xml:23388 msgid "" "There are two basic environments available in FreeBSD. The first is the " "default legacy virtual console command line environment. After the system " @@ -34095,7 +34318,7 @@ msgstr "" "程式與圖型化登入管理程式的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:23288 +#: book.translate.xml:23396 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 " @@ -34117,45 +34340,35 @@ msgstr "" "Console,對圖型化顯示管理程式並不會有任何影響。" #. (itstool) path: sect1/para -#: book.translate.xml:23299 -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</" -"link>. By installing the <package>sysutils/bsd-splash-changer</package> " -"package or port, a random splash image from a collection will display at " -"boot." +#: book.translate.xml:23407 +msgid "" +"By installing the <package>sysutils/bsd-splash-changer</package> package or " +"port, a random splash image from a collection will display at boot. The " +"splash screen function supports 256-colors in the bitmap (<filename>.bmp</" +"filename>), ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>), or " +"TheDraw (<filename>.bin</filename>) formats. The <filename>.bmp</filename>, " +"<filename>.pcx</filename>, or <filename>.bin</filename> image has to be " +"placed on the root partition, for example in <filename>/boot</filename>. The " +"splash image files must have a resolution of 320 by 200 pixels or less in " +"order to work on standard <acronym>VGA</acronym> adapters. For the default " +"boot display resolution of 256-colors and 320 by 200 pixels or less, add the " +"following lines to <filename>/boot/loader.conf</filename>. Replace " +"<replaceable>splash.bmp</replaceable> with the name of the bitmap file to " +"use:" msgstr "" -"範例啟動畫面檔可到位於 <link xlink:href=\"http://artwork.freebsdgr.org/" -"node/3/\">http://artwork.freebsdgr.org</link> 的圖庫下載。安裝 " -"<package>sysutils/bsd-splash-changer</package> 套件或 Port,可以在開機時隨機" -"顯示圖片集中的啟動畫面。" - -#. (itstool) path: sect1/para -#: book.translate.xml:23305 -msgid "" -"The splash screen function supports 256-colors in the bitmap (<filename>." -"bmp</filename>), ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>), " -"or TheDraw (<filename>.bin</filename>) formats. The <filename>.bmp</" -"filename>, <filename>.pcx</filename>, or <filename>.bin</filename> image has " -"to be placed on the root partition, for example in <filename>/boot</" -"filename>. The splash image files must have a resolution of 320 by 200 " -"pixels or less in order to work on standard <acronym>VGA</acronym> adapters. " -"For the default boot display resolution of 256-colors and 320 by 200 pixels " -"or less, add the following lines to <filename>/boot/loader.conf</filename>. " -"Replace <replaceable>splash.bmp</replaceable> with the name of the bitmap " -"file to use:" -msgstr "" -"啟動畫面功能支援 256 色的點陣圖 (<filename>.bmp</filename>)、ZSoft " -"<acronym>PCX</acronym> (<filename>.pcx</filename>) 或 TheDraw (<filename>." -"bin</filename>) 格式。<filename>.bmp</filename>, <filename>.pcx</filename> " -"或 <filename>.bin</filename> 圖片必須放在根分割區,例如於 <filename>/boot</" -"filename>。啟動圖片檔必須使用 320x200 像素或更低的解析度以能夠在標準 " -"<acronym>VGA</acronym> 介面卡上運作,要在預設 256 色、 320x200 像素或更低的解" -"析度設定開機啟動圖片,可加入下行到 <filename>/boot/loader.conf</filename>,並" -"替換 <replaceable>splash.bmp</replaceable> 為實際要使用的點陣圖檔:" +"透過安裝 <package>sysutils/bsd-splash-changer</package> 套件或 Port,可在開機" +"時顯示隨機挑選的啟動畫面。啟動畫面功能支援 256 色的點陣圖 (<filename>.bmp</" +"filename>)、ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>) 或 " +"TheDraw (<filename>.bin</filename>) 格式。<filename>.bmp</filename>, " +"<filename>.pcx</filename> 或 <filename>.bin</filename> 圖片必須放在根分割區," +"例如於 <filename>/boot</filename>。啟動圖片檔必須使用 320x200 像素或更低的解" +"析度以能夠在標準 <acronym>VGA</acronym> 介面卡上運作,要在預設 256 色、" +"320x200 像素或更低的解析度設定開機啟動圖片,可加入下行到 <filename>/boot/" +"loader.conf</filename>,並替換 <replaceable>splash.bmp</replaceable> 為實際要" +"使用的點陣圖檔:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23320 +#: book.translate.xml:23425 #, no-wrap msgid "" "splash_bmp_load=\"YES\"\n" @@ -34164,12 +34377,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23324 +#: book.translate.xml:23429 msgid "To use a <acronym>PCX</acronym> file instead of a bitmap file:" msgstr "要使用 <acronym>PCX</acronym> 檔則可替換點陣圖檔:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23327 +#: book.translate.xml:23432 #, no-wrap msgid "" "splash_pcx_load=\"YES\"\n" @@ -34178,7 +34391,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23331 +#: book.translate.xml:23436 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:" @@ -34187,7 +34400,7 @@ msgstr "" "\">https://en.wikipedia.org/wiki/TheDraw</link> 格式的 ASCII 圖可:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23334 +#: book.translate.xml:23439 #, no-wrap msgid "" "splash_txt=\"YES\"\n" @@ -34196,7 +34409,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23338 +#: book.translate.xml:23443 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 " @@ -34213,23 +34426,23 @@ msgstr "" "filename> 上述例子中提到的三行之前加入下行:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23348 +#: book.translate.xml:23453 #, no-wrap msgid "vesa_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23350 +#: book.translate.xml:23455 msgid "Other interesting <filename>loader.conf</filename> options include:" msgstr "其他有用的 <filename>loader.conf</filename> 選項還有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:23354 +#: book.translate.xml:23459 msgid "<literal>beastie_disable=\"YES\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:23357 +#: book.translate.xml:23462 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 " @@ -34240,22 +34453,22 @@ msgstr "" "在倒數計時提示時輸入選擇的選項還是會啟動對應的開機選項。" #. (itstool) path: varlistentry/term -#: book.translate.xml:23366 +#: book.translate.xml:23471 msgid "<literal>loader_logo=\"beastie\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:23369 +#: book.translate.xml:23474 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 " "logo." msgstr "" "這個選項會替換預設與上色的小惡魔圖示一起顯示於開機選項選單右側的 " -"<quote>FreeBSD</quote> 文字," +"<quote>FreeBSD</quote> 文字。" #. (itstool) path: sect1/para -#: book.translate.xml:23377 +#: book.translate.xml:23482 msgid "" "For more information, refer to <citerefentry><refentrytitle>splash</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>, " @@ -34270,17 +34483,17 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:23383 +#: book.translate.xml:23488 msgid "Device Hints" msgstr "裝置提示" #. (itstool) path: sect1/indexterm -#: book.translate.xml:23396 +#: book.translate.xml:23501 msgid "<primary>device.hints</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23400 +#: book.translate.xml:23505 msgid "" "During initial system startup, the boot <citerefentry><refentrytitle>loader</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> reads <citerefentry " @@ -34298,7 +34511,7 @@ msgstr "" "hints)</quote> 會傳送給裝置驅動程式做裝置的設置使用。" #. (itstool) path: sect1/para -#: book.translate.xml:23406 +#: book.translate.xml:23511 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 " @@ -34314,7 +34527,7 @@ msgstr "" "置提示並不是永久有效的,在下一次重新開機久後便會失效。" #. (itstool) path: sect1/para -#: book.translate.xml:23415 +#: book.translate.xml:23520 msgid "" "Once the system is booted, <citerefentry><refentrytitle>kenv</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> can be used to dump " @@ -34324,7 +34537,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來列出所有的變數。" #. (itstool) path: sect1/para -#: book.translate.xml:23418 +#: book.translate.xml:23523 msgid "" "The syntax for <filename>/boot/device.hints</filename> is one variable per " "line, using the hash <quote>#</quote> as comment markers. Lines are " @@ -34334,24 +34547,24 @@ msgstr "" "<quote>#</quote> 做為註解符號,每一行的結構如下:" #. (itstool) path: sect1/screen -#: book.translate.xml:23423 +#: book.translate.xml:23528 #, no-wrap msgid "<userinput>hint.driver.unit.keyword=\"<replaceable>value</replaceable>\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23425 +#: book.translate.xml:23530 msgid "The syntax for the Stage 3 boot loader is:" msgstr "在階段 3 開機載入程式的語法則為:" #. (itstool) path: sect1/screen -#: book.translate.xml:23427 +#: book.translate.xml:23532 #, no-wrap msgid "<userinput>set hint.driver.unit.keyword=<replaceable>value</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23429 +#: book.translate.xml:23534 msgid "" "where <literal>driver</literal> is the device driver name, <literal>unit</" "literal> is the device driver unit number, and <literal>keyword</literal> is " @@ -34362,13 +34575,13 @@ msgstr "" "選項所組成:" #. (itstool) path: listitem/para -#: book.translate.xml:23436 +#: book.translate.xml:23541 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:23441 +#: book.translate.xml:23546 msgid "" "<literal>port</literal>: specifies the start address of the <acronym>I/O</" "acronym> to be used." @@ -34376,30 +34589,30 @@ msgstr "" "<literal>port</literal>: 指定要使用的 <acronym>I/O</acronym> 開始位置。" #. (itstool) path: listitem/para -#: book.translate.xml:23446 +#: book.translate.xml:23551 msgid "" "<literal>irq</literal>: specifies the interrupt request number to be used." msgstr "<literal>irq</literal>: 指定要使用的中斷請求編號。" #. (itstool) path: listitem/para -#: book.translate.xml:23451 +#: book.translate.xml:23556 msgid "<literal>drq</literal>: specifies the DMA channel number." msgstr "<literal>drq</literal>: 指定 DMA 頻道編號。" #. (itstool) path: listitem/para -#: book.translate.xml:23456 +#: book.translate.xml:23561 msgid "" "<literal>maddr</literal>: specifies the physical memory address occupied by " "the device." msgstr "<literal>maddr</literal>: 指定裝置所使用的實體記憶體位置。" #. (itstool) path: listitem/para -#: book.translate.xml:23461 +#: book.translate.xml:23566 msgid "<literal>flags</literal>: sets various flag bits for the device." msgstr "<literal>flags</literal>: 設定提供給裝置的各種旗標位元。" #. (itstool) path: listitem/para -#: book.translate.xml:23466 +#: book.translate.xml:23571 msgid "" "<literal>disabled</literal>: if set to <literal>1</literal> the device is " "disabled." @@ -34407,7 +34620,7 @@ msgstr "" "<literal>disabled</literal>: 若設為 <literal>1</literal> 則可關閉該裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:23471 +#: book.translate.xml:23576 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 " @@ -34429,19 +34642,19 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:23478 +#: book.translate.xml:23583 msgid "Shutdown Sequence" msgstr "關機程序" #. (itstool) path: sect1/indexterm -#: book.translate.xml:23480 +#: book.translate.xml:23585 msgid "" "<primary><citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23484 +#: book.translate.xml:23589 msgid "" "Upon controlled shutdown using <citerefentry><refentrytitle>shutdown</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, " @@ -34458,7 +34671,7 @@ msgstr "" "的程序,然後傳送 <literal>KILL</literal> 信號給未在時間內中止的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:23491 +#: book.translate.xml:23596 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 " @@ -34486,13 +34699,13 @@ msgstr "" "manvolnum></citerefentry> 的操作手冊來取得更多資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:23503 +#: book.translate.xml:23608 msgid "" "Modify group membership by referring to <xref linkend=\"users-synopsis\"/>." msgstr "要修改群組成員可參考 <xref linkend=\"users-synopsis\"/>。" #. (itstool) path: note/para -#: book.translate.xml:23507 +#: book.translate.xml:23612 msgid "" "Power management requires <citerefentry><refentrytitle>acpi</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> to be loaded as a " @@ -34503,24 +34716,24 @@ msgstr "" "訂核心中。" #. (itstool) path: info/title -#: book.translate.xml:23522 +#: book.translate.xml:23627 msgid "Security" msgstr "安全性" #. (itstool) path: authorgroup/author -#: book.translate.xml:23525 +#: book.translate.xml:23630 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: chapter/indexterm -#: book.translate.xml:23535 +#: book.translate.xml:23640 msgid "<primary>security</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23540 +#: book.translate.xml:23645 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 " @@ -34531,7 +34744,7 @@ msgstr "" "來搛寫如何確保系統與網路的安全性。身為 FreeBSD 必須了解如何避免攻擊與入侵。" #. (itstool) path: sect1/para -#: book.translate.xml:23546 +#: book.translate.xml:23651 msgid "" "In this chapter, several fundamentals and techniques will be discussed. The " "FreeBSD system comes with multiple layers of security, and many more third " @@ -34541,22 +34754,22 @@ msgstr "" "方工具可以用來增加安全性。" #. (itstool) path: listitem/para -#: book.translate.xml:23555 +#: book.translate.xml:23660 msgid "Basic FreeBSD system security concepts." msgstr "基礎 FreeBSD 系統安全概念。" #. (itstool) path: listitem/para -#: book.translate.xml:23559 +#: book.translate.xml:23664 msgid "The various crypt mechanisms available in FreeBSD." msgstr "FreeBSD 中的幾種加密 (Crypt) 機制。" #. (itstool) path: listitem/para -#: book.translate.xml:23563 +#: book.translate.xml:23668 msgid "How to set up one-time password authentication." msgstr "如何設定一次性密碼認證。" #. (itstool) path: listitem/para -#: book.translate.xml:23567 +#: book.translate.xml:23672 msgid "" "How to configure <application>TCP Wrapper</application> for use with " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -34566,29 +34779,29 @@ msgstr "" "manvolnum></citerefentry> 中的 <application>TCP Wrapper</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:23572 +#: book.translate.xml:23677 msgid "How to set up <application>Kerberos</application> on FreeBSD." msgstr "如何在 FreeBSD 設定 <application>Kerberos</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:23577 +#: book.translate.xml:23682 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:23582 +#: book.translate.xml:23687 msgid "How to configure and use <application>OpenSSH</application> on FreeBSD." -msgstr "如何在 FreeBSD 設定並使用 <application>OpenSSH</application>" +msgstr "如何在 FreeBSD 設定並使用 <application>OpenSSH</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:23587 +#: book.translate.xml:23692 msgid "How to use file system <acronym>ACL</acronym>s." msgstr "如何使用檔案系統 <acronym>ACL</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:23591 +#: book.translate.xml:23696 msgid "" "How to use <application>pkg</application> to audit third party software " "packages installed from the Ports Collection." @@ -34597,29 +34810,29 @@ msgstr "" "套件。" #. (itstool) path: listitem/para -#: book.translate.xml:23597 +#: book.translate.xml:23702 msgid "How to utilize FreeBSD security advisories." msgstr "如何利用 FreeBSD 安全報告。" #. (itstool) path: listitem/para -#: book.translate.xml:23601 +#: book.translate.xml:23706 msgid "What Process Accounting is and how to enable it on FreeBSD." msgstr "什麼是程序追蹤 (Process Accounting) 以及如何在 FreeBSD 開啟。" #. (itstool) path: listitem/para -#: book.translate.xml:23606 +#: book.translate.xml:23711 msgid "" "How to control user resources using login classes or the resource limits " "database." msgstr "如何使用登入類別或資源限制資料庫控制使用者資源。" #. (itstool) path: listitem/para -#: book.translate.xml:23615 book.translate.xml:57062 +#: book.translate.xml:23720 book.translate.xml:57589 msgid "Understand basic FreeBSD and Internet concepts." msgstr "了解 FreeBSD 基礎及網路概念。" #. (itstool) path: sect1/para -#: book.translate.xml:23619 +#: book.translate.xml:23724 msgid "" "Additional security topics are covered elsewhere in this Handbook. For " "example, Mandatory Access Control is discussed in <xref linkend=\"mac\"/> " @@ -34630,7 +34843,7 @@ msgstr "" "linkend=\"firewalls\"/> 討論。" #. (itstool) path: sect1/para -#: book.translate.xml:23628 +#: book.translate.xml:23733 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 " @@ -34644,7 +34857,7 @@ msgstr "" "(Availability)。" #. (itstool) path: sect1/para -#: book.translate.xml:23636 +#: book.translate.xml:23741 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 " @@ -34659,7 +34872,7 @@ msgstr "" "訊 (可用性)。" #. (itstool) path: sect1/para -#: book.translate.xml:23644 +#: book.translate.xml:23749 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 " @@ -34677,7 +34890,7 @@ msgstr "" "脅。" #. (itstool) path: sect1/para -#: book.translate.xml:23655 +#: book.translate.xml:23760 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 " @@ -34690,7 +34903,7 @@ msgstr "" "公司競爭對手。" #. (itstool) path: sect1/para -#: book.translate.xml:23662 +#: book.translate.xml:23767 msgid "" "Systems and networks can be accessed without permission, sometimes by " "accident, or by remote attackers, and in some cases, via corporate espionage " @@ -34705,7 +34918,7 @@ msgstr "" "備在發生時能夠減緩威脅。" #. (itstool) path: sect1/para -#: book.translate.xml:23670 +#: book.translate.xml:23775 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 " @@ -34724,7 +34937,7 @@ msgstr "" "有疑慮時,請向安全團隊諮詢。" #. (itstool) path: sect1/para -#: book.translate.xml:23682 +#: book.translate.xml:23787 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 " @@ -34735,12 +34948,12 @@ msgstr "" "的部份將介紹在 FreeBSD 系統執行安全性政策時會用到的特定工具。" #. (itstool) path: sect2/title -#: book.translate.xml:23689 +#: book.translate.xml:23794 msgid "Preventing Logins" msgstr "防止登入" #. (itstool) path: sect2/para -#: book.translate.xml:23691 +#: book.translate.xml:23796 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 " @@ -34752,39 +34965,39 @@ msgstr "" "方使用過,然後關閉任何無須登入存取權的帳號。" #. (itstool) path: sect2/para -#: book.translate.xml:23696 +#: book.translate.xml:23801 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</" "systemitem> account:" msgstr "" -"要關閉帳號的存取權登入有兩種方法,第一種是鎖定帳號,以下範例會鎖定 " -"<systemitem class=\"username\">toor</systemitem> 帳號:" +"要防止登入存取帳號有兩種方法,第一種是鎖定帳號,以下範例會鎖定 <systemitem " +"class=\"username\">toor</systemitem> 帳號:" #. (itstool) path: sect2/screen -#: book.translate.xml:23700 +#: book.translate.xml:23805 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw lock <replaceable>toor</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23702 +#: book.translate.xml:23807 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 " -"for other users:" +"<filename>/usr/sbin/nologin</filename>. Only the superuser can change the " +"shell for other users:" msgstr "" -"第二個關閉登入存取權的方式是更改 Shell 為 <filename>/sbin/nologin</" +"第二種防止登入存取的方式是狀 Shell 更改為 <filename>/usr/sbin/nologin</" "filename>,只有超級使用者可以更改其他使用者的 Shell:" #. (itstool) path: sect2/screen -#: book.translate.xml:23706 +#: book.translate.xml:23811 #, no-wrap msgid "<prompt>#</prompt> <userinput>chsh -s /usr/sbin/nologin <replaceable>toor</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23708 +#: book.translate.xml:23813 msgid "" "The <filename>/usr/sbin/nologin</filename> shell prevents the system from " "assigning a shell to the user when they attempt to login." @@ -34793,12 +35006,12 @@ msgstr "" "入的使用者。" #. (itstool) path: sect2/title -#: book.translate.xml:23714 +#: book.translate.xml:23819 msgid "Permitted Account Escalation" msgstr "帳號升級授權" #. (itstool) path: sect2/para -#: book.translate.xml:23716 +#: book.translate.xml:23821 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 " @@ -34822,7 +35035,7 @@ msgstr "" "項目的最後,使用者必須以逗號字元分隔並不可有空白。" #. (itstool) path: sect2/para -#: book.translate.xml:23730 +#: book.translate.xml:23835 msgid "" "The second, and recommended, method to permit privilege escalation is to " "install the <package>security/sudo</package> package or port. This software " @@ -34834,7 +35047,7 @@ msgstr "" "定使用者只能執行特定需權限的指令。" #. (itstool) path: sect2/para -#: book.translate.xml:23737 +#: book.translate.xml:23842 msgid "" "After installation, use <command>visudo</command> to edit <filename>/usr/" "local/etc/sudoers</filename>. This example creates a new <systemitem class=" @@ -34849,7 +35062,7 @@ msgstr "" "<package>apache24</package> 的存取權:" #. (itstool) path: sect2/screen -#: book.translate.xml:23744 +#: book.translate.xml:23849 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupadd webadmin -M trhodes -g 6000</userinput>\n" @@ -34858,12 +35071,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:23750 +#: book.translate.xml:23855 msgid "Password Hashes" msgstr "密碼編碼方式" #. (itstool) path: sect2/para -#: book.translate.xml:23752 +#: book.translate.xml:23857 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 " @@ -34882,7 +35095,7 @@ msgstr "" "Blowfish 演算法。" #. (itstool) path: note/para -#: book.translate.xml:23764 +#: book.translate.xml:23869 msgid "" "Blowfish is not part of <acronym>AES</acronym> and is not considered " "compliant with any Federal Information Processing Standards (<acronym>FIPS</" @@ -34893,7 +35106,7 @@ msgstr "" "境可能不會允許使用這種加密方式。" #. (itstool) path: sect2/para -#: book.translate.xml:23770 +#: book.translate.xml:23875 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. " @@ -34918,7 +35131,7 @@ msgstr "" "原來的密碼,會儲存於密碼資料庫中:" #. (itstool) path: sect2/screen -#: book.translate.xml:23786 +#: book.translate.xml:23891 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>grep dru /etc/master.passwd</userinput>\n" @@ -34926,7 +35139,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23789 +#: book.translate.xml:23894 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 " @@ -34937,25 +35150,25 @@ msgstr "" "etc/login.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23794 +#: book.translate.xml:23899 #, no-wrap msgid " :passwd_format=sha512:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23796 +#: book.translate.xml:23901 msgid "" "To change the algorithm to Blowfish, modify that line to look like this:" msgstr "要更改演算法為 Blowfish,可修改該行如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23799 +#: book.translate.xml:23904 #, no-wrap msgid " :passwd_format=blf:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23801 +#: book.translate.xml:23906 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 " @@ -34969,7 +35182,7 @@ msgstr "" "密碼才有辦法重新加密所有密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:23808 +#: book.translate.xml:23913 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 " @@ -34990,12 +35203,12 @@ msgstr "" "<xref linkend=\"kerberos5\"/> 中會有說明。" #. (itstool) path: sect2/title -#: book.translate.xml:23822 +#: book.translate.xml:23927 msgid "Password Policy Enforcement" msgstr "強制密碼政策" #. (itstool) path: sect2/para -#: book.translate.xml:23824 +#: book.translate.xml:23929 msgid "" "Enforcing a strong password policy for local accounts is a fundamental " "aspect of system security. In FreeBSD, password length, password strength, " @@ -35007,7 +35220,7 @@ msgstr "" "Modules, <acronym>PAM</acronym>) 來執行。" #. (itstool) path: sect2/para -#: book.translate.xml:23830 +#: book.translate.xml:23935 msgid "" "This section demonstrates how to configure the minimum and maximum password " "length and the enforcement of mixed characters using the " @@ -35018,7 +35231,7 @@ msgstr "" "filename> 來強制使用混合字元的密碼,此模組可在使用者更改其密碼時強制要求。" #. (itstool) path: sect2/para -#: book.translate.xml:23836 +#: book.translate.xml:23941 msgid "" "To configure this module, become the superuser and uncomment the line " "containing <literal>pam_passwdqc.so</literal> in <filename>/etc/pam.d/" @@ -35029,13 +35242,13 @@ msgstr "" "行來配合密碼政策:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23842 +#: book.translate.xml:23947 #, 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:23844 +#: book.translate.xml:23949 msgid "" "This example sets several requirements for new passwords. The <literal>min</" "literal> setting controls the minimum password length. It has five values " @@ -35062,7 +35275,7 @@ msgstr "" "literal> 設定密碼政策接受滿足四種字元類型複雜度且至少 10 個字元的密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:23861 +#: book.translate.xml:23966 msgid "" "The <literal>similar</literal> setting denies passwords that are similar to " "the user's previous password. The <literal>retry</literal> setting provides " @@ -35072,14 +35285,14 @@ msgstr "" "<literal>retry</literal> 設定會提供使用者三次輸入新密碼的機會。" #. (itstool) path: sect2/para -#: book.translate.xml:23866 +#: book.translate.xml:23971 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:23869 +#: book.translate.xml:23974 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>passwd</userinput>\n" @@ -35099,7 +35312,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23884 +#: book.translate.xml:23989 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 " @@ -35109,7 +35322,7 @@ msgstr "" "重試,直到超過設定的允許重試次數。" #. (itstool) path: sect2/para -#: book.translate.xml:23889 +#: book.translate.xml:23994 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 " @@ -35122,13 +35335,13 @@ msgstr "" "範例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23896 +#: book.translate.xml:24001 #, no-wrap msgid "# :passwordtime=90d:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23898 +#: book.translate.xml:24003 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/" @@ -35139,7 +35352,7 @@ msgstr "" "command>。" #. (itstool) path: sect2/para -#: book.translate.xml:23903 +#: book.translate.xml:24008 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>:" @@ -35148,13 +35361,13 @@ msgstr "" "<command>pw</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:23907 +#: book.translate.xml:24012 #, 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:23909 +#: book.translate.xml:24014 msgid "" "As seen here, an expiration date is set in the form of day, month, and year. " "For more information, see <citerefentry><refentrytitle>pw</" @@ -35165,12 +35378,12 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:23915 +#: book.translate.xml:24020 msgid "Detecting Rootkits" msgstr "偵測 Root 工具 (Rootkit)" #. (itstool) path: sect2/para -#: book.translate.xml:23917 +#: book.translate.xml:24022 msgid "" "A <firstterm>rootkit</firstterm> is any unauthorized software that attempts " "to gain <systemitem class=\"username\">root</systemitem> access to a system. " @@ -35188,7 +35401,7 @@ msgstr "" "程式也可能會遺漏攻擊者留下的動西。" #. (itstool) path: sect2/para -#: book.translate.xml:23927 +#: book.translate.xml:24032 msgid "" "A rootkit does do one thing useful for administrators: once detected, it is " "a sign that a compromise happened at some point. But, these types of " @@ -35200,7 +35413,7 @@ msgstr "" "<package>security/rkhunter</package>。" #. (itstool) path: sect2/para -#: book.translate.xml:23933 +#: book.translate.xml:24038 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 " @@ -35210,13 +35423,13 @@ msgstr "" "手動按下 <keycap>ENTER</keycap> 確認:" #. (itstool) path: sect2/screen -#: book.translate.xml:23938 +#: book.translate.xml:24043 #, no-wrap msgid "<prompt>#</prompt> <userinput>rkhunter -c</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23940 +#: book.translate.xml:24045 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, " @@ -35233,7 +35446,7 @@ msgstr "" "理。" #. (itstool) path: sect2/para -#: book.translate.xml:23950 +#: book.translate.xml:24055 msgid "" "Every administrator should know what is running on the systems they are " "responsible for. Third-party tools like <application>rkhunter</application> " @@ -35250,12 +35463,12 @@ msgstr "" "雖然理想要避免滲透,但也必須偵測是否已被滲透了。" #. (itstool) path: sect2/title -#: book.translate.xml:23962 +#: book.translate.xml:24067 msgid "Binary Verification" msgstr "Binary 檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:23964 +#: book.translate.xml:24069 msgid "" "Verification of system files and binaries is important because it provides " "the system administration and security teams information about system " @@ -35267,7 +35480,7 @@ msgstr "" "Detection System, <acronym>IDS</acronym>)。" #. (itstool) path: sect2/para -#: book.translate.xml:23970 +#: book.translate.xml:24075 msgid "" "FreeBSD provides native support for a basic <acronym>IDS</acronym> system. " "While the nightly security emails will notify an administrator of changes, " @@ -35285,7 +35498,7 @@ msgstr "" "acronym> 磁碟或遠端 <application>rsync</application> 伺服器更好。" #. (itstool) path: sect2/para -#: book.translate.xml:23981 +#: book.translate.xml:24086 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, " @@ -35309,7 +35522,7 @@ msgstr "" "bin_chksum_mtree</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:23994 +#: book.translate.xml:24099 #, 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" @@ -35317,7 +35530,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23997 +#: book.translate.xml:24102 msgid "" "The <replaceable>3483151339707503</replaceable> represents the seed. This " "value should be remembered, but not shared." @@ -35326,7 +35539,7 @@ msgstr "" "不可給其它人看。" #. (itstool) path: sect2/para -#: book.translate.xml:24001 +#: book.translate.xml:24106 msgid "" "Viewing <filename>/root/.bin_cksum_mtree</filename> should yield output " "similar to the following:" @@ -35334,7 +35547,7 @@ msgstr "" "檢視 <filename>/root/.bin_cksum_mtree</filename> 應會產生類似以下的輸出結果:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24004 +#: book.translate.xml:24109 #, no-wrap msgid "" "# user: root\n" @@ -35360,7 +35573,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24025 +#: book.translate.xml:24130 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 " @@ -35372,7 +35585,7 @@ msgstr "" "<acronym>SHA</acronym>256 編碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24031 +#: book.translate.xml:24136 msgid "" "To verify that the binary signatures have not changed, compare the current " "contents of the directory to the previously generated specification, and " @@ -35383,7 +35596,7 @@ msgstr "" "然後儲存結果到檔案。這個指令需要當初產生原規格檔所使用的種子碼:" #. (itstool) path: sect2/screen -#: book.translate.xml:24037 +#: book.translate.xml:24142 #, 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" @@ -35391,7 +35604,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24040 +#: book.translate.xml:24145 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 " @@ -35407,7 +35620,7 @@ msgstr "" "的日期然後再執行檢驗指令一次:" #. (itstool) path: sect2/screen -#: book.translate.xml:24049 +#: book.translate.xml:24154 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>touch /bin/cat</userinput>\n" @@ -35418,7 +35631,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24055 +#: book.translate.xml:24160 msgid "" "It is recommended to create specifications for the directories which contain " "binaries and configuration files, as well as any directories containing " @@ -35434,7 +35647,7 @@ msgstr "" "建立規格檔。" #. (itstool) path: sect2/para -#: book.translate.xml:24065 +#: book.translate.xml:24170 msgid "" "More advanced <acronym>IDS</acronym> systems exist, such as " "<package>security/aide</package>. In most cases, <command>mtree</command> " @@ -35451,12 +35664,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:24075 +#: book.translate.xml:24180 msgid "System Tuning for Security" msgstr "系統安全性調校" #. (itstool) path: sect2/para -#: book.translate.xml:24077 +#: book.translate.xml:24182 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 " @@ -35472,7 +35685,7 @@ msgstr "" "到。" #. (itstool) path: note/para -#: book.translate.xml:24087 +#: book.translate.xml:24192 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. " @@ -35484,7 +35697,7 @@ msgstr "" "能的話,先在測試系統上實驗,再到上線的系統上使用。" #. (itstool) path: sect2/para -#: book.translate.xml:24095 +#: book.translate.xml:24200 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 " @@ -35513,7 +35726,7 @@ msgstr "" "可用的安全性層級相關的資訊。" #. (itstool) path: warning/para -#: book.translate.xml:24111 +#: book.translate.xml:24216 msgid "" "Increasing the <varname>securelevel</varname> can break <application>Xorg</" "application> and cause other issues. Be prepared to do some debugging." @@ -35522,7 +35735,7 @@ msgstr "" "法執行以及造成其他問題,請做好除錯的準備。" #. (itstool) path: sect2/para -#: book.translate.xml:24116 +#: book.translate.xml:24221 msgid "" "The <varname>net.inet.tcp.blackhole</varname> and <varname>net.inet.udp." "blackhole</varname> settings can be used to drop incoming <acronym>SYN</" @@ -35547,7 +35760,7 @@ msgstr "" "manvolnum></citerefentry> 以取得更多有關這些設定的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:24130 +#: book.translate.xml:24235 msgid "" "The <varname>net.inet.icmp.drop_redirect</varname> and <varname>net.inet.ip." "redirect</varname> settings help prevent against <firstterm>redirect " @@ -35566,7 +35779,7 @@ msgstr "" "封包。" #. (itstool) path: sect2/para -#: book.translate.xml:24141 +#: book.translate.xml:24246 msgid "" "Source routing is a method for detecting and accessing non-routable " "addresses on the internal network. This should be disabled as non-routable " @@ -35580,7 +35793,7 @@ msgstr "" "accept_sourceroute</varname> 為 <literal>0</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:24149 +#: book.translate.xml:24254 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 " @@ -35594,7 +35807,7 @@ msgstr "" "bmcastecho</varname> 為 <literal>0</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:24157 +#: book.translate.xml:24262 msgid "" "Some additional settings are documented in " "<citerefentry><refentrytitle>security</refentrytitle><manvolnum>7</" @@ -35604,22 +35817,22 @@ msgstr "" "refentrytitle><manvolnum>7</manvolnum></citerefentry> 有說明。" #. (itstool) path: sect1/title -#: book.translate.xml:24163 +#: book.translate.xml:24268 msgid "One-time Passwords" msgstr "一次性密碼" #. (itstool) path: sect1/indexterm -#: book.translate.xml:24165 +#: book.translate.xml:24270 msgid "<primary>one-time passwords</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:24166 +#: book.translate.xml:24271 msgid "<primary>security</primary> <secondary>one-time passwords</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24171 +#: book.translate.xml:24276 msgid "" "By default, FreeBSD includes support for One-time Passwords In Everything " "(<acronym>OPIE</acronym>). <acronym>OPIE</acronym> is designed to prevent " @@ -35639,7 +35852,7 @@ msgstr "" "上預設採用 <acronym>MD5</acronym> 加密。" #. (itstool) path: sect1/para -#: book.translate.xml:24182 +#: book.translate.xml:24287 msgid "" "<acronym>OPIE</acronym> uses three different types of passwords. The first " "is the usual <trademark class=\"registered\">UNIX</trademark> or Kerberos " @@ -35656,7 +35869,7 @@ msgstr "" "\"registered\">UNIX</trademark> 密碼無關且不應相同。" #. (itstool) path: sect1/para -#: book.translate.xml:24190 +#: book.translate.xml:24295 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 " @@ -35686,7 +35899,7 @@ msgstr "" "literal> 時,<acronym>OPIE</acronym> 便要重新初始化。" #. (itstool) path: sect1/para -#: book.translate.xml:24209 +#: book.translate.xml:24314 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 " @@ -35712,7 +35925,7 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect1/para -#: book.translate.xml:24219 +#: book.translate.xml:24324 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. " @@ -35727,19 +35940,19 @@ msgstr "" "所使的金鑰。" #. (itstool) path: sect2/title -#: book.translate.xml:24228 +#: book.translate.xml:24333 msgid "Initializing <acronym>OPIE</acronym>" msgstr "初始化 <acronym>OPIE</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:24230 +#: book.translate.xml:24335 msgid "" "To initialize <acronym>OPIE</acronym> for the first time, run this command " "from a secure location:" msgstr "第一次要初始化 <acronym>OPIE</acronym>,要在安全的場所執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:24233 +#: book.translate.xml:24338 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiepasswd -c</userinput>\n" @@ -35756,7 +35969,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24245 +#: book.translate.xml:24350 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 " @@ -35768,7 +35981,7 @@ msgstr "" "電腦。" #. (itstool) path: sect2/para -#: book.translate.xml:24251 +#: book.translate.xml:24356 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 " @@ -35781,7 +35994,7 @@ msgstr "" "之間,然後請記住這個密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24258 +#: book.translate.xml:24363 msgid "" "The <literal>ID</literal> line lists the login name (<literal>unfurl</" "literal>), default iteration count (<literal>499</literal>), and default " @@ -35798,12 +36011,12 @@ msgstr "" "一次登入時便要使用這個一次性密碼。" #. (itstool) path: sect2/title -#: book.translate.xml:24270 +#: book.translate.xml:24375 msgid "Insecure Connection Initialization" msgstr "在不安全連線下做初始化" #. (itstool) path: sect2/para -#: book.translate.xml:24272 +#: book.translate.xml:24377 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 " @@ -35820,7 +36033,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:24281 +#: book.translate.xml:24386 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiepasswd</userinput>\n" @@ -35839,7 +36052,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24295 +#: book.translate.xml:24400 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 " @@ -35849,7 +36062,7 @@ msgstr "" "應之前移到安全的連線然後給予相同的加密參數產生密碼:" #. (itstool) path: sect2/screen -#: book.translate.xml:24299 book.translate.xml:24347 +#: book.translate.xml:24404 book.translate.xml:24452 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiekey 498 to4268</userinput>\n" @@ -35860,26 +36073,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24305 +#: book.translate.xml:24410 msgid "" "Switch back over to the insecure connection, and copy the generated one-time " "password over to the relevant program." msgstr "切換回不安全的連線,然後複製產生的一次性密碼貼上。" #. (itstool) path: sect2/title -#: book.translate.xml:24311 +#: book.translate.xml:24416 msgid "Generating a Single One-time Password" msgstr "產生單組一次性密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24313 +#: book.translate.xml:24418 msgid "" "After initializing <acronym>OPIE</acronym> and logging in, a prompt like " "this will be displayed:" msgstr "在初始化 <acronym>OPIE</acronym> 之後進行登入會顯示如下的提示訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:24316 +#: book.translate.xml:24421 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>telnet example.com</userinput>\n" @@ -35895,7 +36108,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24327 +#: book.translate.xml:24432 msgid "" "The <acronym>OPIE</acronym> prompts provides a useful feature. If " "<keycap>Return</keycap> is pressed at the password prompt, the prompt will " @@ -35907,22 +36120,22 @@ msgstr "" "輸入列印出來的密碼時很有用。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24333 +#: book.translate.xml:24438 msgid "<primary>MS-DOS</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24334 +#: book.translate.xml:24439 msgid "<primary>Windows</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24335 +#: book.translate.xml:24440 msgid "<primary>MacOS</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24337 +#: book.translate.xml:24442 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 " @@ -35941,22 +36154,22 @@ msgstr "" "下在要登入主機在登入時所提示的訊息。" #. (itstool) path: sect2/para -#: book.translate.xml:24345 +#: book.translate.xml:24450 msgid "On the trusted system:" msgstr "在信任的系統上執行:" #. (itstool) path: sect2/para -#: book.translate.xml:24353 +#: book.translate.xml:24458 msgid "Once the one-time password is generated, continue to log in." msgstr "在產生一次性密碼後,回到登入畫面繼續登入。" #. (itstool) path: sect2/title -#: book.translate.xml:24358 +#: book.translate.xml:24463 msgid "Generating Multiple One-time Passwords" msgstr "產生多組一次性密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24360 +#: book.translate.xml:24465 msgid "" "Sometimes there is no access to a trusted machine or secure connection. In " "this case, it is possible to use <citerefentry><refentrytitle>opiekey</" @@ -35968,7 +36181,7 @@ msgstr "" "manvolnum></citerefentry> 來預先產生多個一次性密碼,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:24365 +#: book.translate.xml:24470 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiekey -n 5 30 zz99999</userinput>\n" @@ -35983,7 +36196,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24375 +#: book.translate.xml:24480 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 " @@ -35998,13 +36211,13 @@ msgstr "" "顯示疊代次數及一次性密碼,在密碼使用過後便可劃掉。" #. (itstool) path: sect2/title -#: book.translate.xml:24386 +#: book.translate.xml:24491 msgid "" "Restricting Use of <trademark class=\"registered\">UNIX</trademark> Passwords" msgstr "限制使用 <trademark class=\"registered\">UNIX</trademark> 密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24388 +#: book.translate.xml:24493 msgid "" "<acronym>OPIE</acronym> can restrict the use of <trademark class=\"registered" "\">UNIX</trademark> passwords based on the IP address of a login session. " @@ -36021,18 +36234,18 @@ msgstr "" "性問題。" #. (itstool) path: sect2/para -#: book.translate.xml:24395 +#: book.translate.xml:24500 msgid "Here is a sample <filename>opieaccess</filename>:" msgstr "這裡有一個範本 <filename>opieaccess</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24397 +#: book.translate.xml:24502 #, no-wrap msgid "permit 192.168.0.0 255.255.0.0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24399 +#: book.translate.xml:24504 msgid "" "This line allows users whose IP source address (which is vulnerable to " "spoofing) matches the specified value and mask, to use <trademark class=" @@ -36042,7 +36255,7 @@ msgstr "" "間可使用 <trademark class=\"registered\">UNIX</trademark> 密碼登入。" #. (itstool) path: sect2/para -#: book.translate.xml:24403 +#: book.translate.xml:24508 msgid "" "If no rules in <filename>opieaccess</filename> are matched, the default is " "to deny non-<acronym>OPIE</acronym> logins." @@ -36051,13 +36264,13 @@ msgstr "" "<acronym>OPIE</acronym> 的登入。" #. (itstool) path: info/title -#: book.translate.xml:24411 +#: book.translate.xml:24516 msgid "TCP Wrapper" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24414 book.translate.xml:25259 book.translate.xml:29233 -#: book.translate.xml:41357 book.translate.xml:45936 +#: book.translate.xml:24519 book.translate.xml:25364 book.translate.xml:29346 +#: book.translate.xml:41469 book.translate.xml:46176 msgid "" "<personname><firstname>Tom</firstname><surname>Rhodes</surname></" "personname><contrib>Written by </contrib>" @@ -36065,12 +36278,12 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:24419 book.translate.xml:54203 +#: book.translate.xml:24524 book.translate.xml:54443 msgid "<primary>TCP Wrapper</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24421 +#: book.translate.xml:24526 msgid "" "<application>TCP Wrapper</application> is a host-based access control system " "which extends the abilities of <xref linkend=\"network-inetd\"/>. It can be " @@ -36082,7 +36295,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24429 +#: book.translate.xml:24534 msgid "" "<application>TCP Wrapper</application> should not be considered a " "replacement for a properly configured firewall. Instead, <application>TCP " @@ -36092,19 +36305,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24437 +#: book.translate.xml:24542 msgid "Initial Configuration" msgstr "初始設定" #. (itstool) path: sect2/para -#: book.translate.xml:24439 +#: book.translate.xml:24544 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:24443 +#: book.translate.xml:24548 #, no-wrap msgid "" "inetd_enable=\"YES\"\n" @@ -36112,12 +36325,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24446 +#: book.translate.xml:24551 msgid "Then, properly configure <filename>/etc/hosts.allow</filename>." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24450 +#: book.translate.xml:24555 msgid "" "Unlike other implementations of <application>TCP Wrapper</application>, the " "use of <filename>hosts.deny</filename> is deprecated in FreeBSD. All " @@ -36126,7 +36339,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24457 +#: book.translate.xml:24562 msgid "" "In the simplest configuration, daemon connection policies are set to either " "permit or block, depending on the options in <filename>/etc/hosts.allow</" @@ -36135,7 +36348,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24463 +#: book.translate.xml:24568 msgid "" "Basic configuration usually takes the form of <literal>daemon : address : " "action</literal>, where <literal>daemon</literal> is the daemon which " @@ -36149,7 +36362,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24476 +#: book.translate.xml:24581 msgid "" "For example, to allow <acronym>POP</acronym>3 connections via the " "<package>mail/qpopper</package> daemon, the following lines should be " @@ -36157,7 +36370,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24481 +#: book.translate.xml:24586 #, no-wrap msgid "" "# This line is required for POP3 connections:\n" @@ -36165,23 +36378,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24484 +#: book.translate.xml:24589 msgid "Whenever this file is edited, restart <application>inetd</application>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24487 book.translate.xml:34153 +#: book.translate.xml:24592 book.translate.xml:34266 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd restart</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24491 book.translate.xml:49558 +#: book.translate.xml:24596 book.translate.xml:49798 msgid "Advanced Configuration" msgstr "進階設定" #. (itstool) path: sect2/para -#: book.translate.xml:24493 +#: book.translate.xml:24598 msgid "" "<application>TCP Wrapper</application> provides advanced options to allow " "more control over the way connections are handled. In some cases, it may be " @@ -36194,7 +36407,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24503 +#: book.translate.xml:24608 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 " @@ -36204,7 +36417,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24511 +#: book.translate.xml:24616 #, no-wrap msgid "" "# The rest of the daemons are protected.\n" @@ -36214,7 +36427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24516 +#: book.translate.xml:24621 msgid "" "In this example, the message <quote>You are not allowed to use " "<replaceable>daemon name</replaceable> from <replaceable>hostname</" @@ -36226,14 +36439,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:24527 +#: book.translate.xml:24632 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:24532 +#: book.translate.xml:24637 msgid "" "Another possibility is to use <option>spawn</option>. Like <option>twist</" "option>, <option>spawn</option> implicitly denies the connection and may be " @@ -36244,7 +36457,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24540 +#: book.translate.xml:24645 #, no-wrap msgid "" "# We do not allow connections from example.com:\n" @@ -36255,7 +36468,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24546 +#: book.translate.xml:24651 msgid "" "This will deny all connection attempts from <systemitem class=\"fqdomainname" "\">*.example.com</systemitem> and log the hostname, <acronym>IP</acronym> " @@ -36267,7 +36480,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24554 +#: book.translate.xml:24659 msgid "" "To match every instance of a daemon, domain, or <acronym>IP</acronym> " "address, use <literal>ALL</literal>. Another wildcard is <literal>PARANOID</" @@ -36279,7 +36492,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24564 +#: book.translate.xml:24669 #, no-wrap msgid "" "# Block possibly spoofed requests to sendmail:\n" @@ -36287,7 +36500,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:24568 +#: book.translate.xml:24673 msgid "" "Using the <literal>PARANOID</literal> wildcard will result in denied " "connections if the client or server has a broken <acronym>DNS</acronym> " @@ -36295,7 +36508,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24573 +#: book.translate.xml:24678 msgid "" "To learn more about wildcards and their associated functionality, refer to " "<citerefentry><refentrytitle>hosts_access</refentrytitle><manvolnum>5</" @@ -36303,33 +36516,33 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24577 +#: book.translate.xml:24682 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:24586 +#: book.translate.xml:24691 msgid "<application>Kerberos</application>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24589 +#: book.translate.xml:24694 msgid "" "<personname> <firstname>Tillman</firstname> <surname>Hodgson</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24599 +#: book.translate.xml:24704 msgid "" "<personname> <firstname>Mark</firstname> <surname>Murray</surname> </" "personname> <contrib>Based on a contribution by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24609 +#: book.translate.xml:24714 msgid "" "<application>Kerberos</application> is a network authentication protocol " "which was originally created by the Massachusetts Institute of Technology " @@ -36344,7 +36557,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24623 +#: book.translate.xml:24728 msgid "" "The only function of <application>Kerberos</application> is to provide the " "secure authentication of users and servers on the network. It does not " @@ -36354,7 +36567,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24630 +#: book.translate.xml:24735 msgid "" "The current version of the protocol is version 5, described in <acronym>RFC</" "acronym> 4120. Several free implementations of this protocol are available, " @@ -36373,7 +36586,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24649 +#: book.translate.xml:24754 msgid "" "In <application>Kerberos</application> users and services are identified as " "<quote>principals</quote> which are contained within an administrative " @@ -36383,35 +36596,35 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24657 +#: book.translate.xml:24762 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:24661 +#: book.translate.xml:24766 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:24667 +#: book.translate.xml:24772 msgid "" "The <acronym>DNS</acronym> domain (zone) will be <systemitem class=" "\"fqdomainname\">example.org</systemitem>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:24672 +#: book.translate.xml:24777 msgid "" "The <application>Kerberos</application> realm will be <literal>EXAMPLE.ORG</" "literal>." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24678 +#: book.translate.xml:24783 msgid "" "Use real domain names when setting up <application>Kerberos</application>, " "even if it will run internally. This avoids <acronym>DNS</acronym> problems " @@ -36420,18 +36633,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24686 +#: book.translate.xml:24791 msgid "Setting up a Heimdal <acronym>KDC</acronym>" msgstr "設定 Heimdal <acronym>KDC</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24688 +#: book.translate.xml:24793 msgid "" "<primary>Kerberos5</primary> <secondary>Key Distribution Center</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24693 +#: book.translate.xml:24798 msgid "" "The Key Distribution Center (<acronym>KDC</acronym>) is the centralized " "authentication service that <application>Kerberos</application> provides, " @@ -36444,7 +36657,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24705 +#: book.translate.xml:24810 msgid "" "While running a <acronym>KDC</acronym> requires few computing resources, a " "dedicated machine acting only as a <acronym>KDC</acronym> is recommended for " @@ -36452,14 +36665,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24710 +#: book.translate.xml:24815 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:24713 +#: book.translate.xml:24818 #, no-wrap msgid "" "kdc_enable=\"YES\"\n" @@ -36467,12 +36680,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24716 +#: book.translate.xml:24821 msgid "Next, edit <filename>/etc/krb5.conf</filename> as follows:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24719 +#: book.translate.xml:24824 #, no-wrap msgid "" "[libdefaults]\n" @@ -36487,7 +36700,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24729 +#: book.translate.xml:24834 msgid "" "In this example, the <acronym>KDC</acronym> will use the fully-qualified " "hostname <systemitem class=\"fqdomainname\">kerberos.example.org</" @@ -36496,7 +36709,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24734 +#: book.translate.xml:24839 msgid "" "<application>Kerberos</application> can also use the <acronym>DNS</acronym> " "to locate KDCs, instead of a <literal>[realms]</literal> section in " @@ -36505,7 +36718,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24741 +#: book.translate.xml:24846 #, no-wrap msgid "" "[libdefaults]\n" @@ -36515,14 +36728,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24746 +#: book.translate.xml:24851 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:24750 +#: book.translate.xml:24855 #, no-wrap msgid "" "_kerberos._udp IN SRV 01 00 88 <replaceable>kerberos.example.org</replaceable>.\n" @@ -36533,7 +36746,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24757 +#: book.translate.xml:24862 msgid "" "In order for clients to be able to find the <application>Kerberos</" "application> services, they <emphasis>must</emphasis> have either a fully " @@ -36543,7 +36756,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24766 +#: book.translate.xml:24871 msgid "" "Next, create the <application>Kerberos</application> database which contains " "the keys of all principals (users and hosts) encrypted with a master " @@ -36554,7 +36767,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24775 +#: book.translate.xml:24880 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kstash</userinput>\n" @@ -36563,7 +36776,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24779 +#: book.translate.xml:24884 msgid "" "Once the master key has been created, the database should be initialized. " "The <application>Kerberos</application> administrative tool " @@ -36578,7 +36791,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24790 +#: book.translate.xml:24895 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin -l</userinput>\n" @@ -36587,7 +36800,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24794 +#: book.translate.xml:24899 msgid "" "Lastly, while still in <command>kadmin</command>, create the first principal " "using <command>add</command>. Stick to the default options for the principal " @@ -36596,7 +36809,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24801 +#: book.translate.xml:24906 #, no-wrap msgid "" "kadmin> <userinput>add <replaceable>tillman</replaceable></userinput>\n" @@ -36608,7 +36821,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24808 +#: book.translate.xml:24913 msgid "" "Next, start the <acronym>KDC</acronym> services by running <command>service " "kdc start</command> and <command>service kadmind start</command>. While " @@ -36618,7 +36831,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24816 +#: book.translate.xml:24921 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>kinit <replaceable>tillman</replaceable></userinput>\n" @@ -36626,14 +36839,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24819 +#: book.translate.xml:24924 msgid "" "Confirm that a ticket was successfully obtained using <command>klist</" "command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24822 +#: book.translate.xml:24927 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>klist</userinput>\n" @@ -36645,28 +36858,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24829 +#: book.translate.xml:24934 msgid "The temporary ticket can be destroyed when the test is finished:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24832 +#: book.translate.xml:24937 #, no-wrap msgid "<prompt>%</prompt> <userinput>kdestroy</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24836 +#: book.translate.xml:24941 msgid "Configuring a Server to Use <application>Kerberos</application>" msgstr "設定伺服器使用 <application>Kerberos</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24839 +#: book.translate.xml:24944 msgid "<primary>Kerberos5</primary> <secondary>enabling services</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24844 +#: book.translate.xml:24949 msgid "" "The first step in configuring a server to use <application>Kerberos</" "application> authentication is to ensure that it has the correct " @@ -36676,7 +36889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24851 +#: book.translate.xml:24956 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 " @@ -36699,7 +36912,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24874 +#: book.translate.xml:24979 msgid "" "Of course, <command>kadmin</command> is a kerberized service; a " "<application>Kerberos</application> ticket is needed to authenticate to the " @@ -36719,7 +36932,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24891 +#: book.translate.xml:24996 msgid "" "After installing <filename>/etc/krb5.conf</filename>, use <command>add --" "random-key</command> in <command>kadmin</command>. This adds the server's " @@ -36729,7 +36942,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24899 +#: book.translate.xml:25004 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin</userinput>\n" @@ -36744,7 +36957,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24909 +#: book.translate.xml:25014 msgid "" "Note that <command>ext_keytab</command> stores the extracted key in " "<filename>/etc/krb5.keytab</filename> by default. This is good when being " @@ -36754,7 +36967,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24917 +#: book.translate.xml:25022 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin</userinput>\n" @@ -36763,7 +36976,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24921 +#: book.translate.xml:25026 msgid "" "The keytab can then be securely copied to the server using " "<citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</manvolnum></" @@ -36772,7 +36985,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24926 +#: book.translate.xml:25031 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>. " @@ -36785,13 +36998,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24937 +#: book.translate.xml:25042 #, no-wrap msgid "GSSAPIAuthentication yes" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24939 +#: book.translate.xml:25044 msgid "" "After making this change, <citerefentry><refentrytitle>sshd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> must be restarted for " @@ -36803,17 +37016,17 @@ msgstr "" "<command>service sshd restart</command>。" #. (itstool) path: sect2/title -#: book.translate.xml:24945 +#: book.translate.xml:25050 msgid "Configuring a Client to Use <application>Kerberos</application>" msgstr "設定客戶端使用 <application>Kerberos</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24948 +#: book.translate.xml:25053 msgid "<primary>Kerberos5</primary> <secondary>configure clients</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24953 +#: book.translate.xml:25058 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 " @@ -36821,7 +37034,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24957 +#: book.translate.xml:25062 msgid "" "Test the client by using <command>kinit</command>, <command>klist</command>, " "and <command>kdestroy</command> from the client to obtain, show, and then " @@ -36837,7 +37050,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24971 +#: book.translate.xml:25076 msgid "" "When testing a Kerberized application, try using a packet sniffer such as " "<command>tcpdump</command> to confirm that no sensitive information is sent " @@ -36845,7 +37058,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24975 +#: book.translate.xml:25080 msgid "" "Various <application>Kerberos</application> client applications are " "available. With the advent of a bridge so that applications using " @@ -36856,17 +37069,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24983 +#: book.translate.xml:25088 msgid "<primary><filename>.k5login</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24987 +#: book.translate.xml:25092 msgid "<primary><filename>.k5users</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24991 +#: book.translate.xml:25096 msgid "" "Users within a realm typically have their <application>Kerberos</" "application> principal mapped to a local user account. Occasionally, one " @@ -36879,7 +37092,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25000 +#: book.translate.xml:25105 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 " @@ -36890,7 +37103,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25008 +#: book.translate.xml:25113 #, no-wrap msgid "" "tillman@example.org\n" @@ -36898,7 +37111,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25011 +#: book.translate.xml:25116 msgid "" "Refer to <citerefentry><refentrytitle>ksu</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> for more information about <filename>.k5users</" @@ -36906,12 +37119,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25016 +#: book.translate.xml:25121 msgid "<acronym>MIT</acronym> Differences" msgstr "與 <acronym>MIT</acronym> 的差異" #. (itstool) path: sect2/para -#: book.translate.xml:25018 +#: book.translate.xml:25123 msgid "" "The major difference between the <acronym>MIT</acronym> and Heimdal " "implementations is that <command>kadmin</command> has a different, but " @@ -36922,7 +37135,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25026 +#: book.translate.xml:25131 msgid "" "Client applications may also use slightly different command line options to " "accomplish the same tasks. Following the instructions at <link xlink:href=" @@ -36934,14 +37147,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25036 +#: book.translate.xml:25141 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:25040 +#: book.translate.xml:25145 #, no-wrap msgid "" "kerberos5_server=\"/usr/local/sbin/krb5kdc\"\n" @@ -36952,19 +37165,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25048 +#: book.translate.xml:25153 msgid "<application>Kerberos</application> Tips, Tricks, and Troubleshooting" msgstr "<application>Kerberos</application> 提示、技巧與疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:25051 +#: book.translate.xml:25156 msgid "" "When configuring and troubleshooting <application>Kerberos</application>, " "keep the following points in mind:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25057 +#: book.translate.xml:25162 msgid "" "When using either Heimdal or <acronym>MIT</acronym> <application>Kerberos</" "application> from ports, ensure that the <envar>PATH</envar> lists the " @@ -36972,7 +37185,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25064 +#: book.translate.xml:25169 msgid "" "If all the computers in the realm do not have synchronized time settings, " "authentication may fail. <xref linkend=\"network-ntp\"/> describes how to " @@ -36980,7 +37193,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25071 +#: book.translate.xml:25176 msgid "" "If the hostname is changed, the <systemitem class=\"username\">host/</" "systemitem> principal must be changed and the keytab updated. This also " @@ -36990,7 +37203,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25078 +#: book.translate.xml:25183 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</" @@ -37001,7 +37214,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25089 +#: book.translate.xml:25194 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 " @@ -37011,7 +37224,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25098 +#: book.translate.xml:25203 msgid "" "With <acronym>MIT</acronym> <application>Kerberos</application>, to allow a " "principal to have a ticket life longer than the default lifetime of ten " @@ -37024,7 +37237,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25112 +#: book.translate.xml:25217 msgid "" "When running a packet sniffer on the <acronym>KDC</acronym> to aid in " "troubleshooting while running <command>kinit</command> from a workstation, " @@ -37046,7 +37259,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25139 +#: book.translate.xml:25244 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 " @@ -37055,7 +37268,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25147 +#: book.translate.xml:25252 msgid "" "When setting up <filename>krb5.dict</filename> to prevent specific bad " "passwords from being used as described in " @@ -37067,19 +37280,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25161 +#: book.translate.xml:25266 msgid "Mitigating <application>Kerberos</application> Limitations" msgstr "減輕 <application>Kerberos</application> 的限制" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25164 +#: book.translate.xml:25269 msgid "" "<primary>Kerberos5</primary> <secondary>limitations and shortcomings</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25169 +#: book.translate.xml:25274 msgid "" "Since <application>Kerberos</application> is an all or nothing approach, " "every service enabled on the network must either be modified to work with " @@ -37091,7 +37304,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25179 +#: book.translate.xml:25284 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. " @@ -37102,7 +37315,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25188 +#: book.translate.xml:25293 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 " @@ -37112,7 +37325,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25195 +#: book.translate.xml:25300 msgid "" "If the <acronym>KDC</acronym> is unavailable, network services are unusable " "as authentication cannot be performed. This can be alleviated with a single " @@ -37122,7 +37335,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25202 +#: book.translate.xml:25307 msgid "" "<application>Kerberos</application> allows users, hosts and services to " "authenticate between themselves. It does not have a mechanism to " @@ -37133,63 +37346,63 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25213 +#: book.translate.xml:25318 msgid "Resources and Further Information" msgstr "相關資源與延伸資訊" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25215 +#: book.translate.xml:25320 msgid "<primary>Kerberos5</primary> <secondary>external resources</secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25222 +#: book.translate.xml:25327 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:25228 +#: book.translate.xml:25333 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:25234 +#: book.translate.xml:25339 msgid "" -"<link xlink:href=\"http://www.ietf.org/rfc/rfc4120.txt?number=4120\">RFC " -"4120, The <application>Kerberos</application> Network Authentication Service " -"(V5)</link>" +"<link xlink:href=\"https://www.ietf.org/rfc/rfc4120.txt\">RFC 4120, The " +"<application>Kerberos</application> Network Authentication Service (V5)</" +"link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25240 +#: book.translate.xml:25345 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:25246 +#: book.translate.xml:25351 msgid "" -"<link xlink:href=\"http://www.pdc.kth.se/heimdal/\">Heimdal " -"<application>Kerberos</application> home page</link>" +"<link xlink:href=\"https://www.h5l.org/\">Heimdal <application>Kerberos</" +"application> home page</link>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25256 +#: book.translate.xml:25361 msgid "OpenSSL" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25264 +#: book.translate.xml:25369 msgid "<primary>security</primary> <secondary>OpenSSL</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25269 +#: book.translate.xml:25374 msgid "" "<application>OpenSSL</application> is an open source implementation of the " "<acronym>SSL</acronym> and <acronym>TLS</acronym> protocols. It provides an " @@ -37198,49 +37411,37 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25276 +#: book.translate.xml:25381 msgid "" "The version of <application>OpenSSL</application> included in FreeBSD " -"supports the Secure Sockets Layer v2/v3 (SSLv2/SSLv3) and Transport Layer " -"Security v1 (TLSv1) network security protocols and can be used as a general " -"cryptographic library." +"supports the Secure Sockets Layer 3.0 (SSLv3) and Transport Layer Security " +"1.0/1.1/1.2 (TLSv1/TLSv1.1/TLSv1.2) network security protocols and can be " +"used as a general cryptographic library. In FreeBSD 12.0-RELEASE and above, " +"OpenSSL also supports Transport Layer Security 1.3 (TLSv1.3)." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25282 +#: book.translate.xml:25389 msgid "" "<application>OpenSSL</application> is often used to encrypt authentication " "of mail clients and to secure web based transactions such as credit card " "payments. Some ports, such as <package>www/apache24</package> and " -"<package>databases/postgresql91-server</package>, include a compile option " -"for building with <application>OpenSSL</application>." -msgstr "" - -#. (itstool) path: sect1/para -#: book.translate.xml:25290 -msgid "" -"FreeBSD provides two versions of <application>OpenSSL</application>: one in " -"the base system and one in the Ports Collection. Users can choose which " -"version to use by default for other ports using the following knobs:" +"<package>databases/postgresql11-server</package>, include a compile option " +"for building with <application>OpenSSL</application>. If selected, the port " +"will add support using <application>OpenSSL</application> from the base " +"system. To instead have the port compile against <application>OpenSSL</" +"application> from the <package>security/openssl</package> port, add the " +"following to <filename>/etc/make.conf</filename>:" msgstr "" -#. (itstool) path: listitem/para -#: book.translate.xml:25297 -msgid "" -"WITH_OPENSSL_PORT: when set, the port will use <application>OpenSSL</" -"application> from the <package>security/openssl</package> port, even if the " -"version in the base system is up to date or newer." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:25304 -msgid "" -"WITH_OPENSSL_BASE: when set, the port will compile against " -"<application>OpenSSL</application> provided by the base system." +#. (itstool) path: sect1/programlisting +#: book.translate.xml:25402 +#, no-wrap +msgid "DEFAULT_VERSIONS+= ssl=openssl" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25310 +#: book.translate.xml:25404 msgid "" "Another common use of <application>OpenSSL</application> is to provide " "certificates for use with software applications. Certificates can be used to " @@ -37255,7 +37456,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25323 +#: book.translate.xml:25417 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 " @@ -37263,7 +37464,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25328 +#: book.translate.xml:25422 msgid "" "For more information about <acronym>SSL</acronym>, read the free <link xlink:" "href=\"https://www.feistyduck.com/books/openssl-cookbook/\">OpenSSL " @@ -37271,18 +37472,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25333 +#: book.translate.xml:25427 msgid "Generating Certificates" msgstr "產生憑証" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25335 +#: book.translate.xml:25429 msgid "" "<primary>OpenSSL</primary> <secondary>certificate generation</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25340 +#: book.translate.xml:25434 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 " @@ -37295,7 +37496,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25350 +#: book.translate.xml:25444 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -new -nodes -out req.pem -keyout cert.key -sha256 -newkey rsa:2048</userinput>\n" @@ -37326,7 +37527,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25376 +#: book.translate.xml:25470 msgid "" "Other options, such as the expire time and alternate encryption algorithms, " "are available when creating a certificate. A complete list of options is " @@ -37335,7 +37536,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25381 +#: book.translate.xml:25475 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</" @@ -37347,7 +37548,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25392 +#: book.translate.xml:25486 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</" @@ -37355,7 +37556,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25396 +#: book.translate.xml:25490 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl genrsa -rand -genkey -out cert.key 2048</userinput>\n" @@ -37367,14 +37568,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25403 +#: book.translate.xml:25497 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:25406 +#: book.translate.xml:25500 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -new -x509 -days 365 -key cert.key -out cert.crt -sha256</userinput>\n" @@ -37395,7 +37596,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25422 +#: book.translate.xml:25516 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." @@ -37406,12 +37607,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25433 +#: book.translate.xml:25527 msgid "Using Certificates" msgstr "使用憑證" #. (itstool) path: sect2/para -#: book.translate.xml:25435 +#: book.translate.xml:25529 msgid "" "One use for a certificate is to encrypt connections to the " "<application>Sendmail</application> mail server in order to prevent the use " @@ -37419,7 +37620,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:25440 +#: book.translate.xml:25534 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 " @@ -37427,7 +37628,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25446 +#: book.translate.xml:25540 msgid "" "In FreeBSD 10.0-RELEASE and above, it is possible to create a self-signed " "certificate for <application>Sendmail</application> automatically. To enable " @@ -37435,7 +37636,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25452 +#: book.translate.xml:25546 #, no-wrap msgid "" "sendmail_enable=\"YES\"\n" @@ -37444,7 +37645,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25456 +#: book.translate.xml:25550 msgid "" "This will automatically create a self-signed certificate, <filename>/etc/" "mail/certs/host.cert</filename>, a signing key, <filename>/etc/mail/certs/" @@ -37455,13 +37656,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25465 +#: book.translate.xml:25559 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sendmail restart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25467 +#: book.translate.xml:25561 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 " @@ -37469,7 +37670,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25472 +#: book.translate.xml:25566 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>telnet <replaceable>example.com</replaceable> 25</userinput>\n" @@ -37495,19 +37696,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25493 +#: book.translate.xml:25587 msgid "" "If the <literal>STARTTLS</literal> line appears in the output, everything is " "working correctly." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25500 +#: book.translate.xml:25594 msgid "<acronym>VPN</acronym> over <acronym>IPsec</acronym>" msgstr "" #. (itstool) path: affiliation/address -#: book.translate.xml:25510 +#: book.translate.xml:25604 #, no-wrap msgid "" "\n" @@ -37516,7 +37717,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25504 +#: book.translate.xml:25598 msgid "" "<personname> <firstname>Nik</firstname> <surname>Clayton</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -37524,7 +37725,7 @@ msgid "" msgstr "" #. (itstool) path: affiliation/address -#: book.translate.xml:25525 +#: book.translate.xml:25619 #, no-wrap msgid "" "\n" @@ -37533,7 +37734,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25519 +#: book.translate.xml:25613 msgid "" "<personname> <firstname>Hiten M.</firstname> <surname>Pandya</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -37541,12 +37742,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25534 +#: book.translate.xml:25628 msgid "<primary><acronym>IPsec</acronym></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25538 +#: book.translate.xml:25632 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 " @@ -37559,22 +37760,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25548 +#: book.translate.xml:25642 msgid "<primary><acronym>IPsec</acronym></primary> <secondary>ESP</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25553 +#: book.translate.xml:25647 msgid "<primary><acronym>IPsec</acronym></primary> <secondary>AH</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25558 +#: book.translate.xml:25652 msgid "<acronym>IPsec</acronym> is comprised of the following sub-protocols:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25563 +#: book.translate.xml:25657 msgid "" "<emphasis>Encapsulated Security Payload (<acronym>ESP</acronym>)</emphasis>: " "this protocol protects the <acronym>IP</acronym> packet data from third " @@ -37583,7 +37784,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25572 +#: book.translate.xml:25666 msgid "" "<emphasis>Authentication Header (<acronym>AH</acronym>)</emphasis>: this " "protocol protects the <acronym>IP</acronym> packet header from third party " @@ -37594,7 +37795,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25584 +#: book.translate.xml:25678 msgid "" "<emphasis>IP Payload Compression Protocol (<acronym>IPComp</acronym></" "emphasis>): this protocol tries to increase communication performance by " @@ -37603,24 +37804,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25592 +#: book.translate.xml:25686 msgid "" "These protocols can either be used together or separately, depending on the " "environment." msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25595 +#: book.translate.xml:25689 msgid "<primary><acronym>VPN</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25599 +#: book.translate.xml:25693 msgid "<primary>virtual private network</primary> <see>VPN</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25604 +#: book.translate.xml:25698 msgid "" "<acronym>IPsec</acronym> supports two modes of operation. The first mode, " "<firstterm>Transport Mode</firstterm>, protects communications between two " @@ -37632,7 +37833,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25613 +#: book.translate.xml:25707 msgid "" "<acronym>IPsec</acronym> support is enabled by default on FreeBSD 11 and " "later. For previous versions of FreeBSD, add these options to a custom " @@ -37644,12 +37845,12 @@ msgstr "" "\"kernelconfig\"/> 的指示來重新編譯核心:" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25618 +#: book.translate.xml:25712 msgid "<primary>kernel options</primary> <secondary>IPSEC</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPSEC</secondary>" #. (itstool) path: sect1/screen -#: book.translate.xml:25623 +#: book.translate.xml:25717 #, no-wrap msgid "" "options IPSEC #IP security\n" @@ -37657,25 +37858,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25626 +#: book.translate.xml:25720 msgid "<primary>kernel options</primary> <secondary>IPSEC_DEBUG</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPSEC_DEBUG</secondary>" #. (itstool) path: sect1/para -#: book.translate.xml:25631 +#: book.translate.xml:25725 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:25634 +#: book.translate.xml:25728 #, no-wrap msgid "options IPSEC_DEBUG #debug for IP security" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25636 +#: book.translate.xml:25730 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 " @@ -37683,14 +37884,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25643 +#: book.translate.xml:25737 msgid "" "Both sites are connected to the Internet through a gateway that is running " "FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25648 +#: book.translate.xml:25742 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 " @@ -37701,7 +37902,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25657 +#: book.translate.xml:25751 msgid "" "The internal addresses of the two networks can be either public or private " "<acronym>IP</acronym> addresses. However, the address space must not " @@ -37714,12 +37915,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25670 +#: book.translate.xml:25764 msgid "Configuring a <acronym>VPN</acronym> on FreeBSD" msgstr "在 FreeBSD 上設定 <acronym>VPN</acronym>" #. (itstool) path: affiliation/address -#: book.translate.xml:25679 +#: book.translate.xml:25773 #, no-wrap msgid "" "\n" @@ -37728,7 +37929,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25673 +#: book.translate.xml:25767 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -37736,7 +37937,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25688 +#: book.translate.xml:25782 msgid "" "To begin, <package>security/ipsec-tools</package> must be installed from the " "Ports Collection. This software provides a number of applications which " @@ -37744,7 +37945,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25692 +#: book.translate.xml:25786 msgid "" "The next requirement is to create two <citerefentry><refentrytitle>gif</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> pseudo-devices which " @@ -37756,7 +37957,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25700 +#: book.translate.xml:25794 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig gif0 create</userinput>\n" @@ -37765,14 +37966,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25704 +#: book.translate.xml:25798 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:25708 +#: book.translate.xml:25802 #, no-wrap msgid "" "gif0: flags=8051 mtu 1280\n" @@ -37782,12 +37983,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25713 +#: book.translate.xml:25807 msgid "Here is the output from Gateway 2:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25715 +#: book.translate.xml:25809 #, no-wrap msgid "" "gif0: flags=8051 mtu 1280\n" @@ -37797,7 +37998,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25720 +#: book.translate.xml:25814 msgid "" "Once complete, both internal <acronym>IP</acronym> addresses should be " "reachable using <citerefentry><refentrytitle>ping</" @@ -37805,7 +38006,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25723 +#: book.translate.xml:25817 #, no-wrap msgid "" "priv-net# ping 10.0.0.5\n" @@ -37831,7 +38032,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25744 +#: book.translate.xml:25838 msgid "" "As expected, both sides have the ability to send and receive <acronym>ICMP</" "acronym> packets from the privately configured addresses. Next, both " @@ -37840,7 +38041,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25751 +#: book.translate.xml:25845 #, no-wrap msgid "" "corp-net<prompt>#</prompt> <userinput>route add <replaceable>10.0.0.0 10.0.0.5 255.255.255.0</replaceable></userinput>\n" @@ -37850,7 +38051,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25756 +#: book.translate.xml:25850 msgid "" "At this point, internal machines should be reachable from each gateway as " "well as from machines behind the gateways. Again, use " @@ -37859,7 +38060,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25760 +#: book.translate.xml:25854 #, no-wrap msgid "" "corp-net# ping 10.0.0.8\n" @@ -37886,7 +38087,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25782 +#: book.translate.xml:25876 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</" @@ -37896,7 +38097,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25790 +#: book.translate.xml:25884 #, no-wrap msgid "" "path pre_shared_key \"/usr/local/etc/racoon/psk.txt\"; #location of pre-shared key file\n" @@ -37959,14 +38160,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25848 +#: book.translate.xml:25942 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:25851 +#: book.translate.xml:25945 msgid "" "The Security Policy Database (<acronym>SPD</acronym>) needs to be configured " "so that FreeBSD and <application>racoon</application> are able to encrypt " @@ -37974,7 +38175,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25856 +#: book.translate.xml:25950 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 " @@ -37982,7 +38183,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25861 +#: book.translate.xml:25955 #, no-wrap msgid "" "flush;\n" @@ -37993,25 +38194,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25867 +#: book.translate.xml:25961 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:25870 +#: book.translate.xml:25964 #, 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:25872 +#: book.translate.xml:25966 msgid "The output should be similar to the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25874 +#: book.translate.xml:25968 #, no-wrap msgid "" "corp-net# /usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf\n" @@ -38029,7 +38230,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25887 +#: book.translate.xml:25981 msgid "" "To ensure the tunnel is working properly, switch to another console and use " "<citerefentry><refentrytitle>tcpdump</refentrytitle><manvolnum>1</" @@ -38039,20 +38240,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25893 +#: book.translate.xml:25987 #, 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:25895 +#: book.translate.xml:25989 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:25899 +#: book.translate.xml:25993 #, no-wrap msgid "" "01:47:32.021683 IP corporatenetwork.com > 192.168.1.12.privatenetwork.com: ESP(spi=0x02acbf9f,seq=0xa)\n" @@ -38061,7 +38262,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25903 +#: book.translate.xml:25997 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 " @@ -38072,7 +38273,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25910 +#: book.translate.xml:26004 #, no-wrap msgid "" "ipfw add 00201 allow log esp from any to any\n" @@ -38082,14 +38283,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:25916 +#: book.translate.xml:26010 msgid "" "The rule numbers may need to be altered depending on the current host " "configuration." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25920 +#: book.translate.xml:26014 msgid "" "For users of <citerefentry><refentrytitle>pf</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> or <citerefentry><refentrytitle>ipf</" @@ -38098,7 +38299,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25923 +#: book.translate.xml:26017 #, no-wrap msgid "" "pass in quick proto esp from any to any\n" @@ -38114,7 +38315,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25934 +#: book.translate.xml:26028 msgid "" "Finally, to allow the machine to start support for the <acronym>VPN</" "acronym> during system initialization, add the following lines to <filename>/" @@ -38122,7 +38323,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25938 +#: book.translate.xml:26032 #, no-wrap msgid "" "ipsec_enable=\"YES\"\n" @@ -38132,29 +38333,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25947 +#: book.translate.xml:26041 msgid "OpenSSH" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25950 +#: book.translate.xml:26044 msgid "" "<personname><firstname>Chern</firstname><surname>Lee</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25956 +#: book.translate.xml:26050 msgid "<primary>OpenSSH</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25957 +#: book.translate.xml:26051 msgid "<primary>security</primary> <secondary>OpenSSH</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25962 +#: book.translate.xml:26056 msgid "" "<application>OpenSSH</application> is a set of network connectivity tools " "used to provide secure access to remote machines. Additionally, <acronym>TCP/" @@ -38170,7 +38371,7 @@ msgstr "" "線劫持 (Connection hijacking) 與其他網路層的攻擊。" #. (itstool) path: sect1/para -#: book.translate.xml:25971 +#: book.translate.xml:26065 msgid "" "<application>OpenSSH</application> is maintained by the OpenBSD project and " "is installed by default in FreeBSD. It is compatible with both <acronym>SSH</" @@ -38180,7 +38381,7 @@ msgstr "" "裝,它可同時相容 <acronym>SSH</acronym> 版本 1 與 2 通訊協定。" #. (itstool) path: sect1/para -#: book.translate.xml:25976 +#: book.translate.xml:26070 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 " @@ -38197,7 +38398,7 @@ msgstr "" "\"http://www.openssh.com/\">http://www.openssh.com/</link> 取得。" #. (itstool) path: sect1/para -#: book.translate.xml:25984 +#: book.translate.xml:26078 msgid "" "This section provides an overview of the built-in client utilities to " "securely access other systems and securely transfer files from a FreeBSD " @@ -38210,17 +38411,17 @@ msgstr "" "服器。更多的資訊可於本章節所提及的操作手冊 (Man page) 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:25992 +#: book.translate.xml:26086 msgid "Using the SSH Client Utilities" msgstr "使用 SSH 客戶端工具" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25994 +#: book.translate.xml:26088 msgid "<primary>OpenSSH</primary> <secondary>client</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25999 +#: book.translate.xml:26093 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> " @@ -38233,7 +38434,7 @@ msgstr "" "稱。若這是第一次連線到指定的伺服器,會提示該使用者伺服器的指紋做第一次檢驗:" #. (itstool) path: sect2/screen -#: book.translate.xml:26006 +#: book.translate.xml:26100 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ssh <replaceable>user@example.com</replaceable></userinput>\n" @@ -38245,7 +38446,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26013 +#: book.translate.xml:26107 msgid "" "<acronym>SSH</acronym> utilizes a key fingerprint system to verify the " "authenticity of the server when the client connects. When the user accepts " @@ -38265,7 +38466,7 @@ msgstr "" "前檢查金鑰變動的原因。" #. (itstool) path: sect2/para -#: book.translate.xml:26025 +#: book.translate.xml:26119 msgid "" "By default, recent versions of <application>OpenSSH</application> only " "accept <acronym>SSH</acronym>v2 connections. By default, the client will use " @@ -38283,19 +38484,19 @@ msgstr "" "manvolnum></citerefentry> 中有說明。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26034 +#: book.translate.xml:26128 msgid "<primary>OpenSSH</primary> <secondary>secure copy</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26038 +#: book.translate.xml:26132 msgid "" "<primary><citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26042 +#: book.translate.xml:26136 msgid "" "Use <citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to securely copy a file to or from a remote " @@ -38308,7 +38509,7 @@ msgstr "" "端主機的 <filename>COPYRIGHT</filename> 到本地主機的目前目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:26048 +#: book.translate.xml:26142 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scp <replaceable>user@example.com:/COPYRIGHT COPYRIGHT</replaceable></userinput>\n" @@ -38319,7 +38520,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26054 +#: book.translate.xml:26148 msgid "" "Since the fingerprint was already verified for this host, the server's key " "is automatically checked before prompting for the user's password." @@ -38327,7 +38528,7 @@ msgstr "" "由於這個主機的指紋已驗證過,在提示用者輸入密碼之前伺服器的金鑰已自動檢查。" #. (itstool) path: sect2/para -#: book.translate.xml:26058 +#: book.translate.xml:26152 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 " @@ -38344,7 +38545,7 @@ msgstr "" "<command>cp</command> 使用 <option>-R</option>。" #. (itstool) path: sect2/para -#: book.translate.xml:26068 +#: book.translate.xml:26162 msgid "" "To open an interactive session for copying files, use <command>sftp</" "command>. Refer to <citerefentry><refentrytitle>sftp</" @@ -38356,12 +38557,12 @@ msgstr "" "citerefentry> 來取得在 <command>sftp</command> 連線時可用的指令清單。" #. (itstool) path: sect3/title -#: book.translate.xml:26074 +#: book.translate.xml:26168 msgid "Key-based Authentication" msgstr "以金鑰為基礎的認證" #. (itstool) path: sect3/para -#: book.translate.xml:26076 +#: book.translate.xml:26170 msgid "" "Instead of using passwords, a client can be configured to connect to the " "remote machine using keys. To generate <acronym>RSA</acronym> authentication " @@ -38375,7 +38576,7 @@ msgstr "" "碼來保護這個金鑰。" #. (itstool) path: sect3/screen -#: book.translate.xml:26085 +#: book.translate.xml:26179 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh-keygen -t rsa</userinput>\n" @@ -38402,17 +38603,17 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:26109 +#: book.translate.xml:26203 msgid "Type a passphrase here. It can contain spaces and symbols." msgstr "在此輸入密碼,密碼不可含有空白或符號。" #. (itstool) path: callout/para -#: book.translate.xml:26114 +#: book.translate.xml:26208 msgid "Retype the passphrase to verify it." msgstr "再輸入一次密碼驗證。" #. (itstool) path: sect3/para -#: book.translate.xml:26119 +#: book.translate.xml:26213 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 " @@ -38425,7 +38626,7 @@ msgstr "" "<filename>~/.ssh/authorized_keys</filename> 來讓以金鑰為基礎的認証可以運作。" #. (itstool) path: warning/para -#: book.translate.xml:26130 +#: book.translate.xml:26224 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 " @@ -38446,7 +38647,7 @@ msgstr "" "入。" #. (itstool) path: sect3/para -#: book.translate.xml:26146 +#: book.translate.xml:26240 msgid "" "The options and files vary with different versions of <application>OpenSSH</" "application>. To avoid problems, consult <citerefentry><refentrytitle>ssh-" @@ -38457,7 +38658,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: sect3/para -#: book.translate.xml:26150 +#: book.translate.xml:26244 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 " @@ -38473,7 +38674,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: sect3/para -#: book.translate.xml:26156 +#: book.translate.xml:26250 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 " @@ -38483,7 +38684,7 @@ msgstr "" "agent</command> 可用在執行其他應用程式,如 Shell 或視窗管理程式。" #. (itstool) path: sect3/para -#: book.translate.xml:26162 +#: book.translate.xml:26256 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 " @@ -38497,7 +38698,7 @@ msgstr "" "應公鑰的主機,例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:26170 +#: book.translate.xml:26264 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh-agent <replaceable>csh</replaceable></userinput>\n" @@ -38508,12 +38709,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:26178 +#: book.translate.xml:26272 msgid "Enter the passphrase for the key." msgstr "輸入金鑰的密碼。" #. (itstool) path: sect3/para -#: book.translate.xml:26182 +#: book.translate.xml:26276 msgid "" "To use <command>ssh-agent</command> in <application>Xorg</application>, add " "an entry for it in <filename>~/.xinitrc</filename>. This provides the " @@ -38527,13 +38728,13 @@ msgstr "" "<filename>~/.xinitrc</filename> 範例如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:26189 +#: book.translate.xml:26283 #, no-wrap msgid "exec ssh-agent <replaceable>startxfce4</replaceable>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26191 +#: book.translate.xml:26285 msgid "" "This launches <command>ssh-agent</command>, which in turn launches " "<application>XFCE</application>, every time <application>Xorg</application> " @@ -38547,17 +38748,17 @@ msgstr "" "<command>ssh-add</command> 來載入所有的 <acronym>SSH</acronym> 金鑰。" #. (itstool) path: sect3/title -#: book.translate.xml:26200 +#: book.translate.xml:26294 msgid "<acronym>SSH</acronym> Tunneling" msgstr "<acronym>SSH</acronym> 通道" #. (itstool) path: sect3/indexterm -#: book.translate.xml:26202 +#: book.translate.xml:26296 msgid "<primary>OpenSSH</primary> <secondary>tunneling</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26207 +#: book.translate.xml:26301 msgid "" "<application>OpenSSH</application> has the ability to create a tunnel to " "encapsulate another protocol in an encrypted session." @@ -38566,7 +38767,7 @@ msgstr "" "定到一個加密的連線。" #. (itstool) path: sect3/para -#: book.translate.xml:26211 +#: book.translate.xml:26305 msgid "" "The following command tells <command>ssh</command> to create a tunnel for " "<application>telnet</application>:" @@ -38575,7 +38776,7 @@ msgstr "" "application> 使用的通道:" #. (itstool) path: sect3/screen -#: book.translate.xml:26215 +#: book.translate.xml:26309 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>5023:localhost:23 user@foo.example.com</replaceable></userinput>\n" @@ -38583,28 +38784,28 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26218 +#: book.translate.xml:26312 msgid "This example uses the following options:" msgstr "這個例子使用了以下選項:" #. (itstool) path: varlistentry/term -#: book.translate.xml:26222 +#: book.translate.xml:26316 msgid "<option>-2</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26225 +#: book.translate.xml:26319 msgid "" "Forces <command>ssh</command> to use version 2 to connect to the server." msgstr "強制 <command>ssh</command> 使用版本 2 的通訊協定連線到伺服器。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26231 +#: book.translate.xml:26325 msgid "<option>-N</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26234 +#: book.translate.xml:26328 msgid "" "Indicates no command, or tunnel only. If omitted, <command>ssh</command> " "initiates a normal session." @@ -38613,17 +38814,17 @@ msgstr "" "個正常的連線。" #. (itstool) path: listitem/para -#: book.translate.xml:26244 +#: book.translate.xml:26338 msgid "Forces <command>ssh</command> to run in the background." msgstr "強制 <command>ssh</command> 在背景執行。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26250 +#: book.translate.xml:26344 msgid "<option>-L</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26253 +#: book.translate.xml:26347 msgid "" "Indicates a local tunnel in <replaceable>localport:remotehost:remoteport</" "replaceable> format." @@ -38632,18 +38833,18 @@ msgstr "" "replaceable> 格式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26260 +#: book.translate.xml:26354 msgid "<option>user@foo.example.com</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26263 +#: book.translate.xml:26357 msgid "" "The login name to use on the specified remote <acronym>SSH</acronym> server." msgstr "在指定的遠端 <acronym>SSH</acronym> 伺服器要使用的登入名稱。" #. (itstool) path: sect3/para -#: book.translate.xml:26269 +#: book.translate.xml:26363 msgid "" "An <acronym>SSH</acronym> tunnel works by creating a listen socket on " "<systemitem>localhost</systemitem> on the specified <literal>localport</" @@ -38665,7 +38866,7 @@ msgstr "" "application> 連線。" #. (itstool) path: sect3/para -#: book.translate.xml:26281 +#: book.translate.xml:26375 msgid "" "This method can be used to wrap any number of insecure <acronym>TCP</" "acronym> protocols such as <acronym>SMTP</acronym>, <acronym>POP3</acronym>, " @@ -38676,12 +38877,12 @@ msgstr "" "acronym>,如下例所示。" #. (itstool) path: example/title -#: book.translate.xml:26288 +#: book.translate.xml:26382 msgid "Create a Secure Tunnel for <acronym>SMTP</acronym>" msgstr "建立供 <acronym>SMTP</acronym> 使用的安全通道" #. (itstool) path: example/screen -#: book.translate.xml:26291 +#: book.translate.xml:26385 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>5025:localhost:25 user@mailserver.example.com</replaceable></userinput>\n" @@ -38694,7 +38895,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26299 +#: book.translate.xml:26393 msgid "" "This can be used in conjunction with <command>ssh-keygen</command> and " "additional user accounts to create a more seamless <acronym>SSH</acronym> " @@ -38706,12 +38907,12 @@ msgstr "" "便可以另一個使用者執行。" #. (itstool) path: example/title -#: book.translate.xml:26308 +#: book.translate.xml:26402 msgid "Secure Access of a <acronym>POP3</acronym> Server" msgstr "安全存取 <acronym>POP3</acronym> 伺服器" #. (itstool) path: example/para -#: book.translate.xml:26311 +#: book.translate.xml:26405 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 " @@ -38725,7 +38926,7 @@ msgstr "" "acronym> 伺服器然後透過通道連線到郵件伺服器:" #. (itstool) path: example/screen -#: book.translate.xml:26319 +#: book.translate.xml:26413 #, 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" @@ -38733,7 +38934,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26322 +#: book.translate.xml:26416 msgid "" "Once the tunnel is up and running, point the email client to send " "<acronym>POP3</acronym> requests to <systemitem>localhost</systemitem> on " @@ -38745,12 +38946,12 @@ msgstr "" "轉送到 <systemitem>mail.example.com</systemitem>。" #. (itstool) path: example/title -#: book.translate.xml:26330 +#: book.translate.xml:26424 msgid "Bypassing a Firewall" msgstr "跳過防火牆" #. (itstool) path: example/para -#: book.translate.xml:26332 +#: book.translate.xml:26426 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 " @@ -38762,7 +38963,7 @@ msgstr "" "得 Port 使用 22 或 80 以外的服務無法存取。" #. (itstool) path: example/para -#: book.translate.xml:26340 +#: book.translate.xml:26434 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 " @@ -38772,7 +38973,7 @@ msgstr "" "然後使用該連線的通道連到想要使用的服務:" #. (itstool) path: example/screen -#: book.translate.xml:26344 +#: book.translate.xml:26438 #, 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" @@ -38780,7 +38981,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26347 +#: book.translate.xml:26441 msgid "" "In this example, a streaming Ogg Vorbis client can now be pointed to " "<systemitem>localhost</systemitem> port 8888, which will be forwarded over " @@ -38792,17 +38993,17 @@ msgstr "" "systemitem> 於 Port 8000,成功的跳過防火牆。" #. (itstool) path: sect2/title -#: book.translate.xml:26357 +#: book.translate.xml:26451 msgid "Enabling the SSH Server" msgstr "開啟 SSH 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26359 +#: book.translate.xml:26453 msgid "<primary>OpenSSH</primary> <secondary>enabling</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26364 +#: book.translate.xml:26458 msgid "" "In addition to providing built-in <acronym>SSH</acronym> client utilities, a " "FreeBSD system can be configured as an <acronym>SSH</acronym> server, " @@ -38813,7 +39014,7 @@ msgstr "" "戶端的連線。" #. (itstool) path: sect2/para -#: book.translate.xml:26369 +#: book.translate.xml:26463 msgid "" "To see if <application>sshd</application> is operating, use the " "<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" @@ -38824,26 +39025,26 @@ msgstr "" "manvolnum></citerefentry> 指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:26372 +#: book.translate.xml:26466 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd status</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26374 +#: book.translate.xml:26468 msgid "" "If the service is not running, add the following line to <filename>/etc/rc." "conf</filename>." msgstr "若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26377 +#: book.translate.xml:26471 #, no-wrap msgid "sshd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26379 +#: book.translate.xml:26473 msgid "" "This will start <application>sshd</application>, the daemon program for " "<application>OpenSSH</application>, the next time the system boots. To start " @@ -38853,13 +39054,13 @@ msgstr "" "<application>sshd</application>。若要立即啟動:" #. (itstool) path: sect2/screen -#: book.translate.xml:26383 +#: book.translate.xml:26477 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26385 +#: book.translate.xml:26479 msgid "" "The first time <application>sshd</application> starts on a FreeBSD system, " "the system's host keys will be automatically created and the fingerprint " @@ -38871,7 +39072,7 @@ msgstr "" "時驗證用。" #. (itstool) path: sect2/para -#: book.translate.xml:26391 +#: book.translate.xml:26485 msgid "" "Refer to <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for the list of available options when starting " @@ -38883,7 +39084,7 @@ msgstr "" "選項的清單以及更多完整有關認証、登入程序與各種設定檔的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:26396 +#: book.translate.xml:26490 msgid "" "At this point, the <application>sshd</application> should be available to " "all users with a username and password on the system." @@ -38892,12 +39093,12 @@ msgstr "" "使用者使用。" #. (itstool) path: sect2/title -#: book.translate.xml:26402 +#: book.translate.xml:26496 msgid "SSH Server Security" msgstr "SSH 伺服器安全性" #. (itstool) path: sect2/para -#: book.translate.xml:26404 +#: book.translate.xml:26498 msgid "" "While <application>sshd</application> is the most widely used remote " "administration facility for FreeBSD, brute force and drive by attacks are " @@ -38910,7 +39111,7 @@ msgstr "" "過攻擊 (Drive by attack)。在本節會介紹一些可用來避免這些攻擊的參數。" #. (itstool) path: sect2/para -#: book.translate.xml:26411 +#: book.translate.xml:26505 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> " @@ -38927,13 +39128,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26419 +#: book.translate.xml:26513 #, no-wrap msgid "AllowUsers root@192.168.1.32" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26421 +#: book.translate.xml:26515 msgid "" "To allow <systemitem class=\"username\">admin</systemitem> to log in from " "anywhere, list that user without specifying an <acronym>IP</acronym> address:" @@ -38942,40 +39143,39 @@ msgstr "" "可只列出使用者名稱,不指定 <acronym>IP</acronym> 位址:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26425 +#: book.translate.xml:26519 #, no-wrap msgid "AllowUsers admin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26427 +#: book.translate.xml:26521 msgid "Multiple users should be listed on the same line, like so:" msgstr "有多位使用者也應列在同一行,例如:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26430 +#: book.translate.xml:26524 #, no-wrap msgid "AllowUsers root@192.168.1.32 admin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26432 +#: book.translate.xml:26526 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" -" " +"<application>sshd</application> 重新載入設定檔:" #. (itstool) path: sect2/screen -#: book.translate.xml:26437 +#: book.translate.xml:26531 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd reload</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:26440 +#: book.translate.xml:26534 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 " @@ -38995,7 +39195,7 @@ msgstr "" "manvolnum></citerefentry> 來檢查拼寫以及可用的關鍵字。" #. (itstool) path: sect2/para -#: book.translate.xml:26452 +#: book.translate.xml:26546 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 " @@ -39014,13 +39214,13 @@ msgstr "" "者只能使用這個金鑰,可能需要設定以下選項:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26461 +#: book.translate.xml:26555 #, no-wrap msgid "AuthenticationMethods publickey" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:26464 +#: book.translate.xml:26558 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 " @@ -39036,25 +39236,25 @@ msgstr "" "manvolnum></citerefentry> 來取得可用的客戶端設定清單。" #. (itstool) path: info/title -#: book.translate.xml:26476 +#: book.translate.xml:26570 msgid "Access Control Lists" msgstr "存取控制清單" #. (itstool) path: authorgroup/author -#: book.translate.xml:26479 book.translate.xml:26624 book.translate.xml:26700 -#: book.translate.xml:27020 book.translate.xml:27085 book.translate.xml:27439 +#: book.translate.xml:26573 book.translate.xml:26718 book.translate.xml:26794 +#: book.translate.xml:27114 book.translate.xml:27189 book.translate.xml:27543 msgid "" "<personname><firstname>Tom</firstname><surname>Rhodes</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26484 +#: book.translate.xml:26578 msgid "<primary>ACL</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26488 +#: book.translate.xml:26582 msgid "" "Access Control Lists (<acronym>ACL</acronym>s) extend the standard " "<trademark class=\"registered\">UNIX</trademark> permission model in a " @@ -39064,7 +39264,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26493 +#: book.translate.xml:26587 msgid "" "The FreeBSD <filename>GENERIC</filename> kernel provides <acronym>ACL</" "acronym> support for <acronym>UFS</acronym> file systems. Users who prefer " @@ -39073,13 +39273,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:26499 +#: book.translate.xml:26593 #, no-wrap msgid "options UFS_ACL" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26501 +#: book.translate.xml:26595 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. " @@ -39088,19 +39288,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26507 +#: book.translate.xml:26601 msgid "" "This chapter describes how to enable <acronym>ACL</acronym> support and " "provides some usage examples." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26512 +#: book.translate.xml:26606 msgid "Enabling <acronym>ACL</acronym> Support" msgstr "開啟 <acronym>ACL</acronym> 支援" #. (itstool) path: sect2/para -#: book.translate.xml:26514 +#: book.translate.xml:26608 msgid "" "<acronym>ACL</acronym>s are enabled by the mount-time administrative flag, " "<option>acls</option>, which may be added to <filename>/etc/fstab</" @@ -39112,7 +39312,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26524 +#: book.translate.xml:26618 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 " @@ -39123,7 +39323,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26535 +#: book.translate.xml:26629 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</" @@ -39132,7 +39332,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:26545 +#: book.translate.xml:26639 msgid "" "It is desirable to discourage accidental mounting without <acronym>ACL</" "acronym>s enabled because nasty things can happen if <acronym>ACL</acronym>s " @@ -39146,14 +39346,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26559 +#: book.translate.xml:26653 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:26563 +#: book.translate.xml:26657 #, no-wrap msgid "" "drwx------ 2 robert robert 512 Dec 27 11:54 private\n" @@ -39164,7 +39364,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26569 +#: book.translate.xml:26663 msgid "" "In this example, <filename>directory1</filename>, <filename>directory2</" "filename>, and <filename>directory3</filename> are all taking advantage of " @@ -39172,12 +39372,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26577 +#: book.translate.xml:26671 msgid "Using <acronym>ACL</acronym>s" msgstr "使用 <acronym>ACL</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:26579 +#: book.translate.xml:26673 msgid "" "File system <acronym>ACL</acronym>s can be viewed using <command>getfacl</" "command>. For instance, to view the <acronym>ACL</acronym> settings on " @@ -39185,7 +39385,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26584 +#: book.translate.xml:26678 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>getfacl test</userinput>\n" @@ -39198,7 +39398,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26592 +#: book.translate.xml:26686 msgid "" "To change the <acronym>ACL</acronym> settings on this file, use " "<command>setfacl</command>. To remove all of the currently defined " @@ -39208,26 +39408,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26599 +#: book.translate.xml:26693 #, no-wrap msgid "<prompt>%</prompt> <userinput>setfacl -k test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26601 +#: book.translate.xml:26695 msgid "" "To modify the default <acronym>ACL</acronym> entries, use <option>-m</" "option>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26604 +#: book.translate.xml:26698 #, 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:26606 +#: book.translate.xml:26700 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 " @@ -39236,7 +39436,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26613 +#: book.translate.xml:26707 msgid "" "Refer to <citerefentry><refentrytitle>getfacl</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>setfacl</" @@ -39245,17 +39445,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:26621 +#: book.translate.xml:26715 msgid "Monitoring Third Party Security Issues" msgstr "監視第三方安全性問題" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26629 +#: book.translate.xml:26723 msgid "<primary>pkg</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26633 +#: book.translate.xml:26727 msgid "" "In recent years, the security world has made many improvements to how " "vulnerability assessment is handled. The threat of system intrusion " @@ -39264,7 +39464,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26639 +#: book.translate.xml:26733 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 " @@ -39275,7 +39475,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26648 +#: book.translate.xml:26742 msgid "" "<application>pkg</application> polls a database for security issues. The " "database is updated and maintained by the FreeBSD Security Team and ports " @@ -39283,7 +39483,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26652 +#: book.translate.xml:26746 msgid "" "Please refer to <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/" "books/handbook/pkgng-intro.html\">instructions</link> for installing " @@ -39291,7 +39491,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26656 +#: book.translate.xml:26750 msgid "" "Installation provides <citerefentry><refentrytitle>periodic</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> configuration files " @@ -39305,7 +39505,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26666 +#: book.translate.xml:26760 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 " @@ -39313,14 +39513,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26673 +#: book.translate.xml:26767 msgid "" "<application>pkg</application> displays messages any published " "vulnerabilities in installed packages:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:26676 +#: book.translate.xml:26770 #, no-wrap msgid "" "Affected package: cups-base-1.1.22.0_1\n" @@ -39333,7 +39533,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26684 +#: book.translate.xml:26778 msgid "" "By pointing a web browser to the displayed <acronym>URL</acronym>, an " "administrator may obtain more information about the vulnerability. This will " @@ -39342,24 +39542,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26690 +#: book.translate.xml:26784 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:26697 +#: book.translate.xml:26791 msgid "FreeBSD Security Advisories" msgstr "FreeBSD 安全報告" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26705 +#: book.translate.xml:26799 msgid "<primary>FreeBSD Security Advisories</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26709 +#: book.translate.xml:26803 msgid "" "Like many producers of quality operating systems, the FreeBSD Project has a " "security team which is responsible for determining the End-of-Life " @@ -39371,7 +39571,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26719 +#: book.translate.xml:26813 msgid "" "One task of the security team is to respond to reported security " "vulnerabilities in the FreeBSD operating system. Once a vulnerability is " @@ -39388,22 +39588,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26730 +#: book.translate.xml:26824 msgid "This section describes the format of a FreeBSD security advisory." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26734 +#: book.translate.xml:26828 msgid "Format of a Security Advisory" msgstr "安全報告的格式" #. (itstool) path: sect2/para -#: book.translate.xml:26736 +#: book.translate.xml:26830 msgid "Here is an example of a FreeBSD security advisory:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26738 +#: book.translate.xml:26832 #, no-wrap msgid "" "=============================================================================\n" @@ -39550,12 +39750,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26880 +#: book.translate.xml:26974 msgid "Every security advisory uses the following format:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26884 +#: book.translate.xml:26978 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 " @@ -39563,7 +39763,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26891 +#: book.translate.xml:26985 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 " @@ -39575,12 +39775,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26903 +#: book.translate.xml:26997 msgid "The <literal>Topic</literal> field summarizes the vulnerability." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26908 +#: book.translate.xml:27002 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 " @@ -39593,7 +39793,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26923 +#: book.translate.xml:27017 msgid "" "The <literal>Module</literal> field refers to the component location. In " "this example, the <literal>bind</literal> module is affected; therefore, " @@ -39602,7 +39802,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26931 +#: book.translate.xml:27025 msgid "" "The <literal>Announced</literal> field reflects the date the security " "advisory was published. This means that the security team has verified that " @@ -39611,21 +39811,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26939 +#: book.translate.xml:27033 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:26945 +#: book.translate.xml:27039 msgid "" "The <literal>Affects</literal> field explains which releases of FreeBSD are " "affected by this vulnerability." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26951 +#: book.translate.xml:27045 msgid "" "The <literal>Corrected</literal> field indicates the date, time, time " "offset, and releases that were corrected. The section in parentheses shows " @@ -39638,7 +39838,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26965 +#: book.translate.xml:27059 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." @@ -39646,14 +39846,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26971 +#: book.translate.xml:27065 msgid "" "The <literal>Background</literal> field provides a description of the " "affected module." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26976 +#: book.translate.xml:27070 msgid "" "The <literal>Problem Description</literal> field explains the vulnerability. " "This can include information about the flawed code and how the utility could " @@ -39661,21 +39861,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26983 +#: book.translate.xml:27077 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:26988 +#: book.translate.xml:27082 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:26994 +#: book.translate.xml:27088 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 " @@ -39683,31 +39883,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27001 +#: book.translate.xml:27095 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:27007 +#: book.translate.xml:27101 msgid "" "The <literal>References</literal> field offers sources of additional " "information regarding the vulnerability." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27017 +#: book.translate.xml:27111 msgid "Process Accounting" msgstr "程序追蹤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27025 +#: book.translate.xml:27119 msgid "<primary>Process Accounting</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27029 +#: book.translate.xml:27123 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 " @@ -39715,7 +39915,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27034 +#: book.translate.xml:27128 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 " @@ -39725,36 +39925,50 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:27042 +#: book.translate.xml:27136 msgid "" "If more fine-grained accounting is needed, refer to <xref linkend=\"audit\"/" ">." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27047 +#: book.translate.xml:27141 msgid "Enabling and Utilizing Process Accounting" msgstr "開啟並使用程序追蹤" #. (itstool) path: sect2/para -#: book.translate.xml:27049 +#: book.translate.xml:27143 msgid "" "Before using process accounting, it must be enabled using the following " "commands:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27052 +#: book.translate.xml:27146 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>touch /var/account/acct</userinput>\n" -"<prompt>#</prompt> <userinput>chmod 600 /var/account/acct</userinput>\n" -"<prompt>#</prompt> <userinput>accton /var/account/acct</userinput>\n" -"<prompt>#</prompt> <userinput>sysrc accounting_enable=yes</userinput>" +"<prompt>#</prompt> <userinput>sysrc accounting_enable=yes</userinput>\n" +"<prompt>#</prompt> <userinput>service accounting start</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:27149 +msgid "" +"The accounting information is stored in files located in <filename>/var/" +"account</filename>, which is automatically created, if necessary, the first " +"time the accounting service starts. These files contain sensitive " +"information, including all the commands issued by all users. Write access to " +"the files is limited to <systemitem class=\"username\">root</systemitem>, " +"and read access is limited to <systemitem class=\"username\">root</" +"systemitem> and members of the <systemitem class=\"groupname\">wheel</" +"systemitem> group. To also prevent members of <systemitem class=\"groupname" +"\">wheel</systemitem> from reading the files, change the mode of the " +"<filename>/var/account</filename> directory to allow access only by " +"<systemitem class=\"username\">root</systemitem>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27057 +#: book.translate.xml:27161 msgid "" "Once enabled, accounting will begin to track information such as " "<acronym>CPU</acronym> statistics and executed commands. All accounting logs " @@ -39768,7 +39982,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27068 +#: book.translate.xml:27172 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 " @@ -39777,13 +39991,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27073 +#: book.translate.xml:27177 #, no-wrap msgid "<prompt>#</prompt> <userinput>lastcomm ls trhodes ttyp1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27075 +#: book.translate.xml:27179 msgid "" "Many other useful options exist and are explained in " "<citerefentry><refentrytitle>lastcomm</refentrytitle><manvolnum>1</" @@ -39794,17 +40008,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27082 +#: book.translate.xml:27186 msgid "Resource Limits" msgstr "限制資源" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27090 +#: book.translate.xml:27194 msgid "<primary>Resource limits</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27094 +#: book.translate.xml:27198 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 " @@ -39812,22 +40026,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27099 +#: book.translate.xml:27203 msgid "<primary>quotas</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27102 +#: book.translate.xml:27206 msgid "<primary>limiting users</primary> <secondary>quotas</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27106 book.translate.xml:33933 +#: book.translate.xml:27210 book.translate.xml:34046 msgid "<primary>disk quotas</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27110 +#: book.translate.xml:27214 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 " @@ -39840,7 +40054,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27122 +#: book.translate.xml:27226 msgid "" "<command>rctl</command> can be used to provide a more fine-grained method " "for controlling resource limits. This command supports more than user limits " @@ -39848,34 +40062,34 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27127 +#: book.translate.xml:27231 msgid "" "This section demonstrates both methods for controlling resources, beginning " "with the traditional method." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27131 +#: book.translate.xml:27235 msgid "Configuring Login Classes" msgstr "設定登入類別" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27133 +#: book.translate.xml:27237 msgid "<primary>limiting users</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27136 +#: book.translate.xml:27240 msgid "<primary>accounts</primary> <secondary>limiting</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27140 +#: book.translate.xml:27244 msgid "<primary><filename>/etc/login.conf</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27144 +#: book.translate.xml:27248 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 " @@ -39889,7 +40103,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:27158 +#: book.translate.xml:27262 msgid "" "Whenever <filename>/etc/login.conf</filename> is edited, the <filename>/etc/" "login.conf.db</filename> must be updated by executing the following command:" @@ -39898,14 +40112,14 @@ msgstr "" #. (itstool) path: note/screen #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:27162 book.translate.xml:30675 book.translate.xml:43514 -#: book.translate.xml:54663 +#: book.translate.xml:27266 book.translate.xml:30788 book.translate.xml:43750 +#: book.translate.xml:54903 #, no-wrap msgid "<prompt>#</prompt> <userinput>cap_mkdb /etc/login.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27165 +#: book.translate.xml:27269 msgid "" "Resource limits differ from the default login capabilities in two ways. " "First, for every limit, there is a <firstterm>soft</firstterm> and " @@ -39916,7 +40130,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27174 +#: book.translate.xml:27278 msgid "" "<xref linkend=\"resource-limits\"/> lists the most commonly used resource " "limits. All of the available resource limits and capabilities are described " @@ -39925,67 +40139,67 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27179 +#: book.translate.xml:27283 msgid "<primary>limiting users</primary> <secondary>coredumpsize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27183 +#: book.translate.xml:27287 msgid "<primary>limiting users</primary> <secondary>cputime</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27187 +#: book.translate.xml:27291 msgid "<primary>limiting users</primary> <secondary>filesize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27191 +#: book.translate.xml:27295 msgid "<primary>limiting users</primary> <secondary>maxproc</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27195 +#: book.translate.xml:27299 msgid "<primary>limiting users</primary> <secondary>memorylocked</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27199 +#: book.translate.xml:27303 msgid "<primary>limiting users</primary> <secondary>memoryuse</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27203 +#: book.translate.xml:27307 msgid "<primary>limiting users</primary> <secondary>openfiles</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27207 +#: book.translate.xml:27311 msgid "<primary>limiting users</primary> <secondary>sbsize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27211 +#: book.translate.xml:27315 msgid "<primary>limiting users</primary> <secondary>stacksize</secondary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:27217 +#: book.translate.xml:27321 msgid "Login Class Resource Limits" msgstr "登入類別限制資源類型" #. (itstool) path: row/entry -#: book.translate.xml:27222 +#: book.translate.xml:27326 msgid "Resource Limit" msgstr "限制資源" #. (itstool) path: row/entry -#: book.translate.xml:27229 +#: book.translate.xml:27333 msgid "coredumpsize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27230 +#: book.translate.xml:27334 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 " @@ -39996,12 +40210,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27242 +#: book.translate.xml:27346 msgid "cputime" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27243 +#: book.translate.xml:27347 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 " @@ -40011,12 +40225,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27254 +#: book.translate.xml:27358 msgid "filesize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27255 +#: book.translate.xml:27359 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 " @@ -40024,12 +40238,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27262 +#: book.translate.xml:27366 msgid "maxproc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27263 +#: book.translate.xml:27367 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 " @@ -40039,12 +40253,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27273 +#: book.translate.xml:27377 msgid "memorylocked" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27274 +#: book.translate.xml:27378 msgid "" "The maximum amount of memory a process may request to be locked into main " "memory using <citerefentry><refentrytitle>mlock</refentrytitle><manvolnum>2</" @@ -40055,12 +40269,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27283 +#: book.translate.xml:27387 msgid "memoryuse" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27284 +#: book.translate.xml:27388 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 " @@ -40068,12 +40282,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27292 +#: book.translate.xml:27396 msgid "openfiles" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27293 +#: book.translate.xml:27397 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 " @@ -40082,24 +40296,24 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27302 +#: book.translate.xml:27406 msgid "sbsize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27303 +#: book.translate.xml:27407 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:27309 +#: book.translate.xml:27413 msgid "stacksize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27310 +#: book.translate.xml:27414 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 " @@ -40107,19 +40321,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27319 +#: book.translate.xml:27423 msgid "There are a few other things to remember when setting resource limits:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27324 +#: book.translate.xml:27428 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:27330 +#: book.translate.xml:27434 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 " @@ -40128,14 +40342,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27339 +#: book.translate.xml:27443 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:27345 +#: book.translate.xml:27449 msgid "" "Many limits apply to individual processes, not the user as a whole. For " "example, setting <varname>openfiles</varname> to <literal>50</literal> means " @@ -40146,7 +40360,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27356 +#: book.translate.xml:27460 msgid "" "For further information on resource limits and login classes and " "capabilities in general, refer to <citerefentry><refentrytitle>cap_mkdb</" @@ -40157,19 +40371,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27363 +#: book.translate.xml:27467 msgid "Enabling and Configuring Resource Limits" msgstr "開啟並設定資源限制" #. (itstool) path: sect2/para -#: book.translate.xml:27365 +#: book.translate.xml:27469 msgid "" "The <varname>kern.racct.enable</varname> tunable must be set to a non-zero " "value. Custom kernels require specific configuration:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27369 +#: book.translate.xml:27473 #, no-wrap msgid "" "options RACCT\n" @@ -40177,27 +40391,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27372 +#: book.translate.xml:27476 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:27376 +#: book.translate.xml:27480 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:27380 +#: book.translate.xml:27484 #, no-wrap msgid "user:trhodes:maxproc:deny=10/user" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27382 +#: book.translate.xml:27486 msgid "" "In this rule, the subject is <literal>user</literal>, the subject-id is " "<literal>trhodes</literal>, the resource, <literal>maxproc</literal>, is the " @@ -40211,7 +40425,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27393 +#: book.translate.xml:27497 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 " @@ -40221,7 +40435,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27400 +#: book.translate.xml:27504 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>man test</userinput>\n" @@ -40230,20 +40444,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27404 +#: book.translate.xml:27508 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:27407 +#: book.translate.xml:27511 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -a jail:httpd:memoryuse:deny=2G/jail</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27409 +#: book.translate.xml:27513 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. " @@ -40251,7 +40465,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27414 +#: book.translate.xml:27518 #, no-wrap msgid "" "# Block jail from using more than 2G memory:\n" @@ -40259,19 +40473,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27417 +#: book.translate.xml:27521 msgid "" "To remove a rule, use <command>rctl</command> to remove it from the list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27420 +#: book.translate.xml:27524 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -r user:trhodes:maxproc:deny=10/user</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27422 +#: book.translate.xml:27526 msgid "" "A method for removing all rules is documented in " "<citerefentry><refentrytitle>rctl</refentrytitle><manvolnum>8</manvolnum></" @@ -40280,13 +40494,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27426 +#: book.translate.xml:27530 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -r user:trhodes</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27428 +#: book.translate.xml:27532 msgid "" "Many other resources exist which can be used to exert additional control " "over various <literal>subjects</literal>. See " @@ -40295,17 +40509,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27436 +#: book.translate.xml:27540 msgid "Shared Administration with Sudo" msgstr "使用 Sudo 分享管理權限" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27444 +#: book.translate.xml:27548 msgid "<primary>Security</primary> <secondary>Sudo</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27449 +#: book.translate.xml:27553 msgid "" "System administrators often need the ability to grant enhanced permissions " "to users so they may perform privileged tasks. The idea that team members " @@ -40323,7 +40537,7 @@ msgstr "" "理這類的需求,這樣便不需提供這麼大的權限給一般使用者。" #. (itstool) path: sect1/para -#: book.translate.xml:27460 +#: book.translate.xml:27564 msgid "" "Up to this point, the security chapter has covered permitting access to " "authorized users and attempting to prevent unauthorized access. Another " @@ -40347,7 +40561,7 @@ msgstr "" "<application>Sudo</application>。" #. (itstool) path: sect1/para -#: book.translate.xml:27472 +#: book.translate.xml:27576 msgid "" "<application>Sudo</application> allows administrators to configure more " "rigid access to system commands and provide for some advanced logging " @@ -40365,13 +40579,13 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具可:" #. (itstool) path: sect1/screen -#: book.translate.xml:27479 +#: book.translate.xml:27583 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install sudo</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27481 +#: book.translate.xml:27585 msgid "" "After the installation is complete, the installed <command>visudo</command> " "will open the configuration file with a text editor. Using <command>visudo</" @@ -40383,7 +40597,7 @@ msgstr "" "可在檔案儲存之前檢驗是否有誤。" #. (itstool) path: sect1/para -#: book.translate.xml:27487 +#: book.translate.xml:27591 msgid "" "The configuration file is made up of several small sections which allow for " "extensive configuration. In the following example, web application " @@ -40398,26 +40612,26 @@ msgstr "" "<filename>/usr/local/etc/sudoers</filename> 的最後:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:27496 +#: book.translate.xml:27600 #, no-wrap msgid "user1 ALL=(ALL) /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27498 +#: book.translate.xml:27602 msgid "" "The user may now start <replaceable>webservice</replaceable> using this " "command:" msgstr "現在使用者可使用此指令來啟動 <replaceable>webservice</replaceable>:" #. (itstool) path: sect1/screen -#: book.translate.xml:27501 +#: book.translate.xml:27605 #, no-wrap msgid "<prompt>%</prompt> <userinput>sudo /usr/sbin/service <replaceable>webservice</replaceable> start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27503 +#: book.translate.xml:27607 msgid "" "While this configuration allows a single user access to the " "<application>webservice</application> service; however, in most " @@ -40432,13 +40646,13 @@ msgstr "" "所有成員能夠管理服務:" #. (itstool) path: sect1/screen -#: book.translate.xml:27511 +#: book.translate.xml:27615 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupadd -g 6001 -n webteam</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27513 +#: book.translate.xml:27617 msgid "" "Using the same <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> command, the user is added to the webteam group:" @@ -40447,13 +40661,13 @@ msgstr "" "manvolnum></citerefentry> 指令來加入該使用到 webteam 群組:" #. (itstool) path: sect1/screen -#: book.translate.xml:27516 +#: book.translate.xml:27620 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod -m user1 -n webteam</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27518 +#: book.translate.xml:27622 msgid "" "Finally, this line in <filename>/usr/local/etc/sudoers</filename> allows any " "member of the webteam group to manage <replaceable>webservice</replaceable>:" @@ -40462,13 +40676,13 @@ msgstr "" "webteam 群組的所有成員可以管理 <replaceable>webservice</replaceable>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:27523 +#: book.translate.xml:27627 #, no-wrap msgid "%webteam ALL=(ALL) /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27525 +#: book.translate.xml:27629 msgid "" "Unlike <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <application>Sudo</application> only requires the " @@ -40481,7 +40695,7 @@ msgstr "" "題且這種情況只有壞處可言。" #. (itstool) path: sect1/para -#: book.translate.xml:27530 +#: book.translate.xml:27634 msgid "" "Users permitted to run applications with <application>Sudo</application> " "only enter their own passwords. This is more secure and gives better control " @@ -40499,7 +40713,7 @@ msgstr "" "權限。" #. (itstool) path: tip/para -#: book.translate.xml:27539 +#: book.translate.xml:27643 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 " @@ -40515,18 +40729,18 @@ msgstr "" "管理該服務:" #. (itstool) path: tip/programlisting -#: book.translate.xml:27547 +#: book.translate.xml:27651 #, no-wrap msgid "%webteam ALL=(ALL) NOPASSWD: /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27551 +#: book.translate.xml:27655 msgid "Logging Output" msgstr "記錄輸出" #. (itstool) path: sect2/para -#: book.translate.xml:27553 +#: book.translate.xml:27657 msgid "" "An advantage to implementing <application>Sudo</application> is the ability " "to enable session logging. Using the built in log mechanisms and the " @@ -40545,13 +40759,13 @@ msgstr "" "application> 的操作手冊來取得進一步資訊。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27565 +#: book.translate.xml:27669 #, no-wrap msgid "Defaults iolog_dir=/var/log/sudo-io/%{user}" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:27568 +#: book.translate.xml:27672 msgid "" "This directory will be created automatically after the logging is " "configured. It is best to let the system create directory with default " @@ -40566,7 +40780,7 @@ msgstr "" "項的註解。" #. (itstool) path: sect2/para -#: book.translate.xml:27577 +#: book.translate.xml:27681 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 " @@ -40575,16 +40789,16 @@ msgid "" msgstr "" "一旦這個設定加入至 <filename>sudoers</filename> 檔案之後,所有的使用者設定項" "目便可加上記錄存取動作的項目,在 <replaceable>webteam</replaceable> 項目加入" -"額外設定之後的範例如下: " +"額外設定之後的範例如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27583 +#: book.translate.xml:27687 #, no-wrap msgid "%webteam ALL=(ALL) NOPASSWD: LOG_INPUT: LOG_OUTPUT: /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27585 +#: book.translate.xml:27689 msgid "" "From this point on, all <replaceable>webteam</replaceable> members altering " "the status of the <replaceable>webservice</replaceable> application will be " @@ -40595,13 +40809,13 @@ msgstr "" "出先前與目前連線階段的記錄可:" #. (itstool) path: sect2/screen -#: book.translate.xml:27591 +#: book.translate.xml:27695 #, no-wrap msgid "<prompt>#</prompt> <userinput>sudoreplay -l</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27593 +#: book.translate.xml:27697 msgid "" "In the output, to replay a specific session, search for the <literal>TSID=</" "literal> entry, and pass that to <application>sudoreplay</application> with " @@ -40612,13 +40826,13 @@ msgstr "" "播連線階段,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:27598 +#: book.translate.xml:27702 #, no-wrap msgid "<prompt>#</prompt> <userinput>sudoreplay user1/00/00/02</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:27601 +#: book.translate.xml:27705 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 " @@ -40631,7 +40845,7 @@ msgstr "" "加入每日檢查,以便在有人為修改時通知其他管理人員。" #. (itstool) path: sect2/para -#: book.translate.xml:27609 +#: book.translate.xml:27713 msgid "" "The <command>sudoreplay</command> is extremely extendable. Consult the " "documentation for more information." @@ -40640,24 +40854,24 @@ msgstr "" "訊。" #. (itstool) path: info/title -#: book.translate.xml:27623 +#: book.translate.xml:27727 msgid "Jails" msgstr "Jail" #. (itstool) path: authorgroup/author -#: book.translate.xml:27626 +#: book.translate.xml:27730 msgid "" "<personname><firstname>Matteo</firstname><surname>Riondato</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: chapter/indexterm -#: book.translate.xml:27631 +#: book.translate.xml:27735 msgid "<primary>jails</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27636 +#: book.translate.xml:27740 msgid "" "Since system administration is a difficult task, many tools have been " "developed to make life easier for the administrator. These tools often " @@ -40673,7 +40887,7 @@ msgstr "" "用並持續強化它的功能、效率、穩定性以及安全性。" #. (itstool) path: sect1/para -#: book.translate.xml:27645 +#: book.translate.xml:27749 msgid "" "Jails build upon the <citerefentry><refentrytitle>chroot</" "refentrytitle><manvolnum>2</manvolnum></citerefentry> concept, which is used " @@ -40696,7 +40910,7 @@ msgstr "" "經被找到,讓這個方法不再是確保服務安全的理想方案。" #. (itstool) path: sect1/para -#: book.translate.xml:27658 +#: book.translate.xml:27762 msgid "" "Jails improve on the concept of the traditional chroot environment in " "several ways. In a traditional chroot environment, processes are only " @@ -40715,12 +40929,12 @@ msgstr "" "方式,Jail 可算是一種作業系統層級的虛擬化。" #. (itstool) path: sect1/para -#: book.translate.xml:27670 +#: book.translate.xml:27774 msgid "A jail is characterized by four elements:" msgstr "Jail 的四個要素:" #. (itstool) path: listitem/para -#: book.translate.xml:27674 +#: book.translate.xml:27778 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 " @@ -40730,12 +40944,12 @@ msgstr "" "錄之外。" #. (itstool) path: listitem/para -#: book.translate.xml:27680 +#: book.translate.xml:27784 msgid "A hostname: which will be used by the jail." msgstr "一個主機名稱:將會由 Jail 所使用。" #. (itstool) path: listitem/para -#: book.translate.xml:27684 +#: book.translate.xml:27788 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 " @@ -40745,7 +40959,7 @@ msgstr "" "acronym> 位址通常是現有網路介面的別名位址。" #. (itstool) path: listitem/para -#: book.translate.xml:27691 +#: book.translate.xml:27795 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." @@ -40754,7 +40968,7 @@ msgstr "" "路徑。" #. (itstool) path: sect1/para -#: book.translate.xml:27697 +#: book.translate.xml:27801 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 " @@ -40767,7 +40981,7 @@ msgstr "" "systemitem> 帳號不允許對指定 Jail 環境之外的系統執行操作。" #. (itstool) path: sect1/para -#: book.translate.xml:27702 +#: book.translate.xml:27806 msgid "" "This chapter provides an overview of the terminology and commands for " "managing FreeBSD jails. Jails are a powerful tool for both system " @@ -40777,23 +40991,23 @@ msgstr "" "來二者來說皆是強大的工具。" #. (itstool) path: listitem/para -#: book.translate.xml:27710 +#: book.translate.xml:27814 msgid "What a jail is and what purpose it may serve in FreeBSD installations." msgstr "Jail 是什麼及它在 FreeBSD 中提供的目的。" #. (itstool) path: listitem/para -#: book.translate.xml:27715 +#: book.translate.xml:27819 msgid "How to build, start, and stop a jail." msgstr "如何建立、啟動及停止 Jail。" #. (itstool) path: listitem/para -#: book.translate.xml:27719 +#: book.translate.xml:27823 msgid "" "The basics of jail administration, both from inside and outside the jail." msgstr "Jail 管理基礎,不論從內部或外部。" #. (itstool) path: important/para -#: book.translate.xml:27725 +#: book.translate.xml:27829 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 " @@ -40806,7 +41020,7 @@ msgstr "" "使用者串通來取得主機環境的更高權限。" #. (itstool) path: important/para -#: book.translate.xml:27732 +#: book.translate.xml:27836 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, " @@ -40817,12 +41031,12 @@ msgstr "" "上,不受信任的使用者有 Jail 的存取權限並不會讓其可存取主機環境。" #. (itstool) path: sect1/title -#: book.translate.xml:27741 +#: book.translate.xml:27845 msgid "Terms Related to Jails" msgstr "Jail 相關術語" #. (itstool) path: sect1/para -#: book.translate.xml:27743 +#: book.translate.xml:27847 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, " @@ -40832,7 +41046,7 @@ msgstr "" "互作用關係, 以下列出本章將使用的術語:" #. (itstool) path: varlistentry/term -#: book.translate.xml:27750 +#: book.translate.xml:27854 msgid "" "<citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> (command)" @@ -40841,7 +41055,7 @@ msgstr "" "citerefentry> (指令)" #. (itstool) path: listitem/para -#: book.translate.xml:27752 +#: book.translate.xml:27856 msgid "" "Utility, which uses <citerefentry><refentrytitle>chroot</" "refentrytitle><manvolnum>2</manvolnum></citerefentry> FreeBSD system call to " @@ -40852,7 +41066,7 @@ msgstr "" "(System call) 來更改程予及其衍伸程序的根目錄。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27759 +#: book.translate.xml:27863 msgid "" "<citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>2</manvolnum></" "citerefentry> (environment)" @@ -40861,7 +41075,7 @@ msgstr "" "citerefentry> (環境)" #. (itstool) path: listitem/para -#: book.translate.xml:27761 +#: book.translate.xml:27865 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, " @@ -40872,7 +41086,7 @@ msgstr "" "統、可用的使用者及群組 ID、網路介面及其他 IPC 機制等。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27770 +#: book.translate.xml:27874 msgid "" "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> (command)" @@ -40881,19 +41095,19 @@ msgstr "" "citerefentry> (指令)" #. (itstool) path: listitem/para -#: book.translate.xml:27772 +#: book.translate.xml:27876 msgid "" "The system administration utility which allows launching of processes within " "a jail environment." msgstr "允許在 Jail 環境下執行程序的系統管理工具。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27778 +#: book.translate.xml:27882 msgid "host (system, process, user, etc.)" msgstr "主機 (系統、程序、使用者等)" #. (itstool) path: listitem/para -#: book.translate.xml:27780 +#: book.translate.xml:27884 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 " @@ -40906,24 +41120,24 @@ msgstr "" "像在 Jail 環境那樣受到限制。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27792 +#: book.translate.xml:27896 msgid "hosted (system, process, user, etc.)" msgstr "託管 (主機、程序、使用者等)" #. (itstool) path: listitem/para -#: book.translate.xml:27794 +#: book.translate.xml:27898 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:27802 +#: book.translate.xml:27906 msgid "Creating and Controlling Jails" msgstr "建立和控制 Jail" #. (itstool) path: sect1/para -#: book.translate.xml:27804 +#: book.translate.xml:27908 msgid "" "Some administrators divide jails into the following two types: " "<quote>complete</quote> jails, which resemble a real FreeBSD system, and " @@ -40941,7 +41155,7 @@ msgstr "" "先編譯的 Binary (如安裝媒體上提供的 Binary) 或從原始碼編譯。" #. (itstool) path: sect1/para -#: book.translate.xml:27814 +#: book.translate.xml:27918 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</" @@ -40951,12 +41165,12 @@ msgstr "" "定 <varname>DESTDIR</varname> 來到適當的位置來完成。" #. (itstool) path: sect1/para -#: book.translate.xml:27819 +#: book.translate.xml:27923 msgid "Start a shell and define <varname>DESTDIR</varname>:" msgstr "啟動 Shell 並定義 <varname>DESTDIR</varname>:" #. (itstool) path: sect1/screen -#: book.translate.xml:27821 +#: book.translate.xml:27925 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sh</userinput>\n" @@ -40964,7 +41178,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27824 +#: book.translate.xml:27928 msgid "" "Mount the install media as covered in <citerefentry><refentrytitle>mdconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> when using the install " @@ -40974,13 +41188,31 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 中的說明掛載安裝媒體:" #. (itstool) path: sect1/screen -#: book.translate.xml:27827 +#: book.translate.xml:27931 #, no-wrap -msgid "<prompt>#</prompt> <userinput>mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt</userinput>" +msgid "" +"<prompt>#</prompt> <userinput>mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt</userinput>\n" +"<prompt>#</prompt> <userinput>cd /mnt/usr/freebsd-dist/</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27829 +#: book.translate.xml:27934 +msgid "Alternatively, download the tarballs from a mirror:" +msgstr "或者自鏡像站下載 Tarball 壓縮檔:" + +#. (itstool) path: sect1/screen +#: book.translate.xml:27936 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>sh</userinput>\n" +"<prompt>#</prompt> <userinput>export DESTRELEASE=<replaceable>12.0-RELEASE</replaceable></userinput>\n" +"<prompt>#</prompt> <userinput>export DESTARCH=<replaceable>`uname -m`</replaceable></userinput>\n" +"<prompt>#</prompt> <userinput>export SOURCEURL=<replaceable>http://ftp.freebsd.org/pub/</replaceable>FreeBSD/releases/$DESTARCH/$DESTRELEASE/</userinput>\n" +"<prompt>#</prompt> <userinput>for set in base ports; do fetch $SOURCEURL/$set.txz ; done</userinput>" +msgstr "" + +#. (itstool) path: sect1/para +#: book.translate.xml:27942 msgid "" "Extract the binaries from the tarballs on the install media into the " "declared destination. Minimally, only the base set needs to be extracted, " @@ -40990,29 +41222,29 @@ msgstr "" "的部份,若需要也可完整安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:27834 +#: book.translate.xml:27947 msgid "To install just the base system:" msgstr "只安裝基礎系統 (Base system):" #. (itstool) path: sect1/screen -#: book.translate.xml:27836 +#: book.translate.xml:27949 #, no-wrap -msgid "<prompt>#</prompt> <userinput>tar -xf /mnt/usr/freebsd-dist/base.txz -C $DESTDIR</userinput>" -msgstr "" +msgid "<prompt>#</prompt> <userinput>tar -xf base.txz -C $DESTDIR</userinput>" +msgstr "<prompt>#</prompt> <userinput>tar -xf base.txz -C $DESTDIR</userinput>" #. (itstool) path: sect1/para -#: book.translate.xml:27838 +#: book.translate.xml:27951 msgid "To install everything except the kernel:" msgstr "安裝全部不含核心:" #. (itstool) path: sect1/screen -#: book.translate.xml:27840 +#: book.translate.xml:27953 #, no-wrap -msgid "<prompt>#</prompt> <userinput>for set in base ports; do tar -xf /mnt/usr/freebsd-dist/$set.txz -C $DESTDIR ; done</userinput>" +msgid "<prompt>#</prompt> <userinput>for set in base ports; do tar -xf $set.txz -C $DESTDIR ; done</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27842 +#: book.translate.xml:27955 msgid "" "The <citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> manual page explains the procedure for building a " @@ -41022,7 +41254,7 @@ msgstr "" "manvolnum></citerefentry> 操作手冊說明的程序建置 Jail:" #. (itstool) path: sect1/screen -#: book.translate.xml:27845 +#: book.translate.xml:27958 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setenv D <replaceable>/here/is/the/jail</replaceable></userinput>\n" @@ -41035,7 +41267,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:27855 +#: book.translate.xml:27968 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 " @@ -41054,7 +41286,7 @@ msgstr "" "案。" #. (itstool) path: callout/para -#: book.translate.xml:27868 +#: book.translate.xml:27981 msgid "" "If you have already rebuilt your userland using <command>make world</" "command> or <command>make buildworld</command>, you can skip this step and " @@ -41065,7 +41297,7 @@ msgstr "" "到新的 Jail。" #. (itstool) path: callout/para -#: book.translate.xml:27875 +#: book.translate.xml:27988 msgid "" "This command will populate the directory subtree chosen as jail's physical " "location on the file system with the necessary binaries, libraries, manual " @@ -41075,12 +41307,12 @@ msgstr "" "庫、操作手冊與相關檔案。" #. (itstool) path: para/buildtarget -#: book.translate.xml:27882 +#: book.translate.xml:27995 msgid "distribution" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:27882 +#: book.translate.xml:27995 msgid "" "The <_:buildtarget-1/> target for <application>make</application> installs " "every needed configuration file. In simple words, it installs every " @@ -41094,7 +41326,7 @@ msgstr "" "filename>。" #. (itstool) path: callout/para -#: book.translate.xml:27893 +#: book.translate.xml:28006 msgid "" "Mounting the <citerefentry><refentrytitle>devfs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> file system inside a jail is not required. On the " @@ -41119,7 +41351,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 操作手冊中有詳細說明。" #. (itstool) path: sect1/para -#: book.translate.xml:27905 +#: book.translate.xml:28018 msgid "" "Once a jail is installed, it can be started by using the " "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" @@ -41142,11 +41374,11 @@ msgstr "" "序。<option><replaceable>command</replaceable></option> 參數依 Jail 的類型所" "需而定,對一個 <emphasis>虛擬系統</emphasis> 來說,<filename>/etc/rc</" "filename> 是不錯的選擇,因為該檔案可以模仿真實 FreeBSD 的啟動順序。對於 " -"<emphasis>服務的</emphasis> Jail 來說,則看在 Jail 中要執行的服務或應用程式來" -"決定。" +"<emphasis>服務型</emphasis> 的 Jail 來說,則看在 Jail 中要執行的服務或應用程" +"式來決定。" #. (itstool) path: sect1/para -#: book.translate.xml:27918 +#: book.translate.xml:28031 msgid "" "Jails are often started at boot time and the FreeBSD <filename>rc</filename> " "mechanism provides an easy way to do this." @@ -41155,13 +41387,12 @@ msgstr "" "簡單的達成這件事。" #. (itstool) path: step/para -#: book.translate.xml:27924 -#, fuzzy +#: book.translate.xml:28037 msgid "Configure jail parameters in <filename>jail.conf</filename>:" -msgstr "產生 <filename>xorg.conf</filename>:" +msgstr "在 <filename>jail.conf</filename> 中設定 jail 參數:" #. (itstool) path: step/programlisting -#: book.translate.xml:27926 +#: book.translate.xml:28039 #, no-wrap msgid "" "<replaceable>www</replaceable> {\n" @@ -41176,20 +41407,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:27936 -#, fuzzy +#: book.translate.xml:28049 msgid "Configure jails to start at boot time in <filename>rc.conf</filename>:" -msgstr "在 <filename>/etc/rc.conf</filename> 開啟交換檔:" +msgstr "在 <filename>rc.conf</filename> 中設定開機時啟動 Jail:" #. (itstool) path: step/programlisting -#: book.translate.xml:27939 +#: book.translate.xml:28052 #, no-wrap msgid "jail_enable=\"YES\" # Set to NO to disable starting of any jails" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:27941 -#, fuzzy +#: book.translate.xml:28054 msgid "" "The default startup of jails configured in <citerefentry><refentrytitle>jail." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, will run the " @@ -41198,37 +41427,35 @@ msgid "" "the jail should be changed, by setting the <varname>exec.start</varname> " "option appropriately." msgstr "" -"<citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry>中會假設 Jail 是完整的虛擬系統,預設會啟動 Jail 的 " -"<filename>/etc/rc</filename> Script。針對服務的 Jail 則需設定適當的 " -"<varname>jail_<replaceable>jailname</replaceable>_exec_start</varname> 選項來" -"修改預設啟動的指令。" +"預設要啟動的 Jail 可在 <citerefentry><refentrytitle>jail.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry> 設定,會把 Jail 當作是" +"一個完全虛擬的系統,然後執行 Jail 中的 <filename>/etc/rc</filename> Script。" +"針對服務型的 Jail 則需透過設定 <varname>exec.start</varname> 選項來適當更改 " +"Jail 的預設啟動指令。" #. (itstool) path: note/para -#: book.translate.xml:27950 -#, fuzzy +#: book.translate.xml:28063 msgid "" "For a full list of available options, please see the " "<citerefentry><refentrytitle>jail.conf</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> manual page." msgstr "" -"要取得完整可用選項的清單,請參考 <citerefentry><refentrytitle>rc.conf</" -"refentrytitle><manvolnum>5</manvolnum></citerefentry> 操作手冊。" +"要取得完整可用選項的清單,請參考 <citerefentry><refentrytitle>jail.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry>操作手冊。" #. (itstool) path: sect1/para -#: book.translate.xml:27956 -#, fuzzy +#: book.translate.xml:28069 msgid "" "<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> can be used to start or stop a jail by hand, if an " "entry for it exists in <filename>jail.conf</filename>:" msgstr "" -"若該 Jail 已經在 <filename>rc.conf</filename> 中設定,可以用 " +"若 Jail 項目已經在 <filename>jail.conf</filename> 中設定好,可以手動用 " "<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 來啟動或停止 Jail:" +"manvolnum></citerefentry> 來啟動或停止某個 Jail 項目:" #. (itstool) path: sect1/screen -#: book.translate.xml:27960 +#: book.translate.xml:28073 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service jail start <replaceable>www</replaceable></userinput>\n" @@ -41236,7 +41463,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27963 +#: book.translate.xml:28076 msgid "" "Jails can be shut down with <citerefentry><refentrytitle>jexec</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Use " @@ -41253,7 +41480,7 @@ msgstr "" "citerefentry> 在該 Jail 中執行關機 Script。" #. (itstool) path: sect1/screen -#: book.translate.xml:27967 +#: book.translate.xml:28080 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>jls</userinput>\n" @@ -41263,7 +41490,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27972 +#: book.translate.xml:28085 msgid "" "More information about this can be found in the " "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" @@ -41273,12 +41500,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 操作手冊取得。" #. (itstool) path: sect1/title -#: book.translate.xml:27977 +#: book.translate.xml:28090 msgid "Fine Tuning and Administration" msgstr "調校與管理" #. (itstool) path: sect1/para -#: book.translate.xml:27979 +#: book.translate.xml:28092 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 " @@ -41288,14 +41515,14 @@ msgstr "" "的方法來提供更高層級的應用程式使用。 本節將介紹:" #. (itstool) path: listitem/para -#: book.translate.xml:27986 +#: book.translate.xml:28099 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:27992 +#: book.translate.xml:28105 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 " @@ -41303,12 +41530,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28000 +#: book.translate.xml:28113 msgid "System Tools for Jail Tuning in FreeBSD" msgstr "在 FreeBSD 中調校 Jail 的系統工具" #. (itstool) path: sect2/para -#: book.translate.xml:28002 +#: book.translate.xml:28115 msgid "" "Fine tuning of a jail's configuration is mostly done by setting " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -41323,42 +41550,42 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28014 +#: book.translate.xml:28127 msgid "<varname>security.jail.set_hostname_allowed: 1</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28019 +#: book.translate.xml:28132 msgid "<varname>security.jail.socket_unixiproute_only: 1</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28024 +#: book.translate.xml:28137 msgid "<varname>security.jail.sysvipc_allowed: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28029 +#: book.translate.xml:28142 msgid "<varname>security.jail.enforce_statfs: 2</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28034 +#: book.translate.xml:28147 msgid "<varname>security.jail.allow_raw_sockets: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28039 +#: book.translate.xml:28152 msgid "<varname>security.jail.chflags_allowed: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28044 +#: book.translate.xml:28157 msgid "<varname>security.jail.jailed: 0</varname>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28048 +#: book.translate.xml:28161 msgid "" "These variables can be used by the system administrator of the " "<emphasis>host system</emphasis> to add or remove some of the limitations " @@ -41376,7 +41603,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28060 +#: book.translate.xml:28173 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 " @@ -41388,14 +41615,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28068 +#: book.translate.xml:28181 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:28074 +#: book.translate.xml:28187 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 " @@ -41407,18 +41634,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:28082 +#: book.translate.xml:28195 #, no-wrap msgid "<prompt>#</prompt> <userinput>jexec <replaceable>1</replaceable> tcsh</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28088 +#: book.translate.xml:28201 msgid "High-Level Administrative Tools in the FreeBSD Ports Collection" msgstr "在 FreeBSD Port 套件集中的高層級管理工具" #. (itstool) path: sect2/para -#: book.translate.xml:28091 +#: book.translate.xml:28204 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 " @@ -41430,12 +41657,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28101 +#: book.translate.xml:28214 msgid "Keeping Jails Patched and up to Date" msgstr "持續 Jail 的修補與更新" #. (itstool) path: sect2/para -#: book.translate.xml:28103 +#: book.translate.xml:28216 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 " @@ -41449,7 +41676,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:28112 +#: book.translate.xml:28225 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update -b <replaceable>/here/is/the/jail</replaceable> fetch</userinput>\n" @@ -41457,33 +41684,33 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:28119 +#: book.translate.xml:28232 msgid "Updating Multiple Jails" msgstr "更新多個 Jail" #. (itstool) path: authorgroup/author -#: book.translate.xml:28122 book.translate.xml:34428 book.translate.xml:34763 +#: book.translate.xml:28235 book.translate.xml:34541 book.translate.xml:34876 msgid "" "<personname> <firstname>Daniel</firstname> <surname>Gerzo</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:28131 +#: book.translate.xml:28244 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:28140 +#: book.translate.xml:28253 msgid "" "<personname> <firstname>Ken</firstname> <surname>Tom</surname> </personname> " "<contrib>And an article written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28150 +#: book.translate.xml:28263 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 " @@ -41491,7 +41718,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28155 +#: book.translate.xml:28268 msgid "" "This section demonstrates one method to resolve this issue by safely sharing " "as much as is possible between jails using read-only " @@ -41503,7 +41730,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:28165 +#: book.translate.xml:28278 msgid "" "Simpler solutions exist, such as <application>ezjail</application>, which " "provides an easier method of administering FreeBSD jails but is less " @@ -41512,46 +41739,46 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28172 +#: book.translate.xml:28285 msgid "The goals of the setup described in this section are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28176 +#: book.translate.xml:28289 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:28182 +#: book.translate.xml:28295 msgid "Make it easy to add new jails or remove existing ones." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28187 +#: book.translate.xml:28300 msgid "Make it easy to update or upgrade existing jails." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28191 +#: book.translate.xml:28304 msgid "Make it possible to run a customized FreeBSD branch." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28195 +#: book.translate.xml:28308 msgid "" "Be paranoid about security, reducing as much as possible the possibility of " "compromise." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28200 +#: book.translate.xml:28313 msgid "Save space and inodes, as much as possible." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28204 +#: book.translate.xml:28317 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 " @@ -41560,68 +41787,68 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28210 +#: book.translate.xml:28323 msgid "The file system layout is as follows:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28214 +#: book.translate.xml:28327 msgid "The jails are based under the <filename>/home</filename> partition." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28219 +#: book.translate.xml:28332 msgid "" "Each jail will be mounted under the <filename>/home/j</filename> directory." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28224 +#: book.translate.xml:28337 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:28230 +#: book.translate.xml:28343 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:28235 +#: book.translate.xml:28348 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:28241 +#: book.translate.xml:28354 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:28246 +#: book.translate.xml:28359 msgid "" "The read-write portion of each jail will be created in <filename>/home/js</" "filename>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28254 +#: book.translate.xml:28367 msgid "Creating the Template" msgstr "建立範本" #. (itstool) path: sect2/para -#: book.translate.xml:28256 +#: book.translate.xml:28369 msgid "This section describes the steps needed to create the master template." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28259 +#: book.translate.xml:28372 msgid "" "It is recommended to first update the host FreeBSD system to the latest -" "RELEASE branch using the instructions in <xref linkend=\"makeworld\"/>. " @@ -41631,7 +41858,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28267 +#: book.translate.xml:28380 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 " @@ -41640,7 +41867,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28273 +#: book.translate.xml:28386 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/j /home/j/mroot</userinput>\n" @@ -41649,14 +41876,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28279 +#: book.translate.xml:28392 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:28283 +#: book.translate.xml:28396 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j/mroot</userinput>\n" @@ -41666,12 +41893,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28290 +#: book.translate.xml:28403 msgid "Create a skeleton for the read-write portion of the system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28293 +#: book.translate.xml:28406 #, 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" @@ -41683,7 +41910,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28302 +#: book.translate.xml:28415 msgid "" "Use <application>mergemaster</application> to install missing configuration " "files. Then, remove the extra directories that <application>mergemaster</" @@ -41691,7 +41918,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28307 +#: book.translate.xml:28420 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mergemaster -t /home/j/skel/var/tmp/temproot -D /home/j/skel -i</userinput>\n" @@ -41700,7 +41927,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28313 +#: book.translate.xml:28426 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> " @@ -41709,7 +41936,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28319 +#: book.translate.xml:28432 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j/mroot</userinput>\n" @@ -41725,20 +41952,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28332 +#: book.translate.xml:28445 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:28336 +#: book.translate.xml:28449 #, no-wrap msgid "WRKDIRPREFIX?= /s/portbuild" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28338 +#: book.translate.xml:28451 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 " @@ -41747,12 +41974,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28348 +#: book.translate.xml:28461 msgid "Creating Jails" msgstr "建立 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:28350 +#: book.translate.xml:28463 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 " @@ -41761,7 +41988,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28357 +#: book.translate.xml:28470 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 " @@ -41769,7 +41996,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28362 +#: book.translate.xml:28475 #, no-wrap msgid "" "/home/j/mroot /home/j/ns nullfs ro 0 0\n" @@ -41781,7 +42008,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28369 +#: book.translate.xml:28482 msgid "" "To prevent <application>fsck</application> from checking " "<application>nullfs</application> mounts during boot and <application>dump</" @@ -41790,12 +42017,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28378 +#: book.translate.xml:28491 msgid "Configure the jails in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28381 +#: book.translate.xml:28494 #, no-wrap msgid "" "jail_enable=\"YES\"\n" @@ -41816,7 +42043,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28397 +#: book.translate.xml:28510 msgid "" "The <varname>jail_<replaceable>name</replaceable>_rootdir</varname> variable " "is set to <filename>/usr/home</filename> instead of <filename>/home</" @@ -41828,26 +42055,26 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28411 +#: book.translate.xml:28524 msgid "" "Create the required mount points for the read-only file system of each jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28414 +#: book.translate.xml:28527 #, 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:28418 +#: book.translate.xml:28531 msgid "" "Install the read-write template into each jail using <package>sysutils/" "cpdup</package>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28425 +#: book.translate.xml:28538 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/js</userinput>\n" @@ -41857,14 +42084,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28432 +#: book.translate.xml:28545 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:28436 book.translate.xml:28545 +#: book.translate.xml:28549 book.translate.xml:28658 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount -a</userinput>\n" @@ -41872,14 +42099,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28441 +#: book.translate.xml:28554 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:28445 +#: book.translate.xml:28558 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>jls</userinput>\n" @@ -41890,7 +42117,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28451 +#: book.translate.xml:28564 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 " @@ -41900,18 +42127,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:28458 +#: book.translate.xml:28571 #, no-wrap msgid "<prompt>#</prompt> <userinput>jexec 3 tcsh</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28462 +#: book.translate.xml:28575 msgid "Upgrading" msgstr "升級" #. (itstool) path: sect2/para -#: book.translate.xml:28464 +#: book.translate.xml:28577 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 " @@ -41919,14 +42146,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28471 +#: book.translate.xml:28584 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:28475 +#: book.translate.xml:28588 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/j/mroot2</userinput>\n" @@ -41938,19 +42165,19 @@ msgid "" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:28482 book.translate.xml:28693 +#: book.translate.xml:28595 book.translate.xml:28806 msgid "installworld" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28482 +#: book.translate.xml:28595 msgid "" "The <_:buildtarget-1/> creates a few unnecessary directories, which should " "be removed:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28486 +#: book.translate.xml:28599 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chflags -R 0 var</userinput>\n" @@ -41958,12 +42185,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28491 +#: book.translate.xml:28604 msgid "Recreate the read-write symlinks for the master file system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28494 +#: book.translate.xml:28607 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ln -s s/etc etc</userinput>\n" @@ -41976,25 +42203,25 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28504 +#: book.translate.xml:28617 msgid "Next, stop the jails:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28506 +#: book.translate.xml:28619 #, no-wrap msgid "<prompt>#</prompt> <userinput>service jail stop</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28510 +#: book.translate.xml:28623 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:28517 +#: book.translate.xml:28630 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /home/j/ns/s</userinput>\n" @@ -42006,7 +42233,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28526 +#: book.translate.xml:28639 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 " @@ -42016,7 +42243,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28534 +#: book.translate.xml:28647 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j</userinput>\n" @@ -42026,14 +42253,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28541 +#: book.translate.xml:28654 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:28550 +#: book.translate.xml:28663 msgid "" "Use <command>jls</command> to check if the jails started correctly. Run " "<command>mergemaster</command> in each jail to update the configuration " @@ -42041,12 +42268,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:28558 +#: book.translate.xml:28671 msgid "Managing Jails with <application>ezjail</application>" msgstr "使用 <application>ezjail</application> 管理 Jail" #. (itstool) path: sect1/para -#: book.translate.xml:28571 +#: book.translate.xml:28684 msgid "" "Creating and managing multiple jails can quickly become tedious and error-" "prone. Dirk Engling's <application>ezjail</application> automates and " @@ -42060,7 +42287,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28582 +#: book.translate.xml:28695 msgid "" "Additional benefits and features are described in detail on the " "<application>ezjail</application> web site, <link xlink:href=\"https://" @@ -42068,12 +42295,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28586 +#: book.translate.xml:28699 msgid "Installing <application>ezjail</application>" msgstr "安裝 <application>ezjail</application>" #. (itstool) path: sect2/para -#: book.translate.xml:28588 +#: book.translate.xml:28701 msgid "" "Installing <application>ezjail</application> consists of adding a loopback " "interface for use in jails, installing the port or package, and enabling the " @@ -42081,7 +42308,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28594 +#: book.translate.xml:28707 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 " @@ -42090,13 +42317,13 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: example/programlisting -#: book.translate.xml:28599 book.translate.xml:29088 +#: book.translate.xml:28712 book.translate.xml:29201 #, no-wrap msgid "cloned_interfaces=\"lo1\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28601 +#: book.translate.xml:28714 msgid "" "The second loopback interface <literal>lo1</literal> will be created when " "the system starts. It can also be created manually without a restart:" @@ -42104,7 +42331,7 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: example/screen -#: book.translate.xml:28605 book.translate.xml:29092 +#: book.translate.xml:28718 book.translate.xml:29205 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif cloneup</userinput>\n" @@ -42112,14 +42339,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28608 +#: book.translate.xml:28721 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:28612 +#: book.translate.xml:28725 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> " @@ -42130,7 +42357,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28621 +#: book.translate.xml:28734 msgid "" "Give each jail a unique loopback address in the <systemitem class=\"ipaddress" "\">127.0.0.0</systemitem><systemitem class=\"netmask\">/8</systemitem> " @@ -42138,12 +42365,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28626 +#: book.translate.xml:28739 msgid "Install <package role=\"port\">sysutils/ezjail</package>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28629 +#: book.translate.xml:28742 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/ezjail</userinput>\n" @@ -42151,33 +42378,33 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28634 +#: book.translate.xml:28747 msgid "" "Enable <application>ezjail</application> by adding this line to <filename>/" "etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28637 +#: book.translate.xml:28750 #, no-wrap msgid "ezjail_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28641 +#: book.translate.xml:28754 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:28645 +#: book.translate.xml:28758 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ezjail start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28653 +#: book.translate.xml:28766 msgid "" "With <application>ezjail</application> installed, the basejail directory " "structure can be created and populated. This step is only needed once on the " @@ -42185,7 +42412,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28658 +#: book.translate.xml:28771 msgid "" "In both of these examples, <option>-p</option> causes the ports tree to be " "retrieved with <citerefentry><refentrytitle>portsnap</" @@ -42198,12 +42425,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28670 +#: book.translate.xml:28783 msgid "To Populate the Jail with FreeBSD-RELEASE" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28672 +#: book.translate.xml:28785 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 " @@ -42212,30 +42439,30 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28679 +#: book.translate.xml:28792 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin install -p</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28683 +#: book.translate.xml:28796 msgid "To Populate the Jail with <command>installworld</command>" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:28687 book.translate.xml:45657 book.translate.xml:45724 +#: book.translate.xml:28800 book.translate.xml:45897 book.translate.xml:45964 msgid "buildworld" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28686 +#: book.translate.xml:28799 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:28691 +#: book.translate.xml:28804 msgid "" "In this example, FreeBSD 10-STABLE has been built from source. The jail " "directories are created. Then <_:buildtarget-1/> is executed, installing the " @@ -42243,13 +42470,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28698 +#: book.translate.xml:28811 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -i -p</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28700 +#: book.translate.xml:28813 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 " @@ -42258,7 +42485,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28711 +#: book.translate.xml:28824 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 " @@ -42268,7 +42495,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28720 +#: book.translate.xml:28833 msgid "" "The <acronym>FTP</acronym> protocol is used by default to download packages " "for the installation of the basejail. Firewall or proxy configurations can " @@ -42280,23 +42507,23 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:28729 +#: book.translate.xml:28842 #, no-wrap msgid "ezjail_ftphost=http://<replaceable>ftp.FreeBSD.org</replaceable>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28731 +#: book.translate.xml:28844 msgid "See <xref linkend=\"mirrors-ftp\"/> for a list of sites." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28737 +#: book.translate.xml:28850 msgid "Creating and Starting a New Jail" msgstr "建立並啟動新的 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:28739 +#: book.translate.xml:28852 msgid "" "New jails are created with <command>ezjail-admin create</command>. In these " "examples, the <literal>lo1</literal> loopback interface is used as described " @@ -42304,12 +42531,12 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:28745 +#: book.translate.xml:28858 msgid "Create and Start a New Jail" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28748 +#: book.translate.xml:28861 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, " @@ -42317,13 +42544,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28753 +#: book.translate.xml:28866 #, 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:28756 +#: book.translate.xml:28869 msgid "" "Most network services run in jails without problems. A few network services, " "most notably <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</" @@ -42333,7 +42560,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28763 +#: book.translate.xml:28876 msgid "" "Occasionally, a jail genuinely needs raw sockets. For example, network " "monitoring applications often use <citerefentry><refentrytitle>ping</" @@ -42346,61 +42573,61 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:28774 +#: book.translate.xml:28887 #, no-wrap msgid "export jail_<replaceable>jailname</replaceable>_parameters=\"allow.raw_sockets=1\"" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28776 +#: book.translate.xml:28889 msgid "" "Do not enable raw network sockets unless services in the jail actually " "require them." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28782 +#: book.translate.xml:28895 msgid "Start the jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28784 +#: book.translate.xml:28897 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin start <replaceable>dnsjail</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28788 +#: book.translate.xml:28901 msgid "Use a console on the jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28790 +#: book.translate.xml:28903 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>dnsjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28794 +#: book.translate.xml:28907 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:28800 +#: book.translate.xml:28913 msgid "Set the <systemitem class=\"username\">root</systemitem> Password" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28804 +#: book.translate.xml:28917 msgid "" "Connect to the jail and set the <systemitem class=\"username\">root</" "systemitem> user's password:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28808 +#: book.translate.xml:28921 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>dnsjail</replaceable></userinput>\n" @@ -42411,12 +42638,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28816 +#: book.translate.xml:28929 msgid "Time Zone Configuration" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28818 +#: book.translate.xml:28931 msgid "" "The jail's time zone can be set with <citerefentry><refentrytitle>tzsetup</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. To avoid spurious " @@ -42428,36 +42655,36 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28827 +#: book.translate.xml:28940 msgid "<acronym>DNS</acronym> Servers" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28829 +#: book.translate.xml:28942 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:28835 +#: book.translate.xml:28948 msgid "Edit <filename>/etc/hosts</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28837 +#: book.translate.xml:28950 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:28843 +#: book.translate.xml:28956 msgid "Configure <filename>/etc/rc.conf</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28845 +#: book.translate.xml:28958 msgid "" "Enter configuration settings in <filename>/etc/rc.conf</filename>. This is " "much like configuring a full computer. The host name and <acronym>IP</" @@ -42466,14 +42693,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28854 +#: book.translate.xml:28967 msgid "" "With the jail configured, the applications for which the jail was created " "can be installed." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28858 +#: book.translate.xml:28971 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" @@ -42483,17 +42710,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28869 +#: book.translate.xml:28982 msgid "Updating Jails" msgstr "更新 Jail" #. (itstool) path: sect3/title -#: book.translate.xml:28872 +#: book.translate.xml:28985 msgid "Updating the Operating System" msgstr "更新作業系統" #. (itstool) path: sect3/para -#: book.translate.xml:28874 +#: book.translate.xml:28987 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 " @@ -42501,33 +42728,33 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28879 +#: book.translate.xml:28992 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:28882 +#: book.translate.xml:28995 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -b</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28884 +#: book.translate.xml:28997 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:28887 +#: book.translate.xml:29000 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -i</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28889 +#: book.translate.xml:29002 msgid "" "Binary updates use <citerefentry><refentrytitle>freebsd-update</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. These updates have " @@ -42538,20 +42765,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28895 +#: book.translate.xml:29008 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:28899 +#: book.translate.xml:29012 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -u</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28901 +#: book.translate.xml:29014 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 " @@ -42565,7 +42792,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:28909 +#: book.translate.xml:29022 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>file /usr/jails/basejail/bin/sh</userinput>\n" @@ -42573,20 +42800,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28912 +#: book.translate.xml:29025 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:28916 +#: book.translate.xml:29029 #, 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:28918 +#: book.translate.xml:29031 msgid "" "After updating the basejail, <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> must be run to update " @@ -42594,7 +42821,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28921 +#: book.translate.xml:29034 msgid "" "How to use <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> depends on the purpose " @@ -42605,7 +42832,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:28927 +#: book.translate.xml:29040 msgid "" "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on Untrusted Jail" @@ -42614,7 +42841,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" #. (itstool) path: example/para -#: book.translate.xml:28929 +#: book.translate.xml:29042 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 " @@ -42623,7 +42850,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:28936 +#: book.translate.xml:29049 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rm /usr/jails/<replaceable>jailname</replaceable>/usr/src</userinput>\n" @@ -42632,25 +42859,25 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:28940 +#: book.translate.xml:29053 msgid "Get a console in the jail:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:28942 +#: book.translate.xml:29055 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>jailname</replaceable></userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:28944 +#: book.translate.xml:29057 msgid "" "Inside the jail, run <command>mergemaster</command>. Then exit the jail " "console:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:28947 +#: book.translate.xml:29060 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -42659,18 +42886,18 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:28951 +#: book.translate.xml:29064 msgid "Finally, unmount the jail's <filename>/usr/src</filename>:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:28954 +#: book.translate.xml:29067 #, no-wrap msgid "<prompt>#</prompt> <userinput>umount /usr/jails/<replaceable>jailname</replaceable>/usr/src</userinput>" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:28959 +#: book.translate.xml:29072 msgid "" "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on Trusted Jail" @@ -42679,7 +42906,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" #. (itstool) path: example/para -#: book.translate.xml:28961 +#: book.translate.xml:29074 msgid "" "If the users and services in a jail are trusted, " "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" @@ -42687,25 +42914,25 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:28964 +#: book.translate.xml:29077 #, no-wrap msgid "<prompt>#</prompt> <userinput>mergemaster -U -D /usr/jails/<replaceable>jailname</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:28969 +#: book.translate.xml:29082 msgid "Updating Ports" msgstr "更新 Port" #. (itstool) path: sect3/para -#: book.translate.xml:28971 +#: book.translate.xml:29084 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:28975 +#: book.translate.xml:29088 msgid "" "The basejail ports tree is updated with " "<citerefentry><refentrytitle>portsnap</refentrytitle><manvolnum>8</" @@ -42713,23 +42940,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:28978 +#: book.translate.xml:29091 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -P</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28983 +#: book.translate.xml:29096 msgid "Controlling Jails" msgstr "控制 Jail" #. (itstool) path: sect3/title -#: book.translate.xml:28986 +#: book.translate.xml:29099 msgid "Stopping and Starting Jails" msgstr "停止與啟動 Jail" #. (itstool) path: sect3/para -#: book.translate.xml:28988 +#: book.translate.xml:29101 msgid "" "<application>ezjail</application> automatically starts jails when the " "computer is started. Jails can be manually stopped and restarted with " @@ -42737,7 +42964,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:28993 +#: book.translate.xml:29106 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin stop <replaceable>sambajail</replaceable></userinput>\n" @@ -42745,43 +42972,43 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:28996 +#: book.translate.xml:29109 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:29000 +#: book.translate.xml:29113 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin config -r norun <replaceable>seldomjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29002 +#: book.translate.xml:29115 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:29006 +#: book.translate.xml:29119 msgid "Enabling autostart is very similar:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29008 +#: book.translate.xml:29121 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin config -r run <replaceable>oftenjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:29012 +#: book.translate.xml:29125 msgid "Archiving and Restoring Jails" msgstr "封存與還原 Jail" #. (itstool) path: sect3/para -#: book.translate.xml:29014 +#: book.translate.xml:29127 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 " @@ -42792,7 +43019,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29023 +#: book.translate.xml:29136 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 " @@ -42800,12 +43027,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29029 +#: book.translate.xml:29142 msgid "Stop and archive a jail named <literal>wwwserver</literal>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29032 +#: book.translate.xml:29145 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin stop <replaceable>wwwserver</replaceable></userinput>\n" @@ -42816,7 +43043,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29038 +#: book.translate.xml:29151 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 " @@ -42825,18 +43052,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29044 +#: book.translate.xml:29157 #, 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:29049 +#: book.translate.xml:29162 msgid "Full Example: <application>BIND</application> in a Jail" msgstr "完整範例:在 Jail 中安裝 <application>BIND</application>" #. (itstool) path: sect2/para -#: book.translate.xml:29052 +#: book.translate.xml:29165 msgid "" "Putting the <application>BIND</application> <acronym>DNS</acronym> server in " "a jail improves security by isolating it. This example creates a simple " @@ -42844,68 +43071,68 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29059 +#: book.translate.xml:29172 msgid "The jail will be called <literal>dns1</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29064 +#: book.translate.xml:29177 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:29070 +#: book.translate.xml:29183 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:29076 +#: book.translate.xml:29189 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:29083 +#: book.translate.xml:29196 msgid "Running BIND in a Jail" msgstr "在 Jail 中執行 BIND" #. (itstool) path: example/para -#: book.translate.xml:29085 +#: book.translate.xml:29198 msgid "" "Create a cloned loopback interface by adding a line to <filename>/etc/rc." "conf</filename>:" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29090 +#: book.translate.xml:29203 msgid "Immediately create the new loopback interface:" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29095 +#: book.translate.xml:29208 msgid "Create the jail:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29097 +#: book.translate.xml:29210 #, 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:29099 +#: book.translate.xml:29212 msgid "" "Start the jail, connect to a console running on it, and perform some basic " "configuration:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29102 +#: book.translate.xml:29215 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin start dns1</userinput>\n" @@ -42920,14 +43147,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29112 +#: book.translate.xml:29225 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:29116 +#: book.translate.xml:29229 #, no-wrap msgid "" "nameserver 10.0.0.62\n" @@ -42935,27 +43162,27 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29119 +#: book.translate.xml:29232 msgid "" "Still using the jail console, install <package role=\"port\">dns/bind99</" "package>." msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29122 +#: book.translate.xml:29235 #, no-wrap msgid "<prompt>#</prompt> <userinput>make -C /usr/ports/dns/bind99 install clean</userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29124 +#: book.translate.xml:29237 msgid "" "Configure the name server by editing <filename>/usr/local/etc/namedb/named." "conf</filename>." msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29127 +#: book.translate.xml:29240 msgid "" "Create an Access Control List (<acronym>ACL</acronym>) of addresses and " "networks that are permitted to send <acronym>DNS</acronym> queries to this " @@ -42964,7 +43191,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29133 +#: book.translate.xml:29246 #, no-wrap msgid "" "...\n" @@ -42981,7 +43208,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29145 +#: book.translate.xml:29258 msgid "" "Use the jail <acronym>IP</acronym> address in the <literal>listen-on</" "literal> setting to accept <acronym>DNS</acronym> queries from other " @@ -42989,13 +43216,13 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29150 +#: book.translate.xml:29263 #, no-wrap msgid "\tlisten-on\t{ 192.168.1.240; };" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29152 +#: book.translate.xml:29265 msgid "" "A simple caching-only <acronym>DNS</acronym> name server is created by " "changing the <literal>forwarders</literal> section. The original file " @@ -43003,7 +43230,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29156 +#: book.translate.xml:29269 #, no-wrap msgid "" "/*\n" @@ -43014,7 +43241,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29162 +#: book.translate.xml:29275 msgid "" "Uncomment the section by removing the <literal>/*</literal> and <literal>*/</" "literal> lines. Enter the <acronym>IP</acronym> addresses of the upstream " @@ -43024,7 +43251,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29170 +#: book.translate.xml:29283 #, no-wrap msgid "" "\tforwarders {\n" @@ -43038,23 +43265,23 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29179 +#: book.translate.xml:29292 msgid "Enable the service in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29182 +#: book.translate.xml:29295 #, no-wrap msgid "named_enable=\"YES\"" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29184 +#: book.translate.xml:29297 msgid "Start and test the name server:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29186 +#: book.translate.xml:29299 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service named start</userinput>\n" @@ -43064,31 +43291,31 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29191 +#: book.translate.xml:29304 msgid "A response that includes" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29193 +#: book.translate.xml:29306 #, no-wrap msgid ";; Got answer;" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29195 +#: book.translate.xml:29308 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:29199 +#: book.translate.xml:29312 #, no-wrap msgid ";; connection timed out; no servers could be reached" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29201 +#: book.translate.xml:29314 msgid "" "shows a problem. Check the configuration settings and make sure any local " "firewalls allow the new <acronym>DNS</acronym> access to the upstream " @@ -43096,7 +43323,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29206 +#: book.translate.xml:29319 msgid "" "The new <acronym>DNS</acronym> server can use itself for local name " "resolution, just like other local computers. Set the address of the " @@ -43105,13 +43332,13 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29212 +#: book.translate.xml:29325 #, no-wrap msgid "nameserver 192.168.1.240" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29214 +#: book.translate.xml:29327 msgid "" "A local <acronym>DHCP</acronym> server can be configured to provide this " "address for a local <acronym>DNS</acronym> server, providing automatic " @@ -43120,22 +43347,22 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: glossentry/glossterm -#: book.translate.xml:29230 book.translate.xml:65535 +#: book.translate.xml:29343 book.translate.xml:65535 msgid "Mandatory Access Control" msgstr "強制存取控制 (MAC)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:29241 +#: book.translate.xml:29354 msgid "<primary>MAC</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:29242 +#: book.translate.xml:29355 msgid "<primary>Mandatory Access Control</primary> <see>MAC</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29247 +#: book.translate.xml:29360 msgid "" "FreeBSD supports security extensions based on the <trademark class=" "\"registered\">POSIX</trademark>.1e draft. These security mechanisms include " @@ -43152,7 +43379,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29262 +#: book.translate.xml:29375 msgid "" "This chapter focuses on the <acronym>MAC</acronym> framework and the set of " "pluggable security policy modules FreeBSD provides for enabling various " @@ -43160,54 +43387,54 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29270 +#: book.translate.xml:29383 msgid "The terminology associated with the <acronym>MAC</acronym> framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29275 +#: book.translate.xml:29388 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:29281 +#: book.translate.xml:29394 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:29286 +#: book.translate.xml:29399 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:29291 +#: book.translate.xml:29404 msgid "" "How to implement a more secure environment using the <acronym>MAC</acronym> " "framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29296 +#: book.translate.xml:29409 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:29310 book.translate.xml:31063 book.translate.xml:46006 +#: book.translate.xml:29423 book.translate.xml:31176 book.translate.xml:46246 msgid "" "Have some familiarity with security and how it pertains to FreeBSD (<xref " "linkend=\"security\"/>)." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:29316 +#: book.translate.xml:29429 msgid "" "Improper <acronym>MAC</acronym> configuration may cause loss of system " "access, aggravation of users, or inability to access the features provided " @@ -43219,7 +43446,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:29326 +#: book.translate.xml:29439 msgid "" "The examples contained within this chapter are for demonstration purposes " "and the example settings should <emphasis>not</emphasis> be implemented on a " @@ -43228,7 +43455,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29333 +#: book.translate.xml:29446 msgid "" "While this chapter covers a broad range of security issues relating to the " "<acronym>MAC</acronym> framework, the development of new <acronym>MAC</" @@ -43244,19 +43471,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29346 book.translate.xml:31088 +#: book.translate.xml:29459 book.translate.xml:31201 msgid "Key Terms" msgstr "關鍵詞" #. (itstool) path: sect1/para -#: book.translate.xml:29348 +#: book.translate.xml:29461 msgid "" "The following key terms are used when referring to the <acronym>MAC</" "acronym> framework:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29353 +#: book.translate.xml:29466 msgid "" "<emphasis>compartment</emphasis>: a set of programs and data to be " "partitioned or separated, where users are given explicit access to specific " @@ -43266,7 +43493,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29363 +#: book.translate.xml:29476 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 " @@ -43274,7 +43501,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29369 +#: book.translate.xml:29482 msgid "" "<emphasis>level</emphasis>: the increased or decreased setting of a security " "attribute. As the level increases, its security is considered to elevate as " @@ -43282,7 +43509,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29375 +#: book.translate.xml:29488 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 " @@ -43295,7 +43522,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29389 +#: book.translate.xml:29502 msgid "" "<emphasis>multilabel</emphasis>: this property is a file system option which " "can be set in single-user mode using <citerefentry><refentrytitle>tunefs</" @@ -43308,7 +43535,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29399 +#: book.translate.xml:29512 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 " @@ -43317,7 +43544,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29407 +#: book.translate.xml:29520 msgid "" "<emphasis>object</emphasis>: an entity through which information flows under " "the direction of a <emphasis>subject</emphasis>. This includes directories, " @@ -43327,7 +43554,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29417 +#: book.translate.xml:29530 msgid "" "<emphasis>subject</emphasis>: any active entity that causes information to " "flow between <emphasis>objects</emphasis> such as a user, user process, or " @@ -43336,7 +43563,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29425 +#: book.translate.xml:29538 msgid "" "<emphasis>policy</emphasis>: a collection of rules which defines how " "objectives are to be achieved. A policy usually documents how certain items " @@ -43346,7 +43573,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29434 +#: book.translate.xml:29547 msgid "" "<emphasis>high-watermark</emphasis>: this type of policy permits the raising " "of security levels for the purpose of accessing higher level information. In " @@ -43356,7 +43583,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29443 +#: book.translate.xml:29556 msgid "" "<emphasis>low-watermark</emphasis>: this type of policy permits lowering " "security levels for the purpose of accessing information which is less " @@ -43367,7 +43594,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29452 +#: book.translate.xml:29565 msgid "" "<emphasis>sensitivity</emphasis>: usually used when discussing Multilevel " "Security (<acronym>MLS</acronym>). A sensitivity level describes how " @@ -43376,12 +43603,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29463 +#: book.translate.xml:29576 msgid "Understanding MAC Labels" msgstr "了解 MAC 標籤" #. (itstool) path: sect1/para -#: book.translate.xml:29465 +#: book.translate.xml:29578 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 " @@ -43392,7 +43619,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29473 +#: book.translate.xml:29586 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 " @@ -43401,7 +43628,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29479 +#: book.translate.xml:29592 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 " @@ -43410,7 +43637,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29485 +#: book.translate.xml:29598 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 " @@ -43421,7 +43648,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29493 +#: book.translate.xml:29606 msgid "" "A single label policy is somewhat similar to <acronym>DAC</acronym> as " "<systemitem class=\"username\">root</systemitem> configures the policies so " @@ -43433,7 +43660,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29502 +#: book.translate.xml:29615 msgid "" "When appropriate, a multi label policy can be set on a <acronym>UFS</" "acronym> file system by passing <option>multilabel</option> to " @@ -43448,7 +43675,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29514 +#: book.translate.xml:29627 msgid "" "Using a multi label policy on a partition and establishing a multi label " "security model can increase administrative overhead as everything in that " @@ -43457,7 +43684,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29519 +#: book.translate.xml:29632 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 " @@ -43465,13 +43692,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:29524 +#: book.translate.xml:29637 #, no-wrap msgid "<prompt>#</prompt> <userinput>tunefs -l enable /</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:29527 +#: book.translate.xml:29640 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 " @@ -43479,7 +43706,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29532 +#: book.translate.xml:29645 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. " @@ -43492,12 +43719,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29544 +#: book.translate.xml:29657 msgid "Label Configuration" msgstr "標籤設定" #. (itstool) path: sect2/para -#: book.translate.xml:29546 +#: book.translate.xml:29659 msgid "" "Virtually all aspects of label policy module configuration will be performed " "using the base system utilities. These commands provide a simple interface " @@ -43506,7 +43733,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29552 +#: book.translate.xml:29665 msgid "" "All configuration may be done using <command>setfmac</command>, which is " "used to set <acronym>MAC</acronym> labels on system objects, and " @@ -43516,13 +43743,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29560 +#: book.translate.xml:29673 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfmac biba/high test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29562 +#: book.translate.xml:29675 msgid "" "If the configuration is successful, the prompt will be returned without " "error. A common error is <errorname>Permission denied</errorname> which " @@ -43539,7 +43766,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29578 +#: book.translate.xml:29691 msgid "" "The system administrator may use <command>setpmac</command> to override the " "policy module's settings by assigning a different label to the invoked " @@ -43547,7 +43774,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29583 +#: book.translate.xml:29696 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac biba/high test</userinput>\n" @@ -43558,7 +43785,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29589 +#: book.translate.xml:29702 msgid "" "For currently running processes, such as <application>sendmail</" "application>, <command>getpmac</command> is usually used instead. This " @@ -43569,12 +43796,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29600 +#: book.translate.xml:29713 msgid "Predefined Labels" msgstr "預先定義的標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29602 +#: book.translate.xml:29715 msgid "" "A few FreeBSD policy modules which support the labeling feature offer three " "predefined labels: <literal>low</literal>, <literal>equal</literal>, and " @@ -43582,7 +43809,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29609 +#: book.translate.xml:29722 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 " @@ -43590,7 +43817,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29616 +#: book.translate.xml:29729 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 " @@ -43598,14 +43825,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29622 +#: book.translate.xml:29735 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:29628 +#: book.translate.xml:29741 msgid "" "Such policy modules include <citerefentry><refentrytitle>mac_biba</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>, " @@ -43618,12 +43845,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29636 +#: book.translate.xml:29749 msgid "Numeric Labels" msgstr "數值標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29638 +#: book.translate.xml:29751 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 " @@ -43633,20 +43860,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:29645 +#: book.translate.xml:29758 #, 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:29647 +#: book.translate.xml:29760 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:29650 +#: book.translate.xml:29763 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 " @@ -43655,7 +43882,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29656 +#: book.translate.xml:29769 msgid "" "System objects only have a current grade and compartment. System subjects " "reflect the range of available rights in the system, and network interfaces, " @@ -43663,7 +43890,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29661 +#: book.translate.xml:29774 msgid "" "The grade and compartments in a subject and object pair are used to " "construct a relationship known as <firstterm>dominance</firstterm>, in which " @@ -43678,12 +43905,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29676 +#: book.translate.xml:29789 msgid "User Labels" msgstr "使用者標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29678 +#: book.translate.xml:29791 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 " @@ -43692,7 +43919,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29685 +#: book.translate.xml:29798 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</" @@ -43703,7 +43930,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:29694 +#: book.translate.xml:29807 #, no-wrap msgid "" "default:\\\n" @@ -43732,7 +43959,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29718 +#: book.translate.xml:29831 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 " @@ -43745,14 +43972,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29729 +#: book.translate.xml:29842 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:29733 +#: book.translate.xml:29846 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 " @@ -43760,12 +43987,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29739 +#: book.translate.xml:29852 msgid "Network Interface Labels" msgstr "網路介面標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29741 +#: book.translate.xml:29854 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 " @@ -43775,20 +44002,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29748 +#: book.translate.xml:29861 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:29752 +#: book.translate.xml:29865 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bge0 maclabel biba/equal</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29754 +#: book.translate.xml:29867 msgid "" "This example will set the <acronym>MAC</acronym> label of <literal>biba/" "equal</literal> on the <literal>bge0</literal> interface. When using a " @@ -43797,7 +44024,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29761 +#: book.translate.xml:29874 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 " @@ -43808,12 +44035,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29772 +#: book.translate.xml:29885 msgid "Planning the Security Configuration" msgstr "規劃安全架構" #. (itstool) path: sect1/para -#: book.translate.xml:29774 +#: book.translate.xml:29887 msgid "" "Before implementing any <acronym>MAC</acronym> policies, a planning phase is " "recommended. During the planning stages, an administrator should consider " @@ -43821,26 +44048,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29781 +#: book.translate.xml:29894 msgid "" "How to classify information and resources available on the target systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29786 +#: book.translate.xml:29899 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:29792 +#: book.translate.xml:29905 msgid "" "Which <acronym>MAC</acronym> modules will be required to achieve this goal." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29797 +#: book.translate.xml:29910 msgid "" "A trial run of the trusted system and its configuration should occur " "<emphasis>before</emphasis> a <acronym>MAC</acronym> implementation is used " @@ -43850,7 +44077,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29804 +#: book.translate.xml:29917 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 " @@ -43864,7 +44091,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29817 +#: book.translate.xml:29930 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 " @@ -43877,7 +44104,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29827 +#: book.translate.xml:29940 msgid "" "A system utilizing <acronym>MAC</acronym> guarantees that a user will not be " "permitted to change security attributes at will. All user utilities, " @@ -43888,7 +44115,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29835 +#: book.translate.xml:29948 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 " @@ -43905,7 +44132,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29844 +#: book.translate.xml:29957 msgid "" "Policy decisions could be made based on network configuration. If only " "certain users should be permitted access to " @@ -43923,7 +44150,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29858 +#: book.translate.xml:29971 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 " @@ -43934,7 +44161,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29866 +#: book.translate.xml:29979 msgid "" "The rest of this chapter covers the available modules, describes their use " "and configuration, and in some cases, provides insight on applicable " @@ -43942,7 +44169,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:29871 +#: book.translate.xml:29984 msgid "" "Implementing <acronym>MAC</acronym> is much like implementing a firewall " "since care must be taken to prevent being completely locked out of the " @@ -43952,12 +44179,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29881 +#: book.translate.xml:29994 msgid "Available MAC Policies" msgstr "可用的 MAC 管理政策" #. (itstool) path: sect1/para -#: book.translate.xml:29883 +#: book.translate.xml:29996 msgid "" "The default FreeBSD kernel includes <literal>options MAC</literal>. This " "means that every module included with the <acronym>MAC</acronym> framework " @@ -43969,7 +44196,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29893 +#: book.translate.xml:30006 msgid "" "FreeBSD includes a group of policies that will cover most security " "requirements. Each policy is summarized below. The last three policies " @@ -43977,32 +44204,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29899 +#: book.translate.xml:30012 msgid "The MAC See Other UIDs Policy" msgstr "MAC See Other UIDs 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:29901 +#: book.translate.xml:30014 msgid "<primary>MAC See Other UIDs Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29904 +#: book.translate.xml:30017 msgid "Module name: <filename>mac_seeotheruids.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29907 +#: book.translate.xml:30020 msgid "Kernel configuration line: <literal>options MAC_SEEOTHERUIDS</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29910 +#: book.translate.xml:30023 msgid "Boot option: <literal>mac_seeotheruids_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29913 +#: book.translate.xml:30026 msgid "" "The <citerefentry><refentrytitle>mac_seeotheruids</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module extends the " @@ -44013,14 +44240,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29920 +#: book.translate.xml:30033 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:29926 +#: book.translate.xml:30039 msgid "" "<varname>security.mac.seeotheruids.enabled</varname> enables the module and " "implements the default settings which deny users the ability to view " @@ -44028,7 +44255,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29933 +#: book.translate.xml:30046 msgid "" "<varname>security.mac.seeotheruids.specificgid_enabled</varname> allows " "specified groups to be exempt from this policy. To exempt specific groups, " @@ -44038,7 +44265,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29944 +#: book.translate.xml:30057 msgid "" "<varname>security.mac.seeotheruids.primarygroup_enabled</varname> is used to " "exempt specific primary groups from this policy. When using this tunable, " @@ -44047,33 +44274,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29955 +#: book.translate.xml:30068 msgid "The MAC BSD Extended Policy" msgstr "MAC BSD Extended 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:29957 +#: book.translate.xml:30070 msgid "" "<primary>MAC</primary> <secondary>File System Firewall Policy</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29961 +#: book.translate.xml:30074 msgid "Module name: <filename>mac_bsdextended.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29964 +#: book.translate.xml:30077 msgid "Kernel configuration line: <literal>options MAC_BSDEXTENDED</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29967 +#: book.translate.xml:30080 msgid "Boot option: <literal>mac_bsdextended_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29970 +#: book.translate.xml:30083 msgid "" "The <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module enforces a file " @@ -44090,7 +44317,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29983 +#: book.translate.xml:30096 msgid "" "The rule list may be entered using <citerefentry><refentrytitle>ugidfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> which has a syntax " @@ -44101,7 +44328,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29988 +#: book.translate.xml:30101 msgid "" "After the <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module has been " @@ -44110,7 +44337,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29992 +#: book.translate.xml:30105 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ugidfw list</userinput>\n" @@ -44118,7 +44345,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29995 +#: book.translate.xml:30108 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=" @@ -44126,13 +44353,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29999 +#: book.translate.xml:30112 #, 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:30001 +#: book.translate.xml:30114 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 " @@ -44142,7 +44369,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30007 +#: book.translate.xml:30120 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ugidfw set 2 subject uid <replaceable>user1</replaceable> object uid <replaceable>user2</replaceable> mode n</userinput>\n" @@ -44150,7 +44377,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30010 +#: book.translate.xml:30123 msgid "" "Instead of <systemitem class=\"username\">user1</systemitem>, <option>not " "uid <replaceable>user2</replaceable></option> could be used in order to " @@ -44159,39 +44386,39 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30017 +#: book.translate.xml:30130 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:30024 +#: book.translate.xml:30137 msgid "The MAC Interface Silencing Policy" msgstr "MAC Interface Silencing 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30026 +#: book.translate.xml:30139 msgid "<primary>MAC Interface Silencing Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30029 +#: book.translate.xml:30142 msgid "Module name: <filename>mac_ifoff.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30031 +#: book.translate.xml:30144 msgid "Kernel configuration line: <literal>options MAC_IFOFF</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30034 +#: book.translate.xml:30147 msgid "Boot option: <literal>mac_ifoff_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30037 +#: book.translate.xml:30150 msgid "" "The <citerefentry><refentrytitle>mac_ifoff</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module is used to disable network interfaces on " @@ -44201,14 +44428,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30043 +#: book.translate.xml:30156 msgid "" "Most of this module's control is performed through these <command>sysctl</" "command> tunables:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30048 +#: book.translate.xml:30161 msgid "" "<varname>security.mac.ifoff.lo_enabled</varname> enables or disables all " "traffic on the loopback, <citerefentry><refentrytitle>lo</" @@ -44216,7 +44443,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30054 +#: book.translate.xml:30167 msgid "" "<varname>security.mac.ifoff.bpfrecv_enabled</varname> enables or disables " "all traffic on the Berkeley Packet Filter interface, " @@ -44225,14 +44452,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30060 +#: book.translate.xml:30173 msgid "" "<varname>security.mac.ifoff.other_enabled</varname> enables or disables " "traffic on all other interfaces." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30066 +#: book.translate.xml:30179 msgid "" "One of the most common uses of <citerefentry><refentrytitle>mac_ifoff</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> is network monitoring " @@ -44243,32 +44470,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30076 +#: book.translate.xml:30189 msgid "The MAC Port Access Control List Policy" msgstr "MAC Port Access Control 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30078 +#: book.translate.xml:30191 msgid "<primary>MAC Port Access Control List Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30081 +#: book.translate.xml:30194 msgid "Module name: <filename>mac_portacl.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30083 +#: book.translate.xml:30196 msgid "Kernel configuration line: <literal>MAC_PORTACL</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30086 +#: book.translate.xml:30199 msgid "Boot option: <literal>mac_portacl_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30089 +#: book.translate.xml:30202 msgid "" "The <citerefentry><refentrytitle>mac_portacl</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module is used to limit binding to local " @@ -44278,21 +44505,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30094 +#: book.translate.xml:30207 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:30100 +#: book.translate.xml:30213 msgid "" "<varname>security.mac.portacl.enabled</varname> enables or disables the " "policy completely." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30105 +#: book.translate.xml:30218 msgid "" "<varname>security.mac.portacl.port_high</varname> sets the highest port " "number that <citerefentry><refentrytitle>mac_portacl</" @@ -44300,7 +44527,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30111 +#: book.translate.xml:30224 msgid "" "<varname>security.mac.portacl.suser_exempt</varname>, when set to a non-zero " "value, exempts the <systemitem class=\"username\">root</systemitem> user " @@ -44308,7 +44535,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30117 +#: book.translate.xml:30230 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 " @@ -44322,7 +44549,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30133 +#: book.translate.xml:30246 msgid "" "By default, ports below 1024 can only be used by privileged processes which " "run as <systemitem class=\"username\">root</systemitem>. For " @@ -44332,7 +44559,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30139 +#: book.translate.xml:30252 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.port_high=1023</userinput>\n" @@ -44341,7 +44568,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30143 +#: book.translate.xml:30256 msgid "" "To prevent the <systemitem class=\"username\">root</systemitem> user from " "being affected by this policy, set <varname>security.mac.portacl." @@ -44349,13 +44576,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30148 +#: book.translate.xml:30261 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.suser_exempt=1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30150 +#: book.translate.xml:30263 msgid "" "To allow the <systemitem class=\"username\">www</systemitem> user with " "<acronym>UID</acronym> 80 to bind to port 80 without ever needing " @@ -44363,51 +44590,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30154 +#: book.translate.xml:30267 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.rules=uid:80:tcp:80</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30156 +#: book.translate.xml:30269 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:30161 +#: book.translate.xml:30274 #, 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:30165 +#: book.translate.xml:30278 msgid "The MAC Partition Policy" msgstr "MAC Partition 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30167 +#: book.translate.xml:30280 msgid "<primary>MAC Process Partition Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30170 +#: book.translate.xml:30283 msgid "Module name: <filename>mac_partition.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30172 +#: book.translate.xml:30285 msgid "Kernel configuration line: <literal>options MAC_PARTITION</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30175 +#: book.translate.xml:30288 msgid "Boot option: <literal>mac_partition_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30178 +#: book.translate.xml:30291 msgid "" "The <citerefentry><refentrytitle>mac_partition</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> policy drops processes into specific " @@ -44419,14 +44646,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30187 +#: book.translate.xml:30300 msgid "" "<varname>security.mac.partition.enabled</varname> enables the enforcement of " "<acronym>MAC</acronym> process partitions." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30193 +#: book.translate.xml:30306 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 " @@ -44437,7 +44664,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30201 +#: book.translate.xml:30314 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 " @@ -44446,37 +44673,37 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30207 +#: book.translate.xml:30320 #, no-wrap msgid "<prompt>#</prompt> <userinput>setpmac partition/13 top</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30209 +#: book.translate.xml:30322 msgid "This command displays the partition label and the process list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30212 +#: book.translate.xml:30325 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps Zax</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30214 +#: book.translate.xml:30327 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:30217 +#: book.translate.xml:30330 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps -ZU trhodes</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30220 +#: book.translate.xml:30333 msgid "" "Users can see processes in <systemitem class=\"username\">root</" "systemitem>'s label unless the " @@ -44485,32 +44712,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30226 +#: book.translate.xml:30339 msgid "The MAC Multi-Level Security Module" msgstr "MAC Multi-Level Security 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30228 +#: book.translate.xml:30341 msgid "<primary>MAC Multi-Level Security Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30231 +#: book.translate.xml:30344 msgid "Module name: <filename>mac_mls.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30233 +#: book.translate.xml:30346 msgid "Kernel configuration line: <literal>options MAC_MLS</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30236 +#: book.translate.xml:30349 msgid "Boot option: <literal>mac_mls_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30238 +#: book.translate.xml:30351 msgid "" "The <citerefentry><refentrytitle>mac_mls</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> policy controls access between subjects and " @@ -44518,7 +44745,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30242 +#: book.translate.xml:30355 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 " @@ -44530,7 +44757,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30254 +#: book.translate.xml:30367 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 " @@ -44539,14 +44766,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30262 +#: book.translate.xml:30375 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:30267 +#: book.translate.xml:30380 msgid "" "<literal>mls/high</literal> is the highest level of clearance possible. " "Objects assigned this label will hold dominance over all other objects in " @@ -44555,18 +44782,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30275 +#: book.translate.xml:30388 msgid "<acronym>MLS</acronym> provides:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30279 +#: book.translate.xml:30392 msgid "" "A hierarchical security level with a set of non-hierarchical categories." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30284 +#: book.translate.xml:30397 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 " @@ -44575,12 +44802,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30292 +#: book.translate.xml:30405 msgid "Secrecy, or the prevention of inappropriate disclosure of data." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30297 +#: book.translate.xml:30410 msgid "" "A basis for the design of systems that concurrently handle data at multiple " "sensitivity levels without leaking information between secret and " @@ -44588,19 +44815,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30303 +#: book.translate.xml:30416 msgid "The following <command>sysctl</command> tunables are available:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30308 +#: book.translate.xml:30421 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:30314 +#: book.translate.xml:30427 msgid "" "<varname>security.mac.mls.ptys_equal</varname> labels all " "<citerefentry><refentrytitle>pty</refentrytitle><manvolnum>4</manvolnum></" @@ -44608,21 +44835,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30320 +#: book.translate.xml:30433 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:30326 +#: book.translate.xml:30439 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:30332 +#: book.translate.xml:30445 msgid "" "To manipulate <acronym>MLS</acronym> labels, use " "<citerefentry><refentrytitle>setfmac</refentrytitle><manvolnum>8</" @@ -44630,26 +44857,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30335 +#: book.translate.xml:30448 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfmac mls/5 test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30337 +#: book.translate.xml:30450 msgid "" "To get the <acronym>MLS</acronym> label for the file <filename>test</" "filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30340 +#: book.translate.xml:30453 #, no-wrap msgid "<prompt>#</prompt> <userinput>getfmac test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30342 +#: book.translate.xml:30455 msgid "" "Another approach is to create a master policy file in <filename>/etc/</" "filename> which specifies the <acronym>MLS</acronym> policy information and " @@ -44657,7 +44884,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30347 +#: book.translate.xml:30460 msgid "" "When using the <acronym>MLS</acronym> policy module, an administrator plans " "to control the flow of sensitive information. The default <literal>block " @@ -44667,7 +44894,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30354 +#: book.translate.xml:30467 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 " @@ -44680,7 +44907,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30365 +#: book.translate.xml:30478 msgid "" "Some example situations for the <acronym>MLS</acronym> policy module include " "an e-commerce web server, a file server holding critical company " @@ -44688,32 +44915,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30372 +#: book.translate.xml:30485 msgid "The MAC Biba Module" msgstr "MAC Biba 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30374 +#: book.translate.xml:30487 msgid "<primary>MAC Biba Integrity Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30377 +#: book.translate.xml:30490 msgid "Module name: <filename>mac_biba.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30379 +#: book.translate.xml:30492 msgid "Kernel configuration line: <literal>options MAC_BIBA</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30382 +#: book.translate.xml:30495 msgid "Boot option: <literal>mac_biba_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30384 +#: book.translate.xml:30497 msgid "" "The <citerefentry><refentrytitle>mac_biba</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module loads the <acronym>MAC</acronym> Biba " @@ -44725,7 +44952,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30392 +#: book.translate.xml:30505 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-" @@ -44733,14 +44960,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30397 +#: book.translate.xml:30510 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:30403 +#: book.translate.xml:30516 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 " @@ -44749,14 +44976,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30411 +#: book.translate.xml:30524 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:30416 +#: book.translate.xml:30529 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 " @@ -44764,19 +44991,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30424 +#: book.translate.xml:30537 msgid "Biba provides:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30428 +#: book.translate.xml:30541 msgid "" "Hierarchical integrity levels with a set of non-hierarchical integrity " "categories." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30433 +#: book.translate.xml:30546 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 " @@ -44785,29 +45012,29 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30442 +#: book.translate.xml:30555 msgid "Integrity by preventing inappropriate modification of data." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30447 +#: book.translate.xml:30560 msgid "Integrity levels instead of <acronym>MLS</acronym> sensitivity levels." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30452 +#: book.translate.xml:30565 msgid "The following tunables can be used to manipulate the Biba policy:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30457 +#: book.translate.xml:30570 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:30463 +#: book.translate.xml:30576 msgid "" "<varname>security.mac.biba.ptys_equal</varname> is used to disable the Biba " "policy on <citerefentry><refentrytitle>pty</refentrytitle><manvolnum>4</" @@ -44815,7 +45042,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30469 +#: book.translate.xml:30582 msgid "" "<varname>security.mac.biba.revocation_enabled</varname> forces the " "revocation of access to objects if the label is changed to dominate the " @@ -44823,14 +45050,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30475 +#: book.translate.xml:30588 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:30479 +#: book.translate.xml:30592 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac biba/low test</userinput>\n" @@ -44839,7 +45066,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30483 +#: book.translate.xml:30596 msgid "" "Integrity, which is different from sensitivity, is used to guarantee that " "information is not manipulated by untrusted parties. This includes " @@ -44853,7 +45080,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30493 +#: book.translate.xml:30606 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 " @@ -44867,7 +45094,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30506 +#: book.translate.xml:30619 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. " @@ -44879,32 +45106,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30518 +#: book.translate.xml:30631 msgid "The MAC Low-watermark Module" msgstr "MAC Low-watermark 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30520 +#: book.translate.xml:30633 msgid "<primary>MAC LOMAC</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30523 +#: book.translate.xml:30636 msgid "Module name: <filename>mac_lomac.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30525 +#: book.translate.xml:30638 msgid "Kernel configuration line: <literal>options MAC_LOMAC</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30528 +#: book.translate.xml:30641 msgid "Boot option: <literal>mac_lomac_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30531 +#: book.translate.xml:30644 msgid "" "Unlike the <acronym>MAC</acronym> Biba policy, the " "<citerefentry><refentrytitle>mac_lomac</refentrytitle><manvolnum>4</" @@ -44913,7 +45140,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30536 +#: book.translate.xml:30649 msgid "" "The Low-watermark integrity policy works almost identically to Biba, with " "the exception of using floating labels to support subject demotion via an " @@ -44924,7 +45151,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30545 +#: book.translate.xml:30658 msgid "" "This policy relies on the ubiquitous labeling of all system objects with " "integrity labels, permitting subjects to read from low integrity objects and " @@ -44935,7 +45162,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30553 +#: book.translate.xml:30666 msgid "" "Like the Biba and <acronym>MLS</acronym> policies, <command>setfmac</" "command> and <command>setpmac</command> are used to place labels on system " @@ -44943,7 +45170,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30557 +#: book.translate.xml:30670 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac /usr/home/trhodes lomac/high[low]</userinput>\n" @@ -44951,19 +45178,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30560 +#: book.translate.xml:30673 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:30567 +#: book.translate.xml:30680 msgid "User Lock Down" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30569 +#: book.translate.xml:30682 msgid "" "This example considers a relatively small storage system with fewer than " "fifty users. Users will have login capabilities and are permitted to store " @@ -44971,7 +45198,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30574 +#: book.translate.xml:30687 msgid "" "For this scenario, the <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> and " @@ -44981,19 +45208,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30578 +#: book.translate.xml:30691 msgid "" "Begin by adding the following line to <filename>/boot/loader.conf</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:30581 +#: book.translate.xml:30694 #, no-wrap msgid "mac_seeotheruids_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30583 +#: book.translate.xml:30696 msgid "" "The <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> security policy module " @@ -45001,13 +45228,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:30587 +#: book.translate.xml:30700 #, no-wrap msgid "ugidfw_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30589 +#: book.translate.xml:30702 msgid "" "Default rules stored in <filename>/etc/rc.bsdextended</filename> will be " "loaded at system initialization. However, the default entries may need " @@ -45017,7 +45244,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30597 +#: book.translate.xml:30710 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</" @@ -45027,7 +45254,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30603 +#: book.translate.xml:30716 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 " @@ -45035,7 +45262,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30608 +#: book.translate.xml:30721 msgid "" "When a new user is added, their " "<citerefentry><refentrytitle>mac_bsdextended</refentrytitle><manvolnum>4</" @@ -45047,17 +45274,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:30616 +#: book.translate.xml:30729 msgid "Nagios in a MAC Jail" msgstr "在 MAC Jail 中使用 Nagios" #. (itstool) path: sect1/indexterm -#: book.translate.xml:30618 +#: book.translate.xml:30731 msgid "<primary>Nagios in a MAC Jail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30622 +#: book.translate.xml:30735 msgid "" "This section demonstrates the steps that are needed to implement the " "<application>Nagios</application> network monitoring system in a " @@ -45068,7 +45295,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30629 +#: book.translate.xml:30742 msgid "" "This example requires <option>multilabel</option> to be set on each file " "system. It also assumes that <package>net-mgmt/nagios-plugins</package>, " @@ -45078,19 +45305,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30638 +#: book.translate.xml:30751 msgid "Create an Insecure User Class" msgstr "建立不安全的使用者類別" #. (itstool) path: sect2/para -#: book.translate.xml:30640 +#: book.translate.xml:30753 msgid "" "Begin the procedure by adding the following user class to <filename>/etc/" "login.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30643 +#: book.translate.xml:30756 #, no-wrap msgid "" "insecure:\\\n" @@ -45119,41 +45346,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30667 +#: book.translate.xml:30780 msgid "Then, add the following line to the default user class section:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30670 +#: book.translate.xml:30783 #, no-wrap msgid ":label=biba/high:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30672 +#: book.translate.xml:30785 msgid "Save the edits and issue the following command to rebuild the database:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30679 +#: book.translate.xml:30792 msgid "Configure Users" msgstr "設定使用者" #. (itstool) path: sect2/para -#: book.translate.xml:30681 +#: book.translate.xml:30794 msgid "" "Set the <systemitem class=\"username\">root</systemitem> user to the default " "class using:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30684 +#: book.translate.xml:30797 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw usermod root -L default</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30686 +#: book.translate.xml:30799 msgid "" "All user accounts that are not <systemitem class=\"username\">root</" "systemitem> will now require a login class. The login class is required, " @@ -45162,7 +45389,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30691 +#: book.translate.xml:30804 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>for x in `awk -F: '($3 >= 1001) && ($3 != 65534) { print $1 }' \\</userinput>\n" @@ -45170,7 +45397,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30694 +#: book.translate.xml:30807 msgid "" "Next, drop the <systemitem class=\"username\">nagios</systemitem> and " "<systemitem class=\"username\">www</systemitem> accounts into the insecure " @@ -45178,7 +45405,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30697 +#: book.translate.xml:30810 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw usermod nagios -L insecure</userinput>\n" @@ -45186,19 +45413,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30702 +#: book.translate.xml:30815 msgid "Create the Contexts File" msgstr "建立關聯檔 (Context File)" #. (itstool) path: sect2/para -#: book.translate.xml:30704 +#: book.translate.xml:30817 msgid "" "A contexts file should now be created as <filename>/etc/policy.contexts</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30707 +#: book.translate.xml:30820 #, no-wrap msgid "" "# This is the default BIBA policy for this system.\n" @@ -45229,7 +45456,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30733 +#: book.translate.xml:30846 msgid "" "This policy enforces security by setting restrictions on the flow of " "information. In this specific configuration, users, including <systemitem " @@ -45240,27 +45467,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30741 +#: book.translate.xml:30854 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:30745 +#: book.translate.xml:30858 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfsmac -ef /etc/policy.contexts /</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30747 +#: book.translate.xml:30860 msgid "" "Next, add these edits to the main section of <filename>/etc/mac.conf</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30750 +#: book.translate.xml:30863 #, no-wrap msgid "" "default_labels file ?biba\n" @@ -45270,19 +45497,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30757 +#: book.translate.xml:30870 msgid "Loader Configuration" msgstr "載入程式設定" #. (itstool) path: sect2/para -#: book.translate.xml:30759 +#: book.translate.xml:30872 msgid "" "To finish the configuration, add the following lines to <filename>/boot/" "loader.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30762 +#: book.translate.xml:30875 #, no-wrap msgid "" "mac_biba_load=\"YES\"\n" @@ -45291,7 +45518,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30766 +#: book.translate.xml:30879 msgid "" "And the following line to the network card configuration stored in " "<filename>/etc/rc.conf</filename>. If the primary network configuration is " @@ -45300,23 +45527,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30772 +#: book.translate.xml:30885 #, no-wrap msgid "maclabel biba/equal" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30776 +#: book.translate.xml:30889 msgid "Testing the Configuration" msgstr "測試設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30778 +#: book.translate.xml:30891 msgid "<primary>MAC Configuration Testing</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30782 +#: book.translate.xml:30895 msgid "" "First, ensure that the web server and <application>Nagios</application> will " "not be started on system initialization and reboot. Ensure that <systemitem " @@ -45328,14 +45555,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30792 +#: book.translate.xml:30905 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:30796 +#: book.translate.xml:30909 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /etc/mail && make stop && \\\n" @@ -45344,7 +45571,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30800 +#: book.translate.xml:30913 msgid "" "Double check to ensure that everything is working properly. If not, check " "the log files for error messages. If needed, use " @@ -45355,7 +45582,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30807 +#: book.translate.xml:30920 msgid "" "The <systemitem class=\"username\">root</systemitem> user can still change " "the security enforcement and edit its configuration files. The following " @@ -45364,13 +45591,13 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:30813 +#: book.translate.xml:30926 #, no-wrap msgid "<prompt>#</prompt> <userinput>setpmac biba/10 csh</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30815 +#: book.translate.xml:30928 msgid "" "To block this from happening, force the user into a range using " "<citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</" @@ -45382,59 +45609,59 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:30826 +#: book.translate.xml:30939 msgid "Troubleshooting the MAC Framework" msgstr "MAC 架構疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:30828 +#: book.translate.xml:30941 msgid "<primary>MAC Troubleshooting</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30832 +#: book.translate.xml:30945 msgid "" "This section discusses common configuration errors and how to resolve them." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:30837 +#: book.translate.xml:30950 msgid "" "The <option>multilabel</option> flag does not stay enabled on the root " "(<filename>/</filename>) partition:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30842 +#: book.translate.xml:30955 msgid "The following steps may resolve this transient error:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30847 +#: book.translate.xml:30960 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:30853 +#: book.translate.xml:30966 msgid "Reboot into single user mode." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30857 +#: book.translate.xml:30970 msgid "" "Run <command>tunefs</command> <option>-l enable</option> on <filename>/</" "filename>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30862 +#: book.translate.xml:30975 msgid "Reboot the system." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30866 +#: book.translate.xml:30979 msgid "" "Run <command>mount</command> <option>-urw</option> <filename>/</filename> " "and change the <option>ro</option> back to <option>rw</option> in <filename>/" @@ -45442,21 +45669,21 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30874 +#: book.translate.xml:30987 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:30884 +#: book.translate.xml:30997 msgid "" "After establishing a secure environment with <acronym>MAC</acronym>, " "<application>Xorg</application> no longer starts:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30888 +#: book.translate.xml:31001 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> " @@ -45464,7 +45691,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30895 +#: book.translate.xml:31008 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 " @@ -45474,14 +45701,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:30905 +#: book.translate.xml:31018 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:30912 +#: book.translate.xml:31025 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." @@ -45490,14 +45717,14 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:30921 +#: book.translate.xml:31034 msgid "" "The <errorname>_secure_path: unable to stat .login_conf</errorname> error " "appears:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30924 +#: book.translate.xml:31037 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. " @@ -45515,21 +45742,21 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:30941 +#: book.translate.xml:31054 msgid "" "The system no longer recognizes <systemitem class=\"username\">root</" "systemitem>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30943 +#: book.translate.xml:31056 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:30947 +#: book.translate.xml:31060 msgid "" "This can happen if a labeling policy has been disabled by " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -45541,7 +45768,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30956 +#: book.translate.xml:31069 msgid "" "This may also happen if a policy restricts access to <filename>master." "passwd</filename>. This is usually caused by an administrator altering the " @@ -45554,29 +45781,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:30986 +#: book.translate.xml:31099 msgid "Security Event Auditing" msgstr "安全事件稽查" #. (itstool) path: authorgroup/author -#: book.translate.xml:30997 +#: book.translate.xml:31110 msgid "" "<personname> <firstname>Robert</firstname> <surname>Watson</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31009 +#: book.translate.xml:31122 msgid "<primary>AUDIT</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31010 +#: book.translate.xml:31123 msgid "<primary>Security Event Auditing</primary> <see>MAC</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31015 +#: book.translate.xml:31128 msgid "" "The FreeBSD operating system includes support for security event auditing. " "Event auditing supports reliable, fine-grained, and configurable logging of " @@ -45591,7 +45818,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31027 +#: book.translate.xml:31140 msgid "" "This chapter focuses on the installation and configuration of event " "auditing. It explains audit policies and provides an example audit " @@ -45599,30 +45826,30 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31035 +#: book.translate.xml:31148 msgid "What event auditing is and how it works." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31039 +#: book.translate.xml:31152 msgid "How to configure event auditing on FreeBSD for users and processes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31044 +#: book.translate.xml:31157 msgid "" "How to review the audit trail using the audit reduction and review tools." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31058 +#: book.translate.xml:31171 msgid "" "Be familiar with the basics of kernel configuration/compilation (<xref " "linkend=\"kernelconfig\"/>)." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31069 +#: book.translate.xml:31182 msgid "" "The audit facility has some known limitations. Not all security-relevant " "system events are auditable and some login mechanisms, such as " @@ -45631,7 +45858,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31075 +#: book.translate.xml:31188 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 " @@ -45644,12 +45871,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31090 +#: book.translate.xml:31203 msgid "The following terms are related to security event auditing:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31095 +#: book.translate.xml:31208 msgid "" "<emphasis>event</emphasis>: an auditable event is any event that can be " "logged using the audit subsystem. Examples of security-relevant events " @@ -45661,7 +45888,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31108 +#: book.translate.xml:31221 msgid "" "<emphasis>class</emphasis>: a named set of related events which are used in " "selection expressions. Commonly used classes of events include <quote>file " @@ -45670,7 +45897,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31116 +#: book.translate.xml:31229 msgid "" "<emphasis>record</emphasis>: an audit log entry describing a security event. " "Records contain a record event type, information on the subject (user) " @@ -45679,7 +45906,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31125 +#: book.translate.xml:31238 msgid "" "<emphasis>trail</emphasis>: a log file consisting of a series of audit " "records describing security events. Trails are in roughly chronological " @@ -45688,14 +45915,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31133 +#: book.translate.xml:31246 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:31139 +#: book.translate.xml:31252 msgid "" "<emphasis>preselection</emphasis>: the process by which the system " "identifies which events are of interest to the administrator. The " @@ -45705,7 +45932,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31149 +#: book.translate.xml:31262 msgid "" "<emphasis>reduction</emphasis>: the process by which records from existing " "audit trails are selected for preservation, printing, or analysis. Likewise, " @@ -45717,12 +45944,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:31163 +#: book.translate.xml:31276 msgid "Audit Configuration" msgstr "稽查設定" #. (itstool) path: sect1/para -#: book.translate.xml:31165 +#: book.translate.xml:31278 msgid "" "User space support for event auditing is installed as part of the base " "FreeBSD operating system. Kernel support is available in the " @@ -45733,42 +45960,42 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31172 +#: book.translate.xml:31285 #, no-wrap msgid "auditd_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31174 +#: book.translate.xml:31287 msgid "Then, start the audit daemon:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31176 +#: book.translate.xml:31289 #, no-wrap msgid "<prompt>#</prompt> <userinput>service auditd start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31178 +#: book.translate.xml:31291 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:31181 +#: book.translate.xml:31294 #, no-wrap msgid "options\tAUDIT" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31184 +#: book.translate.xml:31297 msgid "Event Selection Expressions" msgstr "事件選擇表示法" #. (itstool) path: sect2/para -#: book.translate.xml:31186 +#: book.translate.xml:31299 msgid "" "Selection expressions are used in a number of places in the audit " "configuration to determine which events should be audited. Expressions " @@ -45778,104 +46005,104 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31193 +#: book.translate.xml:31306 msgid "" "<xref linkend=\"event-selection\"/> summarizes the default audit event " "classes:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:31197 +#: book.translate.xml:31310 msgid "Default Audit Event Classes" msgstr "預設稽查事件類別" #. (itstool) path: row/entry -#: book.translate.xml:31202 +#: book.translate.xml:31315 msgid "Class Name" msgstr "類別名稱" #. (itstool) path: row/entry -#: book.translate.xml:31204 book.translate.xml:31368 +#: book.translate.xml:31317 book.translate.xml:31481 msgid "Action" msgstr "動作" #. (itstool) path: row/entry -#: book.translate.xml:31210 book.translate.xml:31211 +#: book.translate.xml:31323 book.translate.xml:31324 msgid "all" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31212 +#: book.translate.xml:31325 msgid "Match all event classes." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31216 +#: book.translate.xml:31329 msgid "aa" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31217 +#: book.translate.xml:31330 msgid "authentication and authorization" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31222 +#: book.translate.xml:31335 msgid "ad" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31223 +#: book.translate.xml:31336 msgid "administrative" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31224 +#: book.translate.xml:31337 msgid "Administrative actions performed on the system as a whole." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31229 +#: book.translate.xml:31342 msgid "ap" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31230 +#: book.translate.xml:31343 msgid "application" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31231 +#: book.translate.xml:31344 msgid "Application defined action." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31235 +#: book.translate.xml:31348 msgid "cl" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31236 +#: book.translate.xml:31349 msgid "file close" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31237 +#: book.translate.xml:31350 msgid "Audit calls to the <function>close</function> system call." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31242 +#: book.translate.xml:31355 msgid "ex" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31243 +#: book.translate.xml:31356 msgid "exec" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31244 +#: book.translate.xml:31357 msgid "" "Audit program execution. Auditing of command line arguments and " "environmental variables is controlled via " @@ -45885,17 +46112,17 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31253 +#: book.translate.xml:31366 msgid "fa" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31254 +#: book.translate.xml:31367 msgid "file attribute access" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31255 +#: book.translate.xml:31368 msgid "" "Audit the access of object attributes such as " "<citerefentry><refentrytitle>stat</refentrytitle><manvolnum>1</manvolnum></" @@ -45904,47 +46131,47 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31260 +#: book.translate.xml:31373 msgid "fc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31261 +#: book.translate.xml:31374 msgid "file create" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31262 +#: book.translate.xml:31375 msgid "Audit events where a file is created as a result." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31267 +#: book.translate.xml:31380 msgid "fd" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31268 +#: book.translate.xml:31381 msgid "file delete" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31269 +#: book.translate.xml:31382 msgid "Audit events where file deletion occurs." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31273 +#: book.translate.xml:31386 msgid "fm" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31274 +#: book.translate.xml:31387 msgid "file attribute modify" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31275 +#: book.translate.xml:31388 msgid "" "Audit events where file attribute modification occurs, such as by " "<citerefentry><refentrytitle>chown</refentrytitle><manvolnum>8</manvolnum></" @@ -45955,79 +46182,79 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31281 +#: book.translate.xml:31394 msgid "fr" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31282 +#: book.translate.xml:31395 msgid "file read" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31283 +#: book.translate.xml:31396 msgid "Audit events in which data is read or files are opened for reading." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31288 +#: book.translate.xml:31401 msgid "fw" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31289 +#: book.translate.xml:31402 msgid "file write" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31290 +#: book.translate.xml:31403 msgid "Audit events in which data is written or files are written or modified." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31295 +#: book.translate.xml:31408 msgid "io" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31296 +#: book.translate.xml:31409 msgid "ioctl" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31297 +#: book.translate.xml:31410 msgid "Audit use of the <function>ioctl</function> system call." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31302 +#: book.translate.xml:31415 msgid "ip" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31303 +#: book.translate.xml:31416 msgid "ipc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31304 +#: book.translate.xml:31417 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:31310 +#: book.translate.xml:31423 msgid "lo" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31311 +#: book.translate.xml:31424 msgid "login_logout" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31312 +#: book.translate.xml:31425 msgid "" "Audit <citerefentry><refentrytitle>login</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>logout</" @@ -46035,47 +46262,47 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31317 +#: book.translate.xml:31430 msgid "na" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31318 +#: book.translate.xml:31431 msgid "non attributable" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31319 +#: book.translate.xml:31432 msgid "Audit non-attributable events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31323 +#: book.translate.xml:31436 msgid "no" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31324 +#: book.translate.xml:31437 msgid "invalid class" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31325 +#: book.translate.xml:31438 msgid "Match no audit events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31329 +#: book.translate.xml:31442 msgid "nt" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31330 +#: book.translate.xml:31443 msgid "network" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31331 +#: book.translate.xml:31444 msgid "" "Audit events related to network actions such as " "<citerefentry><refentrytitle>connect</refentrytitle><manvolnum>2</" @@ -46084,32 +46311,32 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31336 +#: book.translate.xml:31449 msgid "ot" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31337 +#: book.translate.xml:31450 msgid "other" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31338 +#: book.translate.xml:31451 msgid "Audit miscellaneous events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31342 +#: book.translate.xml:31455 msgid "pc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31343 +#: book.translate.xml:31456 msgid "process" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31344 +#: book.translate.xml:31457 msgid "" "Audit process operations such as <citerefentry><refentrytitle>exec</" "refentrytitle><manvolnum>3</manvolnum></citerefentry> and " @@ -46118,7 +46345,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31351 +#: book.translate.xml:31464 msgid "" "These audit event classes may be customized by modifying the " "<filename>audit_class</filename> and <filename>audit_event</filename> " @@ -46126,7 +46353,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31355 +#: book.translate.xml:31468 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 " @@ -46135,91 +46362,91 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:31362 +#: book.translate.xml:31475 msgid "Prefixes for Audit Event Classes" msgstr "稽查事件類別字首" #. (itstool) path: row/entry -#: book.translate.xml:31367 +#: book.translate.xml:31480 msgid "Prefix" msgstr "字首" #. (itstool) path: row/entry -#: book.translate.xml:31375 +#: book.translate.xml:31488 msgid "Audit successful events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31380 +#: book.translate.xml:31493 msgid "Audit failed events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31384 +#: book.translate.xml:31497 msgid "^" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31385 +#: book.translate.xml:31498 msgid "Audit neither successful nor failed events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31390 +#: book.translate.xml:31503 msgid "^+" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31391 +#: book.translate.xml:31504 msgid "Do not audit successful events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31396 +#: book.translate.xml:31509 msgid "^-" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31397 +#: book.translate.xml:31510 msgid "Do not audit failed events in this class." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31403 +#: book.translate.xml:31516 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:31406 +#: book.translate.xml:31519 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:31410 +#: book.translate.xml:31523 #, no-wrap msgid "lo,+ex" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31416 +#: book.translate.xml:31529 msgid "" "The following configuration files for security event auditing are found in " "<filename>/etc/security</filename>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31422 +#: book.translate.xml:31535 msgid "" "<filename>audit_class</filename>: contains the definitions of the audit " "classes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31427 +#: book.translate.xml:31540 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 " @@ -46227,21 +46454,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31434 +#: book.translate.xml:31547 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:31440 +#: book.translate.xml:31553 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:31446 +#: book.translate.xml:31559 msgid "" "<filename>audit_warn</filename>: a customizable shell script used by " "<citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</manvolnum></" @@ -46251,14 +46478,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31455 +#: book.translate.xml:31568 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:31460 +#: book.translate.xml:31573 msgid "" "In most cases, administrators will only need to modify " "<filename>audit_control</filename> and <filename>audit_user</filename>. The " @@ -46267,19 +46494,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:31467 +#: book.translate.xml:31580 msgid "The <filename>audit_control</filename> File" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31469 +#: book.translate.xml:31582 msgid "" "A number of defaults for the audit subsystem are specified in " "<filename>audit_control</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:31472 +#: book.translate.xml:31585 #, no-wrap msgid "" "dir:/var/audit\n" @@ -46293,7 +46520,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31481 +#: book.translate.xml:31594 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 " @@ -46304,7 +46531,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31489 +#: book.translate.xml:31602 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 " @@ -46312,7 +46539,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31494 +#: book.translate.xml:31607 msgid "" "The <option>flags</option> field sets the system-wide default preselection " "mask for attributable events. In the example above, successful and failed " @@ -46321,14 +46548,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31500 +#: book.translate.xml:31613 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:31504 +#: book.translate.xml:31617 msgid "" "The <option>naflags</option> entry specifies audit classes to be audited for " "non-attributed events, such as the login/logout process and authentication " @@ -46336,7 +46563,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31509 +#: book.translate.xml:31622 msgid "" "The <option>policy</option> entry specifies a comma-separated list of policy " "flags controlling various aspects of audit behavior. The <literal>cnt</" @@ -46348,7 +46575,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31518 +#: book.translate.xml:31631 msgid "" "The <option>filesz</option> entry specifies the maximum size for an audit " "trail before automatically terminating and rotating the trail file. A value " @@ -46358,19 +46585,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31525 +#: book.translate.xml:31638 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:31530 +#: book.translate.xml:31643 msgid "The <filename>audit_user</filename> File" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31532 +#: book.translate.xml:31645 msgid "" "The administrator can specify further audit requirements for specific users " "in <filename>audit_user</filename>. Each line configures auditing for a user " @@ -46381,7 +46608,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31540 +#: book.translate.xml:31653 msgid "" "The following example entries audit login/logout events and successful " "command execution for <systemitem class=\"username\">root</systemitem> and " @@ -46394,7 +46621,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:31547 +#: book.translate.xml:31660 #, no-wrap msgid "" "root:lo,+ex:no\n" @@ -46402,12 +46629,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:31554 +#: book.translate.xml:31667 msgid "Working with Audit Trails" msgstr "查看稽查線索" #. (itstool) path: sect1/para -#: book.translate.xml:31556 +#: book.translate.xml:31669 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 " @@ -46419,25 +46646,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31566 +#: book.translate.xml:31679 msgid "" "For example, to dump the entire contents of a specified audit log in plain " "text:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31569 +#: book.translate.xml:31682 #, no-wrap msgid "<prompt>#</prompt> <userinput>praudit /var/audit/<replaceable>AUDITFILE</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31571 +#: book.translate.xml:31684 msgid "Where <replaceable>AUDITFILE</replaceable> is the audit log to dump." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31574 +#: book.translate.xml:31687 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 " @@ -46447,7 +46674,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31582 +#: book.translate.xml:31695 #, no-wrap msgid "" "header,133,10,execve(2),0,Mon Sep 25 15:58:03 2006, + 384 msec\n" @@ -46460,7 +46687,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31590 +#: book.translate.xml:31703 msgid "" "This audit represents a successful <literal>execve</literal> call, in which " "the command <literal>finger doug</literal> has been run. The <literal>exec " @@ -46479,14 +46706,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31609 +#: book.translate.xml:31722 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:31612 +#: book.translate.xml:31725 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 " @@ -46495,13 +46722,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31618 +#: book.translate.xml:31731 #, 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:31620 +#: book.translate.xml:31733 msgid "" "Members of the <systemitem class=\"groupname\">audit</systemitem> group have " "permission to read audit trails in <filename>/var/audit</filename>. By " @@ -46515,12 +46742,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31630 +#: book.translate.xml:31743 msgid "Live Monitoring Using Audit Pipes" msgstr "使用 Audit Pipes 即時監視" #. (itstool) path: sect2/para -#: book.translate.xml:31632 +#: book.translate.xml:31745 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 " @@ -46532,13 +46759,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:31641 +#: book.translate.xml:31754 #, no-wrap msgid "<prompt>#</prompt> <userinput>praudit /dev/auditpipe</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31643 +#: book.translate.xml:31756 msgid "" "By default, audit pipe device nodes are accessible only to the <systemitem " "class=\"username\">root</systemitem> user. To make them accessible to the " @@ -46547,13 +46774,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31649 +#: book.translate.xml:31762 #, no-wrap msgid "add path 'auditpipe*' mode 0440 group audit" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31651 +#: book.translate.xml:31764 msgid "" "See <citerefentry><refentrytitle>devfs.rules</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information on configuring the devfs file " @@ -46561,7 +46788,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31655 +#: book.translate.xml:31768 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 " @@ -46574,12 +46801,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31670 +#: book.translate.xml:31783 msgid "Rotating and Compressing Audit Trail Files" msgstr "翻轉與壓縮 Audit Trail 檔" #. (itstool) path: sect2/para -#: book.translate.xml:31672 +#: book.translate.xml:31785 msgid "" "Audit trails are written to by the kernel and managed by the audit daemon, " "<citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</manvolnum></" @@ -46594,13 +46821,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:31684 +#: book.translate.xml:31797 #, no-wrap msgid "<prompt>#</prompt> <userinput>audit -n</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31686 +#: book.translate.xml:31799 msgid "" "If <citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is not currently running, this command will fail " @@ -46608,26 +46835,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31689 +#: book.translate.xml:31802 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:31693 +#: book.translate.xml:31806 #, no-wrap msgid "0 */12 * * * root /usr/sbin/audit -n" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31695 +#: book.translate.xml:31808 msgid "" "The change will take effect once <filename>/etc/crontab</filename> is saved." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31698 +#: book.translate.xml:31811 msgid "" "Automatic rotation of the audit trail file based on file size is possible " "using <option>filesz</option> in <filename>audit_control</filename> as " @@ -46635,7 +46862,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31702 +#: book.translate.xml:31815 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 " @@ -46647,7 +46874,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31712 +#: book.translate.xml:31825 #, no-wrap msgid "" "#\n" @@ -46659,7 +46886,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31719 +#: book.translate.xml:31832 msgid "" "Other archiving activities might include copying trail files to a " "centralized server, deleting old trail files, or reducing the audit trail to " @@ -46669,12 +46896,12 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:31738 +#: book.translate.xml:31851 msgid "Storage" msgstr "儲存設備" #. (itstool) path: sect1/para -#: book.translate.xml:31743 +#: book.translate.xml:31856 msgid "" "This chapter covers the use of disks and storage media in FreeBSD. This " "includes <acronym>SCSI</acronym> and <acronym>IDE</acronym> disks, " @@ -46686,22 +46913,22 @@ msgstr "" "acronym> 媒體、記憶體磁碟及 <acronym>USB</acronym> 儲存裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:31753 +#: book.translate.xml:31866 msgid "How to add additional hard disks to a FreeBSD system." msgstr "如何在 FreeBSD 系統加入額外的硬碟。" #. (itstool) path: listitem/para -#: book.translate.xml:31758 +#: book.translate.xml:31871 msgid "How to grow the size of a disk's partition on FreeBSD." msgstr "如何在 FreeBSD 擴增磁碟分割區的大小。" #. (itstool) path: listitem/para -#: book.translate.xml:31763 +#: book.translate.xml:31876 msgid "How to configure FreeBSD to use <acronym>USB</acronym> storage devices." msgstr "如何設定 FreeBSD 使用 <acronym>USB</acronym> 儲存裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:31768 +#: book.translate.xml:31881 msgid "" "How to use <acronym>CD</acronym> and <acronym>DVD</acronym> media on a " "FreeBSD system." @@ -46710,37 +46937,37 @@ msgstr "" "體。" #. (itstool) path: listitem/para -#: book.translate.xml:31773 +#: book.translate.xml:31886 msgid "How to use the backup programs available under FreeBSD." msgstr "如何使用在 FreeBSD 下可用的備份程式。" #. (itstool) path: listitem/para -#: book.translate.xml:31778 +#: book.translate.xml:31891 msgid "How to set up memory disks." msgstr "如何設定記憶體磁碟。" #. (itstool) path: listitem/para -#: book.translate.xml:31782 +#: book.translate.xml:31895 msgid "What file system snapshots are and how to use them efficiently." msgstr "什麼是檔案系統快照 (Snapshot) 以及如何有效使用。" #. (itstool) path: listitem/para -#: book.translate.xml:31787 +#: book.translate.xml:31900 msgid "How to use quotas to limit disk space usage." msgstr "如何使用配額 (Quota) 來限制磁碟空間使用量。" #. (itstool) path: listitem/para -#: book.translate.xml:31791 +#: book.translate.xml:31904 msgid "How to encrypt disks and swap to secure them against attackers." msgstr "如何加密磁碟及交換空間來防範攻擊者。" #. (itstool) path: listitem/para -#: book.translate.xml:31796 +#: book.translate.xml:31909 msgid "How to configure a highly available storage network." msgstr "如何設定高可用性 (Highly available) 的儲存網路。" #. (itstool) path: listitem/para -#: book.translate.xml:31805 +#: book.translate.xml:31918 msgid "" "Know how to <link linkend=\"kernelconfig\">configure and install a new " "FreeBSD kernel</link>." @@ -46748,24 +46975,24 @@ msgstr "" "了解如何 <link linkend=\"kernelconfig\">設定並安裝新的 FreeBSD 核心</link>。" #. (itstool) path: info/title -#: book.translate.xml:31813 +#: book.translate.xml:31926 msgid "Adding Disks" msgstr "加入磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:31816 +#: book.translate.xml:31929 msgid "" "<personname> <firstname>David</firstname> <surname>O'Brien</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31826 +#: book.translate.xml:31939 msgid "<primary>disks</primary> <secondary>adding</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31831 +#: book.translate.xml:31944 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 " @@ -46778,7 +47005,7 @@ msgstr "" "重新啟動系統並登入 <systemitem class=\"username\">root</systemitem>。" #. (itstool) path: sect1/para -#: book.translate.xml:31839 +#: book.translate.xml:31952 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 " @@ -46789,12 +47016,12 @@ msgstr "" "碟。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31845 book.translate.xml:31941 +#: book.translate.xml:31958 book.translate.xml:32054 msgid "<primary><command>gpart</command></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31849 +#: book.translate.xml:31962 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\"> " @@ -46806,7 +47033,7 @@ msgstr "" "分割表格式而非較舊與通用性較差的 <acronym>MBR</acronym> 結構。" #. (itstool) path: note/para -#: book.translate.xml:31856 +#: book.translate.xml:31969 msgid "" "If the disk to be added is not blank, old partition information can be " "removed with <command>gpart delete</command>. See " @@ -46818,7 +47045,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得詳細資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:31862 +#: book.translate.xml:31975 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 " @@ -46828,7 +47055,7 @@ msgstr "" "塊大小 (Block size),此分割區會對齊 1 MB 的邊界:" #. (itstool) path: sect1/screen -#: book.translate.xml:31867 +#: book.translate.xml:31980 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s GPT ada1</userinput>\n" @@ -46836,7 +47063,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31870 +#: book.translate.xml:31983 msgid "" "Depending on use, several smaller partitions may be desired. See " "<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" @@ -46847,14 +47074,14 @@ msgstr "" "citerefentry> 來取得建立較小分割區的選項。" #. (itstool) path: sect1/para -#: book.translate.xml:31874 +#: book.translate.xml:31987 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:31877 +#: book.translate.xml:31990 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>gpart show ada1</userinput>\n" @@ -46865,18 +47092,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31883 +#: book.translate.xml:31996 msgid "A file system is created in the new partition on the new disk:" msgstr "在新磁碟的新分割區上建立檔案系統:" #. (itstool) path: sect1/screen -#: book.translate.xml:31885 +#: book.translate.xml:31998 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/ada1p1</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31887 +#: book.translate.xml:32000 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:" @@ -46885,13 +47112,13 @@ msgstr "" "磁碟的檔案系統上可用來掛載新磁碟的位置:" #. (itstool) path: sect1/screen -#: book.translate.xml:31891 +#: book.translate.xml:32004 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir /newdisk</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31893 +#: book.translate.xml:32006 msgid "" "Finally, an entry is added to <filename>/etc/fstab</filename> so the new " "disk will be mounted automatically at startup:" @@ -46900,41 +47127,41 @@ msgstr "" "的磁碟:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31897 +#: book.translate.xml:32010 #, no-wrap msgid "/dev/ada1p1\t/newdisk\tufs\trw\t2\t2" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31899 +#: book.translate.xml:32012 msgid "The new disk can be mounted manually, without restarting the system:" msgstr "新的磁碟也可手動掛載,無須重新啟動系統:" #. (itstool) path: sect1/screen -#: book.translate.xml:31902 +#: book.translate.xml:32015 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /newdisk</userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:31907 +#: book.translate.xml:32020 msgid "Resizing and Growing Disks" msgstr "重設大小與擴增磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:31910 +#: book.translate.xml:32023 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31920 +#: book.translate.xml:32033 msgid "<primary>disks</primary> <secondary>resizing</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31925 +#: book.translate.xml:32038 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 " @@ -46949,7 +47176,7 @@ msgstr "" "emphasis> 磁碟內容來使用增加的容量。" #. (itstool) path: sect1/para -#: book.translate.xml:31934 +#: book.translate.xml:32047 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 " @@ -46961,12 +47188,12 @@ msgstr "" "以 <filename>ada0</filename> 表示。" #. (itstool) path: sect1/para -#: book.translate.xml:31945 +#: book.translate.xml:32058 msgid "List the partitions on the disk to see the current configuration:" msgstr "列出在磁碟上的分割區來查看目前的設定:" #. (itstool) path: sect1/screen -#: book.translate.xml:31948 +#: book.translate.xml:32061 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show <replaceable>ada0</replaceable></userinput>\n" @@ -46978,7 +47205,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:31956 +#: book.translate.xml:32069 msgid "" "If the disk was formatted with the <link xlink:href=\"http://en.wikipedia." "org/wiki/GUID_Partition_Table\"> <acronym>GPT</acronym></link> partitioning " @@ -46992,7 +47219,7 @@ msgstr "" "分割區已不存在於磁碟結尾。 使用 <command>gpart</command> 來修正備份分割區:" #. (itstool) path: note/screen -#: book.translate.xml:31964 +#: book.translate.xml:32077 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart recover <replaceable>ada0</replaceable></userinput>\n" @@ -47000,7 +47227,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31968 +#: book.translate.xml:32081 msgid "" "Now the additional space on the disk is available for use by a new " "partition, or an existing partition can be expanded:" @@ -47009,7 +47236,7 @@ msgstr "" "區:" #. (itstool) path: sect1/screen -#: book.translate.xml:31972 +#: book.translate.xml:32085 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show <replaceable>ada0</replaceable></userinput>\n" @@ -47021,8 +47248,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31979 -#, fuzzy +#: book.translate.xml:32092 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 " @@ -47030,31 +47256,33 @@ msgid "" "so it can safely be unmounted, deleted, and then recreate the third " "partition after resizing the second partition." msgstr "" -"分割區只能重設大小到連續的未使用空間。在這個例子磁碟上最後的分割區為交換 " -"(Swap) 分割區,而第二個分割區才是需要重設大小的分割區。交換分割區中只會有暫存" -"的資料,所以可以安全的卸載、刪除,然後在重設其他分割區大小之後再重建。" +"分割區只能在連續的未使用空間上重設大小。在這個例子中,磁碟上最後的分割區為交" +"換 (Swap) 分割區,而第二個分割區才是需要重設大小的分割區。由於交換分割區中只" +"會有暫存的資料,所以此時可以安全的卸載、刪除,然後在重設第二個分割區大小之後" +"再重建最後一個分割區。" #. (itstool) path: sect1/para -#: book.translate.xml:31986 -#, fuzzy +#: book.translate.xml:32099 msgid "Disable the swap partition:" -msgstr "重新建立交換分割區:" +msgstr "停用交換分割區:" #. (itstool) path: sect1/screen -#: book.translate.xml:31988 +#: book.translate.xml:32101 #, no-wrap msgid "<prompt>#</prompt> <userinput>swapoff <replaceable>/dev/ada0p3</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31990 +#: book.translate.xml:32103 msgid "" "Delete the third partition, specified by the <option>-i</option> flag, from " "the disk <replaceable>ada0</replaceable>." msgstr "" +"刪除 <replaceable>ada0</replaceable> 磁碟上的第三個分割區,可使用 <option>-" +"i</option> 參數來指定分割區。" #. (itstool) path: sect1/screen -#: book.translate.xml:31994 +#: book.translate.xml:32107 #, no-wrap msgid "" "\n" @@ -47068,7 +47296,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:32004 +#: book.translate.xml:32117 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 " @@ -47082,14 +47310,13 @@ msgstr "" "在掛載的檔案系統上修改分割區表:" #. (itstool) path: warning/screen -#: book.translate.xml:32012 +#: book.translate.xml:32125 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl kern.geom.debugflags=16</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32015 -#, fuzzy +#: book.translate.xml:32128 msgid "" "Resize the partition, leaving room to recreate a swap partition of the " "desired size. The partition to resize is specified with <option>-i</option>, " @@ -47098,11 +47325,13 @@ msgid "" "size of the partition. The file system in the partition will be expanded in " "a separate step." msgstr "" -"重設分割區大小,保留要用來重建交換分割區的大小。這個動作只會修改分割區大小," -"分割區中的檔案系統會在另一個步驟擴增。" +"重設分割區大小並保留要用來重建交換分割區的空間,要重設大小的分割區可以用 " +"<option>-i</option> 來指定,而要重設的大小可用 <option>-s</option> 來指定,若" +"要對齊分割區可以使用 <option>-a</option>。這個動作只會修改分割區大小,分割區" +"中的檔案系統需在另一個步驟擴增。" #. (itstool) path: sect1/screen -#: book.translate.xml:32023 +#: book.translate.xml:32136 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart resize -i <replaceable>2</replaceable> -s <replaceable>47G</replaceable> -a 4k <replaceable>ada0</replaceable></userinput>\n" @@ -47115,14 +47344,16 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32031 +#: book.translate.xml:32144 msgid "" "Recreate the swap partition and activate it. If no size is specified with " "<option>-s</option>, all remaining space is used:" msgstr "" +"重建交換分割區並且啟動,若不使用 <option>-s</option> 指定大小則會使用所有剩餘" +"的空間:" #. (itstool) path: sect1/screen -#: book.translate.xml:32035 +#: book.translate.xml:32148 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart add -t freebsd-swap -a 4k <replaceable>ada0</replaceable></userinput>\n" @@ -47136,14 +47367,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32044 +#: book.translate.xml:32157 msgid "" "Grow the <acronym>UFS</acronym> file system to use the new capacity of the " "resized partition:" msgstr "擴增 <acronym>UFS</acronym> 檔案系統來使用重設分割區大小之後的新容量:" #. (itstool) path: sect1/screen -#: book.translate.xml:32047 +#: book.translate.xml:32160 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>growfs <replaceable>/dev/ada0p2</replaceable></userinput>\n" @@ -47156,37 +47387,39 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32055 +#: book.translate.xml:32168 msgid "" "If the file system is <acronym>ZFS</acronym>, the resize is triggered by " "running the <option>online</option> subcommand with <option>-e</option>:" msgstr "" +"若檔案系統使用 <acronym>ZFS</acronym>,重設大小需執行 <option>online</" +"option> 子指令並使用 <option>-e</option> 來觸發動作:" #. (itstool) path: sect1/screen -#: book.translate.xml:32059 -#, fuzzy, no-wrap +#: book.translate.xml:32172 +#, no-wrap msgid "<prompt>#</prompt> <userinput>zpool online -e <replaceable>zroot</replaceable> <replaceable>/dev/ada0p2</replaceable></userinput>" -msgstr "要設定特定變數可使用 <replaceable>variable</replaceable>=<replaceable>value</replaceable> 語法:" +msgstr "<prompt>#</prompt> <userinput>zpool online -e <replaceable>zroot</replaceable> <replaceable>/dev/ada0p2</replaceable></userinput>" #. (itstool) path: sect1/para -#: book.translate.xml:32061 +#: book.translate.xml:32174 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:32067 +#: book.translate.xml:32180 msgid "<acronym>USB</acronym> Storage Devices" msgstr "<acronym>USB</acronym> 儲存裝置" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32080 +#: book.translate.xml:32193 msgid "<primary>USB</primary> <secondary>disks</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32085 +#: book.translate.xml:32198 msgid "" "Many external storage solutions, such as hard drives, <acronym>USB</acronym> " "thumbdrives, and <acronym>CD</acronym> and <acronym>DVD</acronym> burners, " @@ -47199,7 +47432,7 @@ msgstr "" "<acronym>USB</acronym> 1.x, 2.0 及 3.0 裝置的支援。" #. (itstool) path: note/para -#: book.translate.xml:32092 +#: book.translate.xml:32205 msgid "" "<acronym>USB</acronym> 3.0 support is not compatible with some hardware, " "including Haswell (Lynx point) chipsets. If FreeBSD boots with a " @@ -47211,7 +47444,7 @@ msgstr "" "在系統 <acronym>BIOS</acronym> 關閉 xHCI/USB3。" #. (itstool) path: sect1/para -#: book.translate.xml:32099 +#: book.translate.xml:32212 msgid "" "Support for <acronym>USB</acronym> storage devices is built into the " "<filename>GENERIC</filename> kernel. For a custom kernel, be sure that the " @@ -47221,7 +47454,7 @@ msgstr "" "filename> 核心,若為自訂的核心,請確定在核心設定檔中有下列幾行設定:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:32104 +#: book.translate.xml:32217 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47237,7 +47470,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32115 +#: book.translate.xml:32228 msgid "" "FreeBSD uses the <citerefentry><refentrytitle>umass</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver which uses the " @@ -47256,7 +47489,7 @@ msgstr "" "emphasis>在自訂核心設定檔中引用 <option>device atapicam</option>。" #. (itstool) path: sect1/para -#: book.translate.xml:32125 +#: book.translate.xml:32238 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 " @@ -47266,12 +47499,12 @@ msgstr "" "以及如何設定該裝置。" #. (itstool) path: sect2/title -#: book.translate.xml:32130 +#: book.translate.xml:32243 msgid "Device Configuration" msgstr "裝置設定" #. (itstool) path: sect2/para -#: book.translate.xml:32132 +#: book.translate.xml:32245 msgid "" "To test the <acronym>USB</acronym> configuration, plug in the <acronym>USB</" "acronym> device. Use <command>dmesg</command> to confirm that the drive " @@ -47282,7 +47515,7 @@ msgstr "" "如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:32138 +#: book.translate.xml:32251 #, no-wrap msgid "" "umass0: <STECH Simple Drive, class 0/0, rev 2.00/1.04, addr 3> on usbus0\n" @@ -47297,7 +47530,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32148 +#: book.translate.xml:32261 msgid "" "The brand, device node (<filename>da0</filename>), speed, and size will " "differ according to the device." @@ -47305,7 +47538,7 @@ msgstr "" "不同的裝置會有不同的廠牌、裝置節點 (<filename>da0</filename>)、速度與大小。" #. (itstool) path: sect2/para -#: book.translate.xml:32151 +#: book.translate.xml:32264 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</" @@ -47316,7 +47549,7 @@ msgstr "" "存裝置:" #. (itstool) path: sect2/screen -#: book.translate.xml:32156 +#: book.translate.xml:32269 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -47324,7 +47557,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32159 +#: book.translate.xml:32272 msgid "" "Alternately, <command>usbconfig</command> can be used to list the device. " "Refer to <citerefentry vendor=\"current\"><refentrytitle>usbconfig</" @@ -47336,7 +47569,7 @@ msgstr "" "manvolnum></citerefentry> 來取得更多有關此指令的資訊。" #. (itstool) path: sect2/screen -#: book.translate.xml:32163 +#: book.translate.xml:32276 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>usbconfig</userinput>\n" @@ -47344,7 +47577,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32166 +#: book.translate.xml:32279 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 " @@ -47358,7 +47591,7 @@ msgstr "" "\"mount-unmount\"/> 中的說明掛載磁碟。" #. (itstool) path: warning/para -#: book.translate.xml:32173 +#: book.translate.xml:32286 msgid "" "Allowing untrusted users to mount arbitrary media, by enabling <varname>vfs." "usermount</varname> as described below, should not be considered safe from a " @@ -47370,7 +47603,7 @@ msgstr "" "裝置。" #. (itstool) path: sect2/para -#: book.translate.xml:32180 +#: book.translate.xml:32293 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" @@ -47388,7 +47621,7 @@ msgstr "" "systemitem> 能夠讀取與寫入裝置:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32187 +#: book.translate.xml:32300 #, no-wrap msgid "" "[localrules=5]\n" @@ -47396,7 +47629,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32191 +#: book.translate.xml:32304 msgid "" "If internal <acronym>SCSI</acronym> disks are also installed in the system, " "change the second line as follows:" @@ -47404,13 +47637,13 @@ msgstr "" "若系統也同時安裝了內建 <acronym>SCSI</acronym> 磁碟,請更改第二行如下:" #. (itstool) path: note/programlisting -#: book.translate.xml:32195 +#: book.translate.xml:32308 #, no-wrap msgid "add path 'da[<replaceable>3</replaceable>-9]*' mode 0660 group operator" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32197 +#: book.translate.xml:32310 msgid "" "This will exclude the first three <acronym>SCSI</acronym> disks " "(<filename>da0</filename> to <filename>da2</filename>)from belonging to the " @@ -47428,18 +47661,18 @@ msgstr "" "資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:32205 +#: book.translate.xml:32318 msgid "Next, enable the ruleset in <filename>/etc/rc.conf</filename>:" msgstr "接著,在 <filename>/etc/rc.conf</filename> 開啟規則:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32208 +#: book.translate.xml:32321 #, no-wrap msgid "devfs_system_ruleset=\"localrules\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32210 +#: book.translate.xml:32323 msgid "" "Then, instruct the system to allow regular users to mount file systems by " "adding the following line to <filename>/etc/sysctl.conf</filename>:" @@ -47448,13 +47681,13 @@ msgstr "" "者掛載檔案系統:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32214 +#: book.translate.xml:32327 #, no-wrap msgid "vfs.usermount=1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32216 +#: book.translate.xml:32329 msgid "" "Since this only takes effect after the next reboot, use <command>sysctl</" "command> to set this variable now:" @@ -47463,7 +47696,7 @@ msgstr "" "變數:" #. (itstool) path: sect2/screen -#: book.translate.xml:32219 +#: book.translate.xml:32332 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl vfs.usermount=1</userinput>\n" @@ -47471,7 +47704,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32222 +#: book.translate.xml:32335 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 " @@ -47489,7 +47722,7 @@ msgstr "" "組:" #. (itstool) path: sect2/screen -#: book.translate.xml:32232 +#: book.translate.xml:32345 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /mnt/<replaceable>username</replaceable></userinput>\n" @@ -47497,7 +47730,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32235 +#: book.translate.xml:32348 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 " @@ -47508,33 +47741,33 @@ msgstr "" "使用以下指令掛載該檔案系統:" #. (itstool) path: sect2/screen -#: book.translate.xml:32240 +#: book.translate.xml:32353 #, 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:32242 +#: book.translate.xml:32355 msgid "" "Before the device can be unplugged, it <emphasis>must</emphasis> be " "unmounted first:" msgstr "在裝置可以被拔除前,<emphasis>必須</emphasis>先卸載:" #. (itstool) path: sect2/screen -#: book.translate.xml:32245 +#: book.translate.xml:32358 #, no-wrap msgid "<prompt>%</prompt> <userinput>umount /mnt/<replaceable>username</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32247 +#: book.translate.xml:32360 msgid "" "After device removal, the system message buffer will show messages similar " "to the following:" msgstr "裝置移除之後,系統訊息緩衝區會顯示如下的訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:32250 +#: book.translate.xml:32363 #, no-wrap msgid "" "umass0: at uhub3, port 2, addr 3 (disconnected)\n" @@ -47544,12 +47777,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32257 +#: book.translate.xml:32370 msgid "Automounting Removable Media" msgstr "自動掛載可移除的媒體" #. (itstool) path: sect2/para -#: book.translate.xml:32259 +#: book.translate.xml:32372 msgid "" "<acronym>USB</acronym> devices can be automatically mounted by uncommenting " "this line in <filename>/etc/auto_master</filename>:" @@ -47558,18 +47791,18 @@ msgstr "" "<acronym>USB</acronym> 裝置:" #. (itstool) path: sect2/screen -#: book.translate.xml:32263 +#: book.translate.xml:32376 #, no-wrap msgid "/media\t\t-media\t\t-nosuid" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32265 book.translate.xml:46404 +#: book.translate.xml:32378 book.translate.xml:46644 msgid "Then add these lines to <filename>/etc/devd.conf</filename>:" msgstr "然後加入這些行到 <filename>/etc/devd.conf</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:32268 +#: book.translate.xml:32381 #, no-wrap msgid "" "notify 100 {\n" @@ -47580,7 +47813,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32274 +#: book.translate.xml:32387 msgid "" "Reload the configuration if <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry> and " @@ -47593,7 +47826,7 @@ msgstr "" "載入設定:" #. (itstool) path: sect2/screen -#: book.translate.xml:32277 +#: book.translate.xml:32390 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount restart</userinput>\n" @@ -47601,7 +47834,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32280 +#: book.translate.xml:32393 msgid "" "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" "citerefentry> can be set to start at boot by adding this line to <filename>/" @@ -47612,13 +47845,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32283 book.translate.xml:53437 +#: book.translate.xml:32396 book.translate.xml:53677 #, no-wrap msgid "autofs_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32285 +#: book.translate.xml:32398 msgid "" "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" "citerefentry> requires <citerefentry><refentrytitle>devd</" @@ -47630,12 +47863,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>,預設已經開啟。" #. (itstool) path: sect2/para -#: book.translate.xml:32288 +#: book.translate.xml:32401 msgid "Start the services immediately with:" msgstr "立即啟動服務:" #. (itstool) path: sect2/screen -#: book.translate.xml:32290 +#: book.translate.xml:32403 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount start</userinput>\n" @@ -47645,7 +47878,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32295 +#: book.translate.xml:32408 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 " @@ -47655,7 +47888,7 @@ msgstr "" "檔案系統的標籤來命名目錄,若標籤遺失,則會以裝置節點命名。" #. (itstool) path: sect2/para -#: book.translate.xml:32300 +#: book.translate.xml:32413 msgid "" "The file system is transparently mounted on the first access, and unmounted " "after a period of inactivity. Automounted drives can also be unmounted " @@ -47665,13 +47898,13 @@ msgstr "" "碟也可手動卸載:" #. (itstool) path: sect2/screen -#: book.translate.xml:32304 +#: book.translate.xml:32417 #, no-wrap msgid "<prompt>#</prompt> <userinput>automount -fu</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32306 +#: book.translate.xml:32419 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 " @@ -47681,25 +47914,25 @@ msgstr "" "裝置,包含光碟機或 <acronym>iSCSI</acronym> <acronym>LUN</acronym>。" #. (itstool) path: info/title -#: book.translate.xml:32315 +#: book.translate.xml:32428 msgid "Creating and Using <acronym>CD</acronym> Media" msgstr "建立與使用 <acronym>CD</acronym> 媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:32318 book.translate.xml:45827 +#: book.translate.xml:32431 book.translate.xml:46067 msgid "" "<personname> <firstname>Mike</firstname> <surname>Meyer</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32328 +#: book.translate.xml:32441 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>creating</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32333 +#: book.translate.xml:32446 msgid "" "Compact Disc (<acronym>CD</acronym>) media provide a number of features that " "differentiate them from conventional disks. They are designed so that they " @@ -47711,25 +47944,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32342 +#: book.translate.xml:32455 msgid "<primary><acronym>ISO</acronym> 9660</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:32344 book.translate.xml:32534 +#: book.translate.xml:32457 book.translate.xml:32647 msgid "<primary>file systems</primary> <secondary>ISO 9660</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32349 +#: book.translate.xml:32462 msgid "" "<primary><acronym>CD</acronym> burner</primary> <secondary><acronym>ATAPI</" "acronym></secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32354 +#: book.translate.xml:32467 msgid "" "The FreeBSD Ports Collection provides several utilities for burning and " "duplicating audio and data <acronym>CD</acronym>s. This chapter demonstrates " @@ -47739,19 +47972,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:32364 +#: book.translate.xml:32477 msgid "Supported Devices" msgstr "支援的裝置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32377 +#: book.translate.xml:32490 msgid "" "<primary><acronym>CD</acronym> burner</primary> <secondary>ATAPI/CAM driver</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32382 +#: book.translate.xml:32495 msgid "" "The <filename>GENERIC</filename> kernel provides support for <acronym>SCSI</" "acronym>, <acronym>USB</acronym>, and <acronym>ATAPI</acronym> <acronym>CD</" @@ -47761,13 +47994,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32389 +#: book.translate.xml:32502 msgid "" "For a <acronym>SCSI</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32392 +#: book.translate.xml:32505 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47777,13 +48010,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32397 +#: book.translate.xml:32510 msgid "" "For a <acronym>USB</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32400 +#: book.translate.xml:32513 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47799,13 +48032,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32411 +#: book.translate.xml:32524 msgid "" "For an <acronym>ATAPI</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32414 +#: book.translate.xml:32527 #, no-wrap msgid "" "device ata\t# Legacy ATA/SATA controllers\n" @@ -47815,40 +48048,40 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32420 +#: book.translate.xml:32533 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:32424 +#: book.translate.xml:32537 #, no-wrap msgid "device atapicam" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32426 +#: book.translate.xml:32539 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:32430 +#: book.translate.xml:32543 #, no-wrap msgid "atapicam_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32432 +#: book.translate.xml:32545 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:32436 +#: book.translate.xml:32549 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 " @@ -47857,7 +48090,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32442 +#: book.translate.xml:32555 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>dmesg | grep cd</userinput>\n" @@ -47869,12 +48102,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32451 +#: book.translate.xml:32564 msgid "Burning a <acronym>CD</acronym>" msgstr "燒錄 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32453 +#: book.translate.xml:32566 msgid "" "In FreeBSD, <command>cdrecord</command> can be used to burn <acronym>CD</" "acronym>s. This command is installed with the <package>sysutils/cdrtools</" @@ -47882,7 +48115,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32457 +#: book.translate.xml:32570 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 " @@ -47890,26 +48123,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32463 +#: book.translate.xml:32576 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdrecord <replaceable>dev=device</replaceable> <replaceable>imagefile.iso</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32465 +#: book.translate.xml:32578 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:32469 +#: book.translate.xml:32582 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>burning</secondary>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32473 +#: book.translate.xml:32586 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cdrecord -scanbus</userinput>\n" @@ -47936,7 +48169,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32495 +#: book.translate.xml:32608 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 " @@ -47948,14 +48181,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32504 +#: book.translate.xml:32617 msgid "" "Alternately, run the following command to get the device address of the " "burner:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32507 +#: book.translate.xml:32620 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -47963,7 +48196,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32510 +#: book.translate.xml:32623 msgid "" "Use the numeric values for <literal>scbus</literal>, <literal>target</" "literal>, and <literal>lun</literal>. For this example, <literal>1,0,0</" @@ -47971,12 +48204,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32517 +#: book.translate.xml:32630 msgid "Writing Data to an <acronym>ISO</acronym> File System" msgstr "寫入資料到一個 <acronym>ISO</acronym> 檔案系統" #. (itstool) path: sect2/para -#: book.translate.xml:32520 +#: book.translate.xml:32633 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 " @@ -47990,13 +48223,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32532 +#: book.translate.xml:32645 #, 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:32539 +#: book.translate.xml:32652 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 " @@ -48005,12 +48238,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32545 +#: book.translate.xml:32658 msgid "<primary>file systems</primary> <secondary>Joliet</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32550 +#: book.translate.xml:32663 msgid "" "A number of options are available to overcome the restrictions imposed by " "the standard. In particular, <option>-R</option> enables the Rock Ridge " @@ -48020,7 +48253,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32556 +#: book.translate.xml:32669 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 " @@ -48030,14 +48263,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32563 +#: book.translate.xml:32676 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>creating bootable</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32568 +#: book.translate.xml:32681 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 " @@ -48054,20 +48287,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32586 +#: book.translate.xml:32699 #, 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:32588 +#: book.translate.xml:32701 msgid "" "The resulting <acronym>ISO</acronym> image can be mounted as a memory disk " "with:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32591 +#: book.translate.xml:32704 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t vnode -f /tmp/bootable.iso -u 0</userinput>\n" @@ -48075,14 +48308,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32594 +#: book.translate.xml:32707 msgid "" "One can then verify that <filename>/mnt</filename> and <filename>/tmp/" "myboot</filename> are identical." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32597 +#: book.translate.xml:32710 msgid "" "There are many other options available for <command>mkisofs</command> to " "fine-tune its behavior. Refer to <citerefentry vendor=\"ports" @@ -48091,7 +48324,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32602 +#: book.translate.xml:32715 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</" @@ -48101,25 +48334,25 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32609 +#: book.translate.xml:32722 #, 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:32611 +#: book.translate.xml:32724 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:32617 +#: book.translate.xml:32730 msgid "Using Data <acronym>CD</acronym>s" msgstr "使用資料 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32619 +#: book.translate.xml:32732 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 " @@ -48127,13 +48360,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32624 +#: book.translate.xml:32737 #, 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:32626 +#: book.translate.xml:32739 msgid "" "Since <command>mount</command> assumes that a file system is of type " "<literal>ufs</literal>, a <errorname>Incorrect super block</errorname> error " @@ -48142,7 +48375,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32632 +#: book.translate.xml:32745 msgid "" "While any data <acronym>CD</acronym> can be mounted this way, disks with " "certain <acronym>ISO</acronym> 9660 extensions might behave oddly. For " @@ -48154,7 +48387,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32641 +#: book.translate.xml:32754 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 " @@ -48163,20 +48396,20 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:32647 +#: book.translate.xml:32760 #, no-wrap msgid "cd9660_iconv_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32649 +#: book.translate.xml:32762 msgid "" "and then rebooting the machine, or by directly loading the module with " "<command>kldload</command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32653 +#: book.translate.xml:32766 msgid "" "Occasionally, <errorname>Device not configured</errorname> will be displayed " "when trying to mount a data <acronym>CD</acronym>. This usually means that " @@ -48186,7 +48419,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32662 +#: book.translate.xml:32775 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 " @@ -48197,13 +48430,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32670 +#: book.translate.xml:32783 #, no-wrap msgid "options SCSI_DELAY=15000" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32672 +#: book.translate.xml:32785 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 " @@ -48211,7 +48444,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32677 +#: book.translate.xml:32790 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 " @@ -48220,7 +48453,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32683 +#: book.translate.xml:32796 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 " @@ -48230,25 +48463,25 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32691 +#: book.translate.xml:32804 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xzvf /dev/<replaceable>cd1</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32693 +#: book.translate.xml:32806 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:32700 +#: book.translate.xml:32813 msgid "Duplicating Audio <acronym>CD</acronym>s" msgstr "複製音樂 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32702 +#: book.translate.xml:32815 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 " @@ -48256,7 +48489,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32707 +#: book.translate.xml:32820 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 " @@ -48265,12 +48498,12 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:32714 +#: book.translate.xml:32827 msgid "Duplicating an Audio <acronym>CD</acronym>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32717 +#: book.translate.xml:32830 msgid "" "The <package>sysutils/cdrtools</package> package or port installs " "<command>cdda2wav</command>. This command can be used to extract all of the " @@ -48279,13 +48512,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:32723 +#: book.translate.xml:32836 #, no-wrap msgid "<prompt>%</prompt> <userinput>cdda2wav -vall -B -Owav</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32725 +#: book.translate.xml:32838 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</" @@ -48294,44 +48527,44 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32733 +#: book.translate.xml:32846 msgid "" "Use <command>cdrecord</command> to write the <filename>.wav</filename> files:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:32736 +#: book.translate.xml:32849 #, 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:32738 +#: book.translate.xml:32851 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:32747 +#: book.translate.xml:32860 msgid "Creating and Using <acronym>DVD</acronym> Media" msgstr "建立與使用 <acronym>DVD</acronym> 媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:32759 +#: book.translate.xml:32872 msgid "" "<personname> <firstname>Andy</firstname> <surname>Polyakov</surname> </" "personname> <contrib>With inputs from </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32769 +#: book.translate.xml:32882 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary>burning</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32774 +#: book.translate.xml:32887 msgid "" "Compared to the <acronym>CD</acronym>, the <acronym>DVD</acronym> is the " "next generation of optical media storage technology. The <acronym>DVD</" @@ -48340,14 +48573,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32780 +#: book.translate.xml:32893 msgid "" "Five physical recordable formats can be defined for a recordable " "<acronym>DVD</acronym>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32785 +#: book.translate.xml:32898 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://" @@ -48356,14 +48589,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32792 +#: book.translate.xml:32905 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:32799 +#: book.translate.xml:32912 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 " @@ -48374,7 +48607,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32809 +#: book.translate.xml:32922 msgid "" "<acronym>DVD+RW</acronym>: This is a rewritable format defined by the <link " "xlink:href=\"https://en.wikipedia.org/wiki/DVD%2BRW_Alliance\"> <acronym>DVD" @@ -48383,14 +48616,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32817 +#: book.translate.xml:32930 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:32822 +#: book.translate.xml:32935 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 " @@ -48398,7 +48631,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32827 +#: book.translate.xml:32940 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 " @@ -48409,12 +48642,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32837 book.translate.xml:56089 +#: book.translate.xml:32950 book.translate.xml:56517 msgid "Configuration" msgstr "設定" #. (itstool) path: sect2/para -#: book.translate.xml:32839 +#: book.translate.xml:32952 msgid "" "To perform <acronym>DVD</acronym> recording, use <citerefentry vendor=\"ports" "\"><refentrytitle>growisofs</refentrytitle><manvolnum>1</manvolnum></" @@ -48423,7 +48656,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32844 +#: book.translate.xml:32957 msgid "" "These tools use the <acronym>SCSI</acronym> subsystem to access the devices, " "therefore <link linkend=\"atapicam\">ATAPI/CAM support</link> must be loaded " @@ -48434,20 +48667,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32851 +#: book.translate.xml:32964 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:32855 book.translate.xml:33167 +#: book.translate.xml:32968 book.translate.xml:33280 #, no-wrap msgid "hw.ata.atapi_dma=\"1\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32857 +#: book.translate.xml:32970 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" @@ -48455,7 +48688,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32862 +#: book.translate.xml:32975 msgid "" "For a graphical user interface, consider using <package>sysutils/k3b</" "package> which provides a user friendly interface to <citerefentry vendor=" @@ -48464,12 +48697,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32870 +#: book.translate.xml:32983 msgid "Burning Data <acronym>DVD</acronym>s" msgstr "燒錄資料 <acronym>DVD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32872 +#: book.translate.xml:32985 msgid "" "Since <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is a front-end to " @@ -48481,20 +48714,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32878 +#: book.translate.xml:32991 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:32882 +#: book.translate.xml:32995 #, 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:32884 +#: book.translate.xml:32997 msgid "" "In this example, <option>-J -R</option> is passed to <citerefentry vendor=" "\"ports\"><refentrytitle>mkisofs</refentrytitle><manvolnum>8</manvolnum></" @@ -48504,7 +48737,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32889 +#: book.translate.xml:33002 msgid "" "For the initial session recording, <option>-Z</option> is used for both " "single and multiple sessions. Replace <replaceable>/dev/cd0</replaceable>, " @@ -48515,20 +48748,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32898 +#: book.translate.xml:33011 msgid "" "To burn a pre-mastered image, such as <replaceable>imagefile.iso</" "replaceable>, use:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32901 +#: book.translate.xml:33014 #, 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:32903 +#: book.translate.xml:33016 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>-" @@ -48538,7 +48771,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32909 +#: book.translate.xml:33022 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 " @@ -48554,29 +48787,29 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32920 +#: book.translate.xml:33033 msgid "To create this type of ISO file:" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32922 +#: book.translate.xml:33035 #, 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:32924 +#: book.translate.xml:33037 msgid "To burn files directly to a disk:" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32926 +#: book.translate.xml:33039 #, 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:32928 +#: book.translate.xml:33041 msgid "" "When an ISO image already contains large files, no additional options are " "required for <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -48585,7 +48818,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32932 +#: book.translate.xml:33045 msgid "" "Be sure to use an up-to-date version of <package>sysutils/cdrtools</" "package>, which contains <citerefentry vendor=\"ports" @@ -48597,18 +48830,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32942 +#: book.translate.xml:33055 msgid "Burning a <acronym>DVD</acronym>-Video" msgstr "燒錄 <acronym>DVD</acronym>-Video" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32944 +#: book.translate.xml:33057 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary>DVD-Video</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32949 +#: book.translate.xml:33062 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 " @@ -48617,7 +48850,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32955 +#: book.translate.xml:33068 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 " @@ -48626,13 +48859,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32962 +#: book.translate.xml:33075 #, 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:32964 +#: book.translate.xml:33077 msgid "" "<option>-dvd-video</option> is passed to <citerefentry vendor=\"ports" "\"><refentrytitle>mkisofs</refentrytitle><manvolnum>8</manvolnum></" @@ -48643,19 +48876,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32971 +#: book.translate.xml:33084 msgid "Using a <acronym>DVD+RW</acronym>" msgstr "使用 <acronym>DVD+RW</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32973 +#: book.translate.xml:33086 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD+RW</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32978 +#: book.translate.xml:33091 msgid "" "Unlike CD-RW, a virgin <acronym>DVD+RW</acronym> needs to be formatted " "before first use. It is <emphasis>recommended</emphasis> to let " @@ -48666,13 +48899,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32985 book.translate.xml:33091 +#: book.translate.xml:33098 book.translate.xml:33204 #, no-wrap msgid "<prompt>#</prompt> <userinput>dvd+rw-format <replaceable>/dev/cd0</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32987 +#: book.translate.xml:33100 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 " @@ -48680,7 +48913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32992 +#: book.translate.xml:33105 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. " @@ -48688,13 +48921,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32997 +#: book.translate.xml:33110 #, 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:32999 +#: book.translate.xml:33112 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 " @@ -48705,20 +48938,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33006 +#: book.translate.xml:33119 msgid "" "For example, to append data to a <acronym>DVD+RW</acronym>, use the " "following:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33009 book.translate.xml:33113 +#: book.translate.xml:33122 book.translate.xml:33226 #, 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:33011 +#: book.translate.xml:33124 msgid "" "The same <citerefentry vendor=\"ports\"><refentrytitle>mkisofs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> options used to burn " @@ -48726,7 +48959,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33015 +#: book.translate.xml:33128 msgid "" "Use <option>-dvd-compat</option> for better media compatibility with " "<acronym>DVD-ROM</acronym> drives. When using <acronym>DVD+RW</acronym>, " @@ -48734,30 +48967,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33021 +#: book.translate.xml:33134 msgid "To blank the media, use:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33023 +#: book.translate.xml:33136 #, 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:33027 +#: book.translate.xml:33140 msgid "Using a <acronym>DVD-RW</acronym>" msgstr "使用 <acronym>DVD-RW</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33029 +#: book.translate.xml:33142 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD-RW</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33034 +#: book.translate.xml:33147 msgid "" "A <acronym>DVD-RW</acronym> accepts two disc formats: incremental sequential " "and restricted overwrite. By default, <acronym>DVD-RW</acronym> discs are in " @@ -48765,7 +48998,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33039 +#: book.translate.xml:33152 msgid "" "A virgin <acronym>DVD-RW</acronym> can be directly written without being " "formatted. However, a non-virgin <acronym>DVD-RW</acronym> in sequential " @@ -48773,18 +49006,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33044 +#: book.translate.xml:33157 msgid "To blank a <acronym>DVD-RW</acronym> in sequential mode:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33047 book.translate.xml:33095 +#: book.translate.xml:33160 book.translate.xml:33208 #, no-wrap msgid "<prompt>#</prompt> <userinput>dvd+rw-format -blank=full <replaceable>/dev/cd0</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33050 +#: book.translate.xml:33163 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</" @@ -48794,13 +49027,13 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:33057 +#: book.translate.xml:33170 #, 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:33059 +#: book.translate.xml:33172 msgid "" "Since <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> automatically attempts " @@ -48809,7 +49042,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33064 +#: book.translate.xml:33177 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 " @@ -48817,20 +49050,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33069 +#: book.translate.xml:33182 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:33073 +#: book.translate.xml:33186 #, 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:33075 +#: book.translate.xml:33188 msgid "" "To append some data to a previous recording, use <option>-M</option> with " "<citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -48841,7 +49074,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33081 +#: book.translate.xml:33194 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 " @@ -48851,24 +49084,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33088 +#: book.translate.xml:33201 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:33093 +#: book.translate.xml:33206 msgid "To change back to sequential format, use:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33099 +#: book.translate.xml:33212 msgid "Multi-Session" msgstr "多階段燒錄 (Multi-Session)" #. (itstool) path: sect2/para -#: book.translate.xml:33101 +#: book.translate.xml:33214 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</" @@ -48878,7 +49111,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33109 +#: book.translate.xml:33222 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 " @@ -48886,7 +49119,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33115 +#: book.translate.xml:33228 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 " @@ -48895,7 +49128,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33123 +#: book.translate.xml:33236 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 " @@ -48904,12 +49137,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33133 book.translate.xml:65535 +#: book.translate.xml:33246 book.translate.xml:65535 msgid "For More Information" msgstr "取得更多資訊" #. (itstool) path: sect2/para -#: book.translate.xml:33135 +#: book.translate.xml:33248 msgid "" "To obtain more information about a <acronym>DVD</acronym>, use <command>dvd" "+rw-mediainfo <replaceable>/dev/cd0</replaceable></command> while the disc " @@ -48917,7 +49150,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33140 +#: book.translate.xml:33253 msgid "" "More information about <application>dvd+rw-tools</application> can be found " "in <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -48928,7 +49161,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33147 +#: book.translate.xml:33260 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</" @@ -48936,19 +49169,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33154 +#: book.translate.xml:33267 msgid "Using a <acronym>DVD-RAM</acronym>" msgstr "使用 <acronym>DVD-RAM</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33156 +#: book.translate.xml:33269 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD-RAM</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33161 +#: book.translate.xml:33274 msgid "" "<acronym>DVD-RAM</acronym> writers can use either a <acronym>SCSI</acronym> " "or <acronym>ATAPI</acronym> interface. For <acronym>ATAPI</acronym> devices, " @@ -48957,7 +49190,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33169 +#: book.translate.xml:33282 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 " @@ -48966,7 +49199,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33175 +#: book.translate.xml:33288 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>/dev/acd0</replaceable> bs=2k count=1</userinput>\n" @@ -48975,49 +49208,49 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33179 +#: book.translate.xml:33292 msgid "" "The <acronym>DVD</acronym> device, <filename>acd0</filename>, must be " "changed according to the configuration." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33183 +#: book.translate.xml:33296 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:33186 +#: book.translate.xml:33299 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount <replaceable>/dev/acd0</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33188 +#: book.translate.xml:33301 msgid "" "Once mounted, the <acronym>DVD-RAM</acronym> will be both readable and " "writeable." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:33194 +#: book.translate.xml:33307 msgid "Creating and Using Floppy Disks" msgstr "建立與使用軟碟" #. (itstool) path: sect1/para -#: book.translate.xml:33218 +#: book.translate.xml:33331 msgid "This section explains how to format a 3.5 inch floppy disk in FreeBSD." msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:33222 +#: book.translate.xml:33335 msgid "Steps to Format a Floppy" msgstr "" #. (itstool) path: procedure/para -#: book.translate.xml:33224 +#: book.translate.xml:33337 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 " @@ -49028,20 +49261,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33233 +#: book.translate.xml:33346 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:33236 +#: book.translate.xml:33349 #, no-wrap msgid "<prompt>#</prompt> <userinput>/usr/sbin/fdformat -f 1440 /dev/fd0</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33240 +#: book.translate.xml:33353 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 " @@ -49049,20 +49282,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33245 +#: book.translate.xml:33358 msgid "" "To write the disk label, use <citerefentry><refentrytitle>bsdlabel</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:33247 +#: book.translate.xml:33360 #, no-wrap msgid "<prompt>#</prompt> <userinput>/sbin/bsdlabel -B -w /dev/fd0 fd1440</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33251 +#: book.translate.xml:33364 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 " @@ -49070,18 +49303,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33256 +#: book.translate.xml:33369 msgid "To format the floppy with FAT, issue:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:33258 +#: book.translate.xml:33371 #, no-wrap msgid "<prompt>#</prompt> <userinput>/sbin/newfs_msdos /dev/fd0</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33262 +#: book.translate.xml:33375 msgid "" "The disk is now ready for use. To use the floppy, mount it with " "<citerefentry><refentrytitle>mount_msdosfs</refentrytitle><manvolnum>8</" @@ -49090,12 +49323,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:33269 +#: book.translate.xml:33382 msgid "Backup Basics" msgstr "備份基礎概念" #. (itstool) path: sect1/para -#: book.translate.xml:33283 +#: book.translate.xml:33396 msgid "" "Implementing a backup plan is essential in order to have the ability to " "recover from disk failure, accidental file deletion, random file corruption, " @@ -49105,7 +49338,7 @@ msgstr "" "毀壞進行恢復,執行備份計劃是必要的。" #. (itstool) path: sect1/para -#: book.translate.xml:33288 +#: book.translate.xml:33401 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 " @@ -49115,7 +49348,7 @@ msgstr "" "可接受的停機時間。一些可用來備份的技術有:" #. (itstool) path: listitem/para -#: book.translate.xml:33295 +#: book.translate.xml:33408 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 " @@ -49125,7 +49358,7 @@ msgstr "" "護,但要還原會較慢且不方便,特別是對於沒有權限的使用者。" #. (itstool) path: listitem/para -#: book.translate.xml:33302 +#: book.translate.xml:33415 msgid "" "File system snapshots, which are useful for restoring deleted files or " "previous versions of files." @@ -49133,7 +49366,7 @@ msgstr "" "檔案系統快照 (Snapshot),對於還原已刪除的檔案或先前版本的檔案非常有用。" #. (itstool) path: listitem/para -#: book.translate.xml:33307 +#: book.translate.xml:33420 msgid "" "Copies of whole file systems or disks which are synchronized with another " "system on the network using a scheduled <package>net/rsync</package>." @@ -49142,7 +49375,7 @@ msgstr "" "的另一個系統同步。" #. (itstool) path: listitem/para -#: book.translate.xml:33313 +#: book.translate.xml:33426 msgid "" "Hardware or software <acronym>RAID</acronym>, which minimizes or avoids " "downtime when a disk fails." @@ -49150,7 +49383,7 @@ msgstr "" "硬體或軟體 <acronym>RAID</acronym>,來最小化或避免當磁碟故障時的停機時間。" #. (itstool) path: sect1/para -#: book.translate.xml:33318 +#: book.translate.xml:33431 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 " @@ -49163,35 +49396,35 @@ msgstr "" "各別目錄或檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:33325 +#: book.translate.xml:33438 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:33329 +#: book.translate.xml:33442 msgid "File System Backups" msgstr "檔案系統備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33331 +#: book.translate.xml:33444 msgid "" "<primary>backup software</primary> <secondary>dump / restore</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33335 +#: book.translate.xml:33448 msgid "<primary><command>dump</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33338 +#: book.translate.xml:33451 msgid "<primary><command>restore</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33342 +#: book.translate.xml:33455 msgid "" "The traditional <trademark class=\"registered\">UNIX</trademark> programs " "for backing up a file system are <citerefentry><refentrytitle>dump</" @@ -49217,7 +49450,7 @@ msgstr "" "始資料區塊,而非直接備份檔案與目錄。" #. (itstool) path: note/para -#: book.translate.xml:33355 +#: book.translate.xml:33468 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 " @@ -49229,7 +49462,7 @@ msgstr "" "掛載點或連結到其他檔案系統的符號連結。" #. (itstool) path: sect2/para -#: book.translate.xml:33362 +#: book.translate.xml:33475 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 " @@ -49241,7 +49474,7 @@ msgstr "" "<envar>TMPDIR</envar> 到一個擁有較多可用空間的目錄以讓還原可以順利執行。" #. (itstool) path: sect2/para -#: book.translate.xml:33369 +#: book.translate.xml:33482 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" @@ -49255,12 +49488,12 @@ msgstr "" "必須另外在指令列修改這個預設值。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33376 +#: book.translate.xml:33489 msgid "<primary><filename>.rhosts</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33379 +#: book.translate.xml:33492 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 " @@ -49276,7 +49509,7 @@ msgstr "" "全性並不足夠。" #. (itstool) path: sect2/para -#: book.translate.xml:33385 +#: book.translate.xml:33498 msgid "" "Instead, one can use <command>dump</command> and <command>restore</command> " "in a more secure fashion over an <acronym>SSH</acronym> connection. This " @@ -49290,12 +49523,12 @@ msgstr "" "機。" #. (itstool) path: example/title -#: book.translate.xml:33393 +#: book.translate.xml:33506 msgid "Using <command>dump</command> over <application>ssh</application>" msgstr "在 <application>ssh</application> 使用 <command>dump</command>" #. (itstool) path: example/screen -#: book.translate.xml:33396 +#: book.translate.xml:33509 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>/sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \\\n" @@ -49303,7 +49536,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33400 +#: book.translate.xml:33513 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:" @@ -49312,7 +49545,7 @@ msgstr "" "份到遠端系統的磁帶機:" #. (itstool) path: example/title -#: book.translate.xml:33405 +#: book.translate.xml:33518 msgid "" "Using <command>dump</command> over <application>ssh</application> with " "<envar>RSH</envar> Set" @@ -49321,32 +49554,32 @@ msgstr "" "<envar>RSH</envar> 設定" #. (itstool) path: example/screen -#: book.translate.xml:33409 +#: book.translate.xml:33522 #, 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:33414 +#: book.translate.xml:33527 msgid "Directory Backups" msgstr "目錄備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33416 +#: book.translate.xml:33529 msgid "" "<primary>backup software</primary> <secondary><command>tar</command></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33421 +#: book.translate.xml:33534 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:33425 +#: book.translate.xml:33538 msgid "" "A good choice for making a backup of all of the files in a directory is " "<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></" @@ -49361,12 +49594,12 @@ msgstr "" "預設會做一個遞迴備份到一個磁帶機,可以使用參數來改指定備份檔案的名稱。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33431 +#: book.translate.xml:33544 msgid "<primary><command>tar</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33433 +#: book.translate.xml:33546 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, " @@ -49378,18 +49611,18 @@ msgstr "" "錄。" #. (itstool) path: example/title -#: book.translate.xml:33440 +#: book.translate.xml:33553 msgid "Backing Up the Current Directory with <command>tar</command>" msgstr "使用 <command>tar</command> 備份目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33443 +#: book.translate.xml:33556 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar czvf <replaceable>/tmp/mybackup.tgz</replaceable> . </userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33446 +#: book.translate.xml:33559 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 " @@ -49402,18 +49635,18 @@ msgstr "" "還原到一個暫時的目錄或指定備份檔中的檔案做還原。" #. (itstool) path: example/title -#: book.translate.xml:33454 +#: book.translate.xml:33567 msgid "Restoring Up the Current Directory with <command>tar</command>" msgstr "使用 <command>tar</command> 還原目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33457 +#: book.translate.xml:33570 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xzvf <replaceable>/tmp/mybackup.tgz</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33460 +#: book.translate.xml:33573 msgid "" "There are dozens of available switches which are described in " "<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></" @@ -49427,14 +49660,14 @@ msgstr "" "檔案時排除。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33466 +#: book.translate.xml:33579 msgid "" "<primary>backup software</primary> <secondary><command>cpio</command></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33471 +#: book.translate.xml:33584 msgid "" "To create a backup using a specified list of files and directories, " "<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></" @@ -49448,7 +49681,7 @@ msgstr "" "必須提供檔案的清單才能做備份。" #. (itstool) path: sect2/para -#: book.translate.xml:33477 +#: book.translate.xml:33590 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 " @@ -49460,7 +49693,7 @@ msgstr "" "command> 來建立名稱為 <filename>/tmp/mybackup.cpio</filename> 的備份檔。" #. (itstool) path: example/title -#: book.translate.xml:33485 +#: book.translate.xml:33598 msgid "" "Using <command>ls</command> and <command>cpio</command> to Make a Recursive " "Backup of the Current Directory" @@ -49469,36 +49702,36 @@ msgstr "" "份" #. (itstool) path: example/screen -#: book.translate.xml:33488 +#: book.translate.xml:33601 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -R | cpio -ovF <replaceable>/tmp/mybackup.cpio</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33491 +#: book.translate.xml:33604 msgid "" "<primary>backup software</primary> <secondary><command>pax</command></" "secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33495 +#: book.translate.xml:33608 msgid "<primary><command>pax</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: para/indexterm -#: book.translate.xml:33496 book.translate.xml:43425 +#: book.translate.xml:33609 book.translate.xml:43660 msgid "<primary>POSIX</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33497 +#: book.translate.xml:33610 msgid "<primary>IEEE</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33499 +#: book.translate.xml:33612 msgid "" "A backup utility which tries to bridge the features provided by " "<command>tar</command> and <command>cpio</command> is " @@ -49517,34 +49750,34 @@ msgstr "" "<command>cpio</command> and <command>tar</command> 格式並加入自己的新格式。" #. (itstool) path: sect2/para -#: book.translate.xml:33508 +#: book.translate.xml:33621 msgid "" "The <command>pax</command> equivalent to the previous examples would be:" msgstr "以先前的例子改使用 <command>pax</command> 會是:" #. (itstool) path: example/title -#: book.translate.xml:33512 +#: book.translate.xml:33625 msgid "Backing Up the Current Directory with <command>pax</command>" msgstr "使用 <command>pax</command> 備份目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33515 +#: book.translate.xml:33628 #, no-wrap msgid "<prompt>#</prompt> <userinput>pax -wf <replaceable>/tmp/mybackup.pax</replaceable> .</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33520 +#: book.translate.xml:33633 msgid "Using Data Tapes for Backups" msgstr "使用資料磁帶備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33522 +#: book.translate.xml:33635 msgid "<primary>tape media</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33524 +#: book.translate.xml:33637 msgid "" "While tape technology has continued to evolve, modern backup systems tend to " "combine off-site backups with local removable media. FreeBSD supports any " @@ -49558,7 +49791,7 @@ msgstr "" "與 <acronym>USB</acronym> 磁帶機。" #. (itstool) path: sect2/para -#: book.translate.xml:33532 +#: book.translate.xml:33645 msgid "" "For <acronym>SCSI</acronym> tape devices, FreeBSD uses the " "<citerefentry><refentrytitle>sa</refentrytitle><manvolnum>4</manvolnum></" @@ -49578,7 +49811,7 @@ msgstr "" "<filename>/dev/esa0</filename> 時,當關閉裝置後便會退出磁帶。" #. (itstool) path: sect2/para -#: book.translate.xml:33543 +#: book.translate.xml:33656 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 " @@ -49590,13 +49823,13 @@ msgstr "" "新檔案前跳過這些檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:33549 +#: book.translate.xml:33662 #, no-wrap msgid "<prompt>#</prompt> <userinput>mt -f /dev/nsa0 fsf 3</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33551 +#: book.translate.xml:33664 msgid "" "This utility supports many operations. Refer to " "<citerefentry><refentrytitle>mt</refentrytitle><manvolnum>1</manvolnum></" @@ -49606,7 +49839,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 了解詳情。" #. (itstool) path: sect2/para -#: book.translate.xml:33554 +#: book.translate.xml:33667 msgid "" "To write a single file to tape using <command>tar</command>, specify the " "name of the tape device and the file to backup:" @@ -49615,26 +49848,26 @@ msgstr "" "備份的檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:33558 +#: book.translate.xml:33671 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar cvf /dev/sa0 <replaceable>file</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33560 +#: book.translate.xml:33673 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:33563 +#: book.translate.xml:33676 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xvf /dev/sa0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33565 +#: book.translate.xml:33678 msgid "" "To backup a <acronym>UFS</acronym> file system, use <command>dump</command>. " "This examples backs up <filename>/usr</filename> without rewinding the tape " @@ -49644,36 +49877,36 @@ msgstr "" "下例子會備份 <filename>/usr</filename> 並在完成時不做倒帶:" #. (itstool) path: sect2/screen -#: book.translate.xml:33570 +#: book.translate.xml:33683 #, no-wrap msgid "<prompt>#</prompt> <userinput>dump -0aL -b64 -f /dev/nsa0 /usr</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33572 +#: book.translate.xml:33685 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:33576 +#: book.translate.xml:33689 #, no-wrap msgid "<prompt>#</prompt> <userinput>restore -i -f /dev/nsa0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33580 +#: book.translate.xml:33693 msgid "Third-Party Backup Utilities" msgstr "第三方備份工具" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33582 +#: book.translate.xml:33695 msgid "<primary>backup software</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33586 +#: book.translate.xml:33699 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 " @@ -49686,7 +49919,7 @@ msgstr "" "或網路上所有電腦的備份。" #. (itstool) path: sect2/para -#: book.translate.xml:33593 +#: book.translate.xml:33706 msgid "" "Popular utilities include <application>Amanda</application>, " "<application>Bacula</application>, <application>rsync</application>, and " @@ -49697,49 +49930,49 @@ msgstr "" "application>。" #. (itstool) path: sect2/title -#: book.translate.xml:33601 +#: book.translate.xml:33714 msgid "Emergency Recovery" msgstr "緊急還原" #. (itstool) path: sect2/para -#: book.translate.xml:33603 +#: book.translate.xml:33716 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:33607 +#: book.translate.xml:33720 msgid "<primary><command>bsdlabel</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33610 +#: book.translate.xml:33723 msgid "Create a print copy of the output of the following commands:" msgstr "替以下指令的輸出建立一份可列印的複本:" #. (itstool) path: listitem/para -#: book.translate.xml:33615 +#: book.translate.xml:33728 msgid "<command>gpart show</command>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33619 +#: book.translate.xml:33732 msgid "<command>more /etc/fstab</command>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33623 +#: book.translate.xml:33736 msgid "<command>dmesg</command>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33627 +#: book.translate.xml:33740 msgid "<primary>livefs <acronym>CD</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33630 +#: book.translate.xml:33743 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 " @@ -49753,23 +49986,23 @@ msgstr "" "後自備份還原資料。" #. (itstool) path: note/para -#: book.translate.xml:33639 +#: book.translate.xml:33752 msgid "" -"The installation media for FreeBSD/i386 10.4-RELEASE does not include a " +"The installation media for FreeBSD/i386 11.2-RELEASE does not include a " "rescue shell. For this version, instead download and burn a Livefs " "<acronym>CD</acronym> image from <uri xlink:href=\"ftp://ftp.FreeBSD.org/pub/" -"FreeBSD/releases/i386/ISO-IMAGES/10.4/FreeBSD-10.4-RELEASE-i386-livefs.iso" -"\">ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/10.4/" -"FreeBSD-10.4-RELEASE-i386-livefs.iso</uri>." +"FreeBSD/releases/i386/ISO-IMAGES/11.2/FreeBSD-11.2-RELEASE-i386-livefs.iso" +"\">ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/11.2/" +"FreeBSD-11.2-RELEASE-i386-livefs.iso</uri>." msgstr "" -"FreeBSD/i386 10.4-RELEASE 的安裝媒體未含救援 Shell,針對該版本,可改自 <uri " -"xlink:href=\"ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/10.4/" -"FreeBSD-10.4-RELEASE-i386-livefs.iso\">ftp://ftp.FreeBSD.org/pub/FreeBSD/" -"releases/i386/ISO-IMAGES/10.4/FreeBSD-10.4-RELEASE-i386-livefs.iso</uri> 下" -"載 Livefs <acronym>CD</acronym> 映像檔並燒錄。" +"FreeBSD/i386 11.2-RELEASE 的安裝媒體未內含救援 Shell,針對該版本,可改自 " +"<uri xlink:href=\"ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-" +"IMAGES/11.2/FreeBSD-11.2-RELEASE-i386-livefs.iso\">ftp://ftp.FreeBSD.org/pub/" +"FreeBSD/releases/i386/ISO-IMAGES/11.2/FreeBSD-11.2-RELEASE-i386-livefs.iso</" +"uri> 下載 Livefs <acronym>CD</acronym> 映像檔並燒錄。" #. (itstool) path: sect2/para -#: book.translate.xml:33646 +#: book.translate.xml:33759 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 " @@ -49780,7 +50013,7 @@ msgstr "" "份檔一併保存,這份記錄可以避免在緊張壓力下做緊急還原時因不慎造成備份的毀壞。" #. (itstool) path: sect2/para -#: book.translate.xml:33652 +#: book.translate.xml:33765 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 " @@ -49790,19 +50023,19 @@ msgstr "" "位置。" #. (itstool) path: info/title -#: book.translate.xml:33660 +#: book.translate.xml:33773 msgid "Memory Disks" msgstr "記憶體磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:33663 +#: book.translate.xml:33776 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33673 +#: book.translate.xml:33786 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 " @@ -49812,7 +50045,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33680 +#: book.translate.xml:33793 msgid "" "In FreeBSD, the <citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> driver is used to provide support for memory " @@ -49821,23 +50054,23 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:33685 +#: book.translate.xml:33798 #, no-wrap msgid "device md" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33688 +#: book.translate.xml:33801 msgid "Attaching and Detaching Existing Images" msgstr "連接與解除連接既有的映象檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33690 +#: book.translate.xml:33803 msgid "<primary>disks</primary> <secondary>memory</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33695 +#: book.translate.xml:33808 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. " @@ -49849,7 +50082,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33705 +#: book.translate.xml:33818 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -f <replaceable>diskimage.iso</replaceable> -u <replaceable>0</replaceable></userinput>\n" @@ -49857,7 +50090,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33708 +#: book.translate.xml:33821 msgid "" "Notice that <option>-t cd9660</option> was used to mount an ISO format. If a " "unit number is not specified with <option>-u</option>, <command>mdconfig</" @@ -49869,12 +50102,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33716 +#: book.translate.xml:33829 msgid "<primary>disks</primary> <secondary>detaching a memory disk</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33721 +#: book.translate.xml:33834 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 " @@ -49883,7 +50116,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33727 +#: book.translate.xml:33840 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /mnt</userinput>\n" @@ -49891,24 +50124,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33730 +#: book.translate.xml:33843 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:33735 +#: book.translate.xml:33848 msgid "Creating a File- or Memory-Backed Memory Disk" msgstr "建立以檔案或記憶體為基底的磁碟" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33737 +#: book.translate.xml:33850 msgid "<primary>disks</primary> <secondary>memory file system</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33741 +#: book.translate.xml:33854 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 " @@ -49918,7 +50151,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33748 +#: book.translate.xml:33861 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 " @@ -49928,7 +50161,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33756 +#: book.translate.xml:33869 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t swap -s <replaceable>5</replaceable>m -u <replaceable>1</replaceable></userinput>\n" @@ -49945,15 +50178,15 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33768 +#: book.translate.xml:33881 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</" +"use. This example creates an empty 5MB file named <filename>newimage</" "filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33772 +#: book.translate.xml:33885 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>newimage</replaceable> bs=1k count=<replaceable>5</replaceable>k</userinput>\n" @@ -49962,7 +50195,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33776 +#: book.translate.xml:33889 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 " @@ -49970,12 +50203,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33781 +#: book.translate.xml:33894 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -f <replaceable>newimage</replaceable> -u <replaceable>0</replaceable></userinput>\n" "<prompt>#</prompt> <userinput>bsdlabel -w md<replaceable>0</replaceable> auto</userinput>\n" -"<prompt>#</prompt> <userinput>newfs md<replaceable>0</replaceable>a</userinput>\n" +"<prompt>#</prompt> <userinput>newfs -U md<replaceable>0</replaceable>a</userinput>\n" "/dev/md0a: 5.0MB (10224 sectors) block size 16384, fragment size 2048\n" " using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes.\n" "super-block backups (for fsck -b #) at:\n" @@ -49987,7 +50220,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33793 +#: book.translate.xml:33906 msgid "" "It takes several commands to create a file- or memory-backed file system " "using <command>mdconfig</command>. FreeBSD also comes with <command>mdmfs</" @@ -49999,26 +50232,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33804 +#: book.translate.xml:33917 #, 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:33806 +#: book.translate.xml:33919 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:33809 +#: book.translate.xml:33922 #, 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:33811 +#: book.translate.xml:33924 msgid "" "If the unit number is not specified, <command>mdmfs</command> will " "automatically select an unused memory device. For more details about " @@ -50027,24 +50260,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:33820 +#: book.translate.xml:33933 msgid "File System Snapshots" msgstr "檔案系統快照" #. (itstool) path: sect1/indexterm -#: book.translate.xml:33833 +#: book.translate.xml:33946 msgid "<primary>file systems</primary> <secondary>snapshots</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33838 +#: book.translate.xml:33951 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:33842 +#: book.translate.xml:33955 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 " @@ -50059,7 +50292,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33854 +#: book.translate.xml:33967 msgid "" "The un-alterable <option>snapshot</option> file flag is set by " "<citerefentry><refentrytitle>mksnap_ffs</refentrytitle><manvolnum>8</" @@ -50070,7 +50303,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33859 +#: book.translate.xml:33972 msgid "" "Snapshots are created using <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. To place a snapshot " @@ -50079,26 +50312,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:33864 +#: book.translate.xml:33977 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -u -o snapshot /var/snapshot/snap /var</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33866 +#: book.translate.xml:33979 msgid "" "Alternatively, use <citerefentry><refentrytitle>mksnap_ffs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to create the snapshot:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:33869 +#: book.translate.xml:33982 #, no-wrap msgid "<prompt>#</prompt> <userinput>mksnap_ffs /var /var/snapshot/snap</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33871 +#: book.translate.xml:33984 msgid "" "One can find snapshot files on a file system, such as <filename>/var</" "filename>, using <citerefentry><refentrytitle>find</" @@ -50106,25 +50339,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:33875 +#: book.translate.xml:33988 #, no-wrap msgid "<prompt>#</prompt> <userinput>find /var -flags snapshot</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33877 +#: book.translate.xml:33990 msgid "Once a snapshot has been created, it has several uses:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33882 +#: book.translate.xml:33995 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:33888 +#: book.translate.xml:34001 msgid "" "The file system integrity checker, <citerefentry><refentrytitle>fsck</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, may be run on the " @@ -50133,7 +50366,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33895 +#: book.translate.xml:34008 msgid "" "Running <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on the snapshot will produce a dump file that is " @@ -50144,7 +50377,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33903 +#: book.translate.xml:34016 msgid "" "The snapshot can be mounted as a frozen image of the file system. To " "<citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></" @@ -50152,7 +50385,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:33907 +#: book.translate.xml:34020 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t vnode -o readonly -f /var/snapshot/snap -u 4</userinput>\n" @@ -50160,7 +50393,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33912 +#: book.translate.xml:34025 msgid "" "The frozen <filename>/var</filename> is now available through <filename>/" "mnt</filename>. Everything will initially be in the same state it was during " @@ -50169,7 +50402,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:33918 +#: book.translate.xml:34031 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /mnt</userinput>\n" @@ -50177,7 +50410,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33921 +#: book.translate.xml:34034 msgid "" "For more information about <option>softupdates</option> and file system " "snapshots, including technical papers, visit Marshall Kirk McKusick's " @@ -50186,17 +50419,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:33927 +#: book.translate.xml:34040 msgid "Disk Quotas" msgstr "磁碟配額" #. (itstool) path: sect1/indexterm -#: book.translate.xml:33929 +#: book.translate.xml:34042 msgid "<primary>accounting</primary> <secondary>disk space</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33935 +#: book.translate.xml:34048 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. " @@ -50207,7 +50440,7 @@ msgstr "" "案數量。這個可避免一個使用者或群組成員耗盡所有磁碟的可用空間。" #. (itstool) path: sect1/para -#: book.translate.xml:33940 +#: book.translate.xml:34053 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 " @@ -50218,17 +50451,17 @@ msgstr "" "quota\"/>" #. (itstool) path: sect2/title -#: book.translate.xml:33945 +#: book.translate.xml:34058 msgid "Enabling Disk Quotas" msgstr "開啟磁碟配額" #. (itstool) path: sect2/para -#: book.translate.xml:33947 +#: book.translate.xml:34060 msgid "To determine if the FreeBSD kernel provides support for disk quotas:" msgstr "查看 FreeBSD 核心是否支援磁碟配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:33950 +#: book.translate.xml:34063 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sysctl kern.features.ufs_quota</userinput>\n" @@ -50236,7 +50469,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33953 +#: book.translate.xml:34066 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 " @@ -50248,29 +50481,29 @@ msgstr "" "\"kernelconfig\"/> 的指示重新編譯核心:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33958 +#: book.translate.xml:34071 #, no-wrap msgid "options QUOTA" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33960 +#: book.translate.xml:34073 msgid "Next, enable disk quotas in <filename>/etc/rc.conf</filename>:" msgstr "接著,在 <filename>/etc/rc.conf</filename> 開啟磁碟配額:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33963 +#: book.translate.xml:34076 #, no-wrap msgid "quota_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33965 book.translate.xml:34099 +#: book.translate.xml:34078 book.translate.xml:34212 msgid "<primary>disk quotas</primary> <secondary>checking</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33969 +#: book.translate.xml:34082 msgid "" "Normally on bootup, the quota integrity of each file system is checked by " "<citerefentry><refentrytitle>quotacheck</refentrytitle><manvolnum>8</" @@ -50287,13 +50520,13 @@ msgstr "" "到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33977 +#: book.translate.xml:34090 #, no-wrap msgid "check_quotas=\"NO\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33979 +#: book.translate.xml:34092 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 " @@ -50305,13 +50538,13 @@ msgstr "" "到 <filename>/etc/fstab</filename> 要開啟配額的檔案系統的項目中。例如:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33985 +#: book.translate.xml:34098 #, no-wrap msgid "/dev/da1s2g /home ufs rw,userquota 1 2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33987 +#: book.translate.xml:34100 msgid "" "To enable group quotas, use <option>groupquota</option> instead. To enable " "both user and group quotas, separate the options with a comma:" @@ -50320,13 +50553,13 @@ msgstr "" "額,可使用逗號隔開選項:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33991 +#: book.translate.xml:34104 #, no-wrap msgid "/dev/da1s2g /home ufs rw,userquota,groupquota 1 2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33993 +#: book.translate.xml:34106 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>. " @@ -50340,7 +50573,7 @@ msgstr "" "議指定其他位置來儲存配額檔案。" #. (itstool) path: sect2/para -#: book.translate.xml:33999 +#: book.translate.xml:34112 msgid "" "Once the configuration is complete, reboot the system and <filename>/etc/rc</" "filename> will automatically run the appropriate commands to create the " @@ -50352,7 +50585,7 @@ msgstr "" "檔。" #. (itstool) path: sect2/para -#: book.translate.xml:34005 +#: book.translate.xml:34118 msgid "" "In the normal course of operations, there should be no need to manually run " "<citerefentry><refentrytitle>quotacheck</refentrytitle><manvolnum>8</" @@ -50370,42 +50603,42 @@ msgstr "" "指令的操作手冊來熟悉這些指令的操作。" #. (itstool) path: sect2/title -#: book.translate.xml:34012 +#: book.translate.xml:34125 msgid "Setting Quota Limits" msgstr "設定配額限制" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34014 +#: book.translate.xml:34127 msgid "<primary>disk quotas</primary> <secondary>limits</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34019 +#: book.translate.xml:34132 msgid "To verify that quotas are enabled, run:" msgstr "要確認配額已經開啟,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:34022 +#: book.translate.xml:34135 #, no-wrap msgid "<prompt>#</prompt> <userinput>quota -v</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34024 +#: book.translate.xml:34137 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:34028 +#: book.translate.xml:34141 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:34031 +#: book.translate.xml:34144 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. " @@ -50418,12 +50651,12 @@ msgstr "" "可進一步細分為兩個類型:硬性 (Hard) 及軟性 (Soft) 限制。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34038 +#: book.translate.xml:34151 msgid "<primary>hard limit</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34039 +#: book.translate.xml:34152 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 " @@ -50437,12 +50670,12 @@ msgstr "" "的空間將會失敗。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34047 +#: book.translate.xml:34160 msgid "<primary>soft limit</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34048 +#: book.translate.xml:34161 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 " @@ -50455,7 +50688,7 @@ msgstr "" "空間。當使用者使用的空間回到低於軟性限制內,寬限期就會被重置。" #. (itstool) path: sect2/para -#: book.translate.xml:34055 +#: book.translate.xml:34168 msgid "" "In the following example, the quota for the <systemitem class=\"username" "\">test</systemitem> account is being edited. When <command>edquota</" @@ -50468,7 +50701,7 @@ msgstr "" "的編輯器來編輯配額限制。預設的編輯器為 <application>vi</application>。" #. (itstool) path: sect2/screen -#: book.translate.xml:34061 +#: book.translate.xml:34174 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>edquota -u test</userinput>\n" @@ -50480,7 +50713,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34068 +#: book.translate.xml:34181 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 " @@ -50495,18 +50728,18 @@ msgstr "" "性限制到 <literal>600</literal>,可更改行內的值如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34077 +#: book.translate.xml:34190 #, no-wrap msgid "/usr: kbytes in use: 65, limits (soft = 500, hard = 600)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34079 +#: book.translate.xml:34192 msgid "The new quota limits take effect upon exiting the editor." msgstr "新的配額限制將在離開編輯器後生效。" #. (itstool) path: sect2/para -#: book.translate.xml:34082 +#: book.translate.xml:34195 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 " @@ -50521,13 +50754,13 @@ msgstr "" "<literal>10,000</literal> 到 <literal>19,999</literal> 的使用者:" #. (itstool) path: sect2/screen -#: book.translate.xml:34091 +#: book.translate.xml:34204 #, no-wrap msgid "<prompt>#</prompt> <userinput>edquota -p test 10000-19999</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34093 +#: book.translate.xml:34206 msgid "" "For more information, refer to <citerefentry><refentrytitle>edquota</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." @@ -50536,12 +50769,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:34097 +#: book.translate.xml:34210 msgid "Checking Quota Limits and Disk Usage" msgstr "檢查配額限制與磁碟使用狀況" #. (itstool) path: sect2/para -#: book.translate.xml:34104 +#: book.translate.xml:34217 msgid "" "To check individual user or group quotas and disk usage, use " "<citerefentry><refentrytitle>quota</refentrytitle><manvolnum>1</manvolnum></" @@ -50559,7 +50792,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:34111 +#: book.translate.xml:34224 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 " @@ -50573,7 +50806,7 @@ msgstr "" "查詢某個使用者在兩個檔案系統上的配額限制的範例輸出。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34119 +#: book.translate.xml:34232 #, no-wrap msgid "" "Disk quotas for user test (uid 1002):\n" @@ -50583,12 +50816,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34124 +#: book.translate.xml:34237 msgid "<primary>grace period</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34126 +#: book.translate.xml:34239 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 " @@ -50600,18 +50833,18 @@ msgstr "" "超出配額限制。" #. (itstool) path: sect2/title -#: book.translate.xml:34134 +#: book.translate.xml:34247 msgid "Quotas over NFS" msgstr "NFS 上的配額" #. (itstool) path: sect2/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:34136 book.translate.xml:52952 +#: book.translate.xml:34249 book.translate.xml:53192 msgid "<primary>NFS</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34138 +#: book.translate.xml:34251 msgid "" "Quotas are enforced by the quota subsystem on the <acronym>NFS</acronym> " "server. The <citerefentry><refentrytitle>rpc.rquotad</" @@ -50626,7 +50859,7 @@ msgstr "" "訊。" #. (itstool) path: sect2/para -#: book.translate.xml:34144 +#: book.translate.xml:34257 msgid "" "On the <acronym>NFS</acronym> server, enable <command>rpc.rquotad</command> " "by removing the <literal>#</literal> from this line in <filename>/etc/inetd." @@ -50636,23 +50869,23 @@ msgstr "" "<command>rpc.rquotad</command> 行前的 <literal>#</literal> 移除來開啟:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34149 +#: book.translate.xml:34262 #, no-wrap msgid "rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34151 +#: book.translate.xml:34264 msgid "Then, restart <command>inetd</command>:" msgstr "然後重新啟動 <command>inetd</command>:" #. (itstool) path: info/title -#: book.translate.xml:34159 +#: book.translate.xml:34272 msgid "Encrypting Disk Partitions" msgstr "磁碟分割區加密" #. (itstool) path: affiliation/address -#: book.translate.xml:34169 +#: book.translate.xml:34282 #, no-wrap msgid "" "\n" @@ -50661,7 +50894,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34162 +#: book.translate.xml:34275 msgid "" "<personname> <firstname>Lucky</firstname> <surname>Green</surname> </" "personname> <contrib>Contributed by </contrib> <affiliation> <_:address-1/> " @@ -50669,12 +50902,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34177 +#: book.translate.xml:34290 msgid "<primary>disks</primary> <secondary>encrypting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34182 +#: book.translate.xml:34295 msgid "" "FreeBSD offers excellent online protections against unauthorized data " "access. File permissions and <link linkend=\"mac\">Mandatory Access Control</" @@ -50686,7 +50919,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34191 +#: book.translate.xml:34304 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 " @@ -50699,7 +50932,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34202 +#: book.translate.xml:34315 msgid "" "This chapter demonstrates how to create an encrypted file system on FreeBSD. " "It first demonstrates the process using <command>gbde</command> and then " @@ -50707,12 +50940,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34208 +#: book.translate.xml:34321 msgid "Disk Encryption with <application>gbde</application>" msgstr "使用 <application>gbde</application> 做磁碟加密" #. (itstool) path: sect2/para -#: book.translate.xml:34211 +#: book.translate.xml:34324 msgid "" "The objective of the <citerefentry><refentrytitle>gbde</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> facility is to provide " @@ -50726,7 +50959,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34222 +#: book.translate.xml:34335 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 " @@ -50739,31 +50972,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34231 +#: book.translate.xml:34344 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:34235 +#: book.translate.xml:34348 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_bde</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34237 +#: book.translate.xml:34350 msgid "" "If using a custom kernel configuration file, ensure it contains this line:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34240 +#: book.translate.xml:34353 msgid "<literal>options GEOM_BDE</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34242 +#: book.translate.xml:34355 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>/" @@ -50771,17 +51004,17 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:34247 +#: book.translate.xml:34360 msgid "Encrypting a Partition with <application>gbde</application>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34251 +#: book.translate.xml:34364 msgid "Add the New Hard Drive" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34253 +#: book.translate.xml:34366 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 " @@ -50791,7 +51024,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34260 +#: book.translate.xml:34373 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/ad*</userinput>\n" @@ -50801,18 +51034,18 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34267 +#: book.translate.xml:34380 msgid "Create a Directory to Hold <command>gbde</command> Lock Files" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34270 +#: book.translate.xml:34383 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir /etc/gbde</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34272 +#: book.translate.xml:34385 msgid "" "The <application>gbde</application> lock file contains information that " "<application>gbde</application> requires to access encrypted partitions. " @@ -50823,12 +51056,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34283 +#: book.translate.xml:34396 msgid "Initialize the <command>gbde</command> Partition" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34286 +#: book.translate.xml:34399 msgid "" "A <application>gbde</application> partition must be initialized before it " "can be used. This initialization needs to be performed only once. This " @@ -50838,7 +51071,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34294 +#: book.translate.xml:34407 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c.lock</userinput>\n" @@ -50854,7 +51087,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34305 +#: book.translate.xml:34418 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 " @@ -50866,7 +51099,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34313 +#: book.translate.xml:34426 msgid "" "This initialization creates a lock file for the <application>gbde</" "application> partition. In this example, it is stored as <filename>/etc/gbde/" @@ -50876,7 +51109,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:34322 +#: book.translate.xml:34435 msgid "" "Lock files <emphasis>must</emphasis> be backed up together with the contents " "of any encrypted partitions. Without the lock file, the legitimate owner " @@ -50884,18 +51117,18 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34331 +#: book.translate.xml:34444 msgid "Attach the Encrypted Partition to the Kernel" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34334 +#: book.translate.xml:34447 #, no-wrap msgid "<prompt>#</prompt> <userinput>gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lock</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34336 +#: book.translate.xml:34449 msgid "" "This command will prompt to input the passphrase that was selected during " "the initialization of the encrypted partition. The new encrypted device will " @@ -50904,7 +51137,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34342 +#: book.translate.xml:34455 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/ad*</userinput>\n" @@ -50914,12 +51147,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34349 +#: book.translate.xml:34462 msgid "Create a File System on the Encrypted Device" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34352 +#: book.translate.xml:34465 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 " @@ -50928,23 +51161,23 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34360 +#: book.translate.xml:34473 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/ad4s1c.bde</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34364 +#: book.translate.xml:34477 msgid "Mount the Encrypted Partition" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34366 +#: book.translate.xml:34479 msgid "Create a mount point and mount the encrypted file system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34369 +#: book.translate.xml:34482 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /private</userinput>\n" @@ -50952,17 +51185,17 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34374 +#: book.translate.xml:34487 msgid "Verify That the Encrypted File System is Available" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34377 +#: book.translate.xml:34490 msgid "The encrypted file system should now be visible and available for use:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34380 +#: book.translate.xml:34493 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>df -H</userinput>\n" @@ -50976,7 +51209,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34391 +#: book.translate.xml:34504 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 " @@ -50985,7 +51218,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34397 +#: book.translate.xml:34510 #, no-wrap msgid "" "gbde_autoattach_all=\"YES\"\n" @@ -50994,7 +51227,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34401 +#: book.translate.xml:34514 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 " @@ -51004,7 +51237,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:34411 +#: book.translate.xml:34524 msgid "" "<application>sysinstall</application> is incompatible with " "<application>gbde</application>-encrypted devices. All <filename>*.bde</" @@ -51015,18 +51248,18 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:34419 +#: book.translate.xml:34532 #, no-wrap msgid "<prompt>#</prompt> <userinput>gbde detach /dev/<replaceable>ad4s1c</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34425 +#: book.translate.xml:34538 msgid "Disk Encryption with <command>geli</command>" msgstr "使用 <command>geli</command> 做磁碟加密" #. (itstool) path: sect2/para -#: book.translate.xml:34438 +#: book.translate.xml:34551 msgid "" "An alternative cryptographic <acronym>GEOM</acronym> class is available " "using <command>geli</command>. This control utility adds some features and " @@ -51035,7 +51268,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34446 +#: book.translate.xml:34559 msgid "" "Utilizes the <citerefentry><refentrytitle>crypto</" "refentrytitle><manvolnum>9</manvolnum></citerefentry> framework and " @@ -51043,31 +51276,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34452 +#: book.translate.xml:34565 msgid "" "Supports multiple cryptographic algorithms such as <acronym>AES</acronym>, " "Blowfish, and <acronym>3DES</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34458 +#: book.translate.xml:34571 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:34464 +#: book.translate.xml:34577 msgid "Allows the use of two independent keys." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34468 +#: book.translate.xml:34581 msgid "It is fast as it performs simple sector-to-sector encryption." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34473 +#: book.translate.xml:34586 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 " @@ -51075,14 +51308,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34479 +#: book.translate.xml:34592 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:34485 +#: book.translate.xml:34598 msgid "" "More features and usage examples can be found in " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51090,7 +51323,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34488 +#: book.translate.xml:34601 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 " @@ -51102,17 +51335,17 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:34499 +#: book.translate.xml:34612 msgid "Encrypting a Partition with <command>geli</command>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34503 +#: book.translate.xml:34616 msgid "Load <command>geli</command> Support" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34505 +#: book.translate.xml:34618 msgid "" "Support for <command>geli</command> is available as a loadable kernel " "module. To configure the system to automatically load the module at boot " @@ -51120,31 +51353,31 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:34511 +#: book.translate.xml:34624 #, no-wrap msgid "geom_eli_load=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34513 +#: book.translate.xml:34626 msgid "To load the kernel module now:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34515 +#: book.translate.xml:34628 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_eli</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34517 +#: book.translate.xml:34630 msgid "" "For a custom kernel, ensure the kernel configuration file contains these " "lines:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:34520 +#: book.translate.xml:34633 #, no-wrap msgid "" "options GEOM_ELI\n" @@ -51152,12 +51385,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34525 +#: book.translate.xml:34638 msgid "Generate the Master Key" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34527 +#: book.translate.xml:34640 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 " @@ -51167,7 +51400,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34534 +#: book.translate.xml:34647 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/random of=/root/da2.key bs=64 count=1</userinput>\n" @@ -51177,39 +51410,39 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34539 +#: book.translate.xml:34652 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:34543 +#: book.translate.xml:34656 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:34547 +#: book.translate.xml:34660 #, no-wrap msgid "<prompt>#</prompt> <userinput>cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34551 +#: book.translate.xml:34664 msgid "Attach the Provider with the Generated Key" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34553 +#: book.translate.xml:34666 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:34556 +#: book.translate.xml:34669 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>geli attach -k /root/da2.key /dev/da2</userinput>\n" @@ -51217,12 +51450,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34559 +#: book.translate.xml:34672 msgid "This creates a new device with an <filename>.eli</filename> extension:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34562 +#: book.translate.xml:34675 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/da2*</userinput>\n" @@ -51230,19 +51463,19 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34567 +#: book.translate.xml:34680 msgid "Create the New File System" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34569 +#: book.translate.xml:34682 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:34573 +#: book.translate.xml:34686 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/random of=/dev/da2.eli bs=1m</userinput>\n" @@ -51251,12 +51484,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34577 +#: book.translate.xml:34690 msgid "The encrypted file system should now be available for use:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34580 +#: book.translate.xml:34693 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df -H</userinput>\n" @@ -51270,7 +51503,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34591 +#: book.translate.xml:34704 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 " @@ -51279,7 +51512,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34597 +#: book.translate.xml:34710 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /private</userinput>\n" @@ -51287,7 +51520,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34600 +#: book.translate.xml:34713 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, " @@ -51295,7 +51528,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34605 +#: book.translate.xml:34718 #, no-wrap msgid "" "geli_devices=\"<replaceable>da2</replaceable>\"\n" @@ -51303,7 +51536,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34608 +#: book.translate.xml:34721 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 " @@ -51319,24 +51552,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34626 +#: book.translate.xml:34739 msgid "Encrypting Swap" msgstr "交換空間加密" #. (itstool) path: authorgroup/author -#: book.translate.xml:34629 +#: book.translate.xml:34742 msgid "" "<personname> <firstname>Christian</firstname> <surname>Brueffer</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34639 +#: book.translate.xml:34752 msgid "<primary>swap</primary> <secondary>encrypting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34644 +#: book.translate.xml:34757 msgid "" "Like the encryption of disk partitions, encryption of swap space is used to " "protect sensitive information. Consider an application that deals with " @@ -51348,7 +51581,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34653 +#: book.translate.xml:34766 msgid "" "This section demonstrates how to configure an encrypted swap partition using " "<citerefentry><refentrytitle>gbde</refentrytitle><manvolnum>8</manvolnum></" @@ -51358,12 +51591,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34659 +#: book.translate.xml:34772 msgid "Configuring Encrypted Swap" msgstr "設定已加密的交換空間" #. (itstool) path: sect2/para -#: book.translate.xml:34661 +#: book.translate.xml:34774 msgid "" "Swap partitions are not encrypted by default and should be cleared of any " "sensitive data before continuing. To overwrite the current swap partition " @@ -51371,13 +51604,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34666 +#: book.translate.xml:34779 #, 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:34668 +#: book.translate.xml:34781 msgid "" "To encrypt the swap partition using <citerefentry><refentrytitle>gbde</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, add the <literal>." @@ -51385,7 +51618,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34672 +#: book.translate.xml:34785 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\tDump\tPass#\n" @@ -51393,7 +51626,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34675 +#: book.translate.xml:34788 msgid "" "To instead encrypt the swap partition using " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51401,7 +51634,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34679 +#: book.translate.xml:34792 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\tDump\tPass#\n" @@ -51409,7 +51642,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34682 +#: book.translate.xml:34795 msgid "" "By default, <citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> uses the <acronym>AES</acronym> algorithm with a " @@ -51419,12 +51652,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34691 +#: book.translate.xml:34804 msgid "aalgo" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34693 +#: book.translate.xml:34806 msgid "" "Data integrity verification algorithm used to ensure that the encrypted data " "has not been tampered with. See <citerefentry><refentrytitle>geli</" @@ -51433,12 +51666,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34700 +#: book.translate.xml:34813 msgid "ealgo" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34702 +#: book.translate.xml:34815 msgid "" "Encryption algorithm used to protect the data. See " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51446,12 +51679,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34708 +#: book.translate.xml:34821 msgid "keylen" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34710 +#: book.translate.xml:34823 msgid "" "The length of the key used for the encryption algorithm. See " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51460,12 +51693,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34717 +#: book.translate.xml:34830 msgid "sectorsize" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34719 +#: book.translate.xml:34832 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. " @@ -51473,14 +51706,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34727 +#: book.translate.xml:34840 msgid "" "This example configures an encrypted 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:34731 +#: book.translate.xml:34844 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\t\t\tDump\tPass#\n" @@ -51488,26 +51721,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34737 +#: book.translate.xml:34850 msgid "Encrypted Swap Verification" msgstr "加密的交換空間檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:34739 +#: book.translate.xml:34852 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:34743 +#: book.translate.xml:34856 msgid "" "If <citerefentry><refentrytitle>gbde</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is being used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34745 +#: book.translate.xml:34858 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>swapinfo</userinput>\n" @@ -51516,14 +51749,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34749 +#: book.translate.xml:34862 msgid "" "If <citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is being used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34751 +#: book.translate.xml:34864 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>swapinfo</userinput>\n" @@ -51532,45 +51765,45 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34759 +#: book.translate.xml:34872 msgid "Highly Available Storage (<acronym>HAST</acronym>)" msgstr "高可用存儲空間 (<acronym>HAST</acronym>)" #. (itstool) path: authorgroup/author -#: book.translate.xml:34773 +#: book.translate.xml:34886 msgid "" "<personname> <firstname>Freddie</firstname> <surname>Cash</surname> </" "personname> <contrib>With inputs from </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34781 +#: book.translate.xml:34894 msgid "" "<personname> <firstname>Pawel Jakub</firstname> <surname>Dawidek</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34788 +#: book.translate.xml:34901 msgid "" "<personname> <firstname>Michael W.</firstname> <surname>Lucas</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34795 +#: book.translate.xml:34908 msgid "" "<personname> <firstname>Viktor</firstname> <surname>Petersson</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34804 +#: book.translate.xml:34917 msgid "<primary>HAST</primary> <secondary>high availability</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34809 +#: book.translate.xml:34922 msgid "" "High availability is one of the main requirements in serious business " "applications and highly-available storage is a key component in such " @@ -51586,60 +51819,60 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34823 +#: book.translate.xml:34936 msgid "The following are the main features of <acronym>HAST</acronym>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34828 +#: book.translate.xml:34941 msgid "Can be used to mask <acronym>I/O</acronym> errors on local hard drives." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34833 +#: book.translate.xml:34946 msgid "" "File system agnostic as it works with any file system supported by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34838 +#: book.translate.xml:34951 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:34851 +#: book.translate.xml:34964 msgid "" "Can be used in an already deployed environment to add additional redundancy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34856 +#: book.translate.xml:34969 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:34862 +#: book.translate.xml:34975 msgid "After reading this section, you will know:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34866 +#: book.translate.xml:34979 msgid "" "What <acronym>HAST</acronym> is, how it works, and which features it " "provides." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34871 +#: book.translate.xml:34984 msgid "How to set up and use <acronym>HAST</acronym> on FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34876 +#: book.translate.xml:34989 msgid "" "How to integrate <acronym>CARP</acronym> and " "<citerefentry><refentrytitle>devd</refentrytitle><manvolnum>8</manvolnum></" @@ -51647,26 +51880,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34881 +#: book.translate.xml:34994 msgid "Before reading this section, you should:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34889 +#: book.translate.xml:35002 msgid "" "Know how to configure network interfaces and other core FreeBSD subsystems " "(<xref linkend=\"config-tuning\"/>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34894 +#: book.translate.xml:35007 msgid "" "Have a good understanding of FreeBSD networking (<xref linkend=\"network-" "communication\"/>)." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34899 +#: book.translate.xml:35012 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." @@ -51675,12 +51908,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34904 +#: book.translate.xml:35017 msgid "HAST Operation" msgstr "HAST 運作模式" #. (itstool) path: sect2/para -#: book.translate.xml:34906 +#: book.translate.xml:35019 msgid "" "<acronym>HAST</acronym> provides synchronous block-level replication between " "two physical machines: the <emphasis>primary</emphasis>, also known as the " @@ -51690,7 +51923,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34914 +#: book.translate.xml:35027 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 " @@ -51701,14 +51934,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34922 +#: book.translate.xml:35035 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:34926 +#: book.translate.xml:35039 msgid "" "<acronym>HAST</acronym> operates synchronously on a block level, making it " "transparent to file systems and applications. <acronym>HAST</acronym> " @@ -51718,7 +51951,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34934 +#: book.translate.xml:35047 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 " @@ -51728,7 +51961,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34941 +#: book.translate.xml:35054 msgid "" "<acronym>HAST</acronym> tries to provide fast failure recovery. For this " "reason, it is important to reduce synchronization time after a node's " @@ -51738,7 +51971,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34949 +#: book.translate.xml:35062 msgid "" "There are many ways to handle synchronization. <acronym>HAST</acronym> " "implements several replication modes to handle different synchronization " @@ -51746,7 +51979,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34955 +#: book.translate.xml:35068 msgid "" "<emphasis>memsync</emphasis>: This mode reports a write operation as " "completed when the local write operation is finished and when the remote " @@ -51757,7 +51990,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34966 +#: book.translate.xml:35079 msgid "" "<emphasis>fullsync</emphasis>: This mode reports a write operation as " "completed when both the local write and the remote write complete. This is " @@ -51765,7 +51998,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34973 +#: book.translate.xml:35086 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 " @@ -51774,17 +52007,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34984 +#: book.translate.xml:35097 msgid "HAST Configuration" msgstr "HAST 設定" #. (itstool) path: sect2/para -#: book.translate.xml:34986 +#: book.translate.xml:35099 msgid "The <acronym>HAST</acronym> framework consists of several components:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34991 +#: book.translate.xml:35104 msgid "" "The <citerefentry><refentrytitle>hastd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon which provides data synchronization. When " @@ -51793,14 +52026,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34997 +#: book.translate.xml:35110 msgid "" "The userland management utility, <citerefentry><refentrytitle>hastctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35002 +#: book.translate.xml:35115 msgid "" "The <citerefentry><refentrytitle>hast.conf</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> configuration file. This file must exist before " @@ -51808,7 +52041,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35008 +#: book.translate.xml:35121 msgid "" "Users who prefer to statically build <literal>GEOM_GATE</literal> support " "into the kernel should add this line to the custom kernel configuration " @@ -51817,13 +52050,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35013 +#: book.translate.xml:35126 #, no-wrap msgid "options\tGEOM_GATE" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35015 +#: book.translate.xml:35128 msgid "" "The following example describes how to configure two nodes in master-slave/" "primary-secondary operation using <acronym>HAST</acronym> to replicate the " @@ -51838,7 +52071,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35029 +#: book.translate.xml:35142 msgid "" "Configuration of <acronym>HAST</acronym> is done using <filename>/etc/hast." "conf</filename>. This file should be identical on both nodes. The simplest " @@ -51846,7 +52079,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35034 +#: book.translate.xml:35147 #, no-wrap msgid "" "resource <replaceable>test</replaceable> {\n" @@ -51862,14 +52095,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35045 +#: book.translate.xml:35158 msgid "" "For more advanced configuration, refer to <citerefentry><refentrytitle>hast." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:35049 +#: book.translate.xml:35162 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/" @@ -51877,7 +52110,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35056 +#: book.translate.xml:35169 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 " @@ -51887,7 +52120,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35061 +#: book.translate.xml:35174 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hastctl create <replaceable>test</replaceable></userinput>\n" @@ -51895,7 +52128,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:35065 +#: book.translate.xml:35178 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 " @@ -51905,7 +52138,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35074 +#: book.translate.xml:35187 msgid "" "A HAST node's <literal>primary</literal> or <literal>secondary</literal> " "role is selected by an administrator, or software like " @@ -51916,35 +52149,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35081 +#: book.translate.xml:35194 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl role primary <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35083 +#: book.translate.xml:35196 msgid "Run this command on the secondary node, <literal>hastb</literal>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35086 +#: book.translate.xml:35199 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl role secondary <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35088 +#: book.translate.xml:35201 msgid "Verify the result by running <command>hastctl</command> on each node:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35091 +#: book.translate.xml:35204 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl status <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35093 +#: book.translate.xml:35206 msgid "" "Check the <literal>status</literal> line in the output. If it says " "<literal>degraded</literal>, something is wrong with the configuration file. " @@ -51955,7 +52188,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35102 +#: book.translate.xml:35215 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> " @@ -51965,7 +52198,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35109 +#: book.translate.xml:35222 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/hast/<replaceable>test</replaceable></userinput>\n" @@ -51974,7 +52207,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35113 +#: book.translate.xml:35226 msgid "" "Once the <acronym>HAST</acronym> framework is configured properly, the final " "step is to make sure that <acronym>HAST</acronym> is started automatically " @@ -51982,18 +52215,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35119 +#: book.translate.xml:35232 #, no-wrap msgid "hastd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:35122 +#: book.translate.xml:35235 msgid "Failover Configuration" msgstr "容錯移轉設定" #. (itstool) path: sect3/para -#: book.translate.xml:35124 +#: book.translate.xml:35237 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 " @@ -52002,7 +52235,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35131 +#: book.translate.xml:35244 msgid "" "To accomplish this task, the Common Address Redundancy Protocol " "(<acronym>CARP</acronym>) is used to provide for automatic failover at the " @@ -52017,7 +52250,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35144 +#: book.translate.xml:35257 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 " @@ -52028,7 +52261,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35154 +#: book.translate.xml:35267 msgid "" "In the event of <acronym>CARP</acronym> interfaces going up or down, the " "FreeBSD operating system generates a <citerefentry><refentrytitle>devd</" @@ -52041,14 +52274,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35163 +#: book.translate.xml:35276 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:35167 +#: book.translate.xml:35280 #, no-wrap msgid "" "notify 30 {\n" @@ -52067,14 +52300,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:35182 +#: book.translate.xml:35295 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:35187 +#: book.translate.xml:35300 msgid "" "Restart <citerefentry><refentrytitle>devd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on both nodes to put the new configuration into " @@ -52083,13 +52316,13 @@ msgstr "" #. (itstool) path: sect3/screen #. (itstool) path: sect2/screen -#: book.translate.xml:35190 book.translate.xml:46418 +#: book.translate.xml:35303 book.translate.xml:46658 #, no-wrap msgid "<prompt>#</prompt> <userinput>service devd restart</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35192 +#: book.translate.xml:35305 msgid "" "When the specified interface state changes by going up or down , the system " "generates a notification, allowing the <citerefentry><refentrytitle>devd</" @@ -52101,12 +52334,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35200 +#: book.translate.xml:35313 msgid "Here is an example of an automated failover script:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:35203 +#: book.translate.xml:35316 #, no-wrap msgid "" "#!/bin/sh\n" @@ -52195,43 +52428,43 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35287 +#: book.translate.xml:35400 msgid "" "In a nutshell, the script takes these actions when a node becomes master:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35292 +#: book.translate.xml:35405 msgid "Promotes the <acronym>HAST</acronym> pool to primary on the other node." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35297 +#: book.translate.xml:35410 msgid "Checks the file system under the <acronym>HAST</acronym> pool." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35302 +#: book.translate.xml:35415 msgid "Mounts the pool." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35306 +#: book.translate.xml:35419 msgid "When a node becomes secondary:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35310 +#: book.translate.xml:35423 msgid "Unmounts the <acronym>HAST</acronym> pool." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35314 +#: book.translate.xml:35427 msgid "Degrades the <acronym>HAST</acronym> pool to secondary." msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:35320 +#: book.translate.xml:35433 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 " @@ -52239,7 +52472,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:35327 +#: book.translate.xml:35440 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</" @@ -52247,7 +52480,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35334 +#: book.translate.xml:35447 msgid "" "More detailed information with additional examples can be found at <link " "xlink:href=\"http://wiki.FreeBSD.org/HAST\">http://wiki.FreeBSD.org/HAST</" @@ -52255,7 +52488,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35342 +#: book.translate.xml:35455 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 " @@ -52265,7 +52498,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35349 +#: book.translate.xml:35462 msgid "" "When troubleshooting <acronym>HAST</acronym>, the debugging level of " "<citerefentry><refentrytitle>hastd</refentrytitle><manvolnum>8</manvolnum></" @@ -52276,12 +52509,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:35358 +#: book.translate.xml:35471 msgid "Recovering from the Split-brain Condition" msgstr "自 Split-brain 情況復原" #. (itstool) path: sect3/para -#: book.translate.xml:35360 +#: book.translate.xml:35473 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. " @@ -52291,7 +52524,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35367 +#: book.translate.xml:35480 msgid "" "The administrator must either decide which node has more important changes, " "or perform the merge manually. Then, let <acronym>HAST</acronym> perform " @@ -52300,7 +52533,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:35374 +#: book.translate.xml:35487 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hastctl role init <replaceable>test</replaceable></userinput>\n" @@ -52309,26 +52542,26 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:35391 +#: book.translate.xml:35504 msgid "GEOM: Modular Disk Transformation Framework" msgstr "GEOM: 模組化磁碟轉換框架" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35407 book.translate.xml:35491 book.translate.xml:35632 -#: book.translate.xml:36265 book.translate.xml:36413 book.translate.xml:36778 -#: book.translate.xml:36982 +#: book.translate.xml:35520 book.translate.xml:35604 book.translate.xml:35745 +#: book.translate.xml:36378 book.translate.xml:36526 book.translate.xml:36891 +#: book.translate.xml:37095 msgid "<primary><acronym>GEOM</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35410 +#: book.translate.xml:35523 msgid "" "<primary><acronym>GEOM</acronym> Disk Framework</primary> " "<see><acronym>GEOM</acronym></see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35415 +#: book.translate.xml:35528 msgid "" "In FreeBSD, the <acronym>GEOM</acronym> framework permits access and control " "to classes, such as Master Boot Records and <acronym>BSD</acronym> labels, " @@ -52344,7 +52577,7 @@ msgstr "" "的存取。" #. (itstool) path: sect1/para -#: book.translate.xml:35423 +#: book.translate.xml:35536 msgid "" "This chapter covers the use of disks under the <acronym>GEOM</acronym> " "framework in FreeBSD. This includes the major <acronym>RAID</acronym> " @@ -52355,63 +52588,63 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35435 +#: book.translate.xml:35548 msgid "" "What type of <acronym>RAID</acronym> support is available through " "<acronym>GEOM</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35440 +#: book.translate.xml:35553 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:35446 +#: book.translate.xml:35559 msgid "" "How to mirror, stripe, encrypt, and remotely connect disk devices through " "<acronym>GEOM</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35451 +#: book.translate.xml:35564 msgid "" "How to troubleshoot disks attached to the <acronym>GEOM</acronym> framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35460 +#: book.translate.xml:35573 msgid "Understand how FreeBSD treats disk devices (<xref linkend=\"disks\"/>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35464 +#: book.translate.xml:35577 msgid "" "Know how to configure and install a new kernel (<xref linkend=\"kernelconfig" "\"/>)." msgstr "了解如何設定並安裝新的核心 (<xref linkend=\"kernelconfig\"/>)。" #. (itstool) path: info/title -#: book.translate.xml:35471 +#: book.translate.xml:35584 msgid "RAID0 - Striping" msgstr "RAID0 - 串連 (Striping)" #. (itstool) path: authorgroup/author -#: book.translate.xml:35482 book.translate.xml:36256 book.translate.xml:61251 +#: book.translate.xml:35595 book.translate.xml:36369 book.translate.xml:62285 msgid "" "<personname> <firstname>Murray</firstname> <surname>Stokely</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35494 +#: book.translate.xml:35607 msgid "<primary>Striping</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35498 +#: book.translate.xml:35611 msgid "" "Striping combines several disk drives into a single volume. Striping can be " "performed through the use of hardware <acronym>RAID</acronym> controllers. " @@ -52425,7 +52658,7 @@ msgstr "" "acronym> 磁碟控制器。" #. (itstool) path: sect1/para -#: book.translate.xml:35506 +#: book.translate.xml:35619 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, " @@ -52445,13 +52678,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:35517 +#: book.translate.xml:35630 msgctxt "_" msgid "external ref='geom/striping' md5='__failed__'" msgstr "" #. (itstool) path: sect1/mediaobject -#: book.translate.xml:35515 +#: book.translate.xml:35628 msgid "" "<imageobject> <imagedata fileref=\"geom/striping\" align=\"center\"/> </" "imageobject> <textobject> <phrase>Disk Striping Illustration</phrase> </" @@ -52459,7 +52692,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35525 +#: book.translate.xml:35638 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 " @@ -52469,7 +52702,7 @@ msgstr "" "O</acronym> 的請求是平行交錯讀取或寫入到多個磁碟的。" #. (itstool) path: note/para -#: book.translate.xml:35531 +#: book.translate.xml:35644 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 " @@ -52481,7 +52714,7 @@ msgstr "" "若資料很重要,請規畫備份策略,定期儲存備份到遠端系統或裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:35538 +#: book.translate.xml:35651 msgid "" "The process for creating a software, <acronym>GEOM</acronym>-based " "<acronym>RAID0</acronym> on a FreeBSD system using commodity disks is as " @@ -52492,23 +52725,23 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:35545 +#: book.translate.xml:35658 msgid "Creating a Stripe of Unformatted <acronym>ATA</acronym> Disks" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35549 +#: book.translate.xml:35662 msgid "Load the <filename>geom_stripe.ko</filename> module:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35552 +#: book.translate.xml:35665 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_stripe</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35556 +#: book.translate.xml:35669 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</" @@ -52516,7 +52749,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35563 +#: book.translate.xml:35676 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 " @@ -52525,7 +52758,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35570 +#: book.translate.xml:35683 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gstripe label -v st0 /dev/ad2 /dev/ad3</userinput>\n" @@ -52535,20 +52768,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35577 +#: book.translate.xml:35690 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:35581 +#: book.translate.xml:35694 #, no-wrap msgid "<prompt>#</prompt> <userinput>bsdlabel -wB /dev/stripe/st0</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35585 +#: book.translate.xml:35698 msgid "" "This process should create two other devices in <filename>/dev/stripe</" "filename> in addition to <filename>st0</filename>. Those include " @@ -52558,13 +52791,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35593 +#: book.translate.xml:35706 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/stripe/st0a</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35595 +#: book.translate.xml:35708 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 " @@ -52572,18 +52805,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35601 +#: book.translate.xml:35714 msgid "To manually mount the created disk stripe:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35603 +#: book.translate.xml:35716 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /dev/stripe/st0a /mnt</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35607 +#: book.translate.xml:35720 msgid "" "To mount this striped file system automatically during the boot process, " "place the volume information in <filename>/etc/fstab</filename>. In this " @@ -52592,7 +52825,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35613 +#: book.translate.xml:35726 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /stripe</userinput>\n" @@ -52601,7 +52834,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35619 +#: book.translate.xml:35732 msgid "" "The <filename>geom_stripe.ko</filename> module must also be automatically " "loaded during system initialization, by adding a line to <filename>/boot/" @@ -52609,28 +52842,28 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35624 +#: book.translate.xml:35737 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf geom_stripe_load=YES</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:35630 +#: book.translate.xml:35743 msgid "RAID1 - Mirroring" msgstr "RAID1 - 鏡像 (Mirroring)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35635 +#: book.translate.xml:35748 msgid "<primary>Disk Mirroring</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35638 +#: book.translate.xml:35751 msgid "<primary>RAID1</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35642 +#: book.translate.xml:35755 msgid "" "<acronym>RAID1</acronym>, or <emphasis>mirroring</emphasis>, is the " "technique of writing the same data to more than one disk drive. Mirrors are " @@ -52647,7 +52880,7 @@ msgstr "" "者中斷運作。" #. (itstool) path: sect1/para -#: book.translate.xml:35652 +#: book.translate.xml:35765 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 " @@ -52658,7 +52891,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35660 +#: book.translate.xml:35773 msgid "" "Traditionally, the two drives in a mirror are identical in model and " "capacity, but <citerefentry><refentrytitle>gmirror</" @@ -52670,14 +52903,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:35669 +#: book.translate.xml:35782 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:35675 +#: book.translate.xml:35788 msgid "" "While <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is used in these procedures to copy file systems, " @@ -52688,12 +52921,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35682 +#: book.translate.xml:35795 msgid "Metadata Issues" msgstr "Metadata 問題" #. (itstool) path: sect2/para -#: book.translate.xml:35684 +#: book.translate.xml:35797 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 " @@ -52702,7 +52935,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35690 +#: book.translate.xml:35803 msgid "" "<acronym>GPT</acronym> metadata can be erased with " "<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" @@ -52711,13 +52944,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35695 +#: book.translate.xml:35808 #, no-wrap msgid "<prompt>#</prompt> <userinput>gpart destroy -F ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35697 +#: book.translate.xml:35810 msgid "" "A disk can be removed from an active mirror and the metadata erased in one " "step using <citerefentry><refentrytitle>gmirror</refentrytitle><manvolnum>8</" @@ -52726,26 +52959,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35702 +#: book.translate.xml:35815 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror remove gm4 ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35704 +#: book.translate.xml:35817 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:35708 +#: book.translate.xml:35821 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror clear ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35710 +#: book.translate.xml:35823 msgid "" "<citerefentry><refentrytitle>gmirror</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> stores one block of metadata at the end of the " @@ -52758,12 +52991,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35720 +#: book.translate.xml:35833 msgid "Creating a Mirror with Two New Disks" msgstr "使用兩個新磁碟建立鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:35722 +#: book.translate.xml:35835 msgid "" "In this example, FreeBSD has already been installed on a single disk, " "<filename>ada0</filename>. Two new disks, <filename>ada1</filename> and " @@ -52772,7 +53005,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35729 +#: book.translate.xml:35842 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 " @@ -52780,24 +53013,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35733 book.translate.xml:35860 +#: book.translate.xml:35846 book.translate.xml:35973 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror load</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35735 +#: book.translate.xml:35848 msgid "Create the mirror with the two new drives:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35737 +#: book.translate.xml:35850 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror label -v gm0 /dev/ada1 /dev/ada2</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35739 +#: book.translate.xml:35852 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 " @@ -52805,7 +53038,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35744 +#: book.translate.xml:35857 msgid "" "<acronym>MBR</acronym> and <application>bsdlabel</application> partition " "tables can now be created on the mirror with " @@ -52817,7 +53050,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35753 +#: book.translate.xml:35866 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 " @@ -52825,7 +53058,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35758 +#: book.translate.xml:35871 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s MBR mirror/gm0</userinput>\n" @@ -52838,7 +53071,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35766 +#: book.translate.xml:35879 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s BSD mirror/gm0s1</userinput>\n" @@ -52859,14 +53092,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35782 book.translate.xml:36004 +#: book.translate.xml:35895 book.translate.xml:36117 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:35786 book.translate.xml:36008 +#: book.translate.xml:35899 book.translate.xml:36121 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart bootcode -b /boot/mbr mirror/gm0</userinput>\n" @@ -52875,12 +53108,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35790 +#: book.translate.xml:35903 msgid "Format the file systems on the new mirror, enabling soft-updates." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35793 +#: book.translate.xml:35906 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/mirror/gm0s1a</userinput>\n" @@ -52890,7 +53123,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35798 +#: book.translate.xml:35911 msgid "" "File systems from the original <filename>ada0</filename> disk can now be " "copied onto the mirror with <citerefentry><refentrytitle>dump</" @@ -52900,7 +53133,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35802 +#: book.translate.xml:35915 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /dev/mirror/gm0s1a /mnt</userinput>\n" @@ -52914,14 +53147,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35811 +#: book.translate.xml:35924 msgid "" "Edit <filename>/mnt/etc/fstab</filename> to point to the new mirror file " "systems:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35814 +#: book.translate.xml:35927 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\tDump\tPass#\n" @@ -52933,7 +53166,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35821 +#: book.translate.xml:35934 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 " @@ -52941,13 +53174,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35826 book.translate.xml:36035 book.translate.xml:36155 +#: book.translate.xml:35939 book.translate.xml:36148 book.translate.xml:36268 #, no-wrap msgid "geom_mirror_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35828 +#: book.translate.xml:35941 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 " @@ -52956,7 +53189,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35834 +#: book.translate.xml:35947 msgid "" "See <xref linkend=\"gmirror-troubleshooting\"/> if there are problems " "booting. Powering down and disconnecting the original <filename>ada0</" @@ -52964,17 +53197,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35839 +#: book.translate.xml:35952 msgid "In use, the mirror will behave just like the original single drive." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35844 +#: book.translate.xml:35957 msgid "Creating a Mirror with an Existing Drive" msgstr "使用既有磁碟建立鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:35846 +#: book.translate.xml:35959 msgid "" "In this example, FreeBSD has already been installed on a single disk, " "<filename>ada0</filename>. A new disk, <filename>ada1</filename>, has been " @@ -52987,18 +53220,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35857 +#: book.translate.xml:35970 msgid "Load the <filename>geom_mirror.ko</filename> kernel module:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35862 +#: book.translate.xml:35975 msgid "" "Check the media size of the original disk with <command>diskinfo</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35865 +#: book.translate.xml:35978 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>diskinfo -v ada0 | head -n3</userinput>\n" @@ -53008,7 +53241,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35870 +#: book.translate.xml:35983 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, " @@ -53025,7 +53258,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35883 +#: book.translate.xml:35996 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>geom zero load</userinput>\n" @@ -53035,7 +53268,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35888 +#: book.translate.xml:36001 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> " @@ -53045,7 +53278,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35895 +#: book.translate.xml:36008 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 " @@ -53054,7 +53287,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35901 +#: book.translate.xml:36014 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 " @@ -53062,7 +53295,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35906 +#: book.translate.xml:36019 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show ada0</userinput>\n" @@ -53071,7 +53304,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35910 +#: book.translate.xml:36023 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 " @@ -53079,14 +53312,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35914 +#: book.translate.xml:36027 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:35918 +#: book.translate.xml:36031 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart backup ada0 > table.ada0</userinput>\n" @@ -53094,14 +53327,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35921 +#: book.translate.xml:36034 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:35926 +#: book.translate.xml:36039 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0</userinput>\n" @@ -53110,7 +53343,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35930 +#: book.translate.xml:36043 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0s1</userinput>\n" @@ -53124,7 +53357,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35939 +#: book.translate.xml:36052 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, " @@ -53133,7 +53366,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35945 +#: book.translate.xml:36058 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0</userinput>\n" @@ -53142,7 +53375,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35949 +#: book.translate.xml:36062 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0s1</userinput>\n" @@ -53156,19 +53389,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35958 +#: book.translate.xml:36071 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:35961 +#: book.translate.xml:36074 msgid "Now restore the partition table into <filename>mirror/gm0</filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35964 +#: book.translate.xml:36077 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart restore mirror/gm0 < table.ada0</userinput>\n" @@ -53176,7 +53409,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35967 +#: book.translate.xml:36080 msgid "" "Check the partition table with <command>gpart show</command>. This example " "has <filename>gm0s1a</filename> for <filename>/</filename>, " @@ -53187,7 +53420,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35976 +#: book.translate.xml:36089 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show mirror/gm0</userinput>\n" @@ -53207,21 +53440,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35991 +#: book.translate.xml:36104 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:35994 +#: book.translate.xml:36107 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:35998 +#: book.translate.xml:36111 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/mirror/gm0s1a</userinput>\n" @@ -53232,7 +53465,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36012 +#: book.translate.xml:36125 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</" @@ -53240,20 +53473,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36016 +#: book.translate.xml:36129 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp /etc/fstab /etc/fstab.orig</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36018 +#: book.translate.xml:36131 msgid "" "Edit <filename>/etc/fstab</filename>, replacing <filename>/dev/ada0</" "filename> with <filename>mirror/gm0</filename>." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:36022 +#: book.translate.xml:36135 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\tDump\tPass#\n" @@ -53266,7 +53499,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36030 +#: book.translate.xml:36143 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 " @@ -53274,7 +53507,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36037 +#: book.translate.xml:36150 msgid "" "File systems from the original disk can now be copied onto the mirror with " "<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></" @@ -53285,7 +53518,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36042 +#: book.translate.xml:36155 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /dev/mirror/gm0s1a /mnt</userinput>\n" @@ -53301,7 +53534,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36053 +#: book.translate.xml:36166 msgid "" "Restart the system, booting from <filename>ada1</filename>. If everything is " "working, the system will boot from <filename>mirror/gm0</filename>, which " @@ -53310,21 +53543,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36060 +#: book.translate.xml:36173 msgid "" "At this point, the mirror still consists of only the single <filename>ada1</" "filename> disk." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36063 +#: book.translate.xml:36176 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:36068 +#: book.translate.xml:36181 msgid "" "When <filename>ada0</filename> is inserted into the mirror, its former " "contents will be overwritten by data from the mirror. Make certain that " @@ -53339,7 +53572,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36081 +#: book.translate.xml:36194 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror insert gm0 ada0</userinput>\n" @@ -53347,14 +53580,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36084 +#: book.translate.xml:36197 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:36088 +#: book.translate.xml:36201 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror status</userinput>\n" @@ -53364,12 +53597,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36093 +#: book.translate.xml:36206 msgid "After a while, synchronization will finish." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36095 +#: book.translate.xml:36208 #, no-wrap msgid "" "GEOM_MIRROR: Device gm0: rebuilding provider ada0 finished.\n" @@ -53380,7 +53613,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36101 +#: book.translate.xml:36214 msgid "" "<filename>mirror/gm0</filename> now consists of the two disks " "<filename>ada0</filename> and <filename>ada1</filename>, and the contents " @@ -53389,7 +53622,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36112 +#: book.translate.xml:36225 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 " @@ -53397,14 +53630,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36117 +#: book.translate.xml:36230 msgid "" "If the boot stops with this message, something is wrong with the mirror " "device:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36120 +#: book.translate.xml:36233 #, no-wrap msgid "" "Mounting from ufs:/dev/mirror/gm0s1a failed with error 19.\n" @@ -53431,7 +53664,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36142 +#: book.translate.xml:36255 msgid "" "Forgetting to load the <filename>geom_mirror.ko</filename> module in " "<filename>/boot/loader.conf</filename> can cause this problem. To fix it, " @@ -53440,7 +53673,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36149 +#: book.translate.xml:36262 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror load</userinput>\n" @@ -53448,19 +53681,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36152 +#: book.translate.xml:36265 msgid "" "Edit <filename>/mnt/boot/loader.conf</filename>, adding a line to load the " "mirror module:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36157 +#: book.translate.xml:36270 msgid "Save the file and reboot." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36159 +#: book.translate.xml:36272 msgid "" "Other problems that cause <errorname>error 19</errorname> require more " "effort to fix. Although the system should boot from <filename>ada0</" @@ -53473,7 +53706,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36170 +#: book.translate.xml:36283 #, no-wrap msgid "" "Enter full pathname of shell or RETURN for /bin/sh:\n" @@ -53482,12 +53715,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36176 +#: book.translate.xml:36289 msgid "Recovering from Disk Failure" msgstr "自磁碟故障復原" #. (itstool) path: sect2/para -#: book.translate.xml:36178 +#: book.translate.xml:36291 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 " @@ -53496,7 +53729,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36184 +#: book.translate.xml:36297 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 " @@ -53507,7 +53740,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36193 +#: book.translate.xml:36306 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 " @@ -53515,13 +53748,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36198 +#: book.translate.xml:36311 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror forget gm0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36200 +#: book.translate.xml:36313 msgid "" "Any old metadata should be cleared from the replacement disk using the " "instructions in <xref linkend=\"geom-mirror-metadata\"/>. Then the " @@ -53530,13 +53763,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36206 +#: book.translate.xml:36319 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror insert gm0 /dev/ada4</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36208 +#: book.translate.xml:36321 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. " @@ -53545,7 +53778,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36214 +#: book.translate.xml:36327 msgid "" "Progress can be monitored with <command>gmirror status</command>, which " "shows drives that are being synchronized and the percentage of completion. " @@ -53555,38 +53788,38 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:36227 +#: book.translate.xml:36340 msgid "<acronym>RAID</acronym>3 - Byte-level Striping with Dedicated Parity" msgstr "<acronym>RAID</acronym>3 - 位元級串連與獨立奇偶校驗" #. (itstool) path: authorgroup/author -#: book.translate.xml:36231 +#: book.translate.xml:36344 msgid "" "<personname> <firstname>Mark</firstname> <surname>Gladman</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:36239 +#: book.translate.xml:36352 msgid "" "<personname> <firstname>Daniel</firstname> <surname>Gerzo</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:36248 +#: book.translate.xml:36361 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Based on documentation by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36268 +#: book.translate.xml:36381 msgid "<primary>RAID3</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36272 +#: book.translate.xml:36385 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</" @@ -53602,7 +53835,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36287 +#: book.translate.xml:36400 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</" @@ -53612,26 +53845,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36294 +#: book.translate.xml:36407 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:36298 +#: book.translate.xml:36411 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:36304 +#: book.translate.xml:36417 msgid "Creating a Dedicated <acronym>RAID</acronym>3 Array" msgstr "建立 Dedicated <acronym>RAID</acronym>3 陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36307 +#: book.translate.xml:36420 msgid "" "In FreeBSD, support for <acronym>RAID</acronym>3 is implemented by the " "<citerefentry><refentrytitle>graid3</refentrytitle><manvolnum>8</manvolnum></" @@ -53640,44 +53873,44 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36314 +#: book.translate.xml:36427 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:36318 +#: book.translate.xml:36431 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid3 load</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36320 +#: book.translate.xml:36433 msgid "or:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36322 +#: book.translate.xml:36435 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_raid3</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36326 +#: book.translate.xml:36439 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:36330 +#: book.translate.xml:36443 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir <replaceable>/multimedia</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36334 +#: book.translate.xml:36447 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 " @@ -53688,7 +53921,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36345 +#: book.translate.xml:36458 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid3 label -v gr0 /dev/ada1 /dev/ada2 /dev/ada3</userinput>\n" @@ -53699,14 +53932,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36353 +#: book.translate.xml:36466 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:36357 +#: book.translate.xml:36470 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s GPT /dev/raid3/gr0</userinput>\n" @@ -53715,7 +53948,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36361 +#: book.translate.xml:36474 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 " @@ -53723,25 +53956,25 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36365 +#: book.translate.xml:36478 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /dev/raid3/gr0p1 /multimedia/</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36367 +#: book.translate.xml:36480 msgid "The <acronym>RAID</acronym>3 array is now ready to use." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36372 +#: book.translate.xml:36485 msgid "" "Additional configuration is needed to retain this setup across system " "reboots." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36377 +#: book.translate.xml:36490 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 " @@ -53750,13 +53983,13 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36383 +#: book.translate.xml:36496 #, no-wrap msgid "geom_raid3_load=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36387 +#: book.translate.xml:36500 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 " @@ -53764,32 +53997,32 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36392 +#: book.translate.xml:36505 #, no-wrap msgid "/dev/raid3/gr0p1\t/multimedia\tufs\trw\t2\t2" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:36400 +#: book.translate.xml:36513 msgid "Software <acronym>RAID</acronym> Devices" msgstr "軟體 <acronym>RAID</acronym> 裝置" #. (itstool) path: authorgroup/author -#: book.translate.xml:36403 +#: book.translate.xml:36516 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36416 +#: book.translate.xml:36529 msgid "" "<primary>Software RAID Devices</primary> <secondary>Hardware-assisted RAID</" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36421 +#: book.translate.xml:36534 msgid "" "Some motherboards and expansion cards add some simple hardware, usually just " "a <acronym>ROM</acronym>, that allows the computer to boot from a " @@ -53802,7 +54035,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36432 +#: book.translate.xml:36545 msgid "" "Several levels of <acronym>RAID</acronym> are supported, depending on the " "hardware in use. See <citerefentry><refentrytitle>graid</" @@ -53810,7 +54043,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36436 +#: book.translate.xml:36549 msgid "" "<citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> requires the <filename>geom_raid.ko</filename> kernel module, " @@ -53820,12 +54053,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36443 +#: book.translate.xml:36556 msgid "Creating an Array" msgstr "建立陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36445 +#: book.translate.xml:36558 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 " @@ -53835,7 +54068,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36451 +#: book.translate.xml:36564 msgid "" "<command>graid label</command> is used to create a new array. The " "motherboard used for this example has an Intel software <acronym>RAID</" @@ -53846,14 +54079,14 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:36461 +#: book.translate.xml:36574 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:36466 +#: book.translate.xml:36579 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid label Intel gm0 RAID1 ada0 ada1</userinput>\n" @@ -53869,13 +54102,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36477 +#: book.translate.xml:36590 msgid "A status check shows the new mirror is ready for use:" msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:36480 book.translate.xml:36686 +#: book.translate.xml:36593 book.translate.xml:36799 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status</userinput>\n" @@ -53885,7 +54118,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36485 +#: book.translate.xml:36598 msgid "" "The array device appears in <filename>/dev/raid/</filename>. The first array " "is called <filename>r0</filename>. Additional arrays, if present, will be " @@ -53893,7 +54126,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36491 +#: book.translate.xml:36604 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 " @@ -53904,18 +54137,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36498 +#: book.translate.xml:36611 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl kern.geom.raid.name_format=1</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36502 +#: book.translate.xml:36615 msgid "Multiple Volumes" msgstr "多磁碟區" #. (itstool) path: sect2/para -#: book.translate.xml:36504 +#: book.translate.xml:36617 msgid "" "Some software <acronym>RAID</acronym> devices support more than one " "<emphasis>volume</emphasis> on an array. Volumes work like partitions, " @@ -53927,7 +54160,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36514 +#: book.translate.xml:36627 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid label -S 40G Intel gm0 RAID1 ada0 ada1</userinput>\n" @@ -53935,7 +54168,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36517 +#: book.translate.xml:36630 msgid "" "Volumes appear as additional <filename>r<replaceable>X</replaceable></" "filename> entries in <filename>/dev/raid/</filename>. An array with two " @@ -53943,7 +54176,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36523 +#: book.translate.xml:36636 msgid "" "See <citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for the number of volumes supported by different " @@ -53951,12 +54184,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36528 +#: book.translate.xml:36641 msgid "Converting a Single Drive to a Mirror" msgstr "轉換單一磁碟為鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:36530 +#: book.translate.xml:36643 msgid "" "Under certain specific conditions, it is possible to convert an existing " "single drive to a <citerefentry><refentrytitle>graid</" @@ -53966,7 +54199,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:36538 +#: book.translate.xml:36651 msgid "" "The drive must be partitioned with the <acronym>MBR</acronym> partitioning " "scheme. <acronym>GPT</acronym> or other partitioning schemes with metadata " @@ -53976,7 +54209,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:36546 +#: book.translate.xml:36659 msgid "" "There must be enough unpartitioned and unused space at the end of the drive " "to hold the <citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</" @@ -53985,20 +54218,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36554 +#: book.translate.xml:36667 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:36558 +#: book.translate.xml:36671 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid label Intel gm0 RAID1 ada0 NONE</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36560 +#: book.translate.xml:36673 msgid "" "<citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> metadata was written to the end of the drive in the unused " @@ -54006,13 +54239,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36564 +#: book.translate.xml:36677 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid insert raid/r0 ada1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36566 +#: book.translate.xml:36679 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 " @@ -54020,12 +54253,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36572 +#: book.translate.xml:36685 msgid "Inserting New Drives into the Array" msgstr "插入新磁碟到陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36574 +#: book.translate.xml:36687 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 " @@ -54035,7 +54268,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36581 +#: book.translate.xml:36694 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 " @@ -54043,7 +54276,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36585 +#: book.translate.xml:36698 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid insert raid/r0 ada1</userinput>\n" @@ -54054,19 +54287,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36593 +#: book.translate.xml:36706 msgid "Removing Drives from the Array" msgstr "從陣列移除磁碟" #. (itstool) path: sect2/para -#: book.translate.xml:36595 +#: book.translate.xml:36708 msgid "" "Individual drives can be permanently removed from a from an array and their " "metadata erased:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36598 +#: book.translate.xml:36711 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid remove raid/r0 ada1</userinput>\n" @@ -54076,30 +54309,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36605 +#: book.translate.xml:36718 msgid "Stopping the Array" msgstr "停止陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36607 +#: book.translate.xml:36720 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:36611 +#: book.translate.xml:36724 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid stop raid/r0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36615 +#: book.translate.xml:36728 msgid "Checking Array Status" msgstr "檢查陣列狀態" #. (itstool) path: sect2/para -#: book.translate.xml:36617 +#: book.translate.xml:36730 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 " @@ -54107,7 +54340,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36621 +#: book.translate.xml:36734 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status</userinput>\n" @@ -54117,7 +54350,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36626 +#: book.translate.xml:36739 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 " @@ -54125,7 +54358,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36631 +#: book.translate.xml:36744 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status -ga</userinput>\n" @@ -54134,12 +54367,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36637 +#: book.translate.xml:36750 msgid "Deleting Arrays" msgstr "刪除陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36639 +#: book.translate.xml:36752 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 " @@ -54148,18 +54381,18 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:36643 book.translate.xml:36693 +#: book.translate.xml:36756 book.translate.xml:36806 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid delete raid/r0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36647 +#: book.translate.xml:36760 msgid "Deleting Unexpected Arrays" msgstr "刪除預期之外的陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36649 +#: book.translate.xml:36762 msgid "" "Drives may unexpectedly contain <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> metadata, either from " @@ -54170,14 +54403,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36657 +#: book.translate.xml:36770 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:36660 +#: book.translate.xml:36773 #, no-wrap msgid "" "OK <userinput>set kern.geom.raid.enable=0</userinput>\n" @@ -54185,19 +54418,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36663 +#: book.translate.xml:36776 msgid "" "The system will boot with <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> disabled." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36668 +#: book.translate.xml:36781 msgid "Back up all data on the affected drive." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36672 +#: book.translate.xml:36785 msgid "" "As a workaround, <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> array detection can be " @@ -54205,18 +54438,18 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36675 +#: book.translate.xml:36788 #, no-wrap msgid "kern.geom.raid.enable=0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36677 +#: book.translate.xml:36790 msgid "to <filename>/boot/loader.conf</filename>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36679 +#: book.translate.xml:36792 msgid "" "To permanently remove the <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> metadata from the " @@ -54226,19 +54459,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36691 +#: book.translate.xml:36804 msgid "Delete the volume by name:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36695 +#: book.translate.xml:36808 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:36699 +#: book.translate.xml:36812 msgid "" "Reboot and verify data, restoring from backup if necessary. After the " "metadata has been removed, the <literal>kern.geom.raid.enable=0</literal> " @@ -54246,12 +54479,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:36710 +#: book.translate.xml:36823 msgid "<acronym>GEOM</acronym> Gate Network" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36712 +#: book.translate.xml:36825 msgid "" "<acronym>GEOM</acronym> provides a simple mechanism for providing remote " "access to devices such as disks, <acronym>CD</acronym>s, and file systems " @@ -54264,7 +54497,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36722 +#: book.translate.xml:36835 msgid "" "Similar to <acronym>NFS</acronym>, which is discussed in <xref linkend=" "\"network-nfs\"/>, <application>ggated</application> is configured using an " @@ -54276,26 +54509,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:36732 +#: book.translate.xml:36845 #, no-wrap msgid "192.168.1.5 RW /dev/da0s4d" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36734 +#: book.translate.xml:36847 msgid "" "Before exporting the device, ensure it is not currently mounted. Then, start " "<application>ggated</application>:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:36737 +#: book.translate.xml:36850 #, no-wrap msgid "<prompt>#</prompt> <userinput>ggated</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36739 +#: book.translate.xml:36852 msgid "" "Several options are available for specifying an alternate listening port or " "changing the default location of the exports file. Refer to " @@ -54304,7 +54537,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36743 +#: book.translate.xml:36856 msgid "" "To access the exported device on the client machine, first use " "<command>ggatec</command> to specify the <acronym>IP</acronym> address of " @@ -54317,7 +54550,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:36754 +#: book.translate.xml:36867 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ggatec create -o rw 192.168.1.1 /dev/da0s4d</userinput>\n" @@ -54326,7 +54559,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36758 +#: book.translate.xml:36871 msgid "" "The device on the server may now be accessed through <filename>/mnt</" "filename> on the client. For more details about <command>ggatec</command> " @@ -54335,7 +54568,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:36764 +#: book.translate.xml:36877 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 " @@ -54343,24 +54576,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36770 +#: book.translate.xml:36883 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:36776 +#: book.translate.xml:36889 msgid "Labeling Disk Devices" msgstr "磁碟裝置標籤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36781 +#: book.translate.xml:36894 msgid "<primary>Disk Labels</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36785 +#: book.translate.xml:36898 msgid "" "During system initialization, the FreeBSD kernel creates device nodes as " "devices are found. This method of probing for devices raises some issues. " @@ -54373,7 +54606,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36797 +#: book.translate.xml:36910 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 " @@ -54387,7 +54620,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36809 +#: book.translate.xml:36922 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 " @@ -54398,7 +54631,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:36819 +#: book.translate.xml:36932 msgid "" "<command>glabel</command> can create both transient and permanent labels. " "Only permanent labels are consistent across reboots. Refer to " @@ -54407,12 +54640,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36826 +#: book.translate.xml:36939 msgid "Label Types and Examples" msgstr "標籤類型與範例" #. (itstool) path: sect2/para -#: book.translate.xml:36828 +#: book.translate.xml:36941 msgid "" "Permanent labels can be a generic or a file system label. Permanent file " "system labels can be created with <citerefentry><refentrytitle>tunefs</" @@ -54427,7 +54660,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36839 +#: book.translate.xml:36952 msgid "" "Temporary labels are destroyed at the next reboot. These labels are created " "in <filename>/dev/label</filename> and are suited to experimentation. A " @@ -54435,51 +54668,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36847 +#: book.translate.xml:36960 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:36851 +#: book.translate.xml:36964 #, no-wrap msgid "<prompt>#</prompt> <userinput>tunefs -L <replaceable>home</replaceable> <replaceable>/dev/da3</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36853 +#: book.translate.xml:36966 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:36856 +#: book.translate.xml:36969 #, no-wrap msgid "/dev/ufs/home\t\t/home ufs rw 2 2" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:36859 +#: book.translate.xml:36972 msgid "" "The file system must not be mounted while attempting to run <command>tunefs</" "command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36863 +#: book.translate.xml:36976 msgid "Now the file system may be mounted:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36865 +#: book.translate.xml:36978 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36867 +#: book.translate.xml:36980 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 " @@ -54488,7 +54721,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36874 +#: book.translate.xml:36987 msgid "" "File systems may also be created with a default label by using the <option>-" "L</option> flag with <command>newfs</command>. Refer to " @@ -54497,28 +54730,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36879 +#: book.translate.xml:36992 msgid "The following command can be used to destroy the label:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36882 +#: book.translate.xml:36995 #, no-wrap msgid "<prompt>#</prompt> <userinput>glabel destroy home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36884 +#: book.translate.xml:36997 msgid "The following example shows how to label the partitions of a boot disk." msgstr "" #. (itstool) path: example/title -#: book.translate.xml:36888 +#: book.translate.xml:37001 msgid "Labeling Partitions on the Boot Disk" msgstr "在開機磁碟標記分割區標籤" #. (itstool) path: example/para -#: book.translate.xml:36890 +#: book.translate.xml:37003 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 " @@ -54531,7 +54764,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:36904 +#: book.translate.xml:37017 msgid "" "Reboot the system, and at the <citerefentry><refentrytitle>loader</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> prompt, press " @@ -54540,7 +54773,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:36908 +#: book.translate.xml:37021 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>glabel label rootfs /dev/ad0s1a</userinput>\n" @@ -54557,7 +54790,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:36920 +#: book.translate.xml:37033 msgid "" "The system will continue with multi-user boot. After the boot completes, " "edit <filename>/etc/fstab</filename> and replace the conventional device " @@ -54566,7 +54799,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:36926 +#: book.translate.xml:37039 #, no-wrap msgid "" "# Device Mountpoint FStype Options Dump Pass#\n" @@ -54578,14 +54811,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:36933 +#: book.translate.xml:37046 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:36937 +#: book.translate.xml:37050 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -54597,7 +54830,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36945 +#: book.translate.xml:37058 msgid "" "The <citerefentry><refentrytitle>glabel</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> class supports a label type for <acronym>UFS</" @@ -54610,7 +54843,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36956 +#: book.translate.xml:37069 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>glabel status</userinput>\n" @@ -54620,7 +54853,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36961 +#: book.translate.xml:37074 msgid "" "In the above example, <filename>ad4s1d</filename> represents <filename>/var</" "filename>, while <filename>ad4s1f</filename> represents <filename>/usr</" @@ -54630,7 +54863,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:36969 +#: book.translate.xml:37082 #, no-wrap msgid "" "/dev/ufsid/486b6fc38d330916 /var ufs rw 2 2\n" @@ -54638,7 +54871,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36972 +#: book.translate.xml:37085 msgid "" "Any partitions with <literal>ufsid</literal> labels can be mounted in this " "way, eliminating the need to manually create permanent labels, while still " @@ -54646,17 +54879,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:36980 +#: book.translate.xml:37093 msgid "UFS Journaling Through <acronym>GEOM</acronym>" msgstr "UFS Journaling 透過 <acronym>GEOM</acronym>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36985 +#: book.translate.xml:37098 msgid "<primary>Journaling</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36989 +#: book.translate.xml:37102 msgid "" "Support for journals on <acronym>UFS</acronym> file systems is available on " "FreeBSD. The implementation is provided through the <acronym>GEOM</acronym> " @@ -54667,7 +54900,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36998 +#: book.translate.xml:37111 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 " @@ -54676,7 +54909,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37004 +#: book.translate.xml:37117 msgid "" "This method provides another mechanism to protect against data loss and " "inconsistencies of the file system. Unlike Soft Updates, which tracks and " @@ -54688,7 +54921,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37013 +#: book.translate.xml:37126 msgid "" "The <filename>GENERIC</filename> kernel provides support for " "<command>gjournal</command>. To automatically load the " @@ -54697,26 +54930,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:37019 +#: book.translate.xml:37132 #, no-wrap msgid "geom_journal_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37021 +#: book.translate.xml:37134 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:37024 +#: book.translate.xml:37137 #, no-wrap msgid "options\tGEOM_JOURNAL" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37026 +#: book.translate.xml:37139 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 " @@ -54724,7 +54957,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:37031 +#: book.translate.xml:37144 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gjournal load</userinput>\n" @@ -54732,21 +54965,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37034 +#: book.translate.xml:37147 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:37038 +#: book.translate.xml:37151 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:37042 +#: book.translate.xml:37155 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -O 2 -J /dev/<replaceable>da4</replaceable>.journal</userinput>\n" @@ -54754,7 +54987,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37046 +#: book.translate.xml:37159 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</" @@ -54763,7 +54996,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37054 +#: book.translate.xml:37167 msgid "" "Journaling may also be enabled on current file systems by using " "<command>tunefs</command>. However, <emphasis>always</emphasis> make a " @@ -54777,7 +55010,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37064 +#: book.translate.xml:37177 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/" @@ -54786,33 +55019,33 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:37080 +#: book.translate.xml:37193 msgid "The Z File System (<acronym>ZFS</acronym>)" msgstr "Z 檔案系統 (<acronym>ZFS</acronym>)" #. (itstool) path: authorgroup/author -#: book.translate.xml:37090 +#: book.translate.xml:37203 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:37097 +#: book.translate.xml:37210 msgid "" "<personname> <firstname>Benedict</firstname> <surname>Reuschling</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:37104 +#: book.translate.xml:37217 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: chapter/para -#: book.translate.xml:37114 +#: book.translate.xml:37227 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 " @@ -54822,7 +55055,7 @@ msgstr "" "以往設計中發現的主要問題的一個先進的檔案系統。" #. (itstool) path: chapter/para -#: book.translate.xml:37119 +#: book.translate.xml:37232 msgid "" "Originally developed at <trademark>Sun</trademark>, ongoing open source " "<acronym>ZFS</acronym> development has moved to the <link xlink:href=" @@ -54833,12 +55066,12 @@ msgstr "" "link>。" #. (itstool) path: chapter/para -#: book.translate.xml:37122 +#: book.translate.xml:37235 msgid "<acronym>ZFS</acronym> has three major design goals:" msgstr "<acronym>ZFS</acronym> 的設計目標主要有三個:" #. (itstool) path: listitem/para -#: book.translate.xml:37126 +#: book.translate.xml:37239 msgid "" "Data integrity: All data includes a <link linkend=\"zfs-term-checksum" "\">checksum</link> of the data. When data is written, the checksum is " @@ -54853,7 +55086,7 @@ msgstr "" "資料備援 (Data redundancy),<acronym>ZFS</acronym> 會嘗試自動修正錯誤。" #. (itstool) path: listitem/para -#: book.translate.xml:37137 +#: book.translate.xml:37250 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 " @@ -54864,7 +55097,7 @@ msgstr "" "空間。" #. (itstool) path: listitem/para -#: book.translate.xml:37144 +#: book.translate.xml:37257 msgid "" "Performance: multiple caching mechanisms provide increased performance. " "<link linkend=\"zfs-term-arc\">ARC</link> is an advanced memory-based read " @@ -54878,19 +55111,19 @@ msgstr "" "使用 <link linkend=\"zfs-term-zil\">ZIL</link>。" #. (itstool) path: chapter/para -#: book.translate.xml:37154 +#: book.translate.xml:37267 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:37158 +#: book.translate.xml:37271 msgid "What Makes <acronym>ZFS</acronym> Different" msgstr "什麼使 <acronym>ZFS</acronym> 與眾不同" #. (itstool) path: sect1/para -#: book.translate.xml:37160 +#: book.translate.xml:37273 msgid "" "<acronym>ZFS</acronym> is significantly different from any previous file " "system because it is more than just a file system. Combining the " @@ -54934,12 +55167,12 @@ msgstr "" "案系統,對建立數個不同檔案系統與資料集 (Dataset) 時有許多的好處。" #. (itstool) path: sect1/title -#: book.translate.xml:37191 +#: book.translate.xml:37304 msgid "Quick Start Guide" msgstr "快速入門指南" #. (itstool) path: sect1/para -#: book.translate.xml:37193 +#: book.translate.xml:37306 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 " @@ -54949,24 +55182,24 @@ msgstr "" "存池。要開啟這個功能,可加入此行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:37198 +#: book.translate.xml:37311 #, no-wrap msgid "zfs_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37200 +#: book.translate.xml:37313 msgid "Then start the service:" msgstr "然後啟動服務:" #. (itstool) path: sect1/screen -#: book.translate.xml:37202 +#: book.translate.xml:37315 #, no-wrap msgid "<prompt>#</prompt> <userinput>service zfs start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37204 +#: book.translate.xml:37317 msgid "" "The examples in this section assume three <acronym>SCSI</acronym> disks with " "the device names <filename><replaceable>da0</replaceable></filename>, " @@ -54983,28 +55216,28 @@ msgstr "" "filename> 。" #. (itstool) path: sect2/title -#: book.translate.xml:37214 +#: book.translate.xml:37327 msgid "Single Disk Pool" msgstr "單磁碟儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:37216 +#: book.translate.xml:37329 msgid "To create a simple, non-redundant pool using a single disk device:" msgstr "要使用一個磁碟裝置建立一個簡單、無備援的儲存池可:" #. (itstool) path: sect2/screen -#: book.translate.xml:37219 +#: book.translate.xml:37332 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool create <replaceable>example</replaceable> <replaceable>/dev/da0</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37221 +#: book.translate.xml:37334 msgid "To view the new pool, review the output of <command>df</command>:" msgstr "要檢視這個新的儲存池,可查看 <command>df</command> 的輸出結果:" #. (itstool) path: sect2/screen -#: book.translate.xml:37224 +#: book.translate.xml:37337 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df</userinput>\n" @@ -55016,7 +55249,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37231 +#: book.translate.xml:37344 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 " @@ -55026,7 +55259,7 @@ msgstr "" "以作為檔案系統存取,可以在上面建立檔案且使用者可以瀏覽:" #. (itstool) path: sect2/screen -#: book.translate.xml:37236 +#: book.translate.xml:37349 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /example</userinput>\n" @@ -55040,7 +55273,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37245 +#: book.translate.xml:37358 msgid "" "However, this pool is not taking advantage of any <acronym>ZFS</acronym> " "features. To create a dataset on this pool with compression enabled:" @@ -55049,7 +55282,7 @@ msgstr "" "上建立一個有開啟壓縮功能的資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:37249 +#: book.translate.xml:37362 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create example/compressed</userinput>\n" @@ -55057,7 +55290,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37252 +#: book.translate.xml:37365 msgid "" "The <literal>example/compressed</literal> dataset is now a <acronym>ZFS</" "acronym> compressed file system. Try copying some large files to <filename>/" @@ -55068,18 +55301,18 @@ msgstr "" "compressed</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:37257 +#: book.translate.xml:37370 msgid "Compression can be disabled with:" msgstr "壓縮功能也可以使用以下指令關閉:" #. (itstool) path: sect2/screen -#: book.translate.xml:37259 +#: book.translate.xml:37372 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set compression=off example/compressed</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37261 +#: book.translate.xml:37374 msgid "" "To unmount a file system, use <command>zfs umount</command> and then verify " "with <command>df</command>:" @@ -55088,7 +55321,7 @@ msgstr "" "command> 確認:" #. (itstool) path: sect2/screen -#: book.translate.xml:37265 +#: book.translate.xml:37378 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs umount example/compressed</userinput>\n" @@ -55101,7 +55334,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37273 +#: book.translate.xml:37386 msgid "" "To re-mount the file system to make it accessible again, use <command>zfs " "mount</command> and verify with <command>df</command>:" @@ -55110,7 +55343,7 @@ msgstr "" "<command>df</command> 檢查:" #. (itstool) path: sect2/screen -#: book.translate.xml:37277 +#: book.translate.xml:37390 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs mount example/compressed</userinput>\n" @@ -55124,14 +55357,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37286 +#: book.translate.xml:37399 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:37289 +#: book.translate.xml:37402 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -55143,7 +55376,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37296 +#: book.translate.xml:37409 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 " @@ -55156,7 +55389,7 @@ msgstr "" "<literal>data</literal>,要設定每個資料區塊 (Data block) 要保留兩份備份:" #. (itstool) path: sect2/screen -#: book.translate.xml:37304 +#: book.translate.xml:37417 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create example/data</userinput>\n" @@ -55164,14 +55397,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37307 +#: book.translate.xml:37420 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:37310 +#: book.translate.xml:37423 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df</userinput>\n" @@ -55185,7 +55418,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37319 +#: book.translate.xml:37432 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, " @@ -55200,14 +55433,14 @@ msgstr "" "(Volume) 與分割區 (Partition) 的概念,且允許多個檔案系統共用相同的儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:37327 +#: book.translate.xml:37440 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:37330 +#: book.translate.xml:37443 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs destroy example/compressed</userinput>\n" @@ -55216,12 +55449,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37336 +#: book.translate.xml:37449 msgid "RAID-Z" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37338 +#: book.translate.xml:37451 msgid "" "Disks fail. One method of avoiding data loss from disk failure is to " "implement <acronym>RAID</acronym>. <acronym>ZFS</acronym> supports this " @@ -55234,7 +55467,7 @@ msgstr "" "多的可用空間。" #. (itstool) path: sect2/para -#: book.translate.xml:37345 +#: book.translate.xml:37458 msgid "" "This example creates a <acronym>RAID-Z</acronym> pool, specifying the disks " "to add to the pool:" @@ -55243,13 +55476,13 @@ msgstr "" "磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:37348 +#: book.translate.xml:37461 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool create storage raidz da0 da1 da2</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37351 +#: book.translate.xml:37464 msgid "" "<trademark>Sun</trademark> recommends that the number of devices used in a " "<acronym>RAID</acronym>-Z configuration be between three and nine. For " @@ -55268,7 +55501,7 @@ msgstr "" "citerefentry> 取得更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:37361 +#: book.translate.xml:37474 msgid "" "The previous example created the <literal>storage</literal> zpool. This " "example makes a new file system called <literal>home</literal> in that pool:" @@ -55277,19 +55510,19 @@ msgstr "" "會在該儲存池中建立一個新的檔案系統,名稱為 <literal>home</literal>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37366 +#: book.translate.xml:37479 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs create storage/home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37368 +#: book.translate.xml:37481 msgid "" "Compression and keeping extra copies of directories and files can be enabled:" msgstr "可以設定開啟壓縮及保留目錄及檔案額外備份的功能:" #. (itstool) path: sect2/screen -#: book.translate.xml:37371 +#: book.translate.xml:37484 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs set copies=2 storage/home</userinput>\n" @@ -55297,7 +55530,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37374 +#: book.translate.xml:37487 msgid "" "To make this the new home directory for users, copy the user data to this " "directory and create the appropriate symbolic links:" @@ -55306,7 +55539,7 @@ msgstr "" "符號連結 (Symbolic link):" #. (itstool) path: sect2/screen -#: book.translate.xml:37378 +#: book.translate.xml:37491 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp -rp /home/* /storage/home</userinput>\n" @@ -55316,7 +55549,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37383 +#: book.translate.xml:37496 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." @@ -55325,25 +55558,25 @@ msgstr "" "新使用者並登入該使用者來測試。" #. (itstool) path: sect2/para -#: book.translate.xml:37387 +#: book.translate.xml:37500 msgid "Try creating a file system snapshot which can be rolled back later:" msgstr "試著建立檔案系統快照 (Snapshot),稍後可用來還原 (Rollback):" #. (itstool) path: sect2/screen -#: book.translate.xml:37390 +#: book.translate.xml:37503 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs snapshot storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37392 +#: book.translate.xml:37505 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:37395 +#: book.translate.xml:37508 msgid "" "The <literal>@</literal> character is a delimiter between the file system " "name or the volume name. If an important directory has been accidentally " @@ -55355,13 +55588,13 @@ msgstr "" "存在時的快照 (Snapshot):" #. (itstool) path: sect2/screen -#: book.translate.xml:37401 +#: book.translate.xml:37514 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs rollback storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37403 +#: book.translate.xml:37516 msgid "" "To list all available snapshots, run <command>ls</command> in the file " "system's <filename>.zfs/snapshot</filename> directory. For example, to see " @@ -55371,13 +55604,13 @@ msgstr "" "執行 <command>ls</command>,舉例來說,要查看先前已做的快照:" #. (itstool) path: sect2/screen -#: book.translate.xml:37408 +#: book.translate.xml:37521 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls /storage/home/.zfs/snapshot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37410 +#: book.translate.xml:37523 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 " @@ -55387,13 +55620,13 @@ msgstr "" "的磁碟空間。先前的快照可以使用指令移除:" #. (itstool) path: sect2/screen -#: book.translate.xml:37415 +#: book.translate.xml:37528 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs destroy storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37417 +#: book.translate.xml:37530 msgid "" "After testing, <filename>/storage/home</filename> can be made the real " "<filename>/home</filename> using this command:" @@ -55402,13 +55635,13 @@ msgstr "" "home</filename> 使用此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:37421 +#: book.translate.xml:37534 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set mountpoint=/home storage/home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37423 +#: book.translate.xml:37536 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>:" @@ -55417,7 +55650,7 @@ msgstr "" "檔案系統做為真正的 <filename>/home</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37427 +#: book.translate.xml:37540 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -55436,7 +55669,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37441 +#: book.translate.xml:37554 msgid "" "This completes the <acronym>RAID-Z</acronym> configuration. Daily status " "updates about the file systems created can be generated as part of the " @@ -55450,18 +55683,18 @@ msgstr "" "行。加入此行到 <filename>/etc/periodic.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:37447 +#: book.translate.xml:37560 #, no-wrap msgid "daily_status_zfs_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37451 +#: book.translate.xml:37564 msgid "Recovering <acronym>RAID-Z</acronym>" msgstr "復原 <acronym>RAID-Z</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:37453 +#: book.translate.xml:37566 msgid "" "Every software <acronym>RAID</acronym> has a method of monitoring its " "<literal>state</literal>. The status of <acronym>RAID-Z</acronym> devices " @@ -55471,13 +55704,13 @@ msgstr "" "方式,而 <acronym>RAID-Z</acronym> 裝置的狀態可以使用這個指令來查看:" #. (itstool) path: sect2/screen -#: book.translate.xml:37458 +#: book.translate.xml:37571 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool status -x</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37460 +#: book.translate.xml:37573 msgid "" "If all pools are <link linkend=\"zfs-term-online\">Online</link> and " "everything is normal, the message shows:" @@ -55486,13 +55719,13 @@ msgstr "" "常,則訊息會顯示:" #. (itstool) path: sect2/screen -#: book.translate.xml:37464 +#: book.translate.xml:37577 #, no-wrap msgid "all pools are healthy" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37466 +#: book.translate.xml:37579 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:" @@ -55501,7 +55734,7 @@ msgstr "" "\">Offline</link>) 的狀態,此時儲存池的狀態會是:" #. (itstool) path: sect2/screen -#: book.translate.xml:37470 +#: book.translate.xml:37583 #, no-wrap msgid "" " pool: storage\n" @@ -55525,20 +55758,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37489 +#: book.translate.xml:37602 msgid "" "This indicates that the device was previously taken offline by the " "administrator with this command:" msgstr "這代表著裝置在之前被管理者使用此指令拿下線:" #. (itstool) path: sect2/screen -#: book.translate.xml:37492 +#: book.translate.xml:37605 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool offline storage da1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37494 +#: book.translate.xml:37607 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:" @@ -55547,13 +55780,13 @@ msgstr "" "掉儲存池中故障的磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:37498 +#: book.translate.xml:37611 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool replace storage da1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37500 +#: book.translate.xml:37613 msgid "" "From here, the status may be checked again, this time without <option>-x</" "option> so that all pools are shown:" @@ -55562,7 +55795,7 @@ msgstr "" "儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37504 +#: book.translate.xml:37617 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status storage</userinput>\n" @@ -55582,17 +55815,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37519 +#: book.translate.xml:37632 msgid "In this example, everything is normal." msgstr "在這個例子中,所有的磁碟均已正常運作。" #. (itstool) path: sect2/title -#: book.translate.xml:37523 +#: book.translate.xml:37636 msgid "Data Verification" msgstr "資料檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:37525 +#: book.translate.xml:37638 msgid "" "<acronym>ZFS</acronym> uses checksums to verify the integrity of stored " "data. These are enabled automatically upon creation of file systems." @@ -55601,7 +55834,7 @@ msgstr "" "會在建立檔案系統時便自動開啟。" #. (itstool) path: warning/para -#: book.translate.xml:37530 +#: book.translate.xml:37643 msgid "" "Checksums can be disabled, but it is <emphasis>not</emphasis> recommended! " "Checksums take very little storage space and provide data integrity. Many " @@ -55614,7 +55847,7 @@ msgstr "" "acronym> 功能無法正常運作,且關閉校驗碼對並不會明顯的改善效能。" #. (itstool) path: sect2/para -#: book.translate.xml:37538 +#: book.translate.xml:37651 msgid "" "Checksum verification is known as <emphasis>scrubbing</emphasis>. Verify the " "data integrity of the <literal>storage</literal> pool with this command:" @@ -55623,13 +55856,13 @@ msgstr "" "來檢驗 <literal>storage</literal> 儲存池的資料完整性:" #. (itstool) path: sect2/screen -#: book.translate.xml:37542 +#: book.translate.xml:37655 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool scrub storage</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37544 +#: book.translate.xml:37657 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 " @@ -55642,7 +55875,7 @@ msgstr "" "作。在清潔完成之後,可以使用 <command>status</command> 來查看狀態:" #. (itstool) path: sect2/screen -#: book.translate.xml:37551 +#: book.translate.xml:37664 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status storage</userinput>\n" @@ -55662,7 +55895,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37566 +#: book.translate.xml:37679 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 " @@ -55672,7 +55905,7 @@ msgstr "" "護資料不會默默損壞且確保儲存池的完整性。" #. (itstool) path: sect2/para -#: book.translate.xml:37571 +#: book.translate.xml:37684 msgid "" "Refer to <citerefentry><refentrytitle>zfs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>zpool</" @@ -55685,12 +55918,12 @@ msgstr "" "<acronym>ZFS</acronym> 選項。" #. (itstool) path: sect1/title -#: book.translate.xml:37577 +#: book.translate.xml:37690 msgid "<command>zpool</command> Administration" msgstr "<command>zpool</command> 管理" #. (itstool) path: sect1/para -#: book.translate.xml:37579 +#: book.translate.xml:37692 msgid "" "<acronym>ZFS</acronym> administration is divided between two main utilities. " "The <command>zpool</command> utility controls the operation of the pool and " @@ -55707,12 +55940,12 @@ msgstr "" "linkend=\"zfs-term-volume\">Volume</link>) 的資料集。" #. (itstool) path: sect2/title -#: book.translate.xml:37589 +#: book.translate.xml:37702 msgid "Creating and Destroying Storage Pools" msgstr "建立與摧毀儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:37591 +#: book.translate.xml:37704 msgid "" "Creating a <acronym>ZFS</acronym> storage pool (<emphasis>zpool</emphasis>) " "involves making a number of decisions that are relatively permanent because " @@ -55737,12 +55970,12 @@ msgstr "" "建立之後便無法更改,若要要更改,則必須先備份資料,把儲存池摧毀後再重新建立。" #. (itstool) path: sect2/para -#: book.translate.xml:37608 +#: book.translate.xml:37721 msgid "Create a simple mirror pool:" msgstr "建立一個簡單的鏡像儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37610 +#: book.translate.xml:37723 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>mypool</replaceable> mirror <replaceable>/dev/ada1</replaceable> <replaceable>/dev/ada2</replaceable></userinput>\n" @@ -55762,7 +55995,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37625 +#: book.translate.xml:37738 msgid "" "Multiple vdevs can be created at once. Specify multiple groups of disks " "separated by the vdev type keyword, <literal>mirror</literal> in this " @@ -55772,7 +56005,7 @@ msgstr "" "<literal>mirror</literal>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37629 +#: book.translate.xml:37742 #, 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" @@ -55794,7 +56027,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37646 +#: book.translate.xml:37759 msgid "" "Pools can also be constructed using partitions rather than whole disks. " "Putting <acronym>ZFS</acronym> in a separate partition allows the same disk " @@ -55817,7 +56050,7 @@ msgstr "" "時,也可符合這個較小的分割區容量,以使用替換的磁碟。" #. (itstool) path: sect2/para -#: book.translate.xml:37661 +#: book.translate.xml:37774 msgid "" "Create a <link linkend=\"zfs-term-vdev-raidz\">RAID-Z2</link> pool using " "partitions:" @@ -55826,7 +56059,7 @@ msgstr "" "池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37665 +#: book.translate.xml:37778 #, 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" @@ -55850,7 +56083,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37684 +#: book.translate.xml:37797 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 " @@ -55865,12 +56098,12 @@ msgstr "" "集之中檔案的應用程式無法辨識的行為。" #. (itstool) path: sect2/title -#: book.translate.xml:37695 +#: book.translate.xml:37808 msgid "Adding and Removing Devices" msgstr "加入與移除裝置" #. (itstool) path: sect2/para -#: book.translate.xml:37697 +#: book.translate.xml:37810 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 " @@ -55883,7 +56116,7 @@ msgstr "" "建立之後加入磁碟。" #. (itstool) path: sect2/para -#: book.translate.xml:37704 +#: book.translate.xml:37817 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 " @@ -55909,7 +56142,7 @@ msgstr "" "可讓這件事變的很簡單。" #. (itstool) path: sect2/para -#: book.translate.xml:37722 +#: book.translate.xml:37835 msgid "" "Upgrade the single disk (stripe) vdev <replaceable>ada0p3</replaceable> to a " "mirror by attaching <replaceable>ada1p3</replaceable>:" @@ -55918,7 +56151,7 @@ msgstr "" "<replaceable>ada0p3</replaceable> 採用鏡像型態 (mirror):" #. (itstool) path: sect2/screen -#: book.translate.xml:37726 +#: book.translate.xml:37839 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -55978,7 +56211,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37781 +#: book.translate.xml:37894 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 " @@ -56000,7 +56233,7 @@ msgstr "" "若在無備援的磁碟上發生故障的結果便是遺失大半寫到儲存池的資料區塊。" #. (itstool) path: sect2/para -#: book.translate.xml:37794 +#: book.translate.xml:37907 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 " @@ -56015,14 +56248,14 @@ msgstr "" "料量會不成比例的寫入到使用量較少的 vdev。" #. (itstool) path: sect2/para -#: book.translate.xml:37803 +#: book.translate.xml:37916 msgid "" "When attaching additional devices to a boot pool, remember to update the " "bootcode." msgstr "當連接額外的裝置到一個可以開機的儲存池,要記得更新 Bootcode。" #. (itstool) path: sect2/para -#: book.translate.xml:37806 +#: book.translate.xml:37919 msgid "" "Attach a second mirror group (<filename>ada2p3</filename> and " "<filename>ada3p3</filename>) to the existing mirror:" @@ -56031,7 +56264,7 @@ msgstr "" "filename>) 到既有的 mirror:" #. (itstool) path: sect2/screen -#: book.translate.xml:37810 +#: book.translate.xml:37923 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56071,7 +56304,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37845 +#: book.translate.xml:37958 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 " @@ -56083,12 +56316,12 @@ msgstr "" "剩下的那個磁碟故障,便會影響到整個儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:37851 +#: book.translate.xml:37964 msgid "Remove a disk from a three-way mirror group:" msgstr "從一個三方 mirror 群組移除一個磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:37853 +#: book.translate.xml:37966 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56122,12 +56355,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37884 +#: book.translate.xml:37997 msgid "Checking the Status of a Pool" msgstr "檢查儲存池狀態" #. (itstool) path: sect2/para -#: book.translate.xml:37886 +#: book.translate.xml:37999 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 " @@ -56143,7 +56376,7 @@ msgstr "" "併顯示。" #. (itstool) path: sect2/screen -#: book.translate.xml:37894 +#: book.translate.xml:38007 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56166,12 +56399,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37914 +#: book.translate.xml:38027 msgid "Clearing Errors" msgstr "清除錯誤" #. (itstool) path: sect2/para -#: book.translate.xml:37916 +#: book.translate.xml:38029 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 " @@ -56186,12 +56419,12 @@ msgstr "" "者來說會很重要,因在舊的錯誤尚未清除前不會回報後續的錯誤。" #. (itstool) path: sect2/title -#: book.translate.xml:37927 +#: book.translate.xml:38040 msgid "Replacing a Functioning Device" msgstr "更換運作中的裝置" #. (itstool) path: sect2/para -#: book.translate.xml:37929 +#: book.translate.xml:38042 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 " @@ -56211,12 +56444,12 @@ msgstr "" "新的空間,請參考 <link linkend=\"zfs-zpool-online\">擴增儲存池</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:37941 +#: book.translate.xml:38054 msgid "Replace a functioning device in the pool:" msgstr "更換儲存池中正在運作的狀置:" #. (itstool) path: sect2/screen -#: book.translate.xml:37943 +#: book.translate.xml:38056 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56279,12 +56512,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38003 +#: book.translate.xml:38116 msgid "Dealing with Failed Devices" msgstr "處理故障裝置" #. (itstool) path: sect2/para -#: book.translate.xml:38005 +#: book.translate.xml:38118 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 " @@ -56307,7 +56540,7 @@ msgstr "" "link>) 的狀態。" #. (itstool) path: sect2/para -#: book.translate.xml:38019 +#: book.translate.xml:38132 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 " @@ -56319,7 +56552,7 @@ msgstr "" "便會進入故障 (<link linkend=\"zfs-term-faulted\">Faulted</link>) 的狀態。" #. (itstool) path: sect2/para -#: book.translate.xml:38027 +#: book.translate.xml:38140 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 " @@ -56331,12 +56564,12 @@ msgstr "" "裝置名稱參數。" #. (itstool) path: sect2/para -#: book.translate.xml:38033 +#: book.translate.xml:38146 msgid "Replace a failed disk using <command>zpool replace</command>:" msgstr "使用 <command>zpool replace</command> 更換故障的磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:38036 +#: book.translate.xml:38149 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56393,12 +56626,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38090 +#: book.translate.xml:38203 msgid "Scrubbing a Pool" msgstr "清潔儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38092 +#: book.translate.xml:38205 msgid "" "It is recommended that pools be <link linkend=\"zfs-term-scrub\">scrubbed</" "link> regularly, ideally at least once every month. The <command>scrub</" @@ -56416,7 +56649,7 @@ msgstr "" "免影響其他的工作。" #. (itstool) path: sect2/screen -#: book.translate.xml:38102 +#: book.translate.xml:38215 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool scrub <replaceable>mypool</replaceable></userinput>\n" @@ -56442,7 +56675,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38123 +#: book.translate.xml:38236 msgid "" "In the event that a scrub operation needs to be cancelled, issue " "<command>zpool scrub -s <replaceable>mypool</replaceable></command>." @@ -56451,12 +56684,12 @@ msgstr "" "<replaceable>mypool</replaceable></command>。" #. (itstool) path: sect2/title -#: book.translate.xml:38129 +#: book.translate.xml:38242 msgid "Self-Healing" msgstr "自我修復" #. (itstool) path: sect2/para -#: book.translate.xml:38131 +#: book.translate.xml:38244 msgid "" "The checksums stored with data blocks enable the file system to " "<emphasis>self-heal</emphasis>. This feature will automatically repair data " @@ -56487,7 +56720,7 @@ msgstr "" "誤的資料。這件事不需要與系統管理者作任何互動便會在一般的儲存池操作時完成。" #. (itstool) path: sect2/para -#: book.translate.xml:38151 +#: book.translate.xml:38264 msgid "" "The next example demonstrates this self-healing behavior. A mirrored pool of " "disks <filename>/dev/ada0</filename> and <filename>/dev/ada1</filename> is " @@ -56497,7 +56730,7 @@ msgstr "" "filename> 及 <filename>/dev/ada1</filename> 做鏡像的儲存池。" #. (itstool) path: sect2/screen -#: book.translate.xml:38155 +#: book.translate.xml:38268 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>healer</replaceable> mirror <replaceable>/dev/ada0</replaceable> <replaceable>/dev/ada1</replaceable></userinput>\n" @@ -56520,7 +56753,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38173 +#: book.translate.xml:38286 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 " @@ -56530,7 +56763,7 @@ msgstr "" "驗碼供稍後做比較時使用。" #. (itstool) path: sect2/screen -#: book.translate.xml:38177 +#: book.translate.xml:38290 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /some/important/data /healer</userinput>\n" @@ -56543,7 +56776,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38185 +#: book.translate.xml:38298 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 " @@ -56555,7 +56788,7 @@ msgstr "" "入。" #. (itstool) path: warning/para -#: book.translate.xml:38192 +#: book.translate.xml:38305 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 " @@ -56568,10 +56801,10 @@ msgstr "" "這是一個危險的操作,會破壞重要的資料。在這裡使用僅為了示範用,不應在儲存池正" "常運作時嘗試使用,也不應將這個故意損壞資料的例子用在任何其他的檔案系統上,所" "以請勿使用任何不屬於該儲存池的其他磁碟裝置名稱並確定在執行指令前已對儲存池做" -"正確的備份。" +"正確的備份!" #. (itstool) path: sect2/screen -#: book.translate.xml:38203 +#: book.translate.xml:38316 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool export <replaceable>healer</replaceable></userinput>\n" @@ -56583,7 +56816,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38210 +#: book.translate.xml:38323 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. " @@ -56597,7 +56830,7 @@ msgstr "" "有錯誤校驗碼的裝置。" #. (itstool) path: sect2/screen -#: book.translate.xml:38218 +#: book.translate.xml:38331 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status <replaceable>healer</replaceable></userinput>\n" @@ -56621,7 +56854,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38237 +#: book.translate.xml:38350 msgid "" "The error was detected and handled by using the redundancy present in the " "unaffected <filename>ada0</filename> mirror disk. A checksum comparison with " @@ -56631,7 +56864,7 @@ msgstr "" "供資料。可與原來的校驗碼做比較來看儲存池是否已修復為一致。" #. (itstool) path: sect2/screen -#: book.translate.xml:38242 +#: book.translate.xml:38355 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sha1 /healer >> checksum.txt</userinput>\n" @@ -56641,7 +56874,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38247 +#: book.translate.xml:38360 msgid "" "The two checksums that were generated before and after the intentional " "tampering with the pool data still match. This shows how <acronym>ZFS</" @@ -56666,7 +56899,7 @@ msgstr "" "filename> 上的錯誤資料。" #. (itstool) path: sect2/screen -#: book.translate.xml:38262 +#: book.translate.xml:38375 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool scrub <replaceable>healer</replaceable></userinput>\n" @@ -56693,7 +56926,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38284 +#: book.translate.xml:38397 msgid "" "The scrub operation reads data from <filename>ada0</filename> and rewrites " "any data with an incorrect checksum on <filename>ada1</filename>. This is " @@ -56707,7 +56940,7 @@ msgstr "" "literal> 的項目來辨識。這個作業完成後,儲存池的狀態會更改為:" #. (itstool) path: sect2/screen -#: book.translate.xml:38291 +#: book.translate.xml:38404 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status <replaceable>healer</replaceable></userinput>\n" @@ -56731,7 +56964,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38310 +#: book.translate.xml:38423 msgid "" "After the scrub operation completes and all the data has been synchronized " "from <filename>ada0</filename> to <filename>ada1</filename>, the error " @@ -56743,7 +56976,7 @@ msgstr "" "\"zfs-zpool-clear\">Clear</link>) 儲存池狀態的錯誤訊息。" #. (itstool) path: sect2/screen -#: book.translate.xml:38316 +#: book.translate.xml:38429 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool clear <replaceable>healer</replaceable></userinput>\n" @@ -56763,19 +56996,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38331 +#: book.translate.xml:38444 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:38336 +#: book.translate.xml:38449 msgid "Growing a Pool" msgstr "擴增儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38338 +#: book.translate.xml:38451 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 " @@ -56797,7 +57030,7 @@ msgstr "" "可用空間便會成長到 2 TB。" #. (itstool) path: sect2/para -#: book.translate.xml:38352 +#: book.translate.xml:38465 msgid "" "Expansion is triggered by using <command>zpool online -e</command> on each " "device. After expansion of all devices, the additional space becomes " @@ -56807,12 +57040,12 @@ msgstr "" "完所有裝置後,儲存池便可使用額外的空間。" #. (itstool) path: sect2/title -#: book.translate.xml:38359 +#: book.translate.xml:38472 msgid "Importing and Exporting Pools" msgstr "匯入與匯出儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38361 +#: book.translate.xml:38474 msgid "" "Pools are <emphasis>exported</emphasis> before moving them to another " "system. All datasets are unmounted, and each device is marked as exported " @@ -56837,18 +57070,18 @@ msgstr "" "生無法預期的結果。" #. (itstool) path: sect2/para -#: book.translate.xml:38375 +#: book.translate.xml:38488 msgid "Export a pool that is not in use:" msgstr "匯出未使用的儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38377 +#: book.translate.xml:38490 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool export mypool</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38379 +#: book.translate.xml:38492 msgid "" "Importing a pool automatically mounts the datasets. This may not be the " "desired behavior, and can be prevented with <command>zpool import -N</" @@ -56868,12 +57101,12 @@ msgstr "" "import -a</command> 會匯入所有沒有被其他系統使用的儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:38392 +#: book.translate.xml:38505 msgid "List all available pools for import:" msgstr "列出所有可以匯入的儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38394 +#: book.translate.xml:38507 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool import</userinput>\n" @@ -56888,12 +57121,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38404 +#: book.translate.xml:38517 msgid "Import the pool with an alternative root directory:" msgstr "使用替代的根目錄匯入儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38406 +#: book.translate.xml:38519 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool import -o altroot=<replaceable>/mnt</replaceable> <replaceable>mypool</replaceable></userinput>\n" @@ -56904,12 +57137,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38414 +#: book.translate.xml:38527 msgid "Upgrading a Storage Pool" msgstr "升級儲存儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38416 +#: book.translate.xml:38529 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 " @@ -56924,12 +57157,12 @@ msgstr "" "存池可以升級,但有新功能的儲存池無法降級。" #. (itstool) path: sect2/para -#: book.translate.xml:38425 +#: book.translate.xml:38538 msgid "Upgrade a v28 pool to support <literal>Feature Flags</literal>:" msgstr "升級一個 v28 的儲存以支援功能旗標 (<literal>Feature Flags</literal>):" #. (itstool) path: sect2/screen -#: book.translate.xml:38428 +#: book.translate.xml:38541 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56976,7 +57209,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38470 +#: book.translate.xml:38583 msgid "" "The newer features of <acronym>ZFS</acronym> will not be available until " "<command>zpool upgrade</command> has completed. <command>zpool upgrade -v</" @@ -56988,12 +57221,12 @@ msgstr "" "能,也同時會列出已經支援那些功能。" #. (itstool) path: sect2/para -#: book.translate.xml:38476 +#: book.translate.xml:38589 msgid "Upgrade a pool to support additional feature flags:" msgstr "升級儲存池支援新版的功能旗標 (Feature flags):" #. (itstool) path: sect2/screen -#: book.translate.xml:38478 +#: book.translate.xml:38591 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -57047,8 +57280,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:38528 -#, fuzzy +#: book.translate.xml:38641 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 " @@ -57057,52 +57289,50 @@ msgid "" "option) and <acronym>EFI</acronym> (for more modern systems)." msgstr "" "在使用儲存池來開機的系統上的 Boot code 也必須一併更新來支援新的儲存池版本,可" -"在含有 Boot code 的分割區使用 <command>gpart bootcode</command> 來更新。請參" -"考 <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 取得更多資訊。" +"在含有 Boot code 的分割區使用 <command>gpart bootcode</command> 來更新。目前" +"有兩種 Boot code 可使用,需視系統開機的方式使用:<acronym>GPT</acronym> (最常" +"用的選項) 以及 <acronym>EFI</acronym> (較新的系統)。" #. (itstool) path: warning/para -#: book.translate.xml:38536 -#, fuzzy +#: book.translate.xml:38649 msgid "For legacy boot using GPT, use the following command:" -msgstr "執行以下指令來啟動伺服器:" +msgstr "針對傳統使用 GPT 開機的系統,可以使用以下指令:" #. (itstool) path: warning/screen -#: book.translate.xml:38539 +#: book.translate.xml:38652 #, no-wrap msgid "<prompt>#</prompt> <userinput>gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i <replaceable>1</replaceable> <replaceable>ada1</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:38541 -#, fuzzy +#: book.translate.xml:38654 msgid "For systems using EFI to boot, execute the following command:" -msgstr "替以下指令的輸出建立一份可列印的複本:" +msgstr "針對使用 EFI 開機的系統可以執行以下指令:" #. (itstool) path: warning/screen -#: book.translate.xml:38544 +#: book.translate.xml:38657 #, no-wrap msgid "<prompt>#</prompt> <userinput>gpart bootcode -p /boot/boot1.efifat -i <replaceable>1</replaceable> <replaceable>ada1</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:38546 -#, fuzzy +#: book.translate.xml:38659 msgid "" "Apply the bootcode to all bootable disks in the pool. See " "<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> for more information." msgstr "" -"請參考 <citerefentry><refentrytitle>hosts</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> 取得更多資訊。" +"套用 Boot code 到所有儲存池中可開機的磁碟。請參考 " +"<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> 以取得更多資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:38552 +#: book.translate.xml:38665 msgid "Displaying Recorded Pool History" msgstr "顯示已記錄的儲存池歷史日誌" #. (itstool) path: sect2/para -#: book.translate.xml:38554 +#: book.translate.xml:38667 msgid "" "Commands that modify the pool are recorded. Recorded actions include the " "creation of datasets, changing properties, or replacement of a disk. This " @@ -57117,7 +57347,7 @@ msgstr "" "<command>zpool history</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:38563 +#: book.translate.xml:38676 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history</userinput>\n" @@ -57129,7 +57359,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38570 +#: book.translate.xml:38683 msgid "" "The output shows <command>zpool</command> and <command>zfs</command> " "commands that were executed on the pool along with a timestamp. Only " @@ -57143,7 +57373,7 @@ msgstr "" "出所有儲存池的歷史記錄。" #. (itstool) path: sect2/para -#: book.translate.xml:38578 +#: book.translate.xml:38691 msgid "" "<command>zpool history</command> can show even more information when the " "options <option>-i</option> or <option>-l</option> are provided. <option>-i</" @@ -57155,7 +57385,7 @@ msgstr "" "事件外,也會顯示內部記錄的 <acronym>ZFS</acronym> 事件。" #. (itstool) path: sect2/screen -#: book.translate.xml:38584 +#: book.translate.xml:38697 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history -i</userinput>\n" @@ -57170,7 +57400,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38594 +#: book.translate.xml:38707 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 " @@ -57180,7 +57410,7 @@ msgstr "" "包含的資訊有執行指令的使用者名稱、主機名稱以及更改的項目。" #. (itstool) path: sect2/screen -#: book.translate.xml:38599 +#: book.translate.xml:38712 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history -l</userinput>\n" @@ -57192,7 +57422,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38606 +#: book.translate.xml:38719 msgid "" "The output shows that the <systemitem class=\"username\">root</systemitem> " "user created the mirrored pool with disks <filename>/dev/ada0</filename> and " @@ -57211,7 +57441,7 @@ msgstr "" "稱。" #. (itstool) path: sect2/para -#: book.translate.xml:38618 +#: book.translate.xml:38731 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 " @@ -57223,12 +57453,12 @@ msgstr "" "有用的資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:38626 +#: book.translate.xml:38739 msgid "Performance Monitoring" msgstr "監視效能" #. (itstool) path: sect2/para -#: book.translate.xml:38628 +#: book.translate.xml:38741 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 " @@ -57243,7 +57473,7 @@ msgstr "" "來,可以提供儲存池名稱來只顯示該儲存池的監視資訊。舉一個簡單的例子:" #. (itstool) path: sect2/screen -#: book.translate.xml:38637 +#: book.translate.xml:38750 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool iostat</userinput>\n" @@ -57254,7 +57484,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38643 +#: book.translate.xml:38756 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 " @@ -57271,7 +57501,7 @@ msgstr "" "代表總共要顯示的統計資訊筆數。" #. (itstool) path: sect2/para -#: book.translate.xml:38655 +#: book.translate.xml:38768 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 " @@ -57285,7 +57515,7 @@ msgstr "" "示有兩個裝置的鏡像儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38663 +#: book.translate.xml:38776 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool iostat -v </userinput>\n" @@ -57300,12 +57530,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38675 +#: book.translate.xml:38788 msgid "Splitting a Storage Pool" msgstr "分割儲存儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38677 +#: book.translate.xml:38790 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 " @@ -57320,12 +57550,12 @@ msgstr "" "的執行,這可以協助確認操作是否與使用者所要的相同。" #. (itstool) path: sect1/title -#: book.translate.xml:38689 +#: book.translate.xml:38802 msgid "<command>zfs</command> Administration" msgstr "<command>zfs</command> 管理" #. (itstool) path: sect1/para -#: book.translate.xml:38691 +#: book.translate.xml:38804 msgid "" "The <command>zfs</command> utility is responsible for creating, destroying, " "and managing all <acronym>ZFS</acronym> datasets that exist within a pool. " @@ -57337,12 +57567,12 @@ msgstr "" "\"><command>zpool</command></link> 來管理。" #. (itstool) path: sect2/title -#: book.translate.xml:38697 +#: book.translate.xml:38810 msgid "Creating and Destroying Datasets" msgstr "建立與摧毀資料集" #. (itstool) path: sect2/para -#: book.translate.xml:38699 +#: book.translate.xml:38812 msgid "" "Unlike traditional disks and volume managers, space in <acronym>ZFS</" "acronym> is <emphasis>not</emphasis> preallocated. With traditional file " @@ -57380,7 +57610,7 @@ msgstr "" "會變的較緩慢,且掛載上百個或其至上千個資料集可能會使 FreeBSD 的開機程序變慢。" #. (itstool) path: sect2/para -#: book.translate.xml:38723 +#: book.translate.xml:38836 msgid "" "Create a new dataset and enable <link linkend=\"zfs-term-compression-" "lz4\">LZ4 compression</link> on it:" @@ -57389,7 +57619,7 @@ msgstr "" "link>:" #. (itstool) path: sect2/screen -#: book.translate.xml:38726 +#: book.translate.xml:38839 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57427,7 +57657,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38759 +#: book.translate.xml:38872 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 " @@ -57437,12 +57667,12 @@ msgstr "" "所有檔案並更新所有相關的 Metadata。" #. (itstool) path: sect2/para -#: book.translate.xml:38764 +#: book.translate.xml:38877 msgid "Destroy the previously-created dataset:" msgstr "摧毀先前建立的資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:38766 +#: book.translate.xml:38879 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57480,7 +57710,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38799 +#: book.translate.xml:38912 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 " @@ -57506,12 +57736,12 @@ msgstr "" "照,而不會真的摧毀,因摧毀快照所釋放出的空間也會同時顯示。" #. (itstool) path: sect2/title -#: book.translate.xml:38818 +#: book.translate.xml:38931 msgid "Creating and Destroying Volumes" msgstr "建立與摧毀磁碟區" #. (itstool) path: sect2/para -#: book.translate.xml:38820 +#: book.translate.xml:38933 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/" @@ -57527,7 +57757,7 @@ msgstr "" "<acronym>HAST</acronym> 通訊協定匯出。" #. (itstool) path: sect2/para -#: book.translate.xml:38829 +#: book.translate.xml:38942 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 " @@ -57542,7 +57772,7 @@ msgstr "" "一個 250 MB 的磁碟區可建立一個壓縮的 <acronym>FAT</acronym> 檔案系統。" #. (itstool) path: sect2/screen -#: book.translate.xml:38838 +#: book.translate.xml:38951 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create -V 250m -o compression=on tank/fat32</userinput>\n" @@ -57559,7 +57789,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38850 +#: book.translate.xml:38963 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 " @@ -57569,12 +57799,12 @@ msgstr "" "背景會需要花費數分鐘來讓釋放空間再次可用。" #. (itstool) path: sect2/title -#: book.translate.xml:38857 +#: book.translate.xml:38970 msgid "Renaming a Dataset" msgstr "重新命名資料集" #. (itstool) path: sect2/para -#: book.translate.xml:38859 +#: book.translate.xml:38972 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 " @@ -57590,12 +57820,12 @@ msgstr "" "料集而定),可使用 <option>-u</option> 來避免重新掛載。" #. (itstool) path: sect2/para -#: book.translate.xml:38869 +#: book.translate.xml:38982 msgid "Rename a dataset and move it to be under a different parent dataset:" msgstr "重新命名一個資料集並移動該資料集到另一個父資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:38872 +#: book.translate.xml:38985 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57634,7 +57864,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38906 +#: book.translate.xml:39019 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 " @@ -57646,7 +57876,7 @@ msgstr "" "也會一併被重新命名。" #. (itstool) path: sect2/screen -#: book.translate.xml:38912 +#: book.translate.xml:39025 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -t snapshot</userinput>\n" @@ -57659,12 +57889,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38922 +#: book.translate.xml:39035 msgid "Setting Dataset Properties" msgstr "設定資料集屬性" #. (itstool) path: sect2/para -#: book.translate.xml:38924 +#: book.translate.xml:39037 msgid "" "Each <acronym>ZFS</acronym> dataset has a number of properties that control " "its behavior. Most properties are automatically inherited from the parent " @@ -57683,7 +57913,7 @@ msgstr "" "份可以使用 <command>zfs inherit</command> 還原成其繼承的值。" #. (itstool) path: sect2/para -#: book.translate.xml:38936 +#: book.translate.xml:39049 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 " @@ -57696,7 +57926,7 @@ msgstr "" "性,會使用冒號 (<literal>:</literal>) 建立一個自訂命名空間供自訂屬性使用。" #. (itstool) path: sect2/screen -#: book.translate.xml:38943 +#: book.translate.xml:39056 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs set <replaceable>custom</replaceable>:<replaceable>costcenter</replaceable>=<replaceable>1234</replaceable> <replaceable>tank</replaceable></userinput>\n" @@ -57706,7 +57936,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38948 +#: book.translate.xml:39061 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 " @@ -57718,7 +57948,7 @@ msgstr "" "於儲存池的歷史記錄)。" #. (itstool) path: sect2/screen -#: book.translate.xml:38954 +#: book.translate.xml:39067 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs inherit -r <replaceable>custom</replaceable>:<replaceable>costcenter</replaceable> <replaceable>tank</replaceable></userinput>\n" @@ -57730,12 +57960,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:38962 +#: book.translate.xml:39075 msgid "Getting and Setting Share Properties" msgstr "取得與設定共享屬性" #. (itstool) path: sect3/para -#: book.translate.xml:38964 +#: book.translate.xml:39077 msgid "" "Two commonly used and useful dataset properties are the <acronym>NFS</" "acronym> and <acronym>SMB</acronym> share options. Setting these define if " @@ -57745,7 +57975,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:38972 +#: book.translate.xml:39085 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get sharenfs <replaceable>mypool/usr/home</replaceable></userinput>\n" @@ -57757,18 +57987,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:38979 +#: book.translate.xml:39092 msgid "To enable sharing of a dataset, enter:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:38981 +#: book.translate.xml:39094 #, no-wrap msgid "<prompt>#</prompt> <userinput> zfs set sharenfs=on <replaceable>mypool/usr/home</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:38983 +#: book.translate.xml:39096 msgid "" "It is also possible to set additional options for sharing datasets through " "<acronym>NFS</acronym>, such as <option>-alldirs</option>, <option>-maproot</" @@ -57777,18 +58007,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:38989 +#: book.translate.xml:39102 #, no-wrap msgid "<prompt>#</prompt> <userinput> zfs set sharenfs=\"-alldirs,-maproot=<replaceable>root</replaceable>,-network=<replaceable>192.168.1.0/24</replaceable>\" <replaceable>mypool/usr/home</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38994 +#: book.translate.xml:39107 msgid "Managing Snapshots" msgstr "管理快照 (Snapshot)" #. (itstool) path: sect2/para -#: book.translate.xml:38996 +#: book.translate.xml:39109 msgid "" "<link linkend=\"zfs-term-snapshot\">Snapshots</link> are one of the most " "powerful features of <acronym>ZFS</acronym>. A snapshot provides a read-" @@ -57823,7 +58053,7 @@ msgstr "" "所備份的資料其實是分散不同時間點的。" #. (itstool) path: sect2/para -#: book.translate.xml:39020 +#: book.translate.xml:39133 msgid "" "Snapshots in <acronym>ZFS</acronym> provide a variety of features that even " "other file systems with snapshot functionality lack. A typical example of " @@ -57852,12 +58082,12 @@ msgstr "" "但可以用在快速且簡單的保存某個特定時間點的資料集。" #. (itstool) path: sect3/title -#: book.translate.xml:39041 +#: book.translate.xml:39154 msgid "Creating Snapshots" msgstr "建立快照" #. (itstool) path: sect3/para -#: book.translate.xml:39043 +#: book.translate.xml:39156 msgid "" "Snapshots are created with <command>zfs snapshot <replaceable>dataset</" "replaceable>@<replaceable>snapshotname</replaceable></command>. Adding " @@ -57869,12 +58099,12 @@ msgstr "" "<option>-r</option> 可以遞迴對所有同名的子資料集建立快照。" #. (itstool) path: sect3/para -#: book.translate.xml:39048 +#: book.translate.xml:39161 msgid "Create a recursive snapshot of the entire pool:" msgstr "建立一個整個儲存池的遞迴快照:" #. (itstool) path: sect3/screen -#: book.translate.xml:39050 +#: book.translate.xml:39163 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -t all</userinput>\n" @@ -57915,7 +58145,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39086 +#: book.translate.xml:39199 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 " @@ -57927,7 +58157,7 @@ msgstr "" "<option>-t all</option> 可以同時列出檔案系統的內容及快照。" #. (itstool) path: sect3/para -#: book.translate.xml:39092 +#: book.translate.xml:39205 msgid "" "Snapshots are not mounted directly, so path is shown in the " "<literal>MOUNTPOINT</literal> column. There is no mention of available disk " @@ -57940,7 +58170,7 @@ msgstr "" "再寫入。比較快照與其原來建立時的資料集:" #. (itstool) path: sect3/screen -#: book.translate.xml:39099 +#: book.translate.xml:39212 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/usr/home</replaceable></userinput>\n" @@ -57950,7 +58180,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39104 +#: book.translate.xml:39217 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 " @@ -57965,7 +58195,7 @@ msgstr "" "製一個檔案到該資料集,可以讓空間使用量變的更明顯,然後再做第二個快照:" #. (itstool) path: sect3/screen -#: book.translate.xml:39114 +#: book.translate.xml:39227 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/etc/passwd</replaceable> <replaceable>/var/tmp</replaceable></userinput>\n" @@ -57978,7 +58208,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39122 +#: book.translate.xml:39235 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 " @@ -57992,12 +58222,12 @@ msgstr "" "動在前次快照與之後快照間的關係。" #. (itstool) path: sect3/title -#: book.translate.xml:39132 +#: book.translate.xml:39245 msgid "Comparing Snapshots" msgstr "比對快照" #. (itstool) path: sect3/para -#: book.translate.xml:39134 +#: book.translate.xml:39247 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 " @@ -58013,7 +58243,7 @@ msgstr "" "個指令會產生以下結果:" #. (itstool) path: sect3/screen -#: book.translate.xml:39144 +#: book.translate.xml:39257 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58027,7 +58257,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39153 +#: book.translate.xml:39266 msgid "" "The command lists the changes between the specified snapshot (in this case " "<literal><replaceable>mypool/var/tmp@my_recursive_snapshot</replaceable></" @@ -58039,39 +58269,39 @@ msgstr "" "一個欄位是更改的類型:" #. (itstool) path: row/entry -#: book.translate.xml:39164 +#: book.translate.xml:39277 msgid "The path or file was added." msgstr "加入了該路徑或檔案。" #. (itstool) path: row/entry -#: book.translate.xml:39169 +#: book.translate.xml:39282 msgid "The path or file was deleted." msgstr "刪除了該路徑或檔案。" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:39173 book.translate.xml:65535 +#: book.translate.xml:39286 book.translate.xml:65535 msgid "M" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:39174 +#: book.translate.xml:39287 msgid "The path or file was modified." msgstr "修改了該路徑或檔案。" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:39178 book.translate.xml:65535 +#: book.translate.xml:39291 book.translate.xml:65535 msgid "R" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:39179 +#: book.translate.xml:39292 msgid "The path or file was renamed." msgstr "重新命名了該路徑或檔案。" #. (itstool) path: sect3/para -#: book.translate.xml:39185 +#: book.translate.xml:39298 msgid "" "Comparing the output with the table, it becomes clear that " "<filename><replaceable>passwd</replaceable></filename> was added after the " @@ -58087,7 +58317,7 @@ msgstr "" "錄已經做過修改。" #. (itstool) path: sect3/para -#: book.translate.xml:39193 +#: book.translate.xml:39306 msgid "" "Comparing two snapshots is helpful when using the <acronym>ZFS</acronym> " "replication feature to transfer a dataset to a different host for backup " @@ -58097,14 +58327,14 @@ msgstr "" "兩個快照也同樣很有用。" #. (itstool) path: sect3/para -#: book.translate.xml:39197 +#: book.translate.xml:39310 msgid "" "Compare two snapshots by providing the full dataset name and snapshot name " "of both datasets:" msgstr "比對兩個快照需要提供兩個資料集的完整資料集名稱與快照名稱:" #. (itstool) path: sect3/screen -#: book.translate.xml:39200 +#: book.translate.xml:39313 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /var/tmp/passwd /var/tmp/passwd.copy</userinput>\n" @@ -58119,7 +58349,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39210 +#: book.translate.xml:39323 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=" @@ -58129,12 +58359,12 @@ msgstr "" "更。請參考 <link linkend=\"zfs-zfs-send\">備份</link> 一節來取得更多資訊。" #. (itstool) path: sect3/title -#: book.translate.xml:39218 +#: book.translate.xml:39331 msgid "Snapshot Rollback" msgstr "使用快照還原" #. (itstool) path: sect3/para -#: book.translate.xml:39220 +#: book.translate.xml:39333 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 " @@ -58169,7 +58399,7 @@ msgstr "" "會遺失重要的資料。" #. (itstool) path: sect3/para -#: book.translate.xml:39246 +#: book.translate.xml:39359 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." @@ -58178,7 +58408,7 @@ msgstr "" "原到快照。" #. (itstool) path: sect3/screen -#: book.translate.xml:39250 +#: book.translate.xml:39363 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58195,7 +58425,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39262 +#: book.translate.xml:39375 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 " @@ -58208,7 +58438,7 @@ msgstr "" "用快照時可用。要拿回檔案並從最後一次快照重新開始,可執行以下指令:" #. (itstool) path: sect3/screen -#: book.translate.xml:39269 +#: book.translate.xml:39382 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs rollback <replaceable>mypool/var/tmp@diff_snapshot</replaceable></userinput>\n" @@ -58217,7 +58447,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39273 +#: book.translate.xml:39386 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 " @@ -58228,7 +58458,7 @@ msgstr "" "其之後建立的快照。要這麼做時,<acronym>ZFS</acronym> 會發出這個警告:" #. (itstool) path: sect3/screen -#: book.translate.xml:39279 +#: book.translate.xml:39392 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt snapshot <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58244,7 +58474,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39290 +#: book.translate.xml:39403 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 " @@ -58263,7 +58493,7 @@ msgstr "" "做,那麼必須要知道會遺失所有在這之間的快照,然後可執行以下指令:" #. (itstool) path: sect3/screen -#: book.translate.xml:39302 +#: book.translate.xml:39415 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs rollback -r <replaceable>mypool/var/tmp@my_recursive_snapshot</replaceable></userinput>\n" @@ -58275,7 +58505,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39309 +#: book.translate.xml:39422 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</" @@ -58285,12 +58515,12 @@ msgstr "" "rollback -r</command> 會移除的快照。" #. (itstool) path: sect3/title -#: book.translate.xml:39316 +#: book.translate.xml:39429 msgid "Restoring Individual Files from Snapshots" msgstr "從快照還原個別檔案" #. (itstool) path: sect3/para -#: book.translate.xml:39318 +#: book.translate.xml:39431 msgid "" "Snapshots are mounted in a hidden directory under the parent dataset: " "<filename>.zfs/snapshots/<replaceable>snapshotname</replaceable></filename>. " @@ -58311,7 +58541,7 @@ msgstr "" "令中。" #. (itstool) path: sect3/screen -#: book.translate.xml:39331 +#: book.translate.xml:39444 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get snapdir <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58325,7 +58555,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39340 +#: book.translate.xml:39453 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 " @@ -58341,7 +58571,7 @@ msgstr "" "filename> 目錄還原一個檔案,透過從含有該檔案的最新版快照複製:" #. (itstool) path: sect3/screen -#: book.translate.xml:39351 +#: book.translate.xml:39464 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rm /var/tmp/passwd</userinput>\n" @@ -58355,7 +58585,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39360 +#: book.translate.xml:39473 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 " @@ -58373,7 +58603,7 @@ msgstr "" "出現以下錯誤:" #. (itstool) path: sect3/screen -#: book.translate.xml:39370 +#: book.translate.xml:39483 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/etc/rc.conf</replaceable> /var/tmp/.zfs/snapshot/<replaceable>after_cp/</replaceable></userinput>\n" @@ -58381,7 +58611,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39373 +#: book.translate.xml:39486 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 " @@ -58392,7 +58622,7 @@ msgstr "" "該快照目錄中移除,因為這會變更該資料集所代表的狀態。" #. (itstool) path: sect3/para -#: book.translate.xml:39379 +#: book.translate.xml:39492 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 " @@ -58402,7 +58632,7 @@ msgstr "" "<literal>written</literal> 屬性可以用來追蹤有多少空間被快照所使用。" #. (itstool) path: sect3/para -#: book.translate.xml:39384 +#: book.translate.xml:39497 msgid "" "Snapshots are destroyed and the space reclaimed with <command>zfs destroy " "<replaceable>dataset</replaceable>@<replaceable>snapshot</replaceable></" @@ -58419,12 +58649,12 @@ msgstr "" "實際執行摧毀的操作。" #. (itstool) path: sect2/title -#: book.translate.xml:39397 +#: book.translate.xml:39510 msgid "Managing Clones" msgstr "管理複本 (Clone)" #. (itstool) path: sect2/para -#: book.translate.xml:39399 +#: book.translate.xml:39512 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 " @@ -58447,12 +58677,12 @@ msgstr "" "點,並非只能位於原來快照的位置底下。" #. (itstool) path: sect2/para -#: book.translate.xml:39413 +#: book.translate.xml:39526 msgid "To demonstrate the clone feature, this example dataset is used:" msgstr "要示範複本功能會用到這個範例資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:39416 +#: book.translate.xml:39529 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>camino/home/joe</replaceable></userinput>\n" @@ -58463,7 +58693,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39422 +#: book.translate.xml:39535 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. " @@ -58478,7 +58708,7 @@ msgstr "" "非必要,因為複本與資料集可同時存在,不會有任何問題。" #. (itstool) path: sect2/screen -#: book.translate.xml:39431 +#: book.translate.xml:39544 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs clone <replaceable>camino/home/joe</replaceable>@<replaceable>backup</replaceable> <replaceable>camino/home/joenew</replaceable></userinput>\n" @@ -58495,7 +58725,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39443 +#: book.translate.xml:39556 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 " @@ -58513,7 +58743,7 @@ msgstr "" "literal> 也會因為成為一個完全獨立的資料集而移除。以下範例會示範這個動作:" #. (itstool) path: sect2/screen -#: book.translate.xml:39454 +#: book.translate.xml:39567 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get origin <replaceable>camino/home/joenew</replaceable></userinput>\n" @@ -58526,7 +58756,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39462 +#: book.translate.xml:39575 msgid "" "After making some changes like copying <filename>loader.conf</filename> to " "the promoted clone, for example, the old directory becomes obsolete in this " @@ -58542,7 +58772,7 @@ msgstr "" "command>。" #. (itstool) path: sect2/screen -#: book.translate.xml:39471 +#: book.translate.xml:39584 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/boot/defaults/loader.conf</replaceable> <replaceable>/usr/home/joenew</replaceable></userinput>\n" @@ -58556,7 +58786,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39480 +#: book.translate.xml:39593 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 " @@ -58578,12 +58808,12 @@ msgstr "" "管理成本。" #. (itstool) path: sect2/title -#: book.translate.xml:39495 +#: book.translate.xml:39608 msgid "Replication" msgstr "備份 (Replication)" #. (itstool) path: sect2/para -#: book.translate.xml:39497 +#: book.translate.xml:39610 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 " @@ -58605,14 +58835,14 @@ msgstr "" "<command>zfs send</command> 及 <command>zfs receive</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:39511 +#: book.translate.xml:39624 msgid "" "These examples demonstrate <acronym>ZFS</acronym> replication with these two " "pools:" msgstr "以下例子將示範使用兩個儲存池來做 <acronym>ZFS</acronym> 備份:" #. (itstool) path: sect2/screen -#: book.translate.xml:39514 +#: book.translate.xml:39627 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -58622,7 +58852,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39519 +#: book.translate.xml:39632 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, " @@ -58644,7 +58874,7 @@ msgstr "" "可以做備份,最近一次快照之後所做的變更不會含在內容裡面。" #. (itstool) path: sect2/screen -#: book.translate.xml:39533 +#: book.translate.xml:39646 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable></userinput>\n" @@ -58654,7 +58884,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39538 +#: book.translate.xml:39651 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 " @@ -58667,7 +58897,7 @@ msgstr "" "須要重新導向到一個檔案或轉接到其他地方,否則會錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:39545 +#: book.translate.xml:39658 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs send <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable></userinput>\n" @@ -58676,7 +58906,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39549 +#: book.translate.xml:39662 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 " @@ -58689,7 +58919,7 @@ msgstr "" "該快照中內含的所有資料,並非只有上次快照到該快照間的變更。" #. (itstool) path: sect2/screen -#: book.translate.xml:39556 +#: book.translate.xml:39669 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs send <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable> > <replaceable>/backup/backup1</replaceable></userinput>\n" @@ -58700,7 +58930,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39562 +#: book.translate.xml:39675 msgid "" "The <command>zfs send</command> transferred all the data in the snapshot " "called <replaceable>backup1</replaceable> to the pool named " @@ -58714,7 +58944,7 @@ msgstr "" "citerefentry> 排程來自動完成建立與傳送快照的動作。" #. (itstool) path: sect2/para -#: book.translate.xml:39568 +#: book.translate.xml:39681 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 " @@ -58734,7 +58964,7 @@ msgstr "" "可以被複製到另一個空的資料集。" #. (itstool) path: sect2/screen -#: book.translate.xml:39580 +#: book.translate.xml:39693 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>replica1</replaceable></userinput>\n" @@ -58750,12 +58980,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:39592 +#: book.translate.xml:39705 msgid "Incremental Backups" msgstr "漸進式備份" #. (itstool) path: sect3/para -#: book.translate.xml:39594 +#: book.translate.xml:39707 msgid "" "<command>zfs send</command> can also determine the difference between two " "snapshots and send only the differences between the two. This saves disk " @@ -58765,7 +58995,7 @@ msgstr "" "的差異,這麼做可以節省磁碟空間及傳輸時間。例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:39599 +#: book.translate.xml:39712 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>replica2</replaceable></userinput>\n" @@ -58780,7 +59010,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39609 +#: book.translate.xml:39722 msgid "" "A second snapshot called <replaceable>replica2</replaceable> was created. " "This second snapshot contains only the changes that were made to the file " @@ -58796,7 +59026,7 @@ msgstr "" "照,串流中只會含有做過更改的資料。這個動作只在接收端已經有初始快照時才可用。" #. (itstool) path: sect3/screen -#: book.translate.xml:39620 +#: book.translate.xml:39733 #, 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" @@ -58824,7 +59054,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39643 +#: book.translate.xml:39756 msgid "" "The incremental stream was successfully transferred. Only the data that had " "changed was replicated, rather than the entirety of <replaceable>replica1</" @@ -58839,7 +59069,7 @@ msgstr "" "輸成本時非常有用。" #. (itstool) path: sect3/para -#: book.translate.xml:39652 +#: book.translate.xml:39765 msgid "" "A new file system, <replaceable>backup/mypool</replaceable>, is available " "with all of the files and data from the pool <replaceable>mypool</" @@ -58858,13 +59088,12 @@ msgstr "" "做備份。" #. (itstool) path: sect3/title -#: book.translate.xml:39665 +#: book.translate.xml:39778 msgid "Sending Encrypted Backups over <application>SSH</application>" msgstr "透過 <application>SSH</application> 傳送加密的備份" #. (itstool) path: sect3/para -#: book.translate.xml:39668 -#, fuzzy +#: book.translate.xml:39781 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 " @@ -58878,17 +59107,17 @@ msgid "" "system encrypted in transit and on the remote system, consider using <link " "xlink:href=\"https://wiki.freebsd.org/PEFS\">PEFS</link>." msgstr "" -"透過網路來傳送串流對要遠端備份是相當不錯的方式,但是也有一些缺點,透過網路連" -"結傳送的資料沒有加密,這會讓任何人都可以在未告知傳送使用者的情況下攔截並轉換" -"串流回資料,這是我們所不想見到的情況,特別是在使用網際網路傳送串流到遠端的主" -"機時。<application>SSH</application> 可用來安全的加密要透過網路連線傳送的資" -"料,在 <acronym>ZFS</acronym> 只需要從標準輸出重新導向便可簡單的轉接到 " -"<application>SSH</application>。要在傳送或在遠端系統中維持檔案系統內容在加密" -"的狀態也可考慮使用 <link xlink:href=\"http://wiki.freebsd.org/PEFS\">PEFS</" -"link>。" +"透過網路來傳送串流是一個做遠端備份不錯的方式,但是也有一些缺點,透過網路連線" +"傳送的資料沒有加密,這會讓任何人都可以在未告知傳送方的情況下攔截並轉換串流回" +"資料,這是我們所不想見到的情況,特別是在使用網際網路傳送串流到遠端的主機時。" +"<application>SSH</application> 可用來加密要透過網路連線傳送的資料,在 " +"<acronym>ZFS</acronym> 只需要將串流重新導向到標準輸出,如此一來便可簡單的轉接" +"到 <application>SSH</application>。若要讓檔案系統內容在傳送或在遠端系統中也維" +"持在加密的狀態可考慮使用 <link xlink:href=\"https://wiki.freebsd.org/PEFS" +"\">PEFS</link>。" #. (itstool) path: sect3/para -#: book.translate.xml:39682 +#: book.translate.xml:39795 msgid "" "A few settings and security precautions must be completed first. Only the " "necessary steps required for the <command>zfs send</command> operation are " @@ -58900,12 +59129,12 @@ msgstr "" "訊請參考 <xref linkend=\"openssh\"/>。" #. (itstool) path: sect3/para -#: book.translate.xml:39688 +#: book.translate.xml:39801 msgid "This configuration is required:" msgstr "必要的環境設定:" #. (itstool) path: listitem/para -#: book.translate.xml:39692 +#: book.translate.xml:39805 msgid "" "Passwordless <application>SSH</application> access between sending and " "receiving host using <application>SSH</application> keys" @@ -58914,7 +59143,7 @@ msgstr "" "<application>SSH</application> 存取" #. (itstool) path: listitem/para -#: book.translate.xml:39698 +#: book.translate.xml:39811 msgid "" "Normally, the privileges of the <systemitem class=\"username\">root</" "systemitem> user are needed to send and receive streams. This requires " @@ -58933,18 +59162,18 @@ msgstr "" "\">root</systemitem> 使用者在每個系統上執行各自的發送與接收操作。" #. (itstool) path: listitem/para -#: book.translate.xml:39714 +#: book.translate.xml:39827 msgid "On the sending system:" msgstr "在傳送端系統上:" #. (itstool) path: listitem/screen -#: book.translate.xml:39716 +#: book.translate.xml:39829 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs allow -u someuser send,snapshot <replaceable>mypool</replaceable></userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:39720 +#: book.translate.xml:39833 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:" @@ -58953,7 +59182,7 @@ msgstr "" "統。在接收端系統上:" #. (itstool) path: listitem/screen -#: book.translate.xml:39724 +#: book.translate.xml:39837 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl vfs.usermount=1</userinput>\n" @@ -58965,7 +59194,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39733 +#: book.translate.xml:39846 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 " @@ -58975,7 +59204,7 @@ msgstr "" "replaceable> 資料集可以被複製到遠端系統:" #. (itstool) path: sect3/screen -#: book.translate.xml:39737 +#: book.translate.xml:39850 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>zfs snapshot -r <replaceable>mypool/home</replaceable>@<replaceable>monday</replaceable></userinput>\n" @@ -58983,7 +59212,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39740 +#: book.translate.xml:39853 msgid "" "A recursive snapshot called <replaceable>monday</replaceable> is made of the " "file system dataset <replaceable>home</replaceable> that resides on the pool " @@ -59014,12 +59243,12 @@ msgstr "" "多有關傳輸的詳細資訊,包含已花費的時間及已傳輸的資料量。" #. (itstool) path: sect2/title -#: book.translate.xml:39765 +#: book.translate.xml:39878 msgid "Dataset, User, and Group Quotas" msgstr "資料集、使用者以及群組配額" #. (itstool) path: sect2/para -#: book.translate.xml:39767 +#: book.translate.xml:39880 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 " @@ -59038,44 +59267,44 @@ msgstr "" "\">Group</link>) 配額可以用來避免使用者或群組用掉儲存池或資料集的所有空間。" #. (itstool) path: sect2/para -#: book.translate.xml:39779 +#: book.translate.xml:39892 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:39782 +#: book.translate.xml:39895 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set quota=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39784 +#: book.translate.xml:39897 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:39787 +#: book.translate.xml:39900 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set refquota=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39789 +#: book.translate.xml:39902 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:39792 +#: book.translate.xml:39905 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set quota=none storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39794 +#: book.translate.xml:39907 msgid "" "The general format is <literal>userquota@<replaceable>user</" "replaceable>=<replaceable>size</replaceable></literal>, and the user's name " @@ -59086,7 +59315,7 @@ msgstr "" "下格式:" #. (itstool) path: listitem/para -#: book.translate.xml:39800 +#: book.translate.xml:39913 msgid "" "<acronym>POSIX</acronym> compatible name such as <replaceable>joe</" "replaceable>." @@ -59094,13 +59323,13 @@ msgstr "" "<acronym>POSIX</acronym> 相容的名稱,如 <replaceable>joe</replaceable>。" #. (itstool) path: listitem/para -#: book.translate.xml:39805 +#: book.translate.xml:39918 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:39810 +#: book.translate.xml:39923 msgid "" "<acronym>SID</acronym> name such as <replaceable>joe.bloggs@example.com</" "replaceable>." @@ -59109,7 +59338,7 @@ msgstr "" "replaceable>。" #. (itstool) path: listitem/para -#: book.translate.xml:39816 +#: book.translate.xml:39929 msgid "" "<acronym>SID</acronym> numeric ID such as <replaceable>S-1-123-456-789</" "replaceable>." @@ -59118,7 +59347,7 @@ msgstr "" "replaceable>。" #. (itstool) path: sect2/para -#: book.translate.xml:39822 +#: book.translate.xml:39935 msgid "" "For example, to enforce a user quota of 50 GB for the user named " "<replaceable>joe</replaceable>:" @@ -59126,24 +59355,24 @@ msgstr "" "例如,要設定使用者名為 <replaceable>joe</replaceable> 的使用者配額為 50 GB:" #. (itstool) path: sect2/screen -#: book.translate.xml:39825 +#: book.translate.xml:39938 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set userquota@joe=50G</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39827 +#: book.translate.xml:39940 msgid "To remove any quota:" msgstr "要移除所有配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:39829 +#: book.translate.xml:39942 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set userquota@joe=none</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:39832 +#: book.translate.xml:39945 msgid "" "User quota properties are not displayed by <command>zfs get all</command>. " "Non-<systemitem class=\"username\">root</systemitem> users can only see " @@ -59157,7 +59386,7 @@ msgstr "" "任何人的配額。" #. (itstool) path: sect2/para -#: book.translate.xml:39840 +#: book.translate.xml:39953 msgid "" "The general format for setting a group quota is: " "<literal>groupquota@<replaceable>group</replaceable>=<replaceable>size</" @@ -59167,7 +59396,7 @@ msgstr "" "replaceable>=<replaceable>size</replaceable></literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:39843 +#: book.translate.xml:39956 msgid "" "To set the quota for the group <replaceable>firstgroup</replaceable> to " "50 GB, use:" @@ -59175,13 +59404,13 @@ msgstr "" "要設定群組 <replaceable>firstgroup</replaceable> 的配額為 50 GB 可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:39847 +#: book.translate.xml:39960 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set groupquota@firstgroup=50G</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39849 +#: book.translate.xml:39962 msgid "" "To remove the quota for the group <replaceable>firstgroup</replaceable>, or " "to make sure that one is not set, instead use:" @@ -59190,13 +59419,13 @@ msgstr "" "額可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:39853 +#: book.translate.xml:39966 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set groupquota@firstgroup=none</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39855 +#: book.translate.xml:39968 msgid "" "As with the user quota property, non-<systemitem class=\"username\">root</" "systemitem> users can only see the quotas associated with the groups to " @@ -59210,7 +59439,7 @@ msgstr "" "所有群組的任何配額。" #. (itstool) path: sect2/para -#: book.translate.xml:39863 +#: book.translate.xml:39976 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 " @@ -59226,7 +59455,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:39870 +#: book.translate.xml:39983 msgid "" "Users with sufficient privileges, and <systemitem class=\"username\">root</" "systemitem>, can list the quota for <filename>storage/home/bob</filename> " @@ -59236,18 +59465,18 @@ msgstr "" "用以下指令列出 <filename>storage/home/bob</filename> 的配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:39874 +#: book.translate.xml:39987 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs get quota storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:39878 +#: book.translate.xml:39991 msgid "Reservations" msgstr "保留空間" #. (itstool) path: sect2/para -#: book.translate.xml:39880 +#: book.translate.xml:39993 msgid "" "<link linkend=\"zfs-term-reservation\">Reservations</link> guarantee a " "minimum amount of space will always be available on a dataset. The reserved " @@ -59260,7 +59489,7 @@ msgstr "" "足夠的可用空間來存放重要的資料集或日誌檔時特別有用。" #. (itstool) path: sect2/para -#: book.translate.xml:39887 +#: book.translate.xml:40000 msgid "" "The general format of the <literal>reservation</literal> property is " "<literal>reservation=<replaceable>size</replaceable></literal>, so to set a " @@ -59271,24 +59500,24 @@ msgstr "" "<filename>storage/home/bob</filename> 設定保留 10 GB 的空間可以用:" #. (itstool) path: sect2/screen -#: book.translate.xml:39893 +#: book.translate.xml:40006 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set reservation=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39895 +#: book.translate.xml:40008 msgid "To clear any reservation:" msgstr "要清除任何保留空間:" #. (itstool) path: sect2/screen -#: book.translate.xml:39897 +#: book.translate.xml:40010 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set reservation=none storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39899 +#: book.translate.xml:40012 msgid "" "The same principle can be applied to the <literal>refreservation</literal> " "property for setting a <link linkend=\"zfs-term-refreservation\">Reference " @@ -59301,7 +59530,7 @@ msgstr "" "replaceable></literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:39905 +#: book.translate.xml:40018 msgid "" "This command shows any reservations or refreservations that exist on " "<filename>storage/home/bob</filename>:" @@ -59310,7 +59539,7 @@ msgstr "" "reservation 或 refreservation:" #. (itstool) path: sect2/screen -#: book.translate.xml:39908 +#: book.translate.xml:40021 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get reservation storage/home/bob</userinput>\n" @@ -59320,12 +59549,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-compression -#: book.translate.xml:39913 book.translate.xml:41018 +#: book.translate.xml:40026 book.translate.xml:41130 msgid "Compression" msgstr "壓縮 (Compression)" #. (itstool) path: sect2/para -#: book.translate.xml:39915 +#: book.translate.xml:40028 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 " @@ -59342,7 +59571,7 @@ msgstr "" "因為壓縮並不需要使用額外的記憶體。" #. (itstool) path: sect2/para -#: book.translate.xml:39925 +#: book.translate.xml:40038 msgid "" "<acronym>ZFS</acronym> offers several different compression algorithms, each " "with different trade-offs. With the introduction of <acronym>LZ4</acronym> " @@ -59368,14 +59597,14 @@ msgstr "" "link>) 項目。" #. (itstool) path: sect2/para -#: book.translate.xml:39941 +#: book.translate.xml:40054 msgid "" "The administrator can monitor the effectiveness of compression using a " "number of dataset properties." msgstr "管理者可以使用資料集的屬性來監視壓縮的效果。" #. (itstool) path: sect2/screen -#: book.translate.xml:39944 +#: book.translate.xml:40057 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get used,compressratio,compression,logicalused <replaceable>mypool/compressed_dataset</replaceable></userinput>\n" @@ -59387,7 +59616,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39951 +#: book.translate.xml:40064 msgid "" "The dataset is currently using 449 GB of space (the used property). Without " "compression, it would have taken 496 GB of space (the <literal>logicalused</" @@ -59398,7 +59627,7 @@ msgstr "" "壓縮比為 1.11:1。" #. (itstool) path: sect2/para -#: book.translate.xml:39957 +#: book.translate.xml:40070 msgid "" "Compression can have an unexpected side effect when combined with <link " "linkend=\"zfs-term-userquota\">User Quotas</link>. User quotas restrict how " @@ -59422,7 +59651,7 @@ msgstr "" "literal> 屬性),但因為更改影響了壓縮率,導致使用者達到配額的上限。" #. (itstool) path: sect2/para -#: book.translate.xml:39972 +#: book.translate.xml:40085 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 " @@ -59437,12 +59666,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-deduplication -#: book.translate.xml:39981 book.translate.xml:41106 +#: book.translate.xml:40094 book.translate.xml:41218 msgid "Deduplication" msgstr "去重複 (Deduplication)" #. (itstool) path: sect2/para -#: book.translate.xml:39983 +#: book.translate.xml:40096 msgid "" "When enabled, <link linkend=\"zfs-term-deduplication\">deduplication</link> " "uses the checksum of each block to detect duplicate blocks. When a new block " @@ -59461,20 +59690,20 @@ msgstr "" "啟壓縮功能來達成,而壓縮功能不需要使用額外的記憶體。" #. (itstool) path: sect2/para -#: book.translate.xml:39995 +#: book.translate.xml:40108 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:39998 +#: book.translate.xml:40111 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set dedup=on <replaceable>pool</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40000 +#: book.translate.xml:40113 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 " @@ -59485,7 +59714,7 @@ msgstr "" "會因此啟動了這個選項而做去重複。查看已開啟去重複屬性的儲存池會如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:40006 +#: book.translate.xml:40119 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -59494,7 +59723,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40010 +#: book.translate.xml:40123 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 " @@ -59506,7 +59735,7 @@ msgstr "" "重複儲存池中複製三份 Port 樹到不同的目錄中。" #. (itstool) path: sect2/screen -#: book.translate.xml:40017 +#: book.translate.xml:40130 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>for d in dir1 dir2 dir3; do</userinput>\n" @@ -59515,12 +59744,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40021 +#: book.translate.xml:40134 msgid "Redundant data is detected and deduplicated:" msgstr "已經偵測到重複的資料並做去重複:" #. (itstool) path: sect2/screen -#: book.translate.xml:40023 +#: book.translate.xml:40136 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -59529,7 +59758,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40027 +#: book.translate.xml:40140 msgid "" "The <literal>DEDUP</literal> column shows a factor of <literal>3.00x</" "literal>. Multiple copies of the ports tree data was detected and " @@ -59543,7 +59772,7 @@ msgstr "" "蹤去重複的資料區塊。" #. (itstool) path: sect2/para -#: book.translate.xml:40034 +#: book.translate.xml:40147 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 " @@ -59554,7 +59783,7 @@ msgstr "" "的空間:" #. (itstool) path: sect2/screen -#: book.translate.xml:40039 +#: book.translate.xml:40152 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zdb -S <replaceable>pool</replaceable></userinput>\n" @@ -59580,7 +59809,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40060 +#: book.translate.xml:40173 msgid "" "After <command>zdb -S</command> finishes analyzing the pool, it shows the " "space reduction ratio that would be achieved by activating deduplication. In " @@ -59608,12 +59837,12 @@ msgstr "" "\"zfs-term-deduplication\"><acronym>DDT</acronym></link> 時才開啟。" #. (itstool) path: sect2/title -#: book.translate.xml:40080 +#: book.translate.xml:40193 msgid "<acronym>ZFS</acronym> and Jails" msgstr "<acronym>ZFS</acronym> 與 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:40082 +#: book.translate.xml:40195 msgid "" "<command>zfs jail</command> and the corresponding <literal>jailed</literal> " "property are used to delegate a <acronym>ZFS</acronym> dataset to a <link " @@ -59632,12 +59861,12 @@ msgstr "" "資料集被隔離便無法再掛載到主機,因為有掛載點可能會破壞主機的安全性。" #. (itstool) path: sect1/title -#: book.translate.xml:40098 +#: book.translate.xml:40211 msgid "Delegated Administration" msgstr "委託管理" #. (itstool) path: sect1/para -#: book.translate.xml:40100 +#: book.translate.xml:40213 msgid "" "A comprehensive permission delegation system allows unprivileged users to " "perform <acronym>ZFS</acronym> administration functions. For example, if " @@ -59655,12 +59884,12 @@ msgstr "" "委託給其他人,每個子指令與大多數屬性都可使用權限委託。" #. (itstool) path: sect2/title -#: book.translate.xml:40113 +#: book.translate.xml:40226 msgid "Delegating Dataset Creation" msgstr "委託資料集建立" #. (itstool) path: sect2/para -#: book.translate.xml:40115 +#: book.translate.xml:40228 msgid "" "<command>zfs allow <replaceable>someuser</replaceable> create " "<replaceable>mydataset</replaceable></command> gives the specified user " @@ -59683,12 +59912,12 @@ msgstr "" "systemitem> 使用者必須擁有掛載點在檔案系統中所在位置的權限才可掛載。" #. (itstool) path: sect2/title -#: book.translate.xml:40130 +#: book.translate.xml:40243 msgid "Delegating Permission Delegation" msgstr "委託權限委託" #. (itstool) path: sect2/para -#: book.translate.xml:40132 +#: book.translate.xml:40245 msgid "" "<command>zfs allow <replaceable>someuser</replaceable> allow " "<replaceable>mydataset</replaceable></command> gives the specified user the " @@ -59704,12 +59933,12 @@ msgstr "" "可以授權 <literal>snapshot</literal> 權限給其他使用者。" #. (itstool) path: sect2/title -#: book.translate.xml:40148 +#: book.translate.xml:40261 msgid "Tuning" msgstr "調校" #. (itstool) path: sect2/para -#: book.translate.xml:40150 +#: book.translate.xml:40263 msgid "" "There are a number of tunables that can be adjusted to make <acronym>ZFS</" "acronym> perform best for different workloads." @@ -59719,14 +59948,14 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_max -#: book.translate.xml:40156 +#: book.translate.xml:40269 msgid "" "<emphasis><varname>vfs.zfs.arc_max</varname></emphasis> - Maximum size of " "the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link>. The " -"default is all <acronym>RAM</acronym> less 1 GB, or one half of " -"<acronym>RAM</acronym>, whichever is more. However, a lower value should be " -"used if the system will be running any other daemons or processes that may " -"require memory. This value can be adjusted at runtime with " +"default is all <acronym>RAM</acronym> but 1 GB, or 5/8 of all <acronym>RAM</" +"acronym>, whichever is more. However, a lower value should be used if the " +"system will be running any other daemons or processes that may require " +"memory. This value can be adjusted at runtime with " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> and can be set in <filename>/boot/loader.conf</filename> or " "<filename>/etc/sysctl.conf</filename>." @@ -59734,7 +59963,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_meta_limit -#: book.translate.xml:40169 +#: book.translate.xml:40282 msgid "" "<emphasis><varname>vfs.zfs.arc_meta_limit</varname></emphasis> - Limit the " "portion of the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link> " @@ -59751,7 +59980,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_min -#: book.translate.xml:40185 +#: book.translate.xml:40298 msgid "" "<emphasis><varname>vfs.zfs.arc_min</varname></emphasis> - Minimum size of " "the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link>. The " @@ -59766,7 +59995,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-cache-size -#: book.translate.xml:40198 +#: book.translate.xml:40311 msgid "" "<emphasis><varname>vfs.zfs.vdev.cache.size</varname></emphasis> - A " "preallocated amount of memory reserved as a cache for each device in the " @@ -59777,7 +60006,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-min-auto-ashift -#: book.translate.xml:40207 +#: book.translate.xml:40320 msgid "" "<emphasis><varname>vfs.zfs.min_auto_ashift</varname></emphasis> - Minimum " "<varname>ashift</varname> (sector size) that will be used automatically at " @@ -59789,7 +60018,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40217 +#: book.translate.xml:40330 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 " @@ -59804,7 +60033,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40232 +#: book.translate.xml:40345 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> " @@ -59812,7 +60041,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40237 +#: book.translate.xml:40350 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 " @@ -59823,7 +60052,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-prefetch_disable -#: book.translate.xml:40246 +#: book.translate.xml:40359 msgid "" "<emphasis><varname>vfs.zfs.prefetch_disable</varname></emphasis> - Disable " "prefetch. A value of <literal>0</literal> is enabled and <literal>1</" @@ -59839,7 +60068,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-trim_on_init -#: book.translate.xml:40261 +#: book.translate.xml:40374 msgid "" "<emphasis><varname>vfs.zfs.vdev.trim_on_init</varname></emphasis> - Control " "whether new devices added to the pool have the <literal>TRIM</literal> " @@ -59853,7 +60082,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-max_pending -#: book.translate.xml:40273 +#: book.translate.xml:40386 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 " @@ -59865,7 +60094,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-top_maxinflight -#: book.translate.xml:40282 +#: book.translate.xml:40395 msgid "" "<emphasis><varname>vfs.zfs.top_maxinflight</varname></emphasis> - Maxmimum " "number of outstanding I/Os per top-level <link linkend=\"zfs-term-vdev" @@ -59879,7 +60108,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-l2arc_write_max -#: book.translate.xml:40294 +#: book.translate.xml:40407 msgid "" "<emphasis><varname>vfs.zfs.l2arc_write_max</varname></emphasis> - Limit the " "amount of data written to the <link linkend=\"zfs-term-l2arc" @@ -59892,7 +60121,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-l2arc_write_boost -#: book.translate.xml:40303 +#: book.translate.xml:40416 msgid "" "<emphasis><varname>vfs.zfs.l2arc_write_boost</varname></emphasis> - The " "value of this tunable is added to <link linkend=\"zfs-advanced-tuning-" @@ -59908,7 +60137,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-scrub_delay -#: book.translate.xml:40315 +#: book.translate.xml:40428 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" @@ -59933,7 +60162,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-resilver_delay -#: book.translate.xml:40342 +#: book.translate.xml:40455 msgid "" "<emphasis><varname>vfs.zfs.resilver_delay</varname></emphasis> - Number of " "milliseconds of delay inserted between each I/O during a <link linkend=\"zfs-" @@ -59959,7 +60188,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-scan_idle -#: book.translate.xml:40371 +#: book.translate.xml:40484 msgid "" "<emphasis><varname>vfs.zfs.scan_idle</varname></emphasis> - Number of " "milliseconds since the last operation before the pool is considered idle. " @@ -59972,7 +60201,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-txg-timeout -#: book.translate.xml:40382 +#: book.translate.xml:40495 msgid "" "<emphasis><varname>vfs.zfs.txg.timeout</varname></emphasis> - Maximum number " "of seconds between <link linkend=\"zfs-term-txg\">transaction group</link>s. " @@ -59987,12 +60216,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:40419 +#: book.translate.xml:40532 msgid "<acronym>ZFS</acronym> on i386" msgstr "i386 上的 <acronym>ZFS</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:40421 +#: book.translate.xml:40534 msgid "" "Some of the features provided by <acronym>ZFS</acronym> are memory " "intensive, and may require tuning for maximum efficiency on systems with " @@ -60002,12 +60231,12 @@ msgstr "" "<acronym>RAM</acronym> 的系統調校來取得最佳的效率。" #. (itstool) path: sect3/title -#: book.translate.xml:40427 +#: book.translate.xml:40540 msgid "Memory" msgstr "記憶體" #. (itstool) path: sect3/para -#: book.translate.xml:40429 +#: book.translate.xml:40542 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 " @@ -60028,12 +60257,12 @@ msgstr "" "要更進一步的調校。" #. (itstool) path: sect3/title -#: book.translate.xml:40444 book.translate.xml:61437 +#: book.translate.xml:40557 book.translate.xml:62471 msgid "Kernel Configuration" msgstr "核心設定" #. (itstool) path: sect3/para -#: book.translate.xml:40446 +#: book.translate.xml:40559 msgid "" "Due to the address space limitations of the <trademark>i386</trademark> " "platform, <acronym>ZFS</acronym> users on the <trademark>i386</trademark> " @@ -60045,13 +60274,13 @@ msgstr "" "定檔,重新編譯核心並重新開啟:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:40452 +#: book.translate.xml:40565 #, no-wrap msgid "options KVA_PAGES=512" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:40454 +#: book.translate.xml:40567 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 " @@ -60065,12 +60294,12 @@ msgstr "" "<literal>512</literal>。" #. (itstool) path: sect3/title -#: book.translate.xml:40464 +#: book.translate.xml:40577 msgid "Loader Tunables" msgstr "載入程式可調參數" #. (itstool) path: sect3/para -#: book.translate.xml:40466 +#: book.translate.xml:40579 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 " @@ -60079,10 +60308,10 @@ msgid "" msgstr "" "在所有的 FreeBSD 架構上均可增加 <filename>kmem</filename> 位址空間,經測試在" "一個 1 GB 實體記憶體的測試系統上,加入以下選項到 <filename>/boot/loader." -"conf</filename>,重新開啟系統,可成功設定。" +"conf</filename>,重新開啟系統,可成功設定:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:40473 +#: book.translate.xml:40586 #, no-wrap msgid "" "vm.kmem_size=\"330M\"\n" @@ -60092,51 +60321,50 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:40478 -#, fuzzy +#: book.translate.xml:40591 msgid "" "For a more detailed list of recommendations for <acronym>ZFS</acronym>-" "related tuning, see <link xlink:href=\"https://wiki.freebsd.org/" "ZFSTuningGuide\"/>." msgstr "" "要取得更多詳細的 <acronym>ZFS</acronym> 相關調校的建議清單,請參考 <link " -"xlink:href=\"http://wiki.freebsd.org/ZFSTuningGuide\"/>。" +"xlink:href=\"https://wiki.freebsd.org/ZFSTuningGuide\"/>。" #. (itstool) path: sect1/title -#: book.translate.xml:40485 +#: book.translate.xml:40598 msgid "Additional Resources" msgstr "其他資源" #. (itstool) path: listitem/para -#: book.translate.xml:40489 +#: book.translate.xml:40602 msgid "" "<link xlink:href=\"https://wiki.freebsd.org/ZFS\">FreeBSD Wiki - " "<acronym>ZFS</acronym></link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40494 +#: book.translate.xml:40607 msgid "" "<link xlink:href=\"https://wiki.freebsd.org/ZFSTuningGuide\">FreeBSD Wiki - " "<acronym>ZFS</acronym> Tuning</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40499 +#: book.translate.xml:40612 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:40504 +#: book.translate.xml:40617 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:40510 +#: book.translate.xml:40623 msgid "" "<link xlink:href=\"https://calomel.org/zfs_raid_speed_capacity.html" "\">Calomel Blog - <acronym>ZFS</acronym> Raidz Performance, Capacity and " @@ -60144,12 +60372,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:40518 +#: book.translate.xml:40631 msgid "<acronym>ZFS</acronym> Features and Terminology" msgstr "<acronym>ZFS</acronym> 特色與術語" #. (itstool) path: sect1/para -#: book.translate.xml:40520 +#: book.translate.xml:40633 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 " @@ -60180,13 +60408,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-pool -#: book.translate.xml:40544 +#: book.translate.xml:40657 msgid "pool" msgstr "儲存池 (Pool)" #. (itstool) path: row/entry -#: book.translate.xml:40546 -#, fuzzy +#: book.translate.xml:40659 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 " @@ -60201,17 +60428,17 @@ msgstr "" "被拿來建立一個或多個檔案系統 (資料集 Dataset) 或區塊裝置 (磁碟區 Volume),這" "些資料集與磁碟區會共用儲存池的剩餘可用空間。每一個儲存池可由名稱與 " "<acronym>GUID</acronym> 來辨識。可用的功能會依儲存池上的 <acronym>ZFS</" -"acronym> 版本而有不同。<_:note-1/>" +"acronym> 版本而有不同。" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-vdev -#: book.translate.xml:40560 +#: book.translate.xml:40672 msgid "vdev Types" msgstr "vdev 型態 (vdev Types)" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-disk -#: book.translate.xml:40571 +#: book.translate.xml:40683 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/" @@ -60230,7 +60457,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-file -#: book.translate.xml:40586 +#: book.translate.xml:40698 msgid "" "<emphasis>File</emphasis> - In addition to disks, <acronym>ZFS</acronym> " "pools can be backed by regular files, this is especially useful for testing " @@ -60244,7 +60471,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-mirror -#: book.translate.xml:40596 +#: book.translate.xml:40708 msgid "" "<emphasis>Mirror</emphasis> - When creating a mirror, specify the " "<literal>mirror</literal> keyword followed by the list of member devices for " @@ -60259,7 +60486,7 @@ msgstr "" "故障只剩其中一個而不損失任何資料。" #. (itstool) path: note/para -#: book.translate.xml:40607 +#: book.translate.xml:40719 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>." @@ -60269,7 +60496,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-raidz -#: book.translate.xml:40615 +#: book.translate.xml:40727 msgid "" "<emphasis><acronym>RAID-Z</acronym></emphasis> - <acronym>ZFS</acronym> " "implements <acronym>RAID-Z</acronym>, a variation on standard " @@ -60293,7 +60520,7 @@ msgstr "" "<acronym>RAID-Z3</acronym> 。" #. (itstool) path: listitem/para -#: book.translate.xml:40633 +#: book.translate.xml:40745 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 " @@ -60306,7 +60533,7 @@ msgstr "" "未更換並修復 (Resilver) 之前又有磁碟故障,所有在儲存池中的資料便會遺失。" #. (itstool) path: listitem/para -#: book.translate.xml:40641 +#: book.translate.xml:40753 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 " @@ -60321,7 +60548,7 @@ msgstr "" "vdev,這樣儲存池的資料便會分散到這兩個 vdev。" #. (itstool) path: listitem/para -#: book.translate.xml:40650 +#: book.translate.xml:40762 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> " @@ -60339,7 +60566,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-spare -#: book.translate.xml:40665 +#: book.translate.xml:40777 msgid "" "<emphasis>Spare</emphasis> - <acronym>ZFS</acronym> has a special pseudo-" "vdev type for keeping track of available hot spares. Note that installed hot " @@ -60353,7 +60580,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-log -#: book.translate.xml:40675 +#: book.translate.xml:40787 msgid "" "<emphasis>Log</emphasis> - <acronym>ZFS</acronym> Log Devices, also known as " "<acronym>ZFS</acronym> Intent Log (<link linkend=\"zfs-term-zil" @@ -60374,7 +60601,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-cache -#: book.translate.xml:40690 +#: book.translate.xml:40802 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</" @@ -60386,7 +60613,7 @@ msgstr "" "置無法做鏡像,因快取裝置只會儲存額外的現有資料的複本,並沒有資料遺失的風險。" #. (itstool) path: row/entry -#: book.translate.xml:40562 +#: book.translate.xml:40674 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> " @@ -60400,12 +60627,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-txg -#: book.translate.xml:40701 +#: book.translate.xml:40813 msgid "Transaction Group (<acronym>TXG</acronym>)" msgstr "交易群組 (Transaction Group, <acronym>TXG</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:40715 +#: book.translate.xml:40827 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 " @@ -60422,7 +60649,7 @@ msgstr "" "交易群組便會繼續進入下一個狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:40727 +#: book.translate.xml:40839 msgid "" "<emphasis>Quiescing</emphasis> - A short state that allows any pending " "operations to finish while not blocking the creation of a new open " @@ -60434,7 +60661,7 @@ msgstr "" "便會進入到最終狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:40736 +#: book.translate.xml:40848 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 " @@ -60461,7 +60688,7 @@ msgstr "" "態。" #. (itstool) path: row/entry -#: book.translate.xml:40704 +#: book.translate.xml:40816 msgid "" "Transaction Groups are the way changed blocks are grouped together and " "eventually written to the pool. Transaction groups are the atomic unit that " @@ -60485,12 +60712,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-arc -#: book.translate.xml:40768 +#: book.translate.xml:40880 msgid "Adaptive Replacement Cache (<acronym>ARC</acronym>)" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40771 +#: book.translate.xml:40883 msgid "" "<acronym>ZFS</acronym> uses an Adaptive Replacement Cache (<acronym>ARC</" "acronym>), rather than a more traditional Least Recently Used (<acronym>LRU</" @@ -60527,12 +60754,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-l2arc -#: book.translate.xml:40799 +#: book.translate.xml:40911 msgid "<acronym>L2ARC</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40801 +#: book.translate.xml:40913 msgid "" "<acronym>L2ARC</acronym> is the second level of the <acronym>ZFS</acronym> " "caching system. The primary <acronym>ARC</acronym> is stored in " @@ -60586,12 +60813,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-zil -#: book.translate.xml:40836 +#: book.translate.xml:40948 msgid "<acronym>ZIL</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40838 +#: book.translate.xml:40950 msgid "" "<acronym>ZIL</acronym> accelerates synchronous transactions by using storage " "devices like <acronym>SSD</acronym>s that are faster than those used in the " @@ -60613,12 +60840,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-cow -#: book.translate.xml:40854 +#: book.translate.xml:40966 msgid "Copy-On-Write" msgstr "寫入時複製 (Copy-On-Write)" #. (itstool) path: row/entry -#: book.translate.xml:40856 +#: book.translate.xml:40968 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 " @@ -60640,12 +60867,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-dataset -#: book.translate.xml:40870 +#: book.translate.xml:40982 msgid "Dataset" msgstr "資料集 (Dataset)" #. (itstool) path: row/entry -#: book.translate.xml:40872 +#: book.translate.xml:40984 msgid "" "<emphasis>Dataset</emphasis> is the generic term for a <acronym>ZFS</" "acronym> file system, volume, snapshot or clone. Each dataset has a unique " @@ -60672,12 +60899,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-filesystem -#: book.translate.xml:40894 +#: book.translate.xml:41006 msgid "File system" msgstr "檔案系統 (File system)" #. (itstool) path: row/entry -#: book.translate.xml:40896 +#: book.translate.xml:41008 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 " @@ -60690,12 +60917,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-volume -#: book.translate.xml:40905 +#: book.translate.xml:41017 msgid "Volume" msgstr "磁碟區 (Volume)" #. (itstool) path: row/entry -#: book.translate.xml:40907 +#: book.translate.xml:41019 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 " @@ -60712,12 +60939,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-snapshot -#: book.translate.xml:40919 +#: book.translate.xml:41031 msgid "Snapshot" msgstr "快照 (Snapshot)" #. (itstool) path: row/entry -#: book.translate.xml:40921 +#: book.translate.xml:41033 msgid "" "The <link linkend=\"zfs-term-cow\">copy-on-write</link> (<acronym>COW</" "acronym>) design of <acronym>ZFS</acronym> allows for nearly instantaneous, " @@ -60765,12 +60992,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-clone -#: book.translate.xml:40960 +#: book.translate.xml:41072 msgid "Clone" msgstr "複本 (Clone)" #. (itstool) path: row/entry -#: book.translate.xml:40962 +#: book.translate.xml:41074 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, " @@ -60796,27 +61023,27 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-checksum -#: book.translate.xml:40982 +#: book.translate.xml:41094 msgid "Checksum" msgstr "校驗碼 (Checksum)" #. (itstool) path: listitem/para -#: book.translate.xml:40998 +#: book.translate.xml:41110 msgid "<literal>fletcher2</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41002 +#: book.translate.xml:41114 msgid "<literal>fletcher4</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41006 +#: book.translate.xml:41118 msgid "<literal>sha256</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40984 +#: book.translate.xml:41096 msgid "" "Every block that is allocated is also checksummed. The checksum algorithm " "used is a per-dataset property, see <link linkend=\"zfs-zfs-set" @@ -60843,7 +61070,7 @@ msgstr "" "效能,但其有強大的密碼雜湊與較低的衝突率。也可關閉資料校驗,但並不建議。" #. (itstool) path: listitem/para -#: book.translate.xml:41030 +#: book.translate.xml:41142 msgid "" "<emphasis><acronym>LZ4</acronym></emphasis> - Added in <acronym>ZFS</" "acronym> pool version 5000 (feature flags), <acronym>LZ4</acronym> is now " @@ -60864,7 +61091,7 @@ msgstr "" "1.5 GB/s (每個 CPU 核心)。" #. (itstool) path: listitem/para -#: book.translate.xml:41048 +#: book.translate.xml:41160 msgid "" "<emphasis><acronym>LZJB</acronym></emphasis> - The default compression " "algorithm. Created by Jeff Bonwick (one of the original creators of " @@ -60879,7 +61106,7 @@ msgstr "" "提供較佳的壓縮功能。在未來預設的壓縮演算法將會更換為 <acronym>LZ4</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:41060 +#: book.translate.xml:41172 msgid "" "<emphasis><acronym>GZIP</acronym></emphasis> - A popular stream compression " "algorithm available in <acronym>ZFS</acronym>. One of the main advantages of " @@ -60898,7 +61125,7 @@ msgstr "" "間。" #. (itstool) path: listitem/para -#: book.translate.xml:41076 +#: book.translate.xml:41188 msgid "" "<emphasis><acronym>ZLE</acronym></emphasis> - Zero Length Encoding is a " "special compression algorithm that only compresses continuous runs of zeros. " @@ -60910,7 +61137,7 @@ msgstr "" "用。" #. (itstool) path: row/entry -#: book.translate.xml:41020 +#: book.translate.xml:41132 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 " @@ -60925,12 +61152,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-copies -#: book.translate.xml:41087 +#: book.translate.xml:41199 msgid "Copies" msgstr "備份數 (Copies)" #. (itstool) path: row/entry -#: book.translate.xml:41089 +#: book.translate.xml:41201 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 " @@ -60951,7 +61178,7 @@ msgstr "" "損失的資料。" #. (itstool) path: row/entry -#: book.translate.xml:41108 +#: book.translate.xml:41220 msgid "" "Checksums make it possible to detect duplicate blocks of data as they are " "written. With deduplication, the reference count of an existing, identical " @@ -60998,12 +61225,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-scrub -#: book.translate.xml:41146 +#: book.translate.xml:41258 msgid "Scrub" msgstr "清潔 (Scrub)" #. (itstool) path: row/entry -#: book.translate.xml:41148 +#: book.translate.xml:41260 msgid "" "Instead of a consistency check like <citerefentry><refentrytitle>fsck</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, <acronym>ZFS</" @@ -61035,12 +61262,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-quota -#: book.translate.xml:41168 +#: book.translate.xml:41280 msgid "Dataset Quota" msgstr "資料集配額 (Dataset Quota)" #. (itstool) path: entry/para -#: book.translate.xml:41177 +#: book.translate.xml:41289 msgid "" "<acronym>ZFS</acronym> supports different types of quotas: the dataset " "quota, the <link linkend=\"zfs-term-refquota\">reference quota " @@ -61054,7 +61281,7 @@ msgstr "" "以及群組配額 (<link linkend=\"zfs-term-groupquota\">Group quota</link>)。" #. (itstool) path: entry/para -#: book.translate.xml:41185 +#: book.translate.xml:41297 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 " @@ -61064,7 +61291,7 @@ msgstr "" "量。" #. (itstool) path: note/para -#: book.translate.xml:41191 +#: book.translate.xml:41303 msgid "" "Quotas cannot be set on volumes, as the <literal>volsize</literal> property " "acts as an implicit quota." @@ -61073,7 +61300,7 @@ msgstr "" "配額。" #. (itstool) path: row/entry -#: book.translate.xml:41170 +#: book.translate.xml:41282 msgid "" "<acronym>ZFS</acronym> provides very fast and accurate dataset, user, and " "group space accounting in addition to quotas and space reservations. This " @@ -61087,12 +61314,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-refquota -#: book.translate.xml:41198 +#: book.translate.xml:41310 msgid "Reference Quota" msgstr "參考配額 (Reference Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41201 +#: book.translate.xml:41313 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 " @@ -61105,12 +61332,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-userquota -#: book.translate.xml:41209 +#: book.translate.xml:41321 msgid "User Quota" msgstr "使用者配額 (User Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41212 +#: book.translate.xml:41324 msgid "" "User quotas are useful to limit the amount of space that can be used by the " "specified user." @@ -61118,12 +61345,12 @@ msgstr "使用者配額在用來限制特定使用者能使用的空間量時非 #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-groupquota -#: book.translate.xml:41217 +#: book.translate.xml:41329 msgid "Group Quota" msgstr "群組配額 (Group Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41220 +#: book.translate.xml:41332 msgid "" "The group quota limits the amount of space that a specified group can " "consume." @@ -61131,12 +61358,12 @@ msgstr "群組配額可以限制特定群組能使用的空間量。" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-reservation -#: book.translate.xml:41225 +#: book.translate.xml:41337 msgid "Dataset Reservation" msgstr "資料集保留空間 (Dataset Reservation)" #. (itstool) path: entry/para -#: book.translate.xml:41243 +#: book.translate.xml:41355 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 " @@ -61147,7 +61374,7 @@ msgstr "" "上的適應性,或是確保有足夠的空間供稽查日誌或系統還原程序及檔案使用。" #. (itstool) path: row/entry -#: book.translate.xml:41228 +#: book.translate.xml:41340 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 " @@ -61169,12 +61396,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-refreservation -#: book.translate.xml:41253 +#: book.translate.xml:41365 msgid "Reference Reservation" msgstr "參考保留空間 (Reference Reservation)" #. (itstool) path: row/entry -#: book.translate.xml:41256 +#: book.translate.xml:41368 msgid "" "The <literal>refreservation</literal> property makes it possible to " "guarantee a minimum amount of space for the use of a specific dataset " @@ -61202,12 +61429,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-resilver -#: book.translate.xml:41278 +#: book.translate.xml:41390 msgid "Resilver" msgstr "修復 (Resilver)" #. (itstool) path: row/entry -#: book.translate.xml:41280 +#: book.translate.xml:41392 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 " @@ -61220,12 +61447,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-online -#: book.translate.xml:41289 +#: book.translate.xml:41401 msgid "Online" msgstr "上線 (Online)" #. (itstool) path: row/entry -#: book.translate.xml:41291 +#: book.translate.xml:41403 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 " @@ -61237,12 +61464,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-offline -#: book.translate.xml:41299 +#: book.translate.xml:41411 msgid "Offline" msgstr "離線 (Offline)" #. (itstool) path: row/entry -#: book.translate.xml:41301 +#: book.translate.xml:41413 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 " @@ -61257,12 +61484,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-degraded -#: book.translate.xml:41312 +#: book.translate.xml:41424 msgid "Degraded" msgstr "降級 (Degraded)" #. (itstool) path: row/entry -#: book.translate.xml:41314 +#: book.translate.xml:41426 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, " @@ -61280,12 +61507,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-faulted -#: book.translate.xml:41327 +#: book.translate.xml:41439 msgid "Faulted" msgstr "故障 (Faulted)" #. (itstool) path: row/entry -#: book.translate.xml:41329 +#: book.translate.xml:41441 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 " @@ -61304,22 +61531,22 @@ msgstr "" "還原。" #. (itstool) path: info/title -#: book.translate.xml:41354 +#: book.translate.xml:41466 msgid "Other File Systems" msgstr "其他檔案系統" #. (itstool) path: sect1/indexterm -#: book.translate.xml:41365 +#: book.translate.xml:41477 msgid "<primary>File Systems</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:41366 +#: book.translate.xml:41478 msgid "<primary>File Systems Support</primary> <see>File Systems</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41371 +#: book.translate.xml:41483 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 " @@ -61332,7 +61559,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41381 +#: book.translate.xml:41493 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 " @@ -61343,7 +61570,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41388 +#: book.translate.xml:41500 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 " @@ -61352,56 +61579,56 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41398 +#: book.translate.xml:41510 msgid "The difference between native and supported file systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41403 +#: book.translate.xml:41515 msgid "Which file systems are supported by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41407 +#: book.translate.xml:41519 msgid "" "How to enable, configure, access, and make use of non-native file systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41416 +#: book.translate.xml:41528 msgid "" "Understand <trademark class=\"registered\">UNIX</trademark> and <link " "linkend=\"basics\">FreeBSD basics</link>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41421 +#: book.translate.xml:41533 msgid "" "Be familiar with the basics of <link linkend=\"kernelconfig\">kernel " "configuration and compilation</link>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41426 +#: book.translate.xml:41538 msgid "" "Feel comfortable <link linkend=\"ports\">installing software</link> in " "FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41431 +#: book.translate.xml:41543 msgid "" "Have some familiarity with <link linkend=\"disks\">disks</link>, storage, " "and device names in FreeBSD." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:41438 +#: book.translate.xml:41550 msgid "<trademark class=\"registered\">Linux</trademark> File Systems" msgstr "<trademark class=\"registered\">Linux</trademark> 檔案系統" #. (itstool) path: sect1/para -#: book.translate.xml:41440 +#: book.translate.xml:41552 msgid "" "FreeBSD provides built-in support for several <trademark class=\"registered" "\">Linux</trademark> file systems. This section demonstrates how to load " @@ -61410,12 +61637,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41445 +#: book.translate.xml:41557 msgid "<acronym>ext2</acronym>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41447 +#: book.translate.xml:41559 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</" @@ -61424,7 +61651,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41454 +#: book.translate.xml:41566 msgid "" "The <citerefentry><refentrytitle>ext2fs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> driver allows the FreeBSD kernel to both read and " @@ -61432,26 +61659,31 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:41458 +#: book.translate.xml:41570 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 " -"is read-only." +"This driver can also be used to access ext3 and ext4 file systems. The " +"<citerefentry><refentrytitle>ext2fs</refentrytitle><manvolnum>5</manvolnum></" +"citerefentry> filesystem has full read and write support for ext4 as of " +"FreeBSD 12.0-RELEASE. Additionally, extended attributes and ACLs are also " +"supported, while journalling and encryption are not. Starting with " +"FreeBSD 12.1-RELEASE, a DTrace provider will be available as well. Prior " +"versions of FreeBSD can access ext4 in read and write mode using " +"<package>sysutils/fusefs-ext2</package>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41464 +#: book.translate.xml:41581 msgid "To access an ext file system, first load the kernel loadable module:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41467 +#: book.translate.xml:41584 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload ext2fs</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41469 +#: book.translate.xml:41586 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 " @@ -61459,39 +61691,39 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41474 +#: book.translate.xml:41591 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t ext2fs <replaceable>/dev/ad1s1</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:41529 +#: book.translate.xml:41646 msgid "Virtualization" msgstr "虛擬化" #. (itstool) path: authorgroup/author -#: book.translate.xml:41532 book.translate.xml:55635 +#: book.translate.xml:41649 book.translate.xml:56063 msgid "" "<personname> <firstname>Murray</firstname> <surname>Stokely</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:41542 +#: book.translate.xml:41659 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>bhyve section by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:41552 +#: book.translate.xml:41669 msgid "" "<personname> <firstname>Benedict</firstname> <surname>Reuschling</surname> </" "personname> <contrib>Xen section by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41565 +#: book.translate.xml:41682 msgid "" "Virtualization software allows multiple operating systems to run " "simultaneously on the same computer. Such software systems for <acronym>PC</" @@ -61503,13 +61735,13 @@ msgstr "" "安裝在其中的客端 (Guest) 作業系統。" #. (itstool) path: listitem/para -#: book.translate.xml:41575 +#: book.translate.xml:41692 msgid "" "The difference between a host operating system and a guest operating system." msgstr "主端作業系統及客端作業系統的差別。" #. (itstool) path: listitem/para -#: book.translate.xml:41580 +#: book.translate.xml:41697 msgid "" "How to install FreeBSD on an <trademark class=\"registered\">Intel</" "trademark>-based <trademark class=\"registered\">Apple</trademark> " @@ -61520,7 +61752,7 @@ msgstr "" "trademark> 電腦安裝 FreeBSD 。" #. (itstool) path: listitem/para -#: book.translate.xml:41585 +#: book.translate.xml:41702 msgid "" "How to install FreeBSD on <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> with " @@ -61531,17 +61763,17 @@ msgstr "" "application> 安裝 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:41590 +#: book.translate.xml:41707 msgid "How to install FreeBSD as a guest in <application>bhyve</application>." msgstr "如何以 FreeBSD 作為客端安裝在 <application>bhyve</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:41595 +#: book.translate.xml:41712 msgid "How to tune a FreeBSD system for best performance under virtualization." msgstr "如何調校 FreeBSD 系統來取得虛擬化的最佳效能。" #. (itstool) path: listitem/para -#: book.translate.xml:41605 +#: book.translate.xml:41722 msgid "" "Understand the <link linkend=\"basics\">basics of <trademark class=" "\"registered\">UNIX</trademark> and FreeBSD</link>." @@ -61550,26 +61782,26 @@ msgstr "" "trademark> 與 FreeBSD 的基礎</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:41610 +#: book.translate.xml:41727 msgid "Know how to <link linkend=\"bsdinstall\">install FreeBSD</link>." msgstr "知道如何<link linkend=\"bsdinstall\">安裝 FreeBSD</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:41615 +#: book.translate.xml:41732 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:41620 +#: book.translate.xml:41737 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:41627 +#: book.translate.xml:41744 msgid "" "FreeBSD as a Guest on <application>Parallels</application> for <trademark " "class=\"registered\">Mac OS</trademark> X" @@ -61578,7 +61810,7 @@ msgstr "" "<application>Parallels</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:41630 +#: book.translate.xml:41747 msgid "" "<application>Parallels Desktop</application> for <trademark class=" "\"registered\">Mac</trademark> is a commercial software product available " @@ -61601,7 +61833,7 @@ msgstr "" "必先完成虛擬機器的設定後才可安裝想使用的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:41639 +#: book.translate.xml:41756 msgid "" "Installing FreeBSD on Parallels/<trademark class=\"registered\">Mac OS</" "trademark> X" @@ -61610,7 +61842,7 @@ msgstr "" "FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41641 +#: book.translate.xml:41758 msgid "" "The first step in installing FreeBSD on <application>Parallels</application> " "is to create a new virtual machine for installing FreeBSD. Select " @@ -61626,13 +61858,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:41649 +#: book.translate.xml:41766 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41653 +#: book.translate.xml:41770 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 " @@ -61647,7 +61879,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:41660 +#: book.translate.xml:41777 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd2' md5='__failed__'" msgstr "" @@ -61657,7 +61889,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:41666 +#: book.translate.xml:41783 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd3' md5='__failed__'" msgstr "" @@ -61667,7 +61899,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:41672 +#: book.translate.xml:41789 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd4' md5='__failed__'" msgstr "" @@ -61677,13 +61909,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:41678 +#: book.translate.xml:41795 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd5' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41682 +#: book.translate.xml:41799 msgid "Select the type of networking and a network interface:" msgstr "選擇網路類型以及網路介面:" @@ -61692,7 +61924,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:41687 +#: book.translate.xml:41804 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd6' md5='__failed__'" msgstr "" @@ -61702,13 +61934,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:41693 +#: book.translate.xml:41810 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd7' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41697 book.translate.xml:41881 +#: book.translate.xml:41814 book.translate.xml:41998 msgid "Save and finish the configuration:" msgstr "儲存並完成設定:" @@ -61717,7 +61949,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:41701 +#: book.translate.xml:41818 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd8' md5='__failed__'" msgstr "" @@ -61727,13 +61959,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:41707 +#: book.translate.xml:41824 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd9' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41711 +#: book.translate.xml:41828 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>/" @@ -61765,13 +61997,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:41728 +#: book.translate.xml:41845 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41732 +#: book.translate.xml:41849 msgid "" "Once this association with the <acronym>CD-ROM</acronym> source has been " "made, reboot the FreeBSD virtual machine by clicking the reboot icon. " @@ -61788,13 +62020,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:41741 +#: book.translate.xml:41858 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41745 +#: book.translate.xml:41862 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 " @@ -61808,13 +62040,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:41752 +#: book.translate.xml:41869 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41756 +#: book.translate.xml:41873 msgid "" "When the installation is finished, reboot into the newly installed FreeBSD " "virtual machine." @@ -61825,18 +62057,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:41761 +#: book.translate.xml:41878 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd13' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41767 +#: book.translate.xml:41884 msgid "Configuring FreeBSD on <application>Parallels</application>" msgstr "在 <application>Parallels</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41770 +#: book.translate.xml:41887 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Mac OS</trademark> X with <application>Parallels</" @@ -61848,12 +62080,12 @@ msgstr "" "在虛擬機器上的運作。" #. (itstool) path: step/title -#: book.translate.xml:41777 book.translate.xml:41982 book.translate.xml:42186 +#: book.translate.xml:41894 book.translate.xml:42099 book.translate.xml:42303 msgid "Set Boot Loader Variables" msgstr "設定 Boot Loader 變數" #. (itstool) path: step/para -#: book.translate.xml:41779 +#: book.translate.xml:41896 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</" @@ -61865,13 +62097,13 @@ msgstr "" "<filename>/boot/loader.conf</filename> 來完成這個動作:" #. (itstool) path: step/programlisting -#: book.translate.xml:41786 book.translate.xml:41991 book.translate.xml:42195 +#: book.translate.xml:41903 book.translate.xml:42108 book.translate.xml:42312 #, no-wrap msgid "kern.hz=100" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:41788 +#: book.translate.xml:41905 msgid "" "Without this setting, an idle FreeBSD <application>Parallels</application> " "guest will use roughly 15% of the CPU of a single processor <trademark class=" @@ -61883,12 +62115,12 @@ msgstr "" "15% 的 CPU。完成此更改後使用率會減至接近 5%。" #. (itstool) path: step/title -#: book.translate.xml:41795 book.translate.xml:42001 book.translate.xml:42204 +#: book.translate.xml:41912 book.translate.xml:42118 book.translate.xml:42321 msgid "Create a New Kernel Configuration File" msgstr "建立新核心設定檔" #. (itstool) path: step/para -#: book.translate.xml:41797 +#: book.translate.xml:41914 msgid "" "All of the SCSI, FireWire, and USB device drivers can be removed from a " "custom kernel configuration file. <application>Parallels</application> " @@ -61909,12 +62141,12 @@ msgstr "" "citerefentry> 外的所有網路裝置可以自核心中移除。" #. (itstool) path: step/title -#: book.translate.xml:41806 book.translate.xml:42012 book.translate.xml:42215 +#: book.translate.xml:41923 book.translate.xml:42129 book.translate.xml:42332 msgid "Configure Networking" msgstr "設定網路" #. (itstool) path: step/para -#: book.translate.xml:41808 +#: book.translate.xml:41925 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</" @@ -61929,7 +62161,7 @@ msgstr "" "中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:41821 +#: book.translate.xml:41938 msgid "" "FreeBSD as a Guest on <application>Virtual PC</application> for <trademark " "class=\"registered\">Windows</trademark>" @@ -61938,7 +62170,7 @@ msgstr "" "<application>Virtual PC</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:41824 +#: book.translate.xml:41941 msgid "" "<application>Virtual PC</application> for <trademark class=\"registered" "\">Windows</trademark> is a <trademark class=\"registered\">Microsoft</" @@ -61960,12 +62192,12 @@ msgstr "" "的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:41833 +#: book.translate.xml:41950 msgid "Installing FreeBSD on <application>Virtual PC</application>" -msgstr "在 <application>Virtual PC</application> 安裝 FreeBSD " +msgstr "在 <application>Virtual PC</application> 安裝 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41836 +#: book.translate.xml:41953 msgid "" "The first step in installing FreeBSD on <application>Virtual PC</" "application> is to create a new virtual machine for installing FreeBSD. " @@ -61980,7 +62212,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:41961 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd1' md5='__failed__'" msgstr "" @@ -61990,13 +62222,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:41850 +#: book.translate.xml:41967 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41854 +#: book.translate.xml:41971 msgid "" "Select <guimenuitem>Other</guimenuitem> as the <guimenuitem>Operating " "system</guimenuitem> when prompted:" @@ -62009,13 +62241,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:41860 +#: book.translate.xml:41977 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41864 +#: book.translate.xml:41981 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 " @@ -62030,7 +62262,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:41871 +#: book.translate.xml:41988 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd4' md5='__failed__'" msgstr "" @@ -62040,7 +62272,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:41877 +#: book.translate.xml:41994 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd5' md5='__failed__'" msgstr "" @@ -62050,13 +62282,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:42002 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd6' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41889 +#: book.translate.xml:42006 msgid "" "Select the FreeBSD virtual machine and click <guimenu>Settings</guimenu>, " "then set the type of networking and a network interface:" @@ -62069,7 +62301,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:41895 +#: book.translate.xml:42012 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd7' md5='__failed__'" msgstr "" @@ -62079,13 +62311,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:41901 +#: book.translate.xml:42018 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd8' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41905 +#: book.translate.xml:42022 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>/" @@ -62117,7 +62349,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:41923 +#: book.translate.xml:42040 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd9' md5='__failed__'" msgstr "" @@ -62127,13 +62359,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:41929 +#: book.translate.xml:42046 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41933 +#: book.translate.xml:42050 msgid "" "Once this association with the <acronym>CD-ROM</acronym> source has been " "made, reboot the FreeBSD virtual machine by clicking <guimenu>Action</" @@ -62151,13 +62383,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:41943 +#: book.translate.xml:42060 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41947 +#: book.translate.xml:42064 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 " @@ -62171,13 +62403,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:41954 +#: book.translate.xml:42071 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41958 +#: book.translate.xml:42075 msgid "" "When the installation is finished, remember to eject the <acronym>CD</" "acronym>/<acronym>DVD</acronym> or release the <acronym>ISO</acronym> image. " @@ -62191,18 +62423,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:41965 +#: book.translate.xml:42082 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd13' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41971 +#: book.translate.xml:42088 msgid "Configuring FreeBSD on <application>Virtual PC</application>" msgstr "在 <application>Virtual PC</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41974 +#: book.translate.xml:42091 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Microsoft</trademark> <trademark class=\"registered" @@ -62216,7 +62448,7 @@ msgstr "" "虛擬機器上的運作。" #. (itstool) path: step/para -#: book.translate.xml:41984 +#: book.translate.xml:42101 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</" @@ -62228,7 +62460,7 @@ msgstr "" "幾行到 <filename>/boot/loader.conf</filename> 來完成:" #. (itstool) path: step/para -#: book.translate.xml:41993 +#: book.translate.xml:42110 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. " @@ -62238,7 +62470,7 @@ msgstr "" "OS 會消耗掉單一處理器的電腦 40% 的 CPU。完成此更改後使用率會減至接近 3%。" #. (itstool) path: step/para -#: book.translate.xml:42003 +#: book.translate.xml:42120 msgid "" "All of the SCSI, FireWire, and USB device drivers can be removed from a " "custom kernel configuration file. <application>Virtual PC</application> " @@ -62259,7 +62491,7 @@ msgstr "" "citerefentry> 外的所有網路裝置可以自核心中移除。" #. (itstool) path: step/para -#: book.translate.xml:42014 +#: book.translate.xml:42131 msgid "" "The most basic networking setup uses DHCP to connect the virtual machine to " "the same local area network as the <trademark class=\"registered" @@ -62275,7 +62507,7 @@ msgstr "" "設定在 <xref linkend=\"advanced-networking\"/> 中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:42027 +#: book.translate.xml:42144 msgid "" "FreeBSD as a Guest on <application>VMware Fusion</application> for " "<trademark class=\"registered\">Mac OS</trademark>" @@ -62284,7 +62516,7 @@ msgstr "" "Fusion</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:42030 +#: book.translate.xml:42147 msgid "" "<application>VMware Fusion</application> for <trademark class=\"registered" "\">Mac</trademark> is a commercial software product available for <trademark " @@ -62305,12 +62537,12 @@ msgstr "" "application> 後,使用者必先完成虛擬機器的設定後才可安裝想使用的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:42039 +#: book.translate.xml:42156 msgid "Installing FreeBSD on <application>VMware Fusion</application>" msgstr "在 <application>VMware Fusion</application> 安裝 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:42042 +#: book.translate.xml:42159 msgid "" "The first step is to start <application>VMware Fusion</application> which " "will load the Virtual Machine Library. Click <guimenuitem>New</guimenuitem> " @@ -62324,13 +62556,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:42049 +#: book.translate.xml:42166 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd01' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42053 +#: book.translate.xml:42170 msgid "" "This will load the New Virtual Machine Assistant. Click " "<guimenuitem>Continue</guimenuitem> to proceed:" @@ -62343,13 +62575,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:42058 +#: book.translate.xml:42175 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd02' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42062 +#: book.translate.xml:42179 msgid "" "Select <guimenuitem>Other</guimenuitem> as the <guimenuitem>Operating " "System</guimenuitem> and either <guimenuitem>FreeBSD</guimenuitem> or " @@ -62366,13 +62598,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:42070 +#: book.translate.xml:42187 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd03' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42074 +#: book.translate.xml:42191 msgid "" "Choose the name of the virtual machine and the directory where it should be " "saved:" @@ -62383,13 +62615,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:42196 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd04' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42083 +#: book.translate.xml:42200 msgid "Choose the size of the Virtual Hard Disk for the virtual machine:" msgstr "選擇虛擬機器的 Virtual Hard Disk 大小:" @@ -62398,13 +62630,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:42088 +#: book.translate.xml:42205 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd05' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42092 +#: book.translate.xml:42209 msgid "" "Choose the method to install the virtual machine, either from an " "<acronym>ISO</acronym> image or from a <acronym>CD</acronym>/<acronym>DVD</" @@ -62418,13 +62650,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:42098 +#: book.translate.xml:42215 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd06' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42102 +#: book.translate.xml:42219 msgid "" "Click <guimenuitem>Finish</guimenuitem> and the virtual machine will boot:" msgstr "點選 <guimenuitem>Finish</guimenuitem> 接著虛擬機器會開機:" @@ -62434,13 +62666,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:42107 +#: book.translate.xml:42224 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd07' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42111 +#: book.translate.xml:42228 msgid "Install FreeBSD as usual:" msgstr "照往常方式安裝 FreeBSD:" @@ -62449,20 +62681,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:42115 +#: book.translate.xml:42232 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd08' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42119 +#: book.translate.xml:42236 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:42123 +#: book.translate.xml:42240 msgid "" "The System Hardware settings of the virtual machine cannot be modified while " "the virtual machine is running." @@ -62473,13 +62705,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:42130 +#: book.translate.xml:42247 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd09' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42134 +#: book.translate.xml:42251 msgid "The number of CPUs the virtual machine will have access to:" msgstr "虛擬機器要使用的 CPU 數量:" @@ -62488,13 +62720,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:42139 +#: book.translate.xml:42256 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42143 +#: book.translate.xml:42260 msgid "" "The status of the <acronym>CD-ROM</acronym> device. Normally the " "<acronym>CD</acronym>/<acronym>DVD</acronym>/<acronym>ISO</acronym> is " @@ -62509,13 +62741,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:42151 +#: book.translate.xml:42268 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42155 +#: book.translate.xml:42272 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 " @@ -62536,25 +62768,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:42167 +#: book.translate.xml:42284 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42171 +#: book.translate.xml:42288 msgid "" "After modifying the settings, boot the newly installed FreeBSD virtual " "machine." msgstr "在修改設定之後,開機進入新安裝的 FreeBSD 虛擬機器。" #. (itstool) path: sect2/title -#: book.translate.xml:42176 +#: book.translate.xml:42293 msgid "Configuring FreeBSD on <application>VMware Fusion</application>" msgstr "在 <application>VMware Fusion</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:42179 +#: book.translate.xml:42296 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Mac OS</trademark> X with <application>VMware Fusion</" @@ -62566,7 +62798,7 @@ msgstr "" "系統在虛擬機器上的運作。" #. (itstool) path: step/para -#: book.translate.xml:42188 +#: book.translate.xml:42305 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</" @@ -62578,7 +62810,7 @@ msgstr "" "下列幾行到 <filename>/boot/loader.conf</filename> 來完成:" #. (itstool) path: step/para -#: book.translate.xml:42197 +#: book.translate.xml:42314 msgid "" "Without this setting, an idle FreeBSD <application>VMware Fusion</" "application> guest will use roughly 15% of the CPU of a single processor " @@ -62590,7 +62822,7 @@ msgstr "" "近 15% 的 CPU。完成此更改後使用率會減至接近 5%。" #. (itstool) path: step/para -#: book.translate.xml:42206 +#: book.translate.xml:42323 msgid "" "All of the FireWire, and USB device drivers can be removed from a custom " "kernel configuration file. <application>VMware Fusion</application> provides " @@ -62608,7 +62840,7 @@ msgstr "" "核心中移除。" #. (itstool) path: step/para -#: book.translate.xml:42217 +#: book.translate.xml:42334 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</" @@ -62623,12 +62855,12 @@ msgstr "" "中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:42230 +#: book.translate.xml:42347 msgid "FreeBSD as a Guest on <trademark>VirtualBox</trademark>" -msgstr "在 <trademark>VirtualBox</trademark> 使用 FreeBSD 作為客端" +msgstr "在 <trademark>VirtualBox</trademark> 安裝 FreeBSD 作為客端" #. (itstool) path: sect1/para -#: book.translate.xml:42232 +#: book.translate.xml:42349 msgid "" "FreeBSD works well as a guest in <application><trademark>VirtualBox</" "trademark></application>. The virtualization software is available for most " @@ -62639,7 +62871,7 @@ msgstr "" "當然也包含 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:42237 +#: book.translate.xml:42354 msgid "" "The <application><trademark>VirtualBox</trademark></application> guest " "additions provide support for:" @@ -62648,37 +62880,37 @@ msgstr "" "支援以下功能:" #. (itstool) path: listitem/para -#: book.translate.xml:42242 +#: book.translate.xml:42359 msgid "Clipboard sharing." msgstr "剪貼簿共享。" #. (itstool) path: listitem/para -#: book.translate.xml:42246 +#: book.translate.xml:42363 msgid "Mouse pointer integration." msgstr "滑鼠指標整合。" #. (itstool) path: listitem/para -#: book.translate.xml:42250 +#: book.translate.xml:42367 msgid "Host time synchronization." msgstr "主機時間同步。" #. (itstool) path: listitem/para -#: book.translate.xml:42254 +#: book.translate.xml:42371 msgid "Window scaling." msgstr "視窗縮放。" #. (itstool) path: listitem/para -#: book.translate.xml:42258 +#: book.translate.xml:42375 msgid "Seamless mode." msgstr "無痕模式。" #. (itstool) path: note/para -#: book.translate.xml:42263 +#: book.translate.xml:42380 msgid "These commands are run in the FreeBSD guest." msgstr "以下指令均是在 FreeBSD 客端中執行。" #. (itstool) path: sect1/para -#: book.translate.xml:42266 +#: book.translate.xml:42383 msgid "" "First, install the <package>emulators/virtualbox-ose-additions</package> " "package or port in the FreeBSD guest. This will install the port:" @@ -62687,18 +62919,18 @@ msgstr "" "package> 套件或 Port,以下指令會安裝 Port:" #. (itstool) path: sect1/screen -#: book.translate.xml:42270 +#: book.translate.xml:42387 #, 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:42272 +#: book.translate.xml:42389 msgid "Add these lines to <filename>/etc/rc.conf</filename>:" msgstr "加入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42274 +#: book.translate.xml:42391 #, no-wrap msgid "" "vboxguest_enable=\"YES\"\n" @@ -62706,7 +62938,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42277 +#: book.translate.xml:42394 msgid "" "If <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> or <citerefentry><refentrytitle>ntpdate</" @@ -62719,13 +62951,13 @@ msgstr "" "能:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42280 +#: book.translate.xml:42397 #, no-wrap msgid "vboxservice_flags=\"--disable-timesync\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42282 +#: book.translate.xml:42399 msgid "" "<application>Xorg</application> will automatically recognize the " "<literal>vboxvideo</literal> driver. It can also be manually entered in " @@ -62735,7 +62967,7 @@ msgstr "" "程式,也可手動在 <filename>/etc/X11/xorg.conf</filename> 中輸入:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42287 +#: book.translate.xml:42404 #, no-wrap msgid "" "Section \"Device\"\n" @@ -62747,7 +62979,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42294 +#: book.translate.xml:42411 msgid "" "To use the <literal>vboxmouse</literal> driver, adjust the mouse section in " "<filename>/etc/X11/xorg.conf</filename>:" @@ -62756,7 +62988,7 @@ msgstr "" "xorg.conf</filename> 中與滑鼠相關的一節:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42297 +#: book.translate.xml:42414 #, no-wrap msgid "" "Section \"InputDevice\"\n" @@ -62766,7 +62998,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42302 +#: book.translate.xml:42419 msgid "" "<acronym>HAL</acronym> users should create the following <filename>/usr/" "local/etc/hal/fdi/policy/90-vboxguest.fdi</filename> or copy it from " @@ -62778,7 +63010,7 @@ msgstr "" "fdi/policy/10osvendor/90-vboxguest.fdi</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42307 +#: book.translate.xml:42424 #, no-wrap msgid "" "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" @@ -62815,13 +63047,44 @@ msgid "" "</deviceinfo>" msgstr "" +#. (itstool) path: sect1/para +#: book.translate.xml:42457 +msgid "" +"Shared folders for file transfers between host and VM are accessible by " +"mounting them using <literal>mount_vboxvfs</literal>. A shared folder can be " +"created on the host using the VirtualBox GUI or via <command>vboxmanage</" +"command>. For example, to create a shared folder called " +"<replaceable>myshare</replaceable> under <filename><replaceable>/mnt/" +"bsdboxshare</replaceable></filename> for the VM named <replaceable>BSDBox</" +"replaceable>, run:" +msgstr "" + +#. (itstool) path: sect1/screen +#: book.translate.xml:42466 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>vboxmanage sharedfolder add '<replaceable>BSDBox</replaceable>' --name <replaceable>myshare</replaceable> --hostpath <replaceable>/mnt/bsdboxshare</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect1/para +#: book.translate.xml:42468 +msgid "" +"Note that the shared folder name must not contain spaces. Mount the shared " +"folder from within the guest system like this:" +msgstr "" + +#. (itstool) path: sect1/screen +#: book.translate.xml:42472 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>mount_vboxvfs -w <replaceable>myshare</replaceable> <replaceable>/mnt</replaceable></userinput>" +msgstr "" + #. (itstool) path: sect1/title -#: book.translate.xml:42342 -msgid "FreeBSD as a Host with <application>VirtualBox</application>" -msgstr "以 FreeBSD 作為主端安裝 <application>VirtualBox</application> " +#: book.translate.xml:42476 +msgid "FreeBSD as a Host with <trademark>VirtualBox</trademark>" +msgstr "以 FreeBSD 作為主端使用 <trademark>VirtualBox</trademark>" #. (itstool) path: sect1/para -#: book.translate.xml:42345 +#: book.translate.xml:42478 msgid "" "<application><trademark>VirtualBox</trademark></application> is an actively " "developed, complete virtualization package, that is available for most " @@ -62849,12 +63112,12 @@ msgstr "" "<quote>Downloads</quote> 頁面</link>。目前,這些擴充套件並不支援 FreeBSD。" #. (itstool) path: sect2/title -#: book.translate.xml:42358 +#: book.translate.xml:42491 msgid "Installing <trademark>VirtualBox</trademark>" msgstr "安裝 <trademark>VirtualBox</trademark>" #. (itstool) path: sect2/para -#: book.translate.xml:42360 +#: book.translate.xml:42493 msgid "" "<application><trademark>VirtualBox</trademark></application> is available as " "a FreeBSD package or port in <package>emulators/virtualbox-ose</package>. " @@ -62865,7 +63128,7 @@ msgstr "" "得。要安裝 Port 可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:42365 +#: book.translate.xml:42498 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/emulators/virtualbox-ose</userinput>\n" @@ -62873,7 +63136,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42368 +#: book.translate.xml:42501 msgid "" "One useful option in the port's configuration menu is the " "<literal>GuestAdditions</literal> suite of programs. These provide a number " @@ -62891,7 +63154,7 @@ msgstr "" "additions 可在客端系統安裝完之後的 <guimenu>Devices</guimenu> 選單找到。" #. (itstool) path: sect2/para -#: book.translate.xml:42378 +#: book.translate.xml:42511 msgid "" "A few configuration changes are needed before " "<application><trademark>VirtualBox</trademark></application> is started for " @@ -62903,13 +63166,13 @@ msgstr "" "modules</filename>,該模組必須在核心中載入:" #. (itstool) path: sect2/screen -#: book.translate.xml:42384 +#: book.translate.xml:42517 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vboxdrv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42386 +#: book.translate.xml:42519 msgid "" "To ensure the module is always loaded after a reboot, add this line to " "<filename>/boot/loader.conf</filename>:" @@ -62918,13 +63181,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42390 +#: book.translate.xml:42523 #, no-wrap msgid "vboxdrv_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42392 +#: book.translate.xml:42525 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:" @@ -62933,13 +63196,13 @@ msgstr "" "rc.conf</filename>,然後重新啟動電腦:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42397 +#: book.translate.xml:42530 #, no-wrap msgid "vboxnet_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42399 +#: book.translate.xml:42532 msgid "" "The <systemitem class=\"groupname\">vboxusers</systemitem> group is created " "during installation of <application><trademark>VirtualBox</trademark></" @@ -62954,13 +63217,13 @@ msgstr "" "需要加入成為此群組的成員,<command>pw</command> 可用來加入新的成員:" #. (itstool) path: sect2/screen -#: book.translate.xml:42406 +#: book.translate.xml:42539 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod vboxusers -m <replaceable>yourusername</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42408 +#: book.translate.xml:42541 msgid "" "The default permissions for <filename>/dev/vboxnetctl</filename> are " "restrictive and need to be changed for bridged networking:" @@ -62969,7 +63232,7 @@ msgstr "" "接網路:" #. (itstool) path: sect2/screen -#: book.translate.xml:42412 +#: book.translate.xml:42545 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chown root:vboxusers /dev/vboxnetctl</userinput>\n" @@ -62977,7 +63240,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42415 +#: book.translate.xml:42548 msgid "" "To make this permissions change permanent, add these lines to <filename>/etc/" "devfs.conf</filename>:" @@ -62985,7 +63248,7 @@ msgstr "" "要永久變更權限,可加入下列幾行到 <filename>/etc/devfs.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42418 +#: book.translate.xml:42551 #, no-wrap msgid "" "own vboxnetctl root:vboxusers\n" @@ -62993,7 +63256,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42421 +#: book.translate.xml:42554 msgid "" "To launch <application><trademark>VirtualBox</trademark></application>, type " "from a <application>Xorg</application> session:" @@ -63002,13 +63265,13 @@ msgstr "" "<application>Xorg</application> 工作階段輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:42424 +#: book.translate.xml:42557 #, no-wrap msgid "<prompt>%</prompt> <userinput>VirtualBox</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42426 +#: book.translate.xml:42559 msgid "" "For more information on configuring and using " "<application><trademark>VirtualBox</trademark></application>, refer to the " @@ -63024,12 +63287,12 @@ msgstr "" "link>。" #. (itstool) path: sect2/title -#: book.translate.xml:42435 +#: book.translate.xml:42568 msgid "<trademark>VirtualBox</trademark> USB Support" msgstr "<trademark>VirtualBox</trademark> USB 支援" #. (itstool) path: sect2/para -#: book.translate.xml:42437 +#: book.translate.xml:42570 msgid "" "<application><trademark>VirtualBox</trademark></application> can be " "configured to pass <acronym>USB</acronym> devices through to the guest " @@ -63040,7 +63303,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42444 +#: book.translate.xml:42577 msgid "" "For <application><trademark>VirtualBox</trademark></application> to be aware " "of <acronym>USB</acronym> devices attached to the machine, the user needs to " @@ -63049,20 +63312,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42448 +#: book.translate.xml:42581 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod operator -m <replaceable>yourusername</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42450 +#: book.translate.xml:42583 msgid "" "Then, add the following to <filename>/etc/devfs.rules</filename>, or create " "this file if it does not exist yet:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42454 +#: book.translate.xml:42587 #, no-wrap msgid "" "[system=10]\n" @@ -63070,33 +63333,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42457 -#, fuzzy +#: book.translate.xml:42590 msgid "" "To load these new rules, add the following to <filename>/etc/rc.conf</" "filename>:" -msgstr "若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>。" +msgstr "若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42460 +#: book.translate.xml:42593 #, no-wrap msgid "devfs_system_ruleset=\"system\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42462 -#, fuzzy +#: book.translate.xml:42595 msgid "Then, restart devfs:" -msgstr "然後啟動服務:" +msgstr "然後重新啟動 devfs:" #. (itstool) path: sect2/screen -#: book.translate.xml:42464 book.translate.xml:42515 +#: book.translate.xml:42597 book.translate.xml:42648 #, no-wrap msgid "<prompt>#</prompt> <userinput>service devfs restart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42466 +#: book.translate.xml:42599 msgid "" "Restart the login session and <application><trademark>VirtualBox</" "trademark></application> for these changes to take effect, and create " @@ -63106,7 +63367,7 @@ msgstr "" "application> 來讓這些變更生效,且建立必要的 <acronym>USB</acronym> 的過濾器。" #. (itstool) path: sect2/title -#: book.translate.xml:42473 +#: book.translate.xml:42606 msgid "" "<trademark>VirtualBox</trademark> Host <acronym>DVD</acronym>/<acronym>CD</" "acronym> Access" @@ -63115,7 +63376,7 @@ msgstr "" "acronym> 存取" #. (itstool) path: sect2/para -#: book.translate.xml:42476 +#: book.translate.xml:42609 msgid "" "Access to the host <acronym>DVD</acronym>/<acronym>CD</acronym> drives from " "guests is achieved through the sharing of the physical drives. Within " @@ -63138,7 +63399,7 @@ msgstr "" "acronym> 或燒錄機只會在有勾選此選項時能夠運作。" #. (itstool) path: sect2/para -#: book.translate.xml:42490 +#: book.translate.xml:42623 msgid "" "<acronym>HAL</acronym> needs to run for <application><trademark>VirtualBox</" "trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> " @@ -63151,19 +63412,19 @@ msgstr "" "它:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42496 +#: book.translate.xml:42629 #, no-wrap msgid "hald_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42498 +#: book.translate.xml:42631 #, no-wrap msgid "<prompt>#</prompt> <userinput>service hald start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42500 +#: book.translate.xml:42633 msgid "" "In order for users to be able to use <application><trademark>VirtualBox</" "trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> " @@ -63183,7 +63444,7 @@ msgstr "" "行到 <filename>/etc/devfs.conf</filename> 來修正:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42511 +#: book.translate.xml:42644 #, no-wrap msgid "" "perm cd* 0660\n" @@ -63192,12 +63453,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:42520 +#: book.translate.xml:42653 msgid "FreeBSD as a Host with <application>bhyve</application>" -msgstr "以 FreeBSD 作為主端安裝 <application>bhyve</application> " +msgstr "以 FreeBSD 作為主端安裝 <application>bhyve</application>" #. (itstool) path: sect1/para -#: book.translate.xml:42523 +#: book.translate.xml:42656 msgid "" "The <application>bhyve</application> <acronym>BSD</acronym>-licensed " "hypervisor became part of the base system with FreeBSD 10.0-RELEASE. This " @@ -63210,7 +63471,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42534 +#: book.translate.xml:42667 msgid "" "The <application>bhyve</application> design requires a processor that " "supports <trademark class=\"registered\">Intel</trademark> Extended Page " @@ -63226,25 +63487,26 @@ msgid "" "<acronym>UG</acronym> support was introduced with Intel's Westmere micro-" "architecture. For a complete list of <trademark class=\"registered\">Intel</" "trademark> processors that support <acronym>EPT</acronym>, refer to <link " -"xlink:href=\"http://ark.intel.com/search/advanced?s=t&" -"ExtendedPageTables=true\"/>. <acronym>RVI</acronym> is found on the third " -"generation and later of the <trademark>AMD Opteron</trademark> (Barcelona) " -"processors. The easiest way to tell if a processor supports " -"<application>bhyve</application> is to run <command>dmesg</command> or look " -"in <filename>/var/run/dmesg.boot</filename> for the <literal>POPCNT</" -"literal> processor feature flag on the <literal>Features2</literal> line for " -"<trademark class=\"registered\">AMD</trademark> processors or <literal>EPT</" -"literal> and <literal>UG</literal> on the <literal>VT-x</literal> line for " -"<trademark class=\"registered\">Intel</trademark> processors." +"xlink:href=\"https://ark.intel.com/content/www/us/en/ark/search/" +"featurefilter.html?productType=873&0_ExtendedPageTables=True\"/>. " +"<acronym>RVI</acronym> is found on the third generation and later of the " +"<trademark>AMD Opteron</trademark> (Barcelona) processors. The easiest way " +"to tell if a processor supports <application>bhyve</application> is to run " +"<command>dmesg</command> or look in <filename>/var/run/dmesg.boot</filename> " +"for the <literal>POPCNT</literal> processor feature flag on the " +"<literal>Features2</literal> line for <trademark class=\"registered\">AMD</" +"trademark> processors or <literal>EPT</literal> and <literal>UG</literal> on " +"the <literal>VT-x</literal> line for <trademark class=\"registered\">Intel</" +"trademark> processors." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42559 +#: book.translate.xml:42692 msgid "Preparing the Host" msgstr "準備主端" #. (itstool) path: sect2/para -#: book.translate.xml:42561 +#: book.translate.xml:42694 msgid "" "The first step to creating a virtual machine in <application>bhyve</" "application> is configuring the host system. First, load the " @@ -63252,13 +63514,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42566 +#: book.translate.xml:42699 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vmm</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42568 +#: book.translate.xml:42701 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 " @@ -63268,7 +63530,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42576 +#: book.translate.xml:42709 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>tap0</replaceable> create</userinput>\n" @@ -63280,30 +63542,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42585 +#: book.translate.xml:42718 msgid "Creating a FreeBSD Guest" msgstr "建立 FreeBSD 客端" #. (itstool) path: sect2/para -#: book.translate.xml:42587 +#: book.translate.xml:42720 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:42591 +#: book.translate.xml:42724 #, no-wrap msgid "<prompt>#</prompt> <userinput>truncate -s <replaceable>16G</replaceable> <replaceable>guest.img</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42593 +#: book.translate.xml:42726 msgid "Download an installation image of FreeBSD to install:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42595 +#: book.translate.xml:42728 #, 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" @@ -63311,7 +63573,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42598 +#: book.translate.xml:42731 msgid "" "FreeBSD comes with an example script for running a virtual machine in " "<application>bhyve</application>. The script will start the virtual machine " @@ -63329,13 +63591,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42615 +#: book.translate.xml:42748 #, no-wrap msgid "<prompt>#</prompt> <userinput>sh /usr/share/examples/bhyve/vmrun.sh -c <replaceable>1</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:42617 +#: book.translate.xml:42750 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 " @@ -63343,7 +63605,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42622 +#: book.translate.xml:42755 msgid "" "Reboot the virtual machine. While rebooting the virtual machine causes " "<application>bhyve</application> to exit, the <filename>vmrun.sh</filename> " @@ -63354,36 +63616,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42630 +#: book.translate.xml:42763 #, 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:42634 +#: book.translate.xml:42767 msgid "Creating a <trademark class=\"registered\">Linux</trademark> Guest" msgstr "建立 <trademark class=\"registered\">Linux</trademark> 客端" #. (itstool) path: sect2/para -#: book.translate.xml:42636 +#: book.translate.xml:42769 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:42640 +#: book.translate.xml:42773 msgid "Next, create a file to use as the virtual disk for the guest machine:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42643 +#: book.translate.xml:42776 #, no-wrap msgid "<prompt>#</prompt> <userinput>truncate -s <replaceable>16G</replaceable> <replaceable>linux.img</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42645 +#: book.translate.xml:42778 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. " @@ -63394,7 +63656,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42654 +#: book.translate.xml:42787 #, no-wrap msgid "" "(hd0) ./linux.img\n" @@ -63402,7 +63664,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42657 +#: book.translate.xml:42790 msgid "" "Use <package>sysutils/grub2-bhyve</package> to load the <trademark class=" "\"registered\">Linux</trademark> kernel from the <acronym>ISO</acronym> " @@ -63410,13 +63672,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42660 +#: book.translate.xml:42793 #, 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:42662 +#: book.translate.xml:42795 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 " @@ -63425,7 +63687,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42669 +#: book.translate.xml:42802 #, no-wrap msgid "" "grub> <userinput>ls</userinput>\n" @@ -63439,14 +63701,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42678 +#: book.translate.xml:42811 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:42681 +#: book.translate.xml:42814 #, 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" @@ -63454,7 +63716,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42684 +#: book.translate.xml:42817 msgid "" "The system will boot and start the installer. After installing a system in " "the virtual machine, reboot the virtual machine. This will cause " @@ -63463,19 +63725,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42690 book.translate.xml:42718 +#: book.translate.xml:42823 book.translate.xml:42851 #, no-wrap msgid "<prompt>#</prompt> <userinput>bhyvectl --destroy --vm=<replaceable>linuxguest</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42692 +#: book.translate.xml:42825 msgid "" "Now the guest can be started directly from the virtual disk. Load the kernel:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42695 +#: book.translate.xml:42828 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>grub-bhyve -m device.map -r hd0,msdos1 -M <replaceable>1024M</replaceable> <replaceable>linuxguest</replaceable></userinput>\n" @@ -63492,12 +63754,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42707 +#: book.translate.xml:42840 msgid "Boot the virtual machine:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42709 +#: book.translate.xml:42842 #, 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" @@ -63505,7 +63767,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42712 +#: book.translate.xml:42845 msgid "" "<trademark class=\"registered\">Linux</trademark> will now boot in the " "virtual machine and eventually present you with the login prompt. Login and " @@ -63515,7 +63777,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42722 +#: book.translate.xml:42855 msgid "" "Booting <application>bhyve</application> Virtual Machines with " "<acronym>UEFI</acronym> Firmware" @@ -63524,7 +63786,7 @@ msgstr "" "器" #. (itstool) path: sect2/para -#: book.translate.xml:42725 +#: book.translate.xml:42858 msgid "" "In addition to <application>bhyveload</application> and <application>grub-" "bhyve</application>, the <application>bhyve</application> hypervisor can " @@ -63534,7 +63796,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42732 +#: book.translate.xml:42865 msgid "" "In order to make use of the <acronym>UEFI</acronym> support in " "<application>bhyve</application>, first obtain the <acronym>UEFI</acronym> " @@ -63543,7 +63805,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42738 +#: book.translate.xml:42871 msgid "" "With the firmware in place, add the flags <option>-l bootrom,<replaceable>/" "path/to/firmware</replaceable></option> to your <application>bhyve</" @@ -63552,7 +63814,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42744 +#: book.translate.xml:42877 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \\\n" @@ -63563,7 +63825,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42750 +#: book.translate.xml:42883 msgid "" "<package>sysutils/bhyve-firmware</package> also contains a <acronym>CSM</" "acronym>-enabled firmware, to boot guests with no <acronym>UEFI</acronym> " @@ -63571,7 +63833,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42755 +#: book.translate.xml:42888 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \\\n" @@ -63582,16 +63844,16 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42763 +#: book.translate.xml:42896 msgid "" "Graphical <acronym>UEFI</acronym> Framebuffer for <application>bhyve</" "application> Guests" msgstr "" "供 <application>bhyve</application> 客端用的圖型化 <acronym>UEFI</acronym> " -"Framebuffer " +"Framebuffer" #. (itstool) path: sect2/para -#: book.translate.xml:42766 +#: book.translate.xml:42899 msgid "" "The <acronym>UEFI</acronym> firmware support is particularly useful with " "predominantly graphical guest operating systems such as Microsoft <trademark " @@ -63599,7 +63861,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42770 +#: book.translate.xml:42903 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 " @@ -63612,13 +63874,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42782 +#: book.translate.xml:42915 msgid "" "The resulting <application>bhyve</application> command would look like this:" msgstr "<application>bhyve</application> 指令的結果會如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:42785 +#: book.translate.xml:42918 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 31:0,lpc \\\n" @@ -63630,20 +63892,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42792 +#: book.translate.xml:42925 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:42798 +#: book.translate.xml:42931 msgid "" "Using <acronym>ZFS</acronym> with <application>bhyve</application> Guests" msgstr "在 <application>bhyve</application> 客端使用 <acronym>ZFS</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:42801 +#: book.translate.xml:42934 msgid "" "If <acronym>ZFS</acronym> is available on the host machine, using " "<acronym>ZFS</acronym> volumes instead of disk image files can provide " @@ -63652,20 +63914,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42807 +#: book.translate.xml:42940 #, 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:42809 +#: book.translate.xml:42942 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:42812 +#: book.translate.xml:42945 #, 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" @@ -63673,12 +63935,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42817 +#: book.translate.xml:42950 msgid "Virtual Machine Consoles" msgstr "虛擬機器 Console" #. (itstool) path: sect2/para -#: book.translate.xml:42819 +#: book.translate.xml:42952 msgid "" "It is advantageous to wrap the <application>bhyve</application> console in a " "session management tool such as <package>sysutils/tmux</package> or " @@ -63695,7 +63957,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42836 +#: book.translate.xml:42969 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload nmdm</userinput>\n" @@ -63710,12 +63972,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42848 +#: book.translate.xml:42981 msgid "Managing Virtual Machines" msgstr "管理虛擬機器" #. (itstool) path: sect2/para -#: book.translate.xml:42850 +#: book.translate.xml:42983 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 " @@ -63723,7 +63985,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42854 +#: book.translate.xml:42987 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls -al /dev/vmm</userinput>\n" @@ -63736,25 +63998,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42862 +#: book.translate.xml:42995 msgid "" "A specified virtual machine can be destroyed using <command>bhyvectl</" "command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42865 +#: book.translate.xml:42998 #, no-wrap msgid "<prompt>#</prompt> <userinput>bhyvectl --destroy --vm=<replaceable>guestname</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42869 +#: book.translate.xml:43002 msgid "Persistent Configuration" msgstr "Persistent 設定" #. (itstool) path: sect2/para -#: book.translate.xml:42871 +#: book.translate.xml:43004 msgid "" "In order to configure the system to start <application>bhyve</application> " "guests at boot time, the following configurations must be made in the " @@ -63762,23 +64024,23 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:42878 +#: book.translate.xml:43011 msgid "<filename>/etc/sysctl.conf</filename>" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:42880 +#: book.translate.xml:43013 #, no-wrap msgid "net.link.tap.up_on_open=1" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:42884 +#: book.translate.xml:43017 msgid "<filename>/etc/rc.conf</filename>" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:42886 +#: book.translate.xml:43019 #, no-wrap msgid "" "cloned_interfaces=\"<replaceable>bridge0</replaceable> <replaceable>tap0</replaceable>\"\n" @@ -63787,12 +64049,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:42895 +#: book.translate.xml:43028 msgid "FreeBSD as a <trademark>Xen</trademark>-Host" msgstr "以 FreeBSD 作為主端安裝 <trademark>Xen</trademark>" #. (itstool) path: sect1/para -#: book.translate.xml:42897 +#: book.translate.xml:43030 msgid "" "<application>Xen</application> is a GPLv2-licensed <link xlink:href=" "\"https://en.wikipedia.org/wiki/Hypervisor#Classification\">type 1 " @@ -63809,7 +64071,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42907 +#: book.translate.xml:43040 msgid "" "<trademark>Xen</trademark> is a bare-metal hypervisor, which means that it " "is the first program loaded after the BIOS. A special privileged guest " @@ -63826,7 +64088,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42933 +#: book.translate.xml:43066 msgid "" "<trademark>Xen</trademark> can migrate VMs between different <trademark>Xen</" "trademark> servers. When the two xen hosts share the same underlying " @@ -63841,12 +64103,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42945 +#: book.translate.xml:43078 msgid "Hardware Requirements for <trademark>Xen</trademark> Dom0" -msgstr "" +msgstr "<trademark>Xen</trademark> Dom0 的硬體需求" #. (itstool) path: sect2/para -#: book.translate.xml:42947 +#: book.translate.xml:43080 msgid "" "To run the <trademark>Xen</trademark> hypervisor on a host, certain hardware " "functionality is required. Hardware virtualized domains require Extended " @@ -63856,24 +64118,30 @@ msgid "" "supporting_hardware\">IOMMU</link>) support in the host processor." msgstr "" +#. (itstool) path: note/para +#: book.translate.xml:43087 +msgid "" +"In order to run a FreeBSD <trademark>Xen</trademark> Dom0 the box must be " +"booted using legacy boot (BIOS)." +msgstr "" + #. (itstool) path: sect2/title -#: book.translate.xml:42955 +#: book.translate.xml:43094 msgid "<trademark>Xen</trademark> Dom0 Control Domain Setup" -msgstr "" +msgstr "<trademark>Xen</trademark> Dom0 控制領域安裝" #. (itstool) path: sect2/para -#: book.translate.xml:42957 +#: book.translate.xml:43096 msgid "" "Users of FreeBSD 11 should install the <package>emulators/xen-kernel47</" "package> and <package>sysutils/xen-tools47</package> packages that are based " -"on Xen version 4.7. Systems running on FreeBSD-CURRENT with at least " -"revision r336475 or higher, can use Xen 4.11 provided by <package>emulators/" -"xen-kernel411</package> and <package>sysutils/xen-tools411</package>, " -"respectively." +"on Xen version 4.7. Systems running on FreeBSD-12.0 or newer can use Xen " +"4.11 provided by <package>emulators/xen-kernel411</package> and " +"<package>sysutils/xen-tools411</package>, respectively." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42965 +#: book.translate.xml:43104 msgid "" "Configuration files must be edited to prepare the host for the Dom0 " "integration after the Xen packages are installed. An entry to <filename>/etc/" @@ -63883,13 +64151,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42972 +#: book.translate.xml:43111 #, no-wrap -msgid "<prompt>#</prompt> <userinput>sysrc -f /etc/sysctl.conf vm.max_wired=-1</userinput>" +msgid "<prompt>#</prompt> <userinput>echo 'vm.max_wired=-1' >> /etc/sysctl.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42974 +#: book.translate.xml:43113 msgid "" "Another memory-related setting involves changing <filename>/etc/login.conf</" "filename>, setting the <literal>memorylocked</literal> option to " @@ -63901,7 +64169,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42985 +#: book.translate.xml:43124 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sed -i '' -e 's/memorylocked=64K/memorylocked=unlimited/' /etc/login.conf</userinput>\n" @@ -63909,20 +64177,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42988 +#: book.translate.xml:43127 msgid "" "Add an entry for the <trademark>Xen</trademark> console to <filename>/etc/" "ttys</filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42991 +#: book.translate.xml:43130 #, no-wrap -msgid "<prompt>#</prompt> <userinput>echo 'xc0 \"/usr/libexec/getty Pc\" xterm on secure' >> /etc/ttys</userinput>" +msgid "<prompt>#</prompt> <userinput>echo 'xc0 \"/usr/libexec/getty Pc\" xterm onifconsole secure' >> /etc/ttys</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42993 +#: book.translate.xml:43132 msgid "" "Selecting a <trademark>Xen</trademark> kernel in <filename>/boot/loader." "conf</filename> activates the Dom0. <trademark>Xen</trademark> also requires " @@ -63934,109 +64202,89 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43003 +#: book.translate.xml:43142 msgid "The following command is used for Xen 4.7 packages:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43005 +#: book.translate.xml:43144 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf hw.pci.mcfg=0</userinput>\n" +"<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf if_tap_load=\"YES\"</userinput>\n" "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_kernel=\"/boot/xen\"</userinput>\n" "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_cmdline=\"dom0_mem=<replaceable>8192M</replaceable> dom0_max_vcpus=<replaceable>4</replaceable> dom0pvh=1 console=com1,vga com1=115200,8n1 guest_loglvl=all loglvl=all\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43009 +#: book.translate.xml:43149 msgid "" "For Xen versions 4.11 and higher, the following command should be used " "instead:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43012 +#: book.translate.xml:43152 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf hw.pci.mcfg=0</userinput>\n" +"<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf if_tap_load=\"YES\"</userinput>\n" "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_kernel=\"/boot/xen\"</userinput>\n" "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf xen_cmdline=\"dom0_mem=<replaceable>8192M</replaceable> dom0_max_vcpus=<replaceable>4</replaceable> dom0=pvh console=com1,vga com1=115200,8n1 guest_loglvl=all loglvl=all\"</userinput>" msgstr "" -#. (itstool) path: sect2/para -#: book.translate.xml:43016 -msgid "" -"Log files that <trademark>Xen</trademark> creates for the Dom0 and DomU VMs " -"are stored in <filename>/var/log/xen</filename>. This directory does not " -"exist by default and must be created." -msgstr "" - -#. (itstool) path: sect2/screen -#: book.translate.xml:43021 -#, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>mkdir -p /var/log/xen</userinput>\n" -"<prompt>#</prompt> <userinput>chmod 644 /var/log/xen</userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:43024 +#. (itstool) path: tip/para +#: book.translate.xml:43157 msgid "" -"<trademark>Xen</trademark> provides a boot menu to activate and de-activate " -"the hypervisor on demand in <filename>/boot/menu.rc.local</filename>:" -msgstr "" - -#. (itstool) path: sect2/screen -#: book.translate.xml:43028 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>echo \"try-include /boot/xen.4th\" >> /boot/menu.rc.local</userinput>" +"Log files that <trademark>Xen</trademark> creates for the DomU VMs are " +"stored in <filename>/var/log/xen</filename>. Please be sure to check the " +"contents of that directory if experiencing issues." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43030 +#: book.translate.xml:43163 msgid "Activate the xencommons service during system startup:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43033 +#: book.translate.xml:43166 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysrc xencommons_enable=yes</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43035 +#: book.translate.xml:43168 msgid "" "These settings are enough to start a Dom0-enabled system. However, it lacks " "network functionality for the DomU machines. To fix that, define a bridged " "interface with the main NIC of the system which the DomU VMs can use to " -"connect to the network. Replace <replaceable>igb0</replaceable> with the " -"host network interface name." +"connect to the network. Replace <replaceable>em0</replaceable> with the host " +"network interface name." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43043 +#: book.translate.xml:43176 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>sysrc autobridge_interfaces=bridge0</userinput>\n" -"<prompt>#</prompt> <userinput>sysrc autobridge_bridge0=<replaceable>igb0</replaceable></userinput>\n" -"<prompt>#</prompt> <userinput>sysrc ifconfig_bridge0=SYNCDHCP</userinput>" +"<prompt>#</prompt> <userinput>sysrc cloned_interfaces=\"bridge0\"</userinput>\n" +"<prompt>#</prompt> <userinput>sysrc ifconfig_bridge0=\"addm <replaceable>em0</replaceable> SYNCDHCP\"</userinput>\n" +"<prompt>#</prompt> <userinput>sysrc ifconfig_<replaceable>em0</replaceable>=\"up\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43047 +#: book.translate.xml:43180 msgid "" "Restart the host to load the <trademark>Xen</trademark> kernel and start the " "Dom0." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43050 +#: book.translate.xml:43183 #, no-wrap msgid "<prompt>#</prompt> <userinput>reboot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43052 +#: book.translate.xml:43185 msgid "" "After successfully booting the <trademark>Xen</trademark> kernel and logging " "into the system again, the <trademark>Xen</trademark> management tool " @@ -64044,7 +64292,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43057 +#: book.translate.xml:43190 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>xl list</userinput>\n" @@ -64053,7 +64301,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43061 +#: book.translate.xml:43194 msgid "" "The output confirms that the Dom0 (called <literal>Domain-0</literal>) has " "the ID <literal>0</literal> and is running. It also has the memory and " @@ -64064,12 +64312,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43071 +#: book.translate.xml:43204 msgid "<trademark>Xen</trademark> DomU Guest VM Configuration" msgstr "<trademark>Xen</trademark> DomU 客端 VM 設置" #. (itstool) path: sect2/para -#: book.translate.xml:43073 +#: book.translate.xml:43206 msgid "" "Unprivileged domains consist of a configuration file and virtual or physical " "hard disks. Virtual disk storage for the DomU can be files created by " @@ -64084,26 +64332,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43083 +#: book.translate.xml:43216 #, 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> -o <replaceable>freebsd.iso</replaceable></userinput>" +msgid "<prompt>#</prompt> <userinput>fetch <replaceable>ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/<replaceable>12.0</replaceable>/FreeBSD-<replaceable>12.0</replaceable>-RELEASE-amd64-bootonly.iso</replaceable> -o <replaceable>freebsd.iso</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43085 +#: book.translate.xml:43218 msgid "" "A ZFS volume of 20 GB called <filename>xendisk0</filename> is created to " "serve as the disk space for the VM." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43089 +#: book.translate.xml:43222 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs create -V20G -o volmode=dev zroot/xendisk0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43091 +#: book.translate.xml:43224 msgid "" "The new DomU guest VM is defined in a file. Some specific definitions like " "name, keymap, and VNC connection details are also defined. The following " @@ -64112,7 +64360,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43096 +#: book.translate.xml:43229 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat freebsd.cfg</userinput>\n" @@ -64132,12 +64380,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43111 +#: book.translate.xml:43244 msgid "These lines are explained in more detail:" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43115 +#: book.translate.xml:43248 msgid "" "This defines what kind of virtualization to use. <literal>hvm</literal> " "refers to hardware-assisted virtualization or hardware virtual machine. " @@ -64148,14 +64396,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43126 +#: book.translate.xml:43259 msgid "" "Name of this virtual machine to distinguish it from others running on the " "same Dom0. Required." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43131 +#: book.translate.xml:43264 msgid "" "Quantity of RAM in megabytes to make available to the VM. This amount is " "subtracted from the hypervisor's total available memory, not the memory of " @@ -64163,7 +64411,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43137 +#: book.translate.xml:43270 msgid "" "Number of virtual CPUs available to the guest VM. For best performance, do " "not create guests with more virtual CPUs than the number of physical CPUs on " @@ -64171,7 +64419,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43143 +#: book.translate.xml:43276 msgid "" "Virtual network adapter. This is the bridge connected to the network " "interface of the host. The <literal>mac</literal> parameter is the MAC " @@ -64180,14 +64428,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43152 +#: book.translate.xml:43285 msgid "" "Full path to the disk, file, or ZFS volume of the disk storage for this VM. " "Options and multiple disk definitions are separated by commas." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43158 +#: book.translate.xml:43291 msgid "" "Defines the Boot medium from which the initial operating system is " "installed. In this example, it is the ISO imaged downloaded earlier. Consult " @@ -64196,7 +64444,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:43166 +#: book.translate.xml:43299 msgid "" "Options controlling VNC connectivity to the serial console of the DomU. In " "order, these are: active VNC support, define IP address on which to listen, " @@ -64206,20 +64454,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43176 +#: book.translate.xml:43309 msgid "" "After the file has been created with all the necessary options, the DomU is " "created by passing it to <command>xl create</command> as a parameter." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43180 +#: book.translate.xml:43313 #, no-wrap msgid "<prompt>#</prompt> <userinput>xl create freebsd.cfg</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:43183 +#: book.translate.xml:43316 msgid "" "Each time the Dom0 is restarted, the configuration file must be passed to " "<command>xl create</command> again to re-create the DomU. By default, only " @@ -64232,14 +64480,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43195 +#: book.translate.xml:43328 msgid "" "The output of <command>xl list</command> confirms that the DomU has been " "created." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43198 +#: book.translate.xml:43331 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>xl list</userinput>\n" @@ -64249,7 +64497,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43203 +#: book.translate.xml:43336 msgid "" "To begin the installation of the base operating system, start the VNC " "client, directing it to the main network address of the host or to the IP " @@ -64265,7 +64513,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:43218 +#: book.translate.xml:43351 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>xl destroy freebsd</userinput>\n" @@ -64273,36 +64521,168 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43221 +#: book.translate.xml:43354 msgid "" "The machine can then be accessed again using the VNC viewer. This time, it " "will boot from the virtual disk where the operating system has been " "installed and can be used as a virtual machine." msgstr "" +#. (itstool) path: sect2/para +#: book.translate.xml:43363 +msgid "" +"This section contains basic information in order to help troubleshoot issues " +"found when using FreeBSD as a <trademark>Xen</trademark> host or guest." +msgstr "" + +#. (itstool) path: sect3/title +#: book.translate.xml:43368 +msgid "Host Boot Troubleshooting" +msgstr "主端開機疑難排解" + +#. (itstool) path: sect3/para +#: book.translate.xml:43370 +msgid "" +"Please note that the following troubleshooting tips are intended for " +"<trademark>Xen</trademark> 4.11 or newer. If you are still using " +"<trademark>Xen</trademark> 4.7 and having issues consider migrating to a " +"newer version of <trademark>Xen</trademark>." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:43375 +msgid "" +"In order to troubleshoot host boot issues you will likely need a serial " +"cable, or a debug USB cable. Verbose <trademark>Xen</trademark> boot output " +"can be obtained by adding options to the <literal>xen_cmdline</literal> " +"option found in <filename>loader.conf</filename>. A couple of relevant debug " +"options are:" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:43384 +msgid "" +"<literal>iommu=debug</literal>: can be used to print additional diagnostic " +"information about the iommu." +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:43389 +msgid "" +"<literal>dom0=verbose</literal>: can be used to print additional diagnostic " +"information about the dom0 build process." +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:43394 +msgid "" +"<literal>sync_console</literal>: flag to force synchronous console output. " +"Useful for debugging to avoid losing messages due to rate limiting. Never " +"use this option in production environments since it can allow malicious " +"guests to perform DoS attacks against <trademark>Xen</trademark> using the " +"console." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:43403 +msgid "" +"FreeBSD should also be booted in verbose mode in order to identify any " +"issues. To activate verbose booting, run this command:" +msgstr "" + +#. (itstool) path: sect3/screen +#: book.translate.xml:43407 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf boot_verbose=\"YES\"</userinput>" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:43409 +msgid "" +"If none of these options help solving the problem, please send the serial " +"boot log to <email>freebsd-xen@FreeBSD.org</email> and <email>xen-" +"devel@lists.xenproject.org</email> for further analysis." +msgstr "" + +#. (itstool) path: sect3/title +#: book.translate.xml:43417 +msgid "Guest Creation Troubleshooting" +msgstr "客端建立疑難排解" + +#. (itstool) path: sect3/para +#: book.translate.xml:43419 +msgid "" +"Issues can also arise when creating guests, the following attempts to " +"provide some help for those trying to diagnose guest creation issues." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:43423 +msgid "" +"The most common cause of guest creation failures is the <literal>xl</" +"literal> command spitting some error and exiting with a return code " +"different than 0. If the error provided is not enough to help identify the " +"issue, more verbose output can also be obtained from <literal>xl</literal> " +"by using the <literal>v</literal> option repeatedly." +msgstr "" + +#. (itstool) path: sect3/screen +#: book.translate.xml:43431 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>xl -vvv create freebsd.cfg</userinput>\n" +"Parsing config from freebsd.cfg\n" +"libxl: debug: libxl_create.c:1693:do_domain_create: Domain 0:ao 0x800d750a0: create: how=0x0 callback=0x0 poller=0x800d6f0f0\n" +"libxl: debug: libxl_device.c:397:libxl__device_disk_set_backend: Disk vdev=xvda spec.backend=unknown\n" +"libxl: debug: libxl_device.c:432:libxl__device_disk_set_backend: Disk vdev=xvda, using backend phy\n" +"libxl: debug: libxl_create.c:1018:initiate_domain_create: Domain 1:running bootloader\n" +"libxl: debug: libxl_bootloader.c:328:libxl__bootloader_run: Domain 1:not a PV/PVH domain, skipping bootloader\n" +"libxl: debug: libxl_event.c:689:libxl__ev_xswatch_deregister: watch w=0x800d96b98: deregister unregistered\n" +"domainbuilder: detail: xc_dom_allocate: cmdline=\"\", features=\"\"\n" +"domainbuilder: detail: xc_dom_kernel_file: filename=\"/usr/local/lib/xen/boot/hvmloader\"\n" +"domainbuilder: detail: xc_dom_malloc_filemap : 326 kB\n" +"libxl: debug: libxl_dom.c:988:libxl__load_hvm_firmware_module: Loading BIOS: /usr/local/share/seabios/bios.bin\n" +"..." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:43445 +msgid "" +"If the verbose output does not help diagnose the issue there are also QEMU " +"and <trademark>Xen</trademark> toolstack logs in <filename>/var/log/xen</" +"filename>. Note that the name of the domain is appended to the log name, so " +"if the domain is named <literal>freebsd</literal> you should find a " +"<filename>/var/log/xen/xl-freebsd.log</filename> and likely a <filename>/var/" +"log/xen/qemu-dm-freebsd.log</filename>. Both log files can contain useful " +"information for debugging. If none of this helps solve the issue, please " +"send the description of the issue you are facing and as much information as " +"possible to <email>freebsd-xen@FreeBSD.org</email> and <email>xen-" +"devel@lists.xenproject.org</email> in order to get help." +msgstr "" + #. (itstool) path: info/title -#: book.translate.xml:43237 +#: book.translate.xml:43472 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:43242 +#: book.translate.xml:43477 msgid "" "<personname><firstname>Andrey</firstname><surname>Chernov</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:43246 +#: book.translate.xml:43481 msgid "" "<personname><firstname>Michael C.</firstname><surname>Wu</surname></" "personname><contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43256 +#: book.translate.xml:43491 msgid "" "FreeBSD is a distributed project with users and contributors located all " "over the world. As such, FreeBSD supports localization into many languages, " @@ -64315,17 +64695,17 @@ msgstr "" "含但不限於以下語言:中文、德文、日文、韓文、法文、俄文及越南文。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43264 +#: book.translate.xml:43499 msgid "<primary>internationalization</primary> <see>localization</see>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43268 +#: book.translate.xml:43503 msgid "<primary>localization</primary>" msgstr "<primary>在地化</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:43270 +#: book.translate.xml:43505 msgid "" "The term internationalization has been shortened to <acronym>i18n</acronym>, " "which represents the number of letters between the first and the last " @@ -64341,63 +64721,63 @@ msgstr "" "方法、協定及應用程式讓使用者可以自己選擇使用的語言。" #. (itstool) path: sect1/para -#: book.translate.xml:43280 +#: book.translate.xml:43515 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:43286 +#: book.translate.xml:43521 msgid "How locale names are constructed." msgstr "語系名稱如何組成。" #. (itstool) path: listitem/para -#: book.translate.xml:43290 +#: book.translate.xml:43525 msgid "How to set the locale for a login shell." msgstr "如何設定登入 Shell 的語系。" #. (itstool) path: listitem/para -#: book.translate.xml:43294 +#: book.translate.xml:43529 msgid "How to configure the console for non-English languages." msgstr "如何設定 Console 給非英文語言的使用者。" #. (itstool) path: listitem/para -#: book.translate.xml:43299 +#: book.translate.xml:43534 msgid "" "How to configure <application>Xorg</application> for different languages." msgstr "如果設定 <application>Xorg</application> 使用不同語言。" #. (itstool) path: listitem/para -#: book.translate.xml:43304 +#: book.translate.xml:43539 msgid "How to find <acronym>i18n</acronym>-compliant applications." msgstr "如何找到支援 <acronym>i18n</acronym> 的應用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:43309 +#: book.translate.xml:43544 msgid "Where to find more information for configuring specific languages." msgstr "那裡可以找到更多設定特定語言的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:43317 +#: book.translate.xml:43552 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:43324 +#: book.translate.xml:43559 msgid "Using Localization" msgstr "使用語系" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:43326 book.translate.xml:43443 +#: book.translate.xml:43561 book.translate.xml:43678 msgid "<primary>locale</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43328 +#: book.translate.xml:43563 msgid "" "Localization settings are based on three components: the language code, " "country code, and encoding. Locale names are constructed from these parts as " @@ -64407,23 +64787,23 @@ msgstr "" "下:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:43332 +#: book.translate.xml:43567 #, no-wrap msgid "<replaceable>LanguageCode</replaceable>_<replaceable>CountryCode</replaceable>.<replaceable>Encoding</replaceable>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43334 +#: book.translate.xml:43569 msgid "<primary>language codes</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43335 +#: book.translate.xml:43570 msgid "<primary>country codes</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43337 +#: book.translate.xml:43572 msgid "" "The <replaceable>LanguageCode</replaceable> and <replaceable>CountryCode</" "replaceable> are used to determine the country and the specific language " @@ -64437,79 +64817,79 @@ msgstr "" "replaceable> 的範例:" #. (itstool) path: table/title -#: book.translate.xml:43343 +#: book.translate.xml:43578 msgid "Common Language and Country Codes" msgstr "常用語言及城市代碼" #. (itstool) path: row/entry -#: book.translate.xml:43348 +#: book.translate.xml:43583 msgid "LanguageCode_Country Code" msgstr "語言代號_城市代號" #. (itstool) path: row/entry -#: book.translate.xml:43355 +#: book.translate.xml:43590 msgid "en_US" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43356 +#: book.translate.xml:43591 msgid "English, United States" msgstr "英文,美國" #. (itstool) path: row/entry -#: book.translate.xml:43360 +#: book.translate.xml:43595 msgid "ru_RU" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43361 +#: book.translate.xml:43596 msgid "Russian, Russia" msgstr "俄文,俄國" #. (itstool) path: row/entry -#: book.translate.xml:43365 +#: book.translate.xml:43600 msgid "zh_TW" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43366 +#: book.translate.xml:43601 msgid "Traditional Chinese, Taiwan" msgstr "繁體中文,台灣" #. (itstool) path: sect1/para -#: book.translate.xml:43372 +#: book.translate.xml:43607 msgid "A complete listing of available locales can be found by typing:" msgstr "完整可用的語系清單可用以下指令查詢:" #. (itstool) path: sect1/screen -#: book.translate.xml:43375 +#: book.translate.xml:43610 #, no-wrap msgid "<prompt>%</prompt> <userinput>locale -a | more</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43377 +#: book.translate.xml:43612 msgid "To determine the current locale setting:" msgstr "查詢目前使用的語系設定:" #. (itstool) path: sect1/screen -#: book.translate.xml:43379 +#: book.translate.xml:43614 #, no-wrap msgid "<prompt>%</prompt> <userinput>locale</userinput>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43381 +#: book.translate.xml:43616 msgid "<primary>encodings</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43382 +#: book.translate.xml:43617 msgid "<primary>ASCII</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43384 +#: book.translate.xml:43619 msgid "" "Language specific character sets, such as ISO8859-1, ISO8859-15, KOI8-R, and " "CP437, are described in <citerefentry><refentrytitle>multibyte</" @@ -64524,7 +64904,7 @@ msgstr "" "詢。" #. (itstool) path: sect1/para -#: book.translate.xml:43390 +#: book.translate.xml:43625 msgid "" "Some languages, such as Chinese or Japanese, cannot be represented using " "<acronym>ASCII</acronym> characters and require an extended language " @@ -64542,12 +64922,12 @@ msgstr "" "組字元支援或者使用正確的字元設定來編譯應用程式。" #. (itstool) path: note/para -#: book.translate.xml:43402 +#: book.translate.xml:43637 msgid "FreeBSD uses Xorg-compatible locale encodings." msgstr "FreeBSD 使用 Xorg 相容的語系編碼。" #. (itstool) path: sect1/para -#: book.translate.xml:43405 +#: book.translate.xml:43640 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 " @@ -64557,12 +64937,12 @@ msgstr "" "找以及編譯使用 <acronym>i18n</acronym> 支援的應用程式。" #. (itstool) path: sect2/title -#: book.translate.xml:43411 +#: book.translate.xml:43646 msgid "Setting Locale for Login Shell" msgstr "設定登入 Shell 的語系" #. (itstool) path: sect2/para -#: book.translate.xml:43413 +#: book.translate.xml:43648 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</" @@ -64573,22 +64953,22 @@ msgstr "" "<filename>~/.cshrc</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:43420 +#: book.translate.xml:43655 msgid "Two environment variables should be set:" msgstr "有兩個環境變數需要設定:" #. (itstool) path: listitem/para -#: book.translate.xml:43425 +#: book.translate.xml:43660 msgid "<envar>LANG</envar>, which sets the locale<_:indexterm-1/>" msgstr "<envar>LANG</envar> 用來設定語系<_:indexterm-1/>" #. (itstool) path: listitem/indexterm -#: book.translate.xml:43430 +#: book.translate.xml:43665 msgid "<primary>MIME</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43432 +#: book.translate.xml:43667 msgid "" "<envar>MM_CHARSET</envar>, which sets the <acronym>MIME</acronym> character " "set used by applications" @@ -64597,7 +64977,7 @@ msgstr "" "元集" #. (itstool) path: sect2/para -#: book.translate.xml:43438 +#: book.translate.xml:43673 msgid "" "In addition to the user's shell configuration, these variables should also " "be set for specific application configuration and <application>Xorg</" @@ -64608,12 +64988,12 @@ msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:43444 book.translate.xml:43537 +#: book.translate.xml:43679 book.translate.xml:43773 msgid "<primary>login class</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43446 +#: book.translate.xml:43681 msgid "" "Two methods are available for making the needed variable assignments: the " "<link linkend=\"login-class\">login class</link> method, which is the " @@ -64625,12 +65005,12 @@ msgstr "" "(Startup file) </link> 法。以下兩節將示範如何使用這兩個方法。" #. (itstool) path: sect3/title -#: book.translate.xml:43454 +#: book.translate.xml:43689 msgid "Login Classes Method" msgstr "登入類別 (Login Class) 法" #. (itstool) path: sect3/para -#: book.translate.xml:43456 +#: book.translate.xml:43691 msgid "" "This first method is the recommended method as it assigns the required " "environment variables for locale name and <acronym>MIME</acronym> character " @@ -64642,7 +65022,7 @@ msgstr "" "者設定。" #. (itstool) path: sect3/para -#: book.translate.xml:43463 +#: book.translate.xml:43698 msgid "" "This minimal example sets both variables for Latin-1 encoding in the " "<filename>.login_conf</filename> of an individual user's home directory:" @@ -64651,7 +65031,7 @@ msgstr "" "定 Latin-1 編碼使用的兩個環境變數:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43467 +#: book.translate.xml:43702 #, no-wrap msgid "" "me:\\\n" @@ -64660,13 +65040,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:43471 +#: book.translate.xml:43706 msgid "" "<primary>Traditional Chinese</primary> <secondary>BIG-5 encoding</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43474 +#: book.translate.xml:43709 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 " @@ -64678,7 +65058,7 @@ msgstr "" "因此需要額外多做一些設定:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43481 +#: book.translate.xml:43716 #, no-wrap msgid "" "#Users who do not wish to use monetary units or time formats\n" @@ -64691,7 +65071,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43489 +#: book.translate.xml:43724 msgid "" "Alternately, the superuser can configure all users of the system for " "localization. The following variables in <filename>/etc/login.conf</" @@ -64702,7 +65082,7 @@ msgstr "" "conf</filename> 中的變數可用來設定語系及 <acronym>MIME</acronym> 字元集:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43494 +#: book.translate.xml:43729 #, no-wrap msgid "" "<replaceable>language_name</replaceable>|<replaceable>Account Type Description</replaceable>:\\\n" @@ -64712,12 +65092,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43499 +#: book.translate.xml:43734 msgid "So, the previous Latin-1 example would look like this:" msgstr "若套用之前的 Latin-1 編碼範例如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43502 +#: book.translate.xml:43737 #, no-wrap msgid "" "german|German Users Accounts:\\\n" @@ -64727,16 +65107,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43507 +#: book.translate.xml:43742 msgid "" "See <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> for more details about these variables." +"manvolnum></citerefentry> for more details about these variables. Note that " +"it already contains pre-defined <replaceable>russian</replaceable> class." msgstr "" "請參考 <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> 以取得更多有關這些變數的詳細資訊。" +"manvolnum></citerefentry> 以取得更多有關這些變數的詳細資訊。請注意,它已經含" +"有預先定義的 <replaceable>russian</replaceable> class。" #. (itstool) path: sect3/para -#: book.translate.xml:43510 +#: book.translate.xml:43746 msgid "" "Whenever <filename>/etc/login.conf</filename> is edited, remember to execute " "the following command to update the capability database:" @@ -64745,17 +65127,17 @@ msgstr "" "新登入類別的能力資料庫(Capability database):" #. (itstool) path: sect4/title -#: book.translate.xml:43517 +#: book.translate.xml:43753 msgid "Utilities Which Change Login Classes" msgstr "變更登入類別的工具" #. (itstool) path: sect4/indexterm -#: book.translate.xml:43519 +#: book.translate.xml:43755 msgid "<primary><command>vipw</command></primary>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43523 +#: book.translate.xml:43759 msgid "" "In addition to manually editing <filename>/etc/login.conf</filename>, " "several utilities are available for setting the locale for newly created " @@ -64765,7 +65147,7 @@ msgstr "" "新建立的使用者設定語系。" #. (itstool) path: sect4/para -#: book.translate.xml:43528 +#: book.translate.xml:43764 msgid "" "When using <command>vipw</command> to add new users, specify the " "<replaceable>language</replaceable> to set the locale:" @@ -64774,13 +65156,13 @@ msgstr "" "replaceable> 來設定語系:" #. (itstool) path: sect4/programlisting -#: book.translate.xml:43532 +#: book.translate.xml:43768 #, 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:43539 +#: book.translate.xml:43775 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." @@ -64789,7 +65171,7 @@ msgstr "" "者事先設定預設的語言。" #. (itstool) path: sect4/para -#: book.translate.xml:43543 +#: book.translate.xml:43779 msgid "" "If all new users use the same language, set " "<literal>defaultclass=<replaceable>language</replaceable></literal> in " @@ -64800,49 +65182,63 @@ msgstr "" "literal>。" #. (itstool) path: sect4/para -#: book.translate.xml:43547 +#: book.translate.xml:43783 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:43550 +#: book.translate.xml:43786 #, no-wrap msgid "<prompt>Enter login class: default []:</prompt>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43552 +#: book.translate.xml:43788 msgid "or specify the locale to set when invoking <command>adduser</command>:" msgstr "或執行 <command>adduser</command> 時指定語系:" #. (itstool) path: sect4/screen -#: book.translate.xml:43555 +#: book.translate.xml:43791 #, no-wrap msgid "<prompt>#</prompt> <userinput>adduser -class <replaceable>language</replaceable></userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43561 +#: book.translate.xml:43797 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:43564 +#: book.translate.xml:43800 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw useradd <replaceable>user_name</replaceable> -L <replaceable>language</replaceable></userinput>" msgstr "" +#. (itstool) path: sect4/para +#: book.translate.xml:43802 +msgid "" +"To change the login class of an existing user, <command>chpass</command> can " +"be used. Invoke it as superuser and provide the username to edit as the " +"argument." +msgstr "" + +#. (itstool) path: sect4/screen +#: book.translate.xml:43807 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>chpass <replaceable>user_name</replaceable></userinput>" +msgstr "" + #. (itstool) path: sect3/title -#: book.translate.xml:43569 +#: book.translate.xml:43812 msgid "Shell Startup File Method" msgstr "Shell 啟動檔 (Startup File) 法" #. (itstool) path: sect3/para -#: book.translate.xml:43571 +#: book.translate.xml:43814 msgid "" "This second method is not recommended as each shell that is used requires " "manual configuration, where each shell has a different configuration file " @@ -64859,7 +65255,7 @@ msgstr "" "filename> 或 <filename>/usr/share/skel/dot.profile</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43582 +#: book.translate.xml:43825 #, no-wrap msgid "" "<envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar>\n" @@ -64867,7 +65263,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43585 +#: book.translate.xml:43828 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 " @@ -64879,7 +65275,7 @@ msgstr "" "login</filename> 或 <filename>/usr/share/skel/dot.login</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43592 +#: book.translate.xml:43835 #, no-wrap msgid "" "setenv <envar>LANG</envar> de_DE.ISO8859-1\n" @@ -64887,7 +65283,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43595 +#: book.translate.xml:43838 msgid "" "To complicate matters, the syntax needed to configure <application>Xorg</" "application> in <filename>~/.xinitrc</filename> also depends upon the shell. " @@ -64899,24 +65295,24 @@ msgstr "" "command> shell 而第二個則是針對 <command>csh</command> shell:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43602 +#: book.translate.xml:43845 #, no-wrap msgid "<envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43604 +#: book.translate.xml:43847 #, no-wrap msgid "setenv <envar>LANG</envar> de_DE.ISO8859-1" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43609 +#: book.translate.xml:43852 msgid "Console Setup" msgstr "Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:43611 +#: book.translate.xml:43854 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 " @@ -64930,7 +65326,7 @@ msgstr "" "型名稱 <replaceable>font_name</replaceable>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43619 +#: book.translate.xml:43862 #, no-wrap msgid "" "font8x16=<replaceable>font_name</replaceable>\n" @@ -64939,17 +65335,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43623 +#: book.translate.xml:43866 msgid "<primary>keymap</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43624 +#: book.translate.xml:43867 msgid "<primary>screenmap</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43625 +#: book.translate.xml:43868 msgid "" "The keymap and screenmap can be set by adding the following to <filename>/" "etc/rc.conf</filename>:" @@ -64958,7 +65354,7 @@ msgstr "" "rc.conf</filename> 來設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43628 +#: book.translate.xml:43871 #, no-wrap msgid "" "scrnmap=<replaceable>screenmap_name</replaceable>\n" @@ -64967,7 +65363,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43632 +#: book.translate.xml:43875 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 " @@ -64983,7 +65379,7 @@ msgstr "" "8 的欄位,字母會移出虛擬繪圖區 (Pseudographics area)。" #. (itstool) path: sect2/para -#: book.translate.xml:43641 +#: book.translate.xml:43884 msgid "" "To see the list of available keymaps, type <command>ls /usr/share/syscons/" "keymaps</command>. When specifying the <replaceable>keymap_name</" @@ -64998,7 +65394,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:43648 +#: book.translate.xml:43891 msgid "" "The <literal>keychange</literal> entry is usually needed to program function " "keys to match the selected terminal type because function key sequences " @@ -65008,7 +65404,7 @@ msgstr "" "定對應選擇終對機類型的功能鍵。" #. (itstool) path: sect2/para -#: book.translate.xml:43653 +#: book.translate.xml:43896 msgid "" "Next, set the correct console terminal type in <filename>/etc/ttys</" "filename> for all virtual terminal entries. <xref linkend=\"locale-charset\"/" @@ -65019,97 +65415,97 @@ msgstr "" "型:" #. (itstool) path: table/title -#: book.translate.xml:43659 +#: book.translate.xml:43902 msgid "Defined Terminal Types for Character Sets" msgstr "已定義供特定字元集使用的終端機類型" #. (itstool) path: row/entry -#: book.translate.xml:43664 +#: book.translate.xml:43907 msgid "Character Set" msgstr "字元集" #. (itstool) path: row/entry -#: book.translate.xml:43665 +#: book.translate.xml:43908 msgid "Terminal Type" msgstr "終端機類型" #. (itstool) path: row/entry -#: book.translate.xml:43671 +#: book.translate.xml:43914 msgid "ISO8859-1 or ISO8859-15" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43672 +#: book.translate.xml:43915 msgid "<literal>cons25l1</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43676 +#: book.translate.xml:43919 msgid "ISO8859-2" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43677 +#: book.translate.xml:43920 msgid "<literal>cons25l2</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43681 +#: book.translate.xml:43924 msgid "ISO8859-7" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43682 +#: book.translate.xml:43925 msgid "<literal>cons25l7</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43686 +#: book.translate.xml:43929 msgid "KOI8-R" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43687 +#: book.translate.xml:43930 msgid "<literal>cons25r</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43691 +#: book.translate.xml:43934 msgid "KOI8-U" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43692 +#: book.translate.xml:43935 msgid "<literal>cons25u</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43696 +#: book.translate.xml:43939 msgid "CP437 (VGA default)" msgstr "CP437 (VGA 預設值)" #. (itstool) path: row/entry -#: book.translate.xml:43697 +#: book.translate.xml:43940 msgid "<literal>cons25</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43701 +#: book.translate.xml:43944 msgid "US-ASCII" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43702 +#: book.translate.xml:43945 msgid "<literal>cons25w</literal>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43708 +#: book.translate.xml:43951 msgid "<primary><application>moused</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43712 +#: book.translate.xml:43955 msgid "" "For languages with wide or multibyte characters, install a console for that " "language from the FreeBSD Ports Collection. The available ports are " @@ -65123,73 +65519,73 @@ msgstr "" "用說明。" #. (itstool) path: table/title -#: book.translate.xml:43719 +#: book.translate.xml:43962 msgid "Available Console from Ports Collection" msgstr "Port 套件集中可用的 Console" #. (itstool) path: row/entry -#: book.translate.xml:43724 book.translate.xml:43803 +#: book.translate.xml:43967 book.translate.xml:44046 msgid "Language" msgstr "語言" #. (itstool) path: row/entry -#: book.translate.xml:43725 +#: book.translate.xml:43968 msgid "Port Location" msgstr "Port 位置" #. (itstool) path: row/entry -#: book.translate.xml:43731 +#: book.translate.xml:43974 msgid "Traditional Chinese (BIG-5)" msgstr "繁體中文 (BIG-5)" #. (itstool) path: row/entry -#: book.translate.xml:43732 +#: book.translate.xml:43975 msgid "<package>chinese/big5con</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43736 book.translate.xml:43741 +#: book.translate.xml:43979 book.translate.xml:43984 msgid "Chinese/Japanese/Korean" msgstr "中文/日文/韓文" #. (itstool) path: row/entry -#: book.translate.xml:43737 +#: book.translate.xml:43980 msgid "<package>chinese/cce</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43742 +#: book.translate.xml:43985 msgid "<package>chinese/zhcon</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43746 book.translate.xml:43751 book.translate.xml:43756 -#: book.translate.xml:43846 book.translate.xml:43851 book.translate.xml:43856 -#: book.translate.xml:43861 book.translate.xml:43866 book.translate.xml:43871 -#: book.translate.xml:43876 book.translate.xml:43881 book.translate.xml:43886 -#: book.translate.xml:43891 book.translate.xml:43896 book.translate.xml:43901 -#: book.translate.xml:43906 book.translate.xml:43911 book.translate.xml:43916 -#: book.translate.xml:43921 book.translate.xml:43926 book.translate.xml:43931 +#: book.translate.xml:43989 book.translate.xml:43994 book.translate.xml:43999 +#: book.translate.xml:44089 book.translate.xml:44094 book.translate.xml:44099 +#: book.translate.xml:44104 book.translate.xml:44109 book.translate.xml:44114 +#: book.translate.xml:44119 book.translate.xml:44124 book.translate.xml:44129 +#: book.translate.xml:44134 book.translate.xml:44139 book.translate.xml:44144 +#: book.translate.xml:44149 book.translate.xml:44154 book.translate.xml:44159 +#: book.translate.xml:44164 book.translate.xml:44169 book.translate.xml:44174 msgid "Japanese" msgstr "日文" #. (itstool) path: row/entry -#: book.translate.xml:43747 +#: book.translate.xml:43990 msgid "<package>chinese/kon2</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43752 +#: book.translate.xml:43995 msgid "<package>japanese/kon2-14dot</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43757 +#: book.translate.xml:44000 msgid "<package>japanese/kon2-16dot</package>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43763 +#: book.translate.xml:44006 msgid "" "If <application>moused</application> is enabled in <filename>/etc/rc.conf</" "filename>, additional configuration may be required. By default, the mouse " @@ -65207,18 +65603,18 @@ msgstr "" "到 <filename>/etc/rc.conf</filename> 來移動游標的範圍:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43772 +#: book.translate.xml:44015 #, no-wrap msgid "mousechar_start=3" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43776 +#: book.translate.xml:44019 msgid "Xorg Setup" msgstr "Xorg 設定" #. (itstool) path: sect2/para -#: book.translate.xml:43778 +#: book.translate.xml:44021 msgid "" "<xref linkend=\"x11\"/> describes how to install and configure " "<application>Xorg</application>. When configuring <application>Xorg</" @@ -65235,12 +65631,12 @@ msgstr "" "filename> 中調校且可允許使用者在圖型化應用程式選單檢視其所選擇的語言。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43788 +#: book.translate.xml:44031 msgid "<primary>X Input Method (XIM)</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43790 +#: book.translate.xml:44033 msgid "" "The X Input Method (<acronym>XIM</acronym>) protocol is an " "<application>Xorg</application> standard for inputting non-English " @@ -65254,200 +65650,200 @@ msgstr "" "式。" #. (itstool) path: table/title -#: book.translate.xml:43798 +#: book.translate.xml:44041 msgid "Available Input Methods" msgstr "可用的輸入法" #. (itstool) path: row/entry -#: book.translate.xml:43804 +#: book.translate.xml:44047 msgid "Input Method" msgstr "輸入法" #. (itstool) path: row/entry -#: book.translate.xml:43811 book.translate.xml:43816 book.translate.xml:43821 -#: book.translate.xml:43826 book.translate.xml:43831 book.translate.xml:43836 -#: book.translate.xml:43841 +#: book.translate.xml:44054 book.translate.xml:44059 book.translate.xml:44064 +#: book.translate.xml:44069 book.translate.xml:44074 book.translate.xml:44079 +#: book.translate.xml:44084 msgid "Chinese" msgstr "中文" #. (itstool) path: row/entry -#: book.translate.xml:43812 +#: book.translate.xml:44055 msgid "<package>chinese/gcin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43817 +#: book.translate.xml:44060 msgid "<package>chinese/ibus-chewing</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43822 +#: book.translate.xml:44065 msgid "<package>chinese/ibus-pinyin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43827 +#: book.translate.xml:44070 msgid "<package>chinese/oxim</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43832 +#: book.translate.xml:44075 msgid "<package>chinese/scim-fcitx</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43837 +#: book.translate.xml:44080 msgid "<package>chinese/scim-pinyin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43842 +#: book.translate.xml:44085 msgid "<package>chinese/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43847 +#: book.translate.xml:44090 msgid "<package>japanese/ibus-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43852 +#: book.translate.xml:44095 msgid "<package>japanese/ibus-mozc</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43857 +#: book.translate.xml:44100 msgid "<package>japanese/ibus-skk</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43862 +#: book.translate.xml:44105 msgid "<package>japanese/im-ja</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43867 +#: book.translate.xml:44110 msgid "<package>japanese/kinput2</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43872 +#: book.translate.xml:44115 msgid "<package>japanese/scim-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43877 +#: book.translate.xml:44120 msgid "<package>japanese/scim-canna</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43882 +#: book.translate.xml:44125 msgid "<package>japanese/scim-honoka</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43887 +#: book.translate.xml:44130 msgid "<package>japanese/scim-honoka-plugin-romkan</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43892 +#: book.translate.xml:44135 msgid "<package>japanese/scim-honoka-plugin-wnn</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43897 +#: book.translate.xml:44140 msgid "<package>japanese/scim-prime</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43902 +#: book.translate.xml:44145 msgid "<package>japanese/scim-skk</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43907 +#: book.translate.xml:44150 msgid "<package>japanese/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43912 +#: book.translate.xml:44155 msgid "<package>japanese/scim-tomoe</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43917 +#: book.translate.xml:44160 msgid "<package>japanese/scim-uim</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43922 +#: book.translate.xml:44165 msgid "<package>japanese/skkinput</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43927 +#: book.translate.xml:44170 msgid "<package>japanese/skkinput3</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43932 +#: book.translate.xml:44175 msgid "<package>japanese/uim-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43936 book.translate.xml:43941 book.translate.xml:43946 -#: book.translate.xml:43951 book.translate.xml:43956 +#: book.translate.xml:44179 book.translate.xml:44184 book.translate.xml:44189 +#: book.translate.xml:44194 book.translate.xml:44199 msgid "Korean" msgstr "韓文" #. (itstool) path: row/entry -#: book.translate.xml:43937 +#: book.translate.xml:44180 msgid "<package>korean/ibus-hangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43942 +#: book.translate.xml:44185 msgid "<package>korean/imhangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43947 +#: book.translate.xml:44190 msgid "<package>korean/nabi</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43952 +#: book.translate.xml:44195 msgid "<package>korean/scim-hangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43957 +#: book.translate.xml:44200 msgid "<package>korean/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43961 book.translate.xml:43966 +#: book.translate.xml:44204 book.translate.xml:44209 msgid "Vietnamese" msgstr "越南文" #. (itstool) path: row/entry -#: book.translate.xml:43962 +#: book.translate.xml:44205 msgid "<package>vietnamese/xvnkb</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43967 +#: book.translate.xml:44210 msgid "<package>vietnamese/x-unikey</package>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:44011 +#: book.translate.xml:44254 msgid "Finding <acronym>i18n</acronym> Applications" msgstr "尋找 <acronym>i18n</acronym> 應用程式" #. (itstool) path: sect1/para -#: book.translate.xml:44013 +#: book.translate.xml:44256 msgid "" "<acronym>i18n</acronym> applications are programmed using <acronym>i18n</" "acronym> kits under libraries. These allow developers to write a simple file " @@ -65457,7 +65853,7 @@ msgstr "" "庫開發。這讓開發人員可以寫一個簡單的檔案並翻譯顯示的選單及文字至各種語言。" #. (itstool) path: sect1/para -#: book.translate.xml:44018 +#: book.translate.xml:44261 msgid "" "The <link xlink:href=\"@@URL_RELPREFIX@@/ports/index.html\">FreeBSD Ports " "Collection</link> contains many applications with built-in support for wide " @@ -65471,7 +65867,7 @@ msgstr "" "支援您所需要的語言。" #. (itstool) path: sect1/para -#: book.translate.xml:44025 +#: book.translate.xml:44268 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 " @@ -65488,12 +65884,12 @@ msgstr "" "解在編譯時有那些可以使用的編譯選項。" #. (itstool) path: sect1/title -#: book.translate.xml:44037 +#: book.translate.xml:44280 msgid "Locale Configuration for Specific Languages" msgstr "特定語言的語系設定" #. (itstool) path: sect1/para -#: book.translate.xml:44039 +#: book.translate.xml:44282 msgid "" "This section provides configuration examples for localizing a FreeBSD system " "for the Russian language. It then provides some additional resources for " @@ -65501,24 +65897,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:44045 +#: book.translate.xml:44288 msgid "Russian Language (KOI8-R Encoding)" msgstr "俄語 (KOI8-R 編碼)" #. (itstool) path: authorgroup/author -#: book.translate.xml:44048 +#: book.translate.xml:44291 msgid "" "<personname><firstname>Andrey</firstname><surname>Chernov</surname></" "personname><contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44053 +#: book.translate.xml:44296 msgid "<primary>localization</primary> <secondary>Russian</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44058 +#: book.translate.xml:44301 msgid "" "This section shows the specific settings needed to localize a FreeBSD system " "for the Russian language. Refer to <link linkend=\"using-localization" @@ -65527,14 +65923,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44064 +#: book.translate.xml:44307 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:44068 +#: book.translate.xml:44311 #, no-wrap msgid "" "me:My Account:\\\n" @@ -65543,14 +65939,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44072 +#: book.translate.xml:44315 msgid "" "To configure the console, add the following lines to <filename>/etc/rc.conf</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44075 +#: book.translate.xml:44318 #, no-wrap msgid "" "keymap=\"ru.koi8-r\"\n" @@ -65562,19 +65958,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44082 +#: book.translate.xml:44325 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:44086 +#: book.translate.xml:44329 msgid "<primary>printers</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44087 +#: book.translate.xml:44330 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 " @@ -65584,7 +65980,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44095 +#: book.translate.xml:44338 #, no-wrap msgid "" "lp|Russian local line printer:\\\n" @@ -65593,14 +65989,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44099 +#: book.translate.xml:44342 msgid "" "Refer to <citerefentry><refentrytitle>printcap</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for a more detailed explanation." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44102 +#: book.translate.xml:44345 msgid "" "To configure support for Russian filenames in mounted <trademark class=" "\"registered\">MS-DOS</trademark> file systems, include <option>-L</option> " @@ -65608,20 +66004,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44107 +#: book.translate.xml:44350 #, no-wrap msgid "/dev/ad0s2 /dos/c msdos rw,-Lru_RU.KOI8-R 0 0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44109 +#: book.translate.xml:44352 msgid "" "Refer to <citerefentry><refentrytitle>mount_msdosfs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> for more details." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44111 +#: book.translate.xml:44354 msgid "" "To configure Russian fonts for <application>Xorg</application>, install the " "<package>x11-fonts/xorg-fonts-cyrillic</package> package. Then, check the " @@ -65631,25 +66027,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44119 +#: book.translate.xml:44362 #, no-wrap msgid "FontPath \"/usr/local/lib/X11/fonts/cyrillic\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44121 +#: book.translate.xml:44364 msgid "Additional Cyrillic fonts are available in the Ports Collection." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44124 +#: book.translate.xml:44367 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:44128 +#: book.translate.xml:44371 #, no-wrap msgid "" "Option \"XkbLayout\" \"us,ru\"\n" @@ -65657,13 +66053,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44131 +#: book.translate.xml:44374 msgid "" "Make sure that <literal>XkbDisable</literal> is commented out in that file." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44134 +#: book.translate.xml:44377 msgid "" "For <literal>grp:toggle</literal> use <keycap>Right Alt</keycap>, for " "<literal>grp:ctrl_shift_toggle</literal> use <keycombo action=\"simul" @@ -65676,7 +66072,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44145 +#: book.translate.xml:44388 msgid "" "If the keyboard has <quote><trademark class=\"registered\">Windows</" "trademark></quote> keys, and some non-alphabetical keys are mapped " @@ -65684,13 +66080,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44149 +#: book.translate.xml:44392 #, no-wrap msgid "Option \"XkbVariant\" \",winkeys\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:44152 +#: book.translate.xml:44395 msgid "" "The Russian XKB keyboard may not work with non-localized applications. " "Minimally localized applications should call a <function>XtSetLanguageProc " @@ -65698,7 +66094,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44159 +#: book.translate.xml:44402 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</" @@ -65708,49 +66104,49 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:44166 +#: book.translate.xml:44409 msgid "Additional Language-Specific Resources" msgstr "其他特定語言資源" #. (itstool) path: sect2/para -#: book.translate.xml:44168 +#: book.translate.xml:44411 msgid "" "This section lists some additional resources for configuring other locales." msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44171 +#: book.translate.xml:44414 msgid "" "<primary>localization</primary> <secondary>Traditional Chinese</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44175 +#: book.translate.xml:44418 msgid "<primary>localization</primary> <secondary>German</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44179 +#: book.translate.xml:44422 msgid "<primary>localization</primary> <secondary>Greek</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44183 +#: book.translate.xml:44426 msgid "<primary>localization</primary> <secondary>Japanese</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44187 +#: book.translate.xml:44430 msgid "<primary>localization</primary> <secondary>Korean</secondary>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:44194 +#: book.translate.xml:44437 msgid "Traditional Chinese for Taiwan" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44197 +#: book.translate.xml:44440 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." @@ -65758,12 +66154,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:44203 +#: book.translate.xml:44446 msgid "Greek Language Localization" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44206 +#: book.translate.xml:44449 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/" @@ -65772,12 +66168,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:44214 +#: book.translate.xml:44457 msgid "Japanese and Korean Language Localization" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44217 +#: book.translate.xml:44460 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://" @@ -65785,12 +66181,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:44223 +#: book.translate.xml:44466 msgid "Non-English FreeBSD Documentation" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44226 +#: book.translate.xml:44469 msgid "" "Some FreeBSD contributors have translated parts of the FreeBSD documentation " "to other languages. They are available through links on the <link xlink:href=" @@ -65799,12 +66195,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:44247 +#: book.translate.xml:44490 msgid "Updating and Upgrading FreeBSD" msgstr "更新與升級 FreeBSD" #. (itstool) path: authorgroup/author -#: book.translate.xml:44250 +#: book.translate.xml:44493 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured, reorganized, and parts updated by </" @@ -65812,35 +66208,35 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44262 +#: book.translate.xml:44505 msgid "" "<personname> <firstname>Jordan</firstname> <surname>Hubbard</surname> </" "personname> <contrib>Original work by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44270 +#: book.translate.xml:44513 msgid "" "<personname> <firstname>Poul-Henning</firstname> <surname>Kamp</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44277 +#: book.translate.xml:44520 msgid "" "<personname> <firstname>John</firstname> <surname>Polstra</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44284 +#: book.translate.xml:44527 msgid "" "<personname> <firstname>Nik</firstname> <surname>Clayton</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44296 +#: book.translate.xml:44539 msgid "" "FreeBSD is under constant development between releases. Some people prefer " "to use the officially released versions, while others prefer to keep in sync " @@ -65858,7 +66254,7 @@ msgstr "" "FreeBSD 系統維持最新版本的基本工具。" #. (itstool) path: listitem/para -#: book.translate.xml:44310 +#: book.translate.xml:44553 msgid "" "How to keep a FreeBSD system up-to-date with <application>freebsd-update</" "application> or <application>Subversion</application>." @@ -65867,14 +66263,14 @@ msgstr "" "application> 來維持 FreeBSD 系統為最新版。" #. (itstool) path: listitem/para -#: book.translate.xml:44316 +#: book.translate.xml:44559 msgid "" "How to compare the state of an installed system against a known pristine " "copy." msgstr "如何比對已安裝系統與已知原始複本間的狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:44321 +#: book.translate.xml:44564 msgid "" "How to keep the installed documentation up-to-date with " "<application>Subversion</application> or documentation ports." @@ -65883,48 +66279,48 @@ msgstr "" "文件為新版。" #. (itstool) path: listitem/para -#: book.translate.xml:44327 +#: book.translate.xml:44570 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:44332 +#: book.translate.xml:44575 msgid "How to rebuild and reinstall the entire base system." msgstr "如何重新編譯及重新安裝整個基礎系統 (Base system)。" #. (itstool) path: listitem/para -#: book.translate.xml:44341 +#: book.translate.xml:44584 msgid "" "Properly set up the network connection (<xref linkend=\"advanced-networking" "\"/>)." msgstr "正確的設定網路連線 (<xref linkend=\"advanced-networking\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:44346 book.translate.xml:50651 book.translate.xml:60727 +#: book.translate.xml:44589 book.translate.xml:50891 book.translate.xml:61761 msgid "" "Know how to install additional third-party software (<xref linkend=\"ports\"/" ">)." msgstr "了解如何安裝其他第三方軟體 (<xref linkend=\"ports\"/>)。" #. (itstool) path: note/para -#: book.translate.xml:44352 +#: book.translate.xml:44595 msgid "" -"Throughout this chapter, <command>svn</command> is used to obtain and update " -"FreeBSD sources. To use it, first install the <package>devel/subversion</" -"package> port or package." +"Throughout this chapter, <command>svnlite</command> is used to obtain and " +"update FreeBSD sources. Optionally, the <package>devel/subversion</package> " +"port or package may be used." msgstr "" -"本章會經常使用 <command>svn</command> 來取得與更新 FreeBSD 原始碼。要使用該指" -"令請先安裝 <package>devel/subversion</package> Port 或套件。" +"本章會經常使用 <command>svnlite</command> 來取得與更新 FreeBSD 原始碼。您也可" +"以使用 <package>devel/subversion</package> Port 或套件。" #. (itstool) path: info/title -#: book.translate.xml:44361 +#: book.translate.xml:44604 msgid "FreeBSD Update" msgstr "FreeBSD 更新" #. (itstool) path: authorgroup/author -#: book.translate.xml:44374 +#: book.translate.xml:44617 msgid "" "<personname> <firstname>Colin</firstname> <surname>Percival</surname> </" "personname> <contrib>Based on notes provided by </contrib>" @@ -65932,17 +66328,17 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:44384 book.translate.xml:44891 book.translate.xml:45027 +#: book.translate.xml:44627 book.translate.xml:45132 book.translate.xml:45267 msgid "<primary>Updating and Upgrading</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44387 +#: book.translate.xml:44630 msgid "<primary>freebsd-update</primary> <see>updating-upgrading</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44392 +#: book.translate.xml:44635 msgid "" "Applying security patches in a timely manner and upgrading to a newer " "release of an operating system are important aspects of ongoing system " @@ -65954,7 +66350,7 @@ msgstr "" "<command>freebsd-update</command>。" #. (itstool) path: sect1/para -#: book.translate.xml:44398 +#: book.translate.xml:44641 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 " @@ -65969,7 +66365,7 @@ msgstr "" "www.FreeBSD.org/security/\">https://www.FreeBSD.org/security/</uri>。" #. (itstool) path: sect1/para -#: book.translate.xml:44405 +#: book.translate.xml:44648 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 " @@ -65984,7 +66380,7 @@ msgstr "" "releases/\">https://www.FreeBSD.org/releases/</uri> 取得。" #. (itstool) path: note/para -#: book.translate.xml:44412 +#: book.translate.xml:44655 msgid "" "If a <command>crontab</command> utilizing the features of " "<citerefentry><refentrytitle>freebsd-update</refentrytitle><manvolnum>8</" @@ -65996,7 +66392,7 @@ msgstr "" "manvolnum></citerefentry>,則必須在升級作業系統前先關閉。" #. (itstool) path: sect1/para -#: book.translate.xml:44417 +#: book.translate.xml:44660 msgid "" "This section describes the configuration file used by <command>freebsd-" "update</command>, demonstrates how to apply a security patch and how to " @@ -66008,7 +66404,7 @@ msgstr "" "事項。" #. (itstool) path: sect2/para -#: book.translate.xml:44426 +#: book.translate.xml:44669 msgid "" "The default configuration file for <command>freebsd-update</command> works " "as-is. Some users may wish to tweak the default configuration in <filename>/" @@ -66022,7 +66418,7 @@ msgstr "" "要進一步的說明:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44434 +#: book.translate.xml:44677 #, no-wrap msgid "" "# Components of the base system which should be kept updated.\n" @@ -66030,7 +66426,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44437 +#: book.translate.xml:44680 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 " @@ -66047,7 +66443,7 @@ msgstr "" "新而造成慘重的後果。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44447 +#: book.translate.xml:44690 #, no-wrap msgid "" "# Paths which start with anything matching an entry in an IgnorePaths\n" @@ -66056,7 +66452,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44451 +#: book.translate.xml:44694 msgid "" "To leave specified directories, such as <filename>/bin</filename> or " "<filename>/sbin</filename>, untouched during the update process, add their " @@ -66068,7 +66464,7 @@ msgstr "" "<command>freebsd-update</command> 覆蓋本地的修改。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44458 +#: book.translate.xml:44701 #, no-wrap msgid "" "# Paths which start with anything matching an entry in an UpdateIfUnmodified\n" @@ -66078,7 +66474,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44463 +#: book.translate.xml:44706 msgid "" "This option will only update unmodified configuration files in the specified " "directories. Any changes made by the user will prevent the automatic " @@ -66091,7 +66487,7 @@ msgstr "" "<command>freebsd-update</command> 在合併時儲存使用者做的變更。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44471 +#: book.translate.xml:44714 #, no-wrap msgid "" "# When upgrading to a new FreeBSD release, files which match MergeChanges\n" @@ -66100,7 +66496,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44475 +#: book.translate.xml:44718 msgid "" "List of directories with configuration files that <command>freebsd-update</" "command> should attempt to merge. The file merge process is a series of " @@ -66125,7 +66521,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44485 +#: book.translate.xml:44728 #, no-wrap msgid "" "# Directory in which to store downloaded updates and temporary\n" @@ -66134,7 +66530,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44489 +#: book.translate.xml:44732 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 " @@ -66144,7 +66540,7 @@ msgstr "" "有至少 1GB 的可用磁碟空間。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44494 +#: book.translate.xml:44737 #, no-wrap msgid "" "# When upgrading between releases, should the list of Components be\n" @@ -66155,7 +66551,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44500 +#: book.translate.xml:44743 msgid "" "When this option is set to <literal>yes</literal>, <command>freebsd-update</" "command> will assume that the <literal>Components</literal> list is complete " @@ -66169,12 +66565,12 @@ msgstr "" "於 <literal>Components</literal> 清單中的檔案。" #. (itstool) path: sect2/title -#: book.translate.xml:44510 +#: book.translate.xml:44753 msgid "Applying Security Patches" msgstr "套用安全性修補" #. (itstool) path: sect2/para -#: book.translate.xml:44512 +#: book.translate.xml:44755 msgid "" "The process of applying FreeBSD security patches has been simplified, " "allowing an administrator to keep a system fully patched using " @@ -66186,7 +66582,7 @@ msgstr "" "<xref linkend=\"security-advisories\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:44518 +#: book.translate.xml:44761 msgid "" "FreeBSD security patches may be downloaded and installed using the following " "commands. The first command will determine if any outstanding patches are " @@ -66197,7 +66593,7 @@ msgstr "" "補,如果有,將列出若執行修補後會變更的檔案清單。第二個指令將會套用修補。" #. (itstool) path: sect2/screen -#: book.translate.xml:44524 +#: book.translate.xml:44767 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update fetch</userinput>\n" @@ -66205,7 +66601,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44527 +#: book.translate.xml:44770 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 " @@ -66217,7 +66613,7 @@ msgstr "" "本。" #. (itstool) path: sect2/para -#: book.translate.xml:44533 +#: book.translate.xml:44776 msgid "" "The system can be configured to automatically check for updates once every " "day by adding this entry to <filename>/etc/crontab</filename>:" @@ -66226,13 +66622,13 @@ msgstr "" "次:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44537 +#: book.translate.xml:44780 #, no-wrap msgid "@daily root freebsd-update cron" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44539 +#: book.translate.xml:44782 msgid "" "If patches exist, they will automatically be downloaded but will not be " "applied. The <systemitem class=\"username\">root</systemitem> user will be " @@ -66244,7 +66640,7 @@ msgstr "" "<command>freebsd-update install</command> 安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:44545 +#: book.translate.xml:44788 msgid "" "If anything goes wrong, <command>freebsd-update</command> has the ability to " "roll back the last set of changes with the following command:" @@ -66253,7 +66649,7 @@ msgstr "" "後所做的變更:" #. (itstool) path: sect2/screen -#: book.translate.xml:44549 +#: book.translate.xml:44792 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update rollback</userinput>\n" @@ -66261,7 +66657,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44552 +#: book.translate.xml:44795 msgid "" "Again, the system should be restarted if the kernel or any kernel modules " "were modified and any affected binaries should be restarted." @@ -66270,24 +66666,24 @@ msgstr "" "Binary 應重新執行。" #. (itstool) path: sect2/para -#: book.translate.xml:44556 +#: book.translate.xml:44799 msgid "" "Only the <filename>GENERIC</filename> kernel can be automatically updated by " "<command>freebsd-update</command>. If a custom kernel is installed, it will " "have to be rebuilt and reinstalled after <command>freebsd-update</command> " -"finishes installing the updates. However, <command>freebsd-update</command> " -"will detect and update the <filename>GENERIC</filename> kernel if <filename>/" -"boot/GENERIC</filename> exists, even if it is not the current running kernel " -"of the system." +"finishes installing the updates. The default kernel name is " +"<emphasis>GENERIC</emphasis>. The <citerefentry><refentrytitle>uname</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry> command may be used to " +"verify its installation." msgstr "" "只有 <filename>GENERIC</filename> 核心可使用 <command>freebsd-update</" "command> 自動更新。 如果有安裝自訂的核心,在 <command>freebsd-update</" -"command> 完成安裝更新後,需要重新編譯和重新安裝。 雖然如此,如果 <filename>/" -"boot/GENERIC</filename> 存在,<command>freebsd-update</command> 仍會偵測並更" -"新 <filename>GENERIC</filename> 核心,即使該核心並非目前系統正在執行的核心。" +"command> 完成安裝更新後,需要重新編譯和重新安裝。 預設的核心名稱為 " +"<emphasis>GENERIC</emphasis>,可使用 <citerefentry><refentrytitle>uname</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry> 指令來檢查安裝的核心。" #. (itstool) path: note/para -#: book.translate.xml:44567 +#: book.translate.xml:44808 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 " @@ -66301,7 +66697,7 @@ msgstr "" "filename> 核心的複本說明。" #. (itstool) path: sect2/para -#: book.translate.xml:44575 +#: book.translate.xml:44816 msgid "" "Unless the default configuration in <filename>/etc/freebsd-update.conf</" "filename> has been changed, <command>freebsd-update</command> will install " @@ -66313,7 +66709,7 @@ msgstr "" "可依平常的方式執行重新編譯與重新安裝核心。" #. (itstool) path: sect2/para -#: book.translate.xml:44582 +#: book.translate.xml:44823 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 " @@ -66337,12 +66733,12 @@ msgstr "" "更新。" #. (itstool) path: sect2/title -#: book.translate.xml:44600 +#: book.translate.xml:44841 msgid "Performing Major and Minor Version Upgrades" msgstr "執行主要及次要版號升級" #. (itstool) path: sect2/para -#: book.translate.xml:44602 +#: book.translate.xml:44843 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. " @@ -66358,7 +66754,7 @@ msgstr "" "以透過提供 <command>freebsd-update</command> 目標的發佈版本來執行。" #. (itstool) path: note/para -#: book.translate.xml:44612 +#: book.translate.xml:44853 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</" @@ -66372,20 +66768,20 @@ msgstr "" "何取得 <filename>GENERIC</filename> 核心複本的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:44620 +#: book.translate.xml:44861 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:44623 +#: book.translate.xml:44864 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update -r 9.1-RELEASE upgrade</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44625 +#: book.translate.xml:44866 msgid "" "After the command has been received, <command>freebsd-update</command> will " "evaluate the configuration file and current system in an attempt to gather " @@ -66396,7 +66792,7 @@ msgstr "" "統來收集升級所需的資訊。 螢幕會顯示偵測到或沒偵測到的元件清單。例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:44632 +#: book.translate.xml:44873 #, no-wrap msgid "" "Looking up update.FreeBSD.org mirrors... 1 mirrors found.\n" @@ -66418,7 +66814,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44649 +#: book.translate.xml:44890 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 " @@ -66428,14 +66824,14 @@ msgstr "" "些情況,會詢問使用者一些關於要安裝什麼或要如何繼續。" #. (itstool) path: sect2/para -#: book.translate.xml:44654 +#: book.translate.xml:44895 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:44657 +#: book.translate.xml:44898 #, no-wrap msgid "" "WARNING: This system is running a \"<replaceable>MYKERNEL</replaceable>\" kernel, which is not a\n" @@ -66445,7 +66841,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44662 +#: book.translate.xml:44903 msgid "" "This warning may be safely ignored at this point. The updated " "<filename>GENERIC</filename> kernel will be used as an intermediate step in " @@ -66455,7 +66851,7 @@ msgstr "" "filename> 核心來進行。" #. (itstool) path: sect2/para -#: book.translate.xml:44666 +#: book.translate.xml:44907 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 " @@ -66476,7 +66872,7 @@ msgstr "" "或 <filename>group</filename>。" #. (itstool) path: note/para -#: book.translate.xml:44680 +#: book.translate.xml:44921 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 " @@ -66490,13 +66886,13 @@ msgstr "" #. (itstool) path: note/screen #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:44687 book.translate.xml:44724 book.translate.xml:44818 +#: book.translate.xml:44928 book.translate.xml:44965 book.translate.xml:45059 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update install</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44690 +#: book.translate.xml:44931 msgid "" "The kernel and kernel modules will be patched first. If the system is " "running with a custom kernel, use <citerefentry><refentrytitle>nextboot</" @@ -66509,13 +66905,13 @@ msgstr "" "GENERIC</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:44695 +#: book.translate.xml:44936 #, no-wrap msgid "<prompt>#</prompt> <userinput>nextboot -k GENERIC</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:44698 +#: book.translate.xml:44939 msgid "" "Before rebooting with the <filename>GENERIC</filename> kernel, make sure it " "contains all the drivers required for the system to boot properly and " @@ -66534,19 +66930,19 @@ msgstr "" "filename> 核心。建議關閉非必須的服務和磁碟與網路掛載直到升級程序完成。" #. (itstool) path: sect2/para -#: book.translate.xml:44712 +#: book.translate.xml:44953 msgid "The machine should now be restarted with the updated kernel:" msgstr "機器現在應使用更新過的核心重新開機:" #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:44715 book.translate.xml:45817 +#: book.translate.xml:44956 book.translate.xml:46057 #, no-wrap msgid "<prompt>#</prompt> <userinput>shutdown -r now</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44717 +#: book.translate.xml:44958 msgid "" "Once the system has come back online, restart <command>freebsd-update</" "command> using the following command. Since the state of the process has " @@ -66559,14 +66955,14 @@ msgstr "" "一個階段並移除所有舊的共用程式庫和目標檔。" #. (itstool) path: note/para -#: book.translate.xml:44727 +#: book.translate.xml:44968 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:44732 +#: book.translate.xml:44973 msgid "" "The upgrade is now complete. If this was a major version upgrade, reinstall " "all ports and packages as described in <xref linkend=\"freebsdupdate-" @@ -66576,12 +66972,12 @@ msgstr "" "\"freebsdupdate-portsrebuild\"/> 的說明重新安裝所有的 Port 和套件。" #. (itstool) path: sect3/title -#: book.translate.xml:44737 +#: book.translate.xml:44978 msgid "Custom Kernels with FreeBSD 9.X and Later" msgstr "在 FreeBSD 9.X 及之後版本自訂核心" #. (itstool) path: sect3/para -#: book.translate.xml:44739 +#: book.translate.xml:44980 msgid "" "Before using <command>freebsd-update</command>, ensure that a copy of the " "<filename>GENERIC</filename> kernel exists in <filename>/boot/GENERIC</" @@ -66595,7 +66991,7 @@ msgstr "" "literal> 核心,只需要將該目錄重新命名為 <filename>/boot/kernel</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:44747 +#: book.translate.xml:44988 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 " @@ -66609,7 +67005,7 @@ msgstr "" "則可以從安裝媒體取得 <literal>GENERIC</literal> 核心複本:" #. (itstool) path: sect3/screen -#: book.translate.xml:44755 +#: book.translate.xml:44996 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /cdrom</userinput>\n" @@ -66618,14 +67014,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44759 +#: book.translate.xml:45000 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:44762 +#: book.translate.xml:45003 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -66633,7 +67029,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44765 +#: book.translate.xml:45006 msgid "" "For this kernel to be identified as the <literal>GENERIC</literal> kernel by " "<command>freebsd-update</command>, the <filename>GENERIC</filename> " @@ -66645,7 +67041,7 @@ msgstr "" "在編譯核心時不要使用其他特殊選項。" #. (itstool) path: sect3/para -#: book.translate.xml:44773 +#: book.translate.xml:45014 msgid "" "Rebooting into the <filename>GENERIC</filename> kernel is not required as " "<command>freebsd-update</command> only needs <filename>/boot/GENERIC</" @@ -66655,12 +67051,12 @@ msgstr "" "存在便可,因此不須重新開機進入 <filename>GENERIC</filename>。" #. (itstool) path: sect3/title -#: book.translate.xml:44779 +#: book.translate.xml:45020 msgid "Upgrading Packages After a Major Version Upgrade" msgstr "主要版號升級後的套件升級" #. (itstool) path: sect3/para -#: book.translate.xml:44782 +#: book.translate.xml:45023 msgid "" "Generally, installed applications will continue to work without problems " "after minor version upgrades. Major versions use different Application " @@ -66678,7 +67074,7 @@ msgstr "" "package> 工具。" #. (itstool) path: sect3/para -#: book.translate.xml:44793 +#: book.translate.xml:45034 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 " @@ -66691,20 +67087,20 @@ msgstr "" "制升級可以執行以下指令來完成:" #. (itstool) path: sect3/screen -#: book.translate.xml:44800 +#: book.translate.xml:45041 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg-static upgrade -f</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44802 +#: book.translate.xml:45043 msgid "" "A rebuild of all installed applications can be accomplished with this " "command:" msgstr "重新編譯所有已安裝的應用程式可以執行以下指令來完成:" #. (itstool) path: sect3/para -#: book.translate.xml:44807 +#: book.translate.xml:45048 msgid "" "This command will display the configuration screens for each application " "that has configurable options and wait for the user to interact with those " @@ -66716,7 +67112,7 @@ msgstr "" "option> 參數。" #. (itstool) path: sect3/para -#: book.translate.xml:44813 +#: book.translate.xml:45054 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 " @@ -66726,7 +67122,7 @@ msgstr "" "動作:" #. (itstool) path: sect3/para -#: book.translate.xml:44820 +#: book.translate.xml:45061 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 " @@ -66736,19 +67132,19 @@ msgstr "" "\"kernelconfig\"/> 的說明編譯並安裝新的自訂核心。" #. (itstool) path: sect3/para -#: book.translate.xml:44824 +#: book.translate.xml:45065 msgid "" "Reboot the machine into the new FreeBSD version. The upgrade process is now " "complete." msgstr "重新開機使用新的 FreeBSD 版本後,升級程序便正式完成。" #. (itstool) path: sect2/title -#: book.translate.xml:44830 +#: book.translate.xml:45071 msgid "System State Comparison" msgstr "比對系統狀態" #. (itstool) path: sect2/para -#: book.translate.xml:44832 +#: book.translate.xml:45073 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 " @@ -66762,7 +67158,7 @@ msgstr "" "<acronym>IDS</acronym>)。" #. (itstool) path: warning/para -#: book.translate.xml:44840 +#: book.translate.xml:45081 msgid "" "This command is not a replacement for a real <acronym>IDS</acronym> such as " "<package>security/snort</package>. As <command>freebsd-update</command> " @@ -66781,22 +67177,22 @@ msgstr "" "varname> 以及將 <command>freebsd-update</command> 在不使用時以唯讀儲存而降" "低,最好的解決方案是能夠與安全的磁碟,如 <acronym>DVD</acronym> 或儲存在外部" "的 <acronym>USB</acronym> 磁碟裝置比對系統。替代的方式是使用內建工具的 " -"<acronym>IDS</acronym> 功能,在 <xref linkend=\"security-ids\"/> 有詳細說明。" +"<acronym>IDS</acronym> 功能,在 <xref linkend=\"security-ids\"/> 有詳細說明" #. (itstool) path: sect2/para -#: book.translate.xml:44855 +#: book.translate.xml:45096 msgid "" "To begin the comparison, specify the output file to save the results to:" msgstr "要開始比對,需指定輸出的檔案來儲存結果:" #. (itstool) path: sect2/screen -#: book.translate.xml:44858 +#: book.translate.xml:45099 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update IDS >> outfile.ids</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44860 +#: book.translate.xml:45101 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 " @@ -66807,7 +67203,7 @@ msgstr "" "版本的 <acronym>SHA256</acronym> 雜湊值會儲存到指定的輸出檔。" #. (itstool) path: sect2/para -#: book.translate.xml:44866 +#: book.translate.xml:45107 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 " @@ -66817,7 +67213,7 @@ msgstr "" "版本不同的檔案清單,可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:44871 +#: book.translate.xml:45112 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat outfile.ids | awk '{ print $1 }' | more</userinput>\n" @@ -66828,7 +67224,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44877 +#: book.translate.xml:45118 msgid "" "This sample output has been truncated as many more files exist. Some files " "have natural modifications. For example, <filename>/etc/passwd</filename> " @@ -66845,17 +67241,17 @@ msgstr "" "的 <literal>IDSIgnorePaths</literal> 選項。" #. (itstool) path: sect1/title -#: book.translate.xml:44889 +#: book.translate.xml:45130 msgid "Updating the Documentation Set" msgstr "更新文件集" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44893 +#: book.translate.xml:45134 msgid "<primary>Documentation</primary> <see>Updating and Upgrading</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44898 +#: book.translate.xml:45139 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 " @@ -66869,7 +67265,7 @@ msgstr "" "冊、<acronym>FAQ</acronym> 及文章副本。" #. (itstool) path: sect1/para -#: book.translate.xml:44904 +#: book.translate.xml:45145 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." @@ -66878,7 +67274,7 @@ msgstr "" "複本。" #. (itstool) path: sect1/para -#: book.translate.xml:44908 +#: book.translate.xml:45149 msgid "" "For information on editing and submitting corrections to the documentation, " "refer to the FreeBSD Documentation Project Primer for New Contributors " @@ -66890,58 +67286,57 @@ msgstr "" "freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/</link>)。" #. (itstool) path: sect2/title -#: book.translate.xml:44913 +#: book.translate.xml:45154 msgid "Updating Documentation from Source" msgstr "自原始碼更新說明文件" #. (itstool) path: sect2/para -#: book.translate.xml:44915 +#: book.translate.xml:45156 msgid "" "Rebuilding the FreeBSD documentation from source requires a collection of " -"tools which are not part of the FreeBSD base system. The required tools, " -"including <application>svn</application>, can be installed from the " -"<package>textproc/docproj</package> package or port developed by the FreeBSD " -"Documentation Project." +"tools which are not part of the FreeBSD base system. The required tools can " +"be installed from the <package>textproc/docproj</package> package or port " +"developed by the FreeBSD Documentation Project." msgstr "" "從原始碼重新編譯 FreeBSD 文件需要一些不屬於 FreeBSD 基礎系統的工具。需要的工" -"具包括 <application>svn</application> 可透過由 FreeBSD 文件計劃所開發的 " -"<package>textproc/docproj</package> 套件或 Port 安裝。" +"具可安裝由 FreeBSD 文件計劃所開發的 <package>textproc/docproj</package> 套件" +"或 Port。" #. (itstool) path: sect2/para -#: book.translate.xml:44922 +#: book.translate.xml:45162 msgid "" -"Once installed, use <application>svn</application> to fetch a clean copy of " -"the documentation source:" +"Once installed, use <application>svnlite</application> to fetch a clean copy " +"of the documentation source:" msgstr "" -"安裝完成之後,可使用 <application>svn</application> 來取得乾淨的文件原始碼複" -"本:" +"安裝完成之後,可使用 <application>svnlite</application> 來取得乾淨的文件原始" +"碼複本:" #. (itstool) path: sect2/screen -#: book.translate.xml:44925 +#: book.translate.xml:45165 #, no-wrap -msgid "<prompt>#</prompt> <userinput>svn checkout https://svn.FreeBSD.org/doc/head /usr/doc</userinput>" +msgid "<prompt>#</prompt> <userinput>svnlite checkout https://svn.FreeBSD.org/doc/head /usr/doc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44927 +#: book.translate.xml:45167 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:44930 +#: book.translate.xml:45170 msgid "Future updates of the documentation sources may be fetched by running:" msgstr "往後更新文件原始碼可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:44933 +#: book.translate.xml:45173 #, no-wrap -msgid "<prompt>#</prompt> <userinput>svn update /usr/doc</userinput>" +msgid "<prompt>#</prompt> <userinput>svnlite update /usr/doc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44935 +#: book.translate.xml:45175 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 " @@ -66951,12 +67346,12 @@ msgstr "" "文件的準備動作。" #. (itstool) path: sect2/para -#: book.translate.xml:44939 +#: book.translate.xml:45179 msgid "A full update of all available languages may be performed by typing:" msgstr "完整更新所有可用的語言可以執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:44942 +#: book.translate.xml:45182 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc</userinput>\n" @@ -66964,7 +67359,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44945 +#: book.translate.xml:45185 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</" @@ -66974,7 +67369,7 @@ msgstr "" "行 <command>make</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:44950 +#: book.translate.xml:45190 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc/en_US.ISO8859-1</userinput>\n" @@ -66982,7 +67377,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44953 +#: book.translate.xml:45193 msgid "" "An alternative way of updating the documentation is to run this command from " "<filename>/usr/doc</filename> or the desired language-specific subdirectory:" @@ -66991,20 +67386,20 @@ msgstr "" "行此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:44957 +#: book.translate.xml:45197 #, no-wrap msgid "<prompt>#</prompt> <userinput>make update</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44959 +#: book.translate.xml:45199 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:44962 +#: book.translate.xml:45202 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc</userinput>\n" @@ -67012,7 +67407,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44965 +#: book.translate.xml:45205 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 " @@ -67024,17 +67419,17 @@ msgstr "" "給 <command>make</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:44972 +#: book.translate.xml:45212 msgid "The options include:" msgstr "選項有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:44976 +#: book.translate.xml:45216 msgid "<varname>DOC_LANG</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44979 +#: book.translate.xml:45219 msgid "" "The list of languages and encodings to build and install, such as " "<literal>en_US.ISO8859-1</literal> for English documentation." @@ -67043,12 +67438,12 @@ msgstr "" "語文件。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44986 +#: book.translate.xml:45226 msgid "<varname>FORMATS</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44989 +#: book.translate.xml:45229 msgid "" "A single format or a list of output formats to be built. Currently, " "<literal>html</literal>, <literal>html-split</literal>, <literal>txt</" @@ -67059,19 +67454,19 @@ msgstr "" "literal>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44998 +#: book.translate.xml:45238 msgid "<varname>DOCDIR</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45001 +#: book.translate.xml:45241 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:45007 +#: book.translate.xml:45247 msgid "" "For more <command>make</command> variables supported as system-wide options " "in FreeBSD, refer to <citerefentry><refentrytitle>make.conf</" @@ -67082,25 +67477,25 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:45014 +#: book.translate.xml:45254 msgid "Updating Documentation from Ports" msgstr "自 Port 更新說明文件" #. (itstool) path: authorgroup/author -#: book.translate.xml:45017 +#: book.translate.xml:45257 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Based on the work of </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:45031 +#: book.translate.xml:45271 msgid "" "<primary>documentation package</primary> <see>Updating and Upgrading</see>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45036 +#: book.translate.xml:45276 msgid "" "The previous section presented a method for updating the FreeBSD " "documentation from sources. This section describes an alternative method " @@ -67110,21 +67505,21 @@ msgstr "" "方法,可由以下方式達成:" #. (itstool) path: listitem/para -#: book.translate.xml:45043 +#: book.translate.xml:45283 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:45049 +#: book.translate.xml:45289 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:45055 +#: book.translate.xml:45295 msgid "" "This method of updating the FreeBSD documentation is supported by a set of " "documentation ports and packages which are updated by the Documentation " @@ -67139,12 +67534,12 @@ msgstr "" "org/docs/\">http://www.freshports.org/docs/</link>)。" #. (itstool) path: sect2/para -#: book.translate.xml:45061 +#: book.translate.xml:45301 msgid "Organization of the documentation ports is as follows:" msgstr "文件 Port 的組織方式如下:" #. (itstool) path: listitem/para -#: book.translate.xml:45066 +#: book.translate.xml:45306 msgid "" "The <package>misc/freebsd-doc-en</package> package or port installs all of " "the English documentation." @@ -67152,7 +67547,7 @@ msgstr "" "<package>misc/freebsd-doc-en</package> 套件或 Port 會安裝所有英語的文件。" #. (itstool) path: listitem/para -#: book.translate.xml:45071 +#: book.translate.xml:45311 msgid "" "The <package>misc/freebsd-doc-all</package> meta-package or port installs " "all documentation in all available languages." @@ -67161,7 +67556,7 @@ msgstr "" "件。" #. (itstool) path: listitem/para -#: book.translate.xml:45077 +#: book.translate.xml:45317 msgid "" "There is a package and port for each translation, such as <package>misc/" "freebsd-doc-hu</package> for the Hungarian documentation." @@ -67170,7 +67565,7 @@ msgstr "" "利語文件。" #. (itstool) path: sect2/para -#: book.translate.xml:45083 +#: book.translate.xml:45323 msgid "" "When binary packages are used, the FreeBSD documentation will be installed " "in all available formats for the given language. For example, the following " @@ -67180,13 +67575,13 @@ msgstr "" "會安裝最新的匈牙利語文件套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:45088 +#: book.translate.xml:45328 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install hu-freebsd-doc</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:45091 +#: book.translate.xml:45331 msgid "" "Packages use a format that differs from the corresponding port's name: " "<literal><replaceable>lang</replaceable>-freebsd-doc</literal>, where " @@ -67200,7 +67595,7 @@ msgstr "" "literal> 代表簡體中文。" #. (itstool) path: sect2/para -#: book.translate.xml:45100 +#: book.translate.xml:45340 msgid "" "To specify the format of the documentation, build the port instead of " "installing the package. For example, to build and install the English " @@ -67209,7 +67604,7 @@ msgstr "" "要指定文件的格式,需以編譯 Port 來代替安裝套件。例如要編譯並安裝英語文件:" #. (itstool) path: sect2/screen -#: book.translate.xml:45104 +#: book.translate.xml:45344 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/misc/freebsd-doc-en</userinput>\n" @@ -67217,7 +67612,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45107 +#: book.translate.xml:45347 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 " @@ -67229,7 +67624,7 @@ msgstr "" "org</uri> 使用的格式) 以及 <acronym>PDF</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:45112 +#: book.translate.xml:45352 msgid "" "Alternately, several <command>make</command> options can be specified when " "building a documentation port, including:" @@ -67237,12 +67632,12 @@ msgstr "" "此外,編譯文件 Port 時也可指定數個 <command>make</command> 選項,包括:" #. (itstool) path: varlistentry/term -#: book.translate.xml:45118 +#: book.translate.xml:45358 msgid "<varname>WITH_HTML</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45121 +#: book.translate.xml:45361 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>, " @@ -67252,12 +67647,12 @@ msgstr "" "<filename>article.html</filename> 或 <filename>book.html</filename> 的檔案。" #. (itstool) path: varlistentry/term -#: book.translate.xml:45129 +#: book.translate.xml:45369 msgid "<varname>WITH_PDF</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45132 +#: book.translate.xml:45372 msgid "" "The formatted documentation is saved to a file called <filename>article.pdf</" "filename> or <filename>book.pdf</filename>." @@ -67266,12 +67661,12 @@ msgstr "" "<filename>book.pdf</filename> 的檔案。" #. (itstool) path: varlistentry/term -#: book.translate.xml:45139 +#: book.translate.xml:45379 msgid "<varname>DOCBASE</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45142 +#: book.translate.xml:45382 msgid "" "Specifies where to install the documentation. It defaults to <filename>/usr/" "local/share/doc/freebsd</filename>." @@ -67280,7 +67675,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:45149 +#: book.translate.xml:45389 msgid "" "This example uses variables to install the Hungarian documentation as a " "<acronym>PDF</acronym> in the specified directory:" @@ -67288,7 +67683,7 @@ msgstr "" "以下範例使用變數來安裝 <acronym>PDF</acronym> 的匈牙利語文件到特定目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:45153 +#: book.translate.xml:45393 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/misc/freebsd-doc-hu</userinput>\n" @@ -67296,7 +67691,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45156 +#: book.translate.xml:45396 msgid "" "Documentation packages or ports can be updated using the instructions in " "<xref linkend=\"ports\"/>. For example, the following command updates the " @@ -67307,34 +67702,34 @@ msgstr "" "用 <package>ports-mgmt/portmaster</package> 更新已安裝的匈牙利語文件:" #. (itstool) path: sect2/screen -#: book.translate.xml:45162 +#: book.translate.xml:45402 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -PP hu-freebsd-doc</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:45167 +#: book.translate.xml:45407 msgid "Tracking a Development Branch" msgstr "追蹤開發分支" #. (itstool) path: sect1/indexterm -#: book.translate.xml:45169 +#: book.translate.xml:45409 msgid "<primary>-CURRENT</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:45170 +#: book.translate.xml:45410 msgid "<primary>-STABLE</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45172 +#: book.translate.xml:45412 msgid "" "FreeBSD has two development branches: FreeBSD-CURRENT and FreeBSD-STABLE." msgstr "FreeBSD 有兩個開發分支:FreeBSD-CURRENT 及 FreeBSD-STABLE。" #. (itstool) path: sect1/para -#: book.translate.xml:45175 +#: book.translate.xml:45415 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 " @@ -67343,12 +67738,12 @@ msgstr "" "本節將說明每個分支及其的特定使用者,也會說明如何在各別分支維持系統為最新版。" #. (itstool) path: sect2/title -#: book.translate.xml:45180 +#: book.translate.xml:45420 msgid "Using FreeBSD-CURRENT" msgstr "使用 FreeBSD-CURRENT" #. (itstool) path: sect2/para -#: book.translate.xml:45182 +#: book.translate.xml:45422 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 " @@ -67360,7 +67755,7 @@ msgstr "" "支。" #. (itstool) path: sect2/para -#: book.translate.xml:45188 +#: book.translate.xml:45428 msgid "" "FreeBSD-CURRENT is the very latest source code for FreeBSD and includes " "works in progress, experimental changes, and transitional mechanisms that " @@ -67378,19 +67773,19 @@ msgstr "" "量這個問題。" #. (itstool) path: sect2/para -#: book.translate.xml:45198 +#: book.translate.xml:45438 msgid "FreeBSD-CURRENT is made available for three primary interest groups:" msgstr "FreeBSD-CURRENT 主要給下以三種族群:" #. (itstool) path: listitem/para -#: book.translate.xml:45203 +#: book.translate.xml:45443 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:45208 +#: book.translate.xml:45448 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 " @@ -67400,7 +67795,7 @@ msgstr "" "及大方向提出專業建議並送交修補。" #. (itstool) path: listitem/para -#: book.translate.xml:45215 +#: book.translate.xml:45455 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." @@ -67408,7 +67803,7 @@ msgstr "" "隨時關注的使用者,使用目前原始碼做為參考用途,或是偶爾提供意見或貢獻原始碼。" #. (itstool) path: sect2/para -#: book.translate.xml:45221 +#: book.translate.xml:45461 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 " @@ -67423,17 +67818,17 @@ msgstr "" "CURRENT 不在 <quote>官方支援</quote> 的範圍內。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:45229 +#: book.translate.xml:45469 msgid "<primary>-CURRENT</primary> <secondary>using</secondary>" msgstr "<primary>-CURRENT</primary> <secondary>使用</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:45234 +#: book.translate.xml:45474 msgid "To track FreeBSD-CURRENT:" msgstr "若要追蹤 FreeBSD-CURRENT:" #. (itstool) path: listitem/para -#: book.translate.xml:45238 +#: book.translate.xml:45478 msgid "" "Join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" "freebsd-current\">freebsd-current</link> and the <link xlink:href=\"http://" @@ -67449,7 +67844,7 @@ msgstr "" "收有關 FreeBSD-CURRENT 目前狀態的重要公告。" #. (itstool) path: listitem/para -#: book.translate.xml:45245 +#: book.translate.xml:45485 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 " @@ -67460,7 +67855,7 @@ msgstr "" "用的相關資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:45249 +#: book.translate.xml:45489 msgid "" "To join these lists, go to <link xlink:href=\"http://lists.FreeBSD.org/" "mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link>, click " @@ -67476,19 +67871,19 @@ msgstr "" "listinfo/svn-src-all\">svn-src-all</link> 郵遞論壇。" #. (itstool) path: listitem/para -#: book.translate.xml:45257 +#: book.translate.xml:45497 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</" -"literal> branch of one of the Subversion mirror sites listed in <xref " -"linkend=\"svn-mirrors\"/>." +"\">svnlite</link> is used to check out the -CURRENT code from the " +"<literal>head</literal> branch of one of the Subversion mirror sites listed " +"in <xref linkend=\"svn-mirrors\"/>." msgstr "" -"同步 FreeBSD-CURRENT 原始碼。 通常會使用 <link linkend=\"svn\">svn</link> 自" -"列於 <xref linkend=\"svn-mirrors\"/> 中的其中一個 Subversion 鏡像站的 " -"<literal>head</literal> 分支中取出 -CURRENT 的程式碼。" +"同步 FreeBSD-CURRENT 原始碼。 通常會使用 <link linkend=\"svn\">svnlite</" +"link> 自列於 <xref linkend=\"svn-mirrors\"/> 中的其中一個 Subversion 鏡像站" +"的 <literal>head</literal> 分支中取出 -CURRENT 的程式碼。" #. (itstool) path: listitem/para -#: book.translate.xml:45265 +#: book.translate.xml:45505 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 " @@ -67501,12 +67896,12 @@ msgstr "" "的 FreeBSD-CURRENT,不可只有選擇的部份。" #. (itstool) path: para/indexterm -#: book.translate.xml:45273 +#: book.translate.xml:45513 msgid "<primary>-CURRENT</primary> <secondary>compiling</secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45272 +#: book.translate.xml:45512 msgid "" "Before compiling FreeBSD-CURRENT <_:indexterm-1/>, read <filename>/usr/src/" "Makefile</filename> very carefully and follow the instructions in <xref " @@ -67523,23 +67918,22 @@ msgstr "" "filename> 來了解升級的相關資訊,有時會含有升級下一個發行版的必要資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:45287 +#: book.translate.xml:45527 msgid "" "Be active! FreeBSD-CURRENT users are encouraged to submit their suggestions " "for enhancements or bug fixes. Suggestions with accompanying code are always " "welcome." msgstr "" -"積極!很鼓勵 FreeBSD-CURRENT 使用者發表他們對加強哪些功能或是修復哪些錯誤的建" -"議。 如果您在建議時能附上相關程式碼的話, 那真是太棒了!" +"要活躍!我們非常鼓勵 FreeBSD-CURRENT 的使用者發表他們對加強哪些功能或是修復哪" +"些錯誤的建議。 如果您在建議時能附上相關程式碼的話,是最好的。" #. (itstool) path: sect2/title -#: book.translate.xml:45296 -#, fuzzy +#: book.translate.xml:45536 msgid "Using FreeBSD-STABLE" -msgstr "使用 FreeBSD-CURRENT" +msgstr "使用 FreeBSD-STABLE" #. (itstool) path: sect2/para -#: book.translate.xml:45298 +#: book.translate.xml:45538 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 " @@ -67550,17 +67944,24 @@ msgid "" "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:45309 +#: book.translate.xml:45549 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: sect2/para -#: book.translate.xml:45313 +#: book.translate.xml:45553 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-" @@ -67571,21 +67972,25 @@ msgid "" "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。" #. (itstool) path: sect2/para -#: book.translate.xml:45323 -#, fuzzy +#: book.translate.xml:45563 msgid "To track FreeBSD-STABLE:" -msgstr "若要追蹤 FreeBSD-CURRENT:" +msgstr "若要追蹤 FreeBSD-STABLE:" #. (itstool) path: sect2/indexterm -#: book.translate.xml:45325 -#, fuzzy +#: book.translate.xml:45565 msgid "<primary>-STABLE</primary> <secondary>using</secondary>" -msgstr "<primary>-CURRENT</primary> <secondary>使用</secondary>" +msgstr "<primary>-STABLE</primary> <secondary>使用</secondary>" #. (itstool) path: listitem/para -#: book.translate.xml:45331 +#: book.translate.xml:45571 msgid "" "Join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" "freebsd-stable\">freebsd-stable</link> list in order to stay informed of " @@ -67595,10 +68000,14 @@ msgid "" "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 可能需要的編" +"譯相依項目或任何需要特別注意的問題,當有一些有爭議的修復或更新時,開發人員也" +"會在郵遞論壇中公告,如果有使用者對所提出的更改有任何的疑慮,可讓使用者有機會" +"能反應問題。" #. (itstool) path: listitem/para -#: book.translate.xml:45340 -#, fuzzy +#: book.translate.xml:45580 msgid "" "Join the relevant <application>svn</application> list for the branch being " "tracked. For example, users tracking the 9-STABLE branch should join the " @@ -67607,13 +68016,13 @@ msgid "" "entry for each change as it is made, along with any pertinent information on " "possible side effects." msgstr "" -"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/svn-src-head" -"\">svn-src-head</link> 郵遞論壇會記錄每一次修改的提交項目,以及可能產生的副作" -"用的相關資訊。" +"加入要追蹤的分支所相關的 <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:45348 -#, fuzzy +#: book.translate.xml:45588 msgid "" "To join these lists, go to <link xlink:href=\"http://lists.FreeBSD.org/" "mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link>, click " @@ -67621,14 +68030,14 @@ msgid "" "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/" +"要加入這些郵遞論壇,請前往 <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> 郵遞論壇。" +"閱的郵遞論壇,並依照網頁指示的步驟操作。要追蹤整個原始碼樹的變更,可訂閱 " +"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/svn-src-all" +"\">svn-src-all</link> 郵遞論壇。" #. (itstool) path: listitem/para -#: book.translate.xml:45355 +#: book.translate.xml:45595 msgid "" "To install a new FreeBSD-STABLE system, install the most recent FreeBSD-" "STABLE release from the <link linkend=\"mirrors\">FreeBSD mirror sites</" @@ -67636,9 +68045,13 @@ msgid "" "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 發佈版或使用每月使用 FreeBSD-STABLE 所編" +"譯的快照 (Snapshot),請參考 <link xlink:href=\"@@URL_RELPREFIX@@/snapshots/" +"\">www.freebsd.org/snapshots</link> 取得更多有關快照的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:45360 +#: book.translate.xml:45600 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 " @@ -67646,16 +68059,18 @@ msgid "" "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/> 來取出欲升級的分支程式碼,可用分支的名稱如:" +"<literal>stable/9</literal> 會列在 <link xlink:href=\"@@URL_RELPREFIX@@/" +"releng/\">www.freebsd.org/releng</link>。" #. (itstool) path: para/indexterm -#: book.translate.xml:45371 -#, fuzzy +#: book.translate.xml:45611 msgid "<primary>-STABLE</primary> <secondary>compiling</secondary>" -msgstr "<primary>-CURRENT</primary> <secondary>使用</secondary>" +msgstr "<primary>-STABLE</primary> <secondary>編譯</secondary>" #. (itstool) path: listitem/para -#: book.translate.xml:45370 -#, fuzzy +#: book.translate.xml:45610 msgid "" "Before compiling or upgrading to FreeBSD-STABLE <_:indexterm-1/>, read " "<filename>/usr/src/Makefile</filename> carefully and follow the instructions " @@ -67665,20 +68080,20 @@ msgid "" "bootstrapping procedures that sometimes become necessary on the road to the " "next release." msgstr "" -"編譯 FreeBSD-CURRENT <_:indexterm-1/> 前,請仔細地閱讀 <filename>/usr/src/" +"編譯 FreeBSD-STABLE <_:indexterm-1/> 前,請仔細地閱讀 <filename>/usr/src/" "Makefile</filename> 並依照 <xref linkend=\"makeworld\"/> 的指示操作。 閱讀 " -"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-current" -"\">FreeBSD-CURRENT 郵遞論壇</link> 以及 <filename>/usr/src/UPDATING</" +"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-stable" +"\">FreeBSD-STABLE 郵遞論壇</link> 以及 <filename>/usr/src/UPDATING</" "filename> 來了解升級的相關資訊,有時會含有升級下一個發行版的必要資訊。" #. (itstool) path: sect1/title #. (itstool) id: book.translate.xml#updating-src -#: book.translate.xml:45385 +#: book.translate.xml:45625 msgid "Updating FreeBSD from Source" msgstr "從原始碼更新 FreeBSD" #. (itstool) path: sect1/para -#: book.translate.xml:45387 +#: book.translate.xml:45627 msgid "" "Updating FreeBSD by compiling from source offers several advantages over " "binary updates. Code can be built with options to take advantage of specific " @@ -67693,7 +68108,7 @@ msgstr "" "時許多,但能夠完整自訂一個量身定做版本的 FreeBSD。" #. (itstool) path: sect2/para -#: book.translate.xml:45399 +#: book.translate.xml:45639 msgid "" "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." @@ -67702,15 +68117,15 @@ msgstr "" "這個程序。" #. (itstool) path: step/title -#: book.translate.xml:45405 +#: book.translate.xml:45645 msgid "Update and Build" msgstr "更新並編譯" #. (itstool) path: step/screen -#: book.translate.xml:45407 +#: book.translate.xml:45647 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>svn update /usr/src</userinput> <co xml:id=\"updating-src-qs-svnup\"/>\n" +"<prompt>#</prompt> <userinput>svnlite 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" @@ -67723,7 +68138,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:45420 +#: book.translate.xml:45660 msgid "" "Get the latest version of the source. See <xref linkend=\"updating-src-" "obtaining-src\"/> for more information on obtaining and updating source." @@ -67732,7 +68147,7 @@ msgstr "" "來了解更多取得與更新原始碼的資訊。" #. (itstool) path: callout/para -#: book.translate.xml:45427 +#: book.translate.xml:45667 msgid "" "Check <filename>/usr/src/UPDATING</filename> for any manual steps required " "before or after building from source." @@ -67741,17 +68156,17 @@ msgstr "" "後需要手動操作的步驟。" #. (itstool) path: callout/para -#: book.translate.xml:45433 book.translate.xml:45452 +#: book.translate.xml:45673 book.translate.xml:45692 msgid "Go to the source directory." msgstr "前往原始碼目錄。" #. (itstool) path: callout/para -#: book.translate.xml:45437 +#: book.translate.xml:45677 msgid "Compile the world, everything except the kernel." msgstr "編譯世界 (World),即除了核心 (Kernel) 外的所有東西。" #. (itstool) path: callout/para -#: book.translate.xml:45442 +#: book.translate.xml:45682 msgid "" "Compile and install the kernel. This is equivalent to <command>make " "buildkernel installkernel</command>." @@ -67760,32 +68175,32 @@ msgstr "" "command>。" #. (itstool) path: callout/para -#: book.translate.xml:45448 +#: book.translate.xml:45688 msgid "Reboot the system to the new kernel." msgstr "重新啟動系統以使用新的核心。" #. (itstool) path: callout/para -#: book.translate.xml:45456 +#: book.translate.xml:45696 msgid "Install the world." msgstr "安裝世界。" #. (itstool) path: callout/para -#: book.translate.xml:45460 +#: book.translate.xml:45700 msgid "Update and merge configuration files in <filename>/etc/</filename>." msgstr "更新與合併在 <filename>/etc/</filename> 中的設定檔案。" #. (itstool) path: callout/para -#: book.translate.xml:45465 +#: book.translate.xml:45705 msgid "Restart the system to use the newly-built world and kernel." msgstr "重新啟動系統以使用新編譯好的世界與核心。" #. (itstool) path: sect2/title -#: book.translate.xml:45474 +#: book.translate.xml:45714 msgid "Preparing for a Source Update" msgstr "準備原始碼更新" #. (itstool) path: sect2/para -#: book.translate.xml:45476 +#: book.translate.xml:45716 msgid "" "Read <filename>/usr/src/UPDATING</filename>. Any manual steps that must be " "performed before or after an update are described in this file." @@ -67794,12 +68209,12 @@ msgstr "" "動操作步驟會在此檔案中說明。" #. (itstool) path: sect2/title -#: book.translate.xml:45482 +#: book.translate.xml:45722 msgid "Updating the Source" msgstr "更新原始碼" #. (itstool) path: sect2/para -#: book.translate.xml:45484 +#: book.translate.xml:45724 msgid "" "FreeBSD source code is located in <filename>/usr/src/</filename>. The " "preferred method of updating this source is through the " @@ -67811,35 +68226,35 @@ msgstr "" "始碼已在版本控制系統的管控下可:" #. (itstool) path: sect2/screen -#: book.translate.xml:45490 +#: book.translate.xml:45730 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>svn info /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>svnlite info /usr/src</userinput>\n" "Path: /usr/src\n" "Working Copy Root Path: /usr/src\n" "..." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45495 +#: book.translate.xml:45735 msgid "" "This indicates that <filename>/usr/src/</filename> is under version control " -"and can be updated with <citerefentry><refentrytitle>svn</" +"and can be updated with <citerefentry><refentrytitle>svnlite</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" msgstr "" "此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使" -"用 <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> 來更新:" +"用 <citerefentry><refentrytitle>svnlite</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 來更新:" #. (itstool) path: sect2/screen #. (itstool) id: book.translate.xml#synching -#: book.translate.xml:45499 +#: book.translate.xml:45739 #, no-wrap -msgid "<prompt>#</prompt> <userinput>svn update /usr/src</userinput>" +msgid "<prompt>#</prompt> <userinput>svnlite update /usr/src</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45501 +#: book.translate.xml:45741 msgid "" "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 " @@ -67849,12 +68264,12 @@ msgstr "" "始碼便為最新版本,並可開始依下一章節的說明來編譯程序。" #. (itstool) path: note/title -#: book.translate.xml:45507 +#: book.translate.xml:45747 msgid "Obtaining the Source" msgstr "取得原始碼" #. (itstool) path: note/para -#: book.translate.xml:45509 +#: book.translate.xml:45749 msgid "" "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 " @@ -67864,49 +68279,49 @@ msgstr "" "檔案或原始碼是採用其他方式安裝,若是如此,便需重新取出 (checkout) 原始碼。" #. (itstool) path: table/title -#: book.translate.xml:45515 +#: book.translate.xml:45755 msgid "FreeBSD Versions and Repository Paths" msgstr "FreeBSD 版本與檔案庫路徑" #. (itstool) path: row/entry -#: book.translate.xml:45520 +#: book.translate.xml:45760 msgid "<command>uname -r</command> Output" msgstr "<command>uname -r</command> 的輸出結果" #. (itstool) path: row/entry -#: book.translate.xml:45521 +#: book.translate.xml:45761 msgid "Repository Path" msgstr "檔案庫路徑" #. (itstool) path: row/entry -#: book.translate.xml:45528 +#: book.translate.xml:45768 msgid "<literal><replaceable>X.Y</replaceable>-RELEASE</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:45529 +#: book.translate.xml:45769 msgid "<literal>base/releng/</literal><replaceable>X.Y</replaceable>" msgstr "<literal>base/releng/</literal><replaceable>X.Y</replaceable>" #. (itstool) path: row/entry -#: book.translate.xml:45530 +#: book.translate.xml:45770 msgid "" "The Release version plus only critical security and bug fix patches. This " "branch is recommended for most users." msgstr "發佈版本加上關鍵的安全性與錯誤修正,較建議大多數使用者使用這個分支。" #. (itstool) path: row/entry -#: book.translate.xml:45536 +#: book.translate.xml:45776 msgid "<literal><replaceable>X.Y</replaceable>-STABLE</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:45537 +#: book.translate.xml:45777 msgid "<literal>base/stable/</literal><replaceable>X</replaceable>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:45539 +#: book.translate.xml:45779 msgid "" "The Release version plus all additional development on that branch. " "<emphasis>STABLE</emphasis> refers to the Applications Binary Interface " @@ -67920,7 +68335,7 @@ msgstr "" "FreeBSD 10.1 可執行的軟體在編譯完 FreeBSD 10-STABLE 之後仍可以執行。" #. (itstool) path: entry/para -#: book.translate.xml:45549 +#: book.translate.xml:45789 msgid "" "STABLE branches occasionally have bugs or incompatibilities which might " "affect users, although these are typically fixed quickly." @@ -67929,17 +68344,17 @@ msgstr "" "的被修正。" #. (itstool) path: row/entry -#: book.translate.xml:45556 +#: book.translate.xml:45796 msgid "<literal><replaceable>X</replaceable>-CURRENT</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:45557 +#: book.translate.xml:45797 msgid "<literal>base/head/</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:45558 +#: book.translate.xml:45798 msgid "" "The latest unreleased development version of FreeBSD. The CURRENT branch can " "have major bugs or incompatibilities and is recommended only for advanced " @@ -67949,7 +68364,7 @@ msgstr "" "建議進階的使用者使用。" #. (itstool) path: note/para -#: book.translate.xml:45567 +#: book.translate.xml:45807 msgid "" "Determine which version of FreeBSD is being used with " "<citerefentry><refentrytitle>uname</refentrytitle><manvolnum>1</manvolnum></" @@ -67959,7 +68374,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" #. (itstool) path: note/screen -#: book.translate.xml:45570 +#: book.translate.xml:45810 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>uname -r</userinput>\n" @@ -67967,7 +68382,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:45573 +#: book.translate.xml:45813 msgid "" "Based on <xref linkend=\"updating-src-obtaining-src-repopath\"/>, the source " "used to update <literal>10.3-RELEASE</literal> has a repository path of " @@ -67979,15 +68394,15 @@ msgstr "" "releng/10.3</literal>,在取出 (checkout) 原始碼時便要使用這個路徑:" #. (itstool) path: note/screen -#: book.translate.xml:45579 +#: book.translate.xml:45819 #, no-wrap msgid "" "<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\"/>" +"<prompt>#</prompt> <userinput>svnlite 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: callout/para -#: book.translate.xml:45584 +#: book.translate.xml:45824 msgid "" "Move the old directory out of the way. If there are no local modifications " "in this directory, it can be deleted." @@ -67996,7 +68411,7 @@ msgstr "" "錄。" #. (itstool) path: callout/para -#: book.translate.xml:45590 +#: book.translate.xml:45830 msgid "" "The path from <xref linkend=\"updating-src-obtaining-src-repopath\"/> is " "added to the repository <acronym>URL</acronym>. The third parameter is the " @@ -68007,12 +68422,12 @@ msgstr "" "錄。" #. (itstool) path: sect2/title -#: book.translate.xml:45601 +#: book.translate.xml:45841 msgid "Building from Source" msgstr "從原始碼編譯" #. (itstool) path: sect2/para -#: book.translate.xml:45603 +#: book.translate.xml:45843 msgid "" "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 " @@ -68022,7 +68437,7 @@ msgstr "" "先做這個動作以便提供最新的工具來編譯核心,接著便可編譯核心:" #. (itstool) path: sect2/screen -#: book.translate.xml:45608 +#: book.translate.xml:45848 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -68031,29 +68446,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45612 +#: book.translate.xml:45852 msgid "The compiled code is written to <filename>/usr/obj</filename>." msgstr "編譯完的程式會寫入至 <filename>/usr/obj</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:45615 +#: book.translate.xml:45855 msgid "" "These are the basic steps. Additional options to control the build are " "described below." msgstr "以上這些均為基本的步驟,用來控制編譯的其他選項在以下章節會說明。" #. (itstool) path: sect3/title -#: book.translate.xml:45619 +#: book.translate.xml:45859 msgid "Performing a Clean Build" msgstr "執行清除編譯" #. (itstool) path: para/buildtarget -#: book.translate.xml:45626 +#: book.translate.xml:45866 msgid "cleanworld" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45621 +#: book.translate.xml:45861 msgid "" "Some versions of the FreeBSD build system leave previously-compiled code in " "the temporary object directory, <filename>/usr/obj</filename>. This can " @@ -68066,18 +68481,18 @@ msgstr "" "強制重新編譯所有東西可在開始編譯前使用 <_:buildtarget-1/>:" #. (itstool) path: sect3/screen -#: book.translate.xml:45629 +#: book.translate.xml:45869 #, no-wrap msgid "<prompt>#</prompt> <userinput>make cleanworld</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:45633 +#: book.translate.xml:45873 msgid "Setting the Number of Jobs" msgstr "設定工作數量" #. (itstool) path: sect3/para -#: book.translate.xml:45635 +#: book.translate.xml:45875 msgid "" "Increasing the number of build jobs on multi-core processors can improve " "build speed. Determine the number of cores with <command>sysctl hw.ncpu</" @@ -68094,33 +68509,33 @@ msgstr "" "定。" #. (itstool) path: example/title -#: book.translate.xml:45646 +#: book.translate.xml:45886 msgid "Increasing the Number of Build Jobs" msgstr "增加編譯工作數" #. (itstool) path: example/para -#: book.translate.xml:45648 +#: book.translate.xml:45888 msgid "Building the world and kernel with four jobs:" msgstr "使用四個工作來編譯世界與核心:" #. (itstool) path: example/screen -#: book.translate.xml:45650 +#: book.translate.xml:45890 #, no-wrap msgid "<prompt>#</prompt> <userinput>make -j4 buildworld buildkernel</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:45655 +#: book.translate.xml:45895 msgid "Building Only the Kernel" msgstr "只編譯核心" #. (itstool) path: para/buildtarget -#: book.translate.xml:45659 book.translate.xml:45725 +#: book.translate.xml:45899 book.translate.xml:45965 msgid "buildkernel" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45657 +#: book.translate.xml:45897 msgid "" "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 " @@ -68130,7 +68545,7 @@ msgstr "" "buildtarget-2/> 來編譯核心,若要只編譯核心可:" #. (itstool) path: sect3/screen -#: book.translate.xml:45662 +#: book.translate.xml:45902 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -68138,12 +68553,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:45667 +#: book.translate.xml:45907 msgid "Building a Custom Kernel" msgstr "編譯自訂核心" #. (itstool) path: sect3/para -#: book.translate.xml:45669 +#: book.translate.xml:45909 msgid "" "The standard FreeBSD kernel is based on a <emphasis>kernel config file</" "emphasis> called <filename>GENERIC</filename>. The <filename>GENERIC</" @@ -68157,7 +68572,7 @@ msgstr "" "用,可根據其來加入或移除裝置驅動程式或選項來滿足特定需求。" #. (itstool) path: sect3/para -#: book.translate.xml:45678 +#: book.translate.xml:45918 msgid "" "For example, someone developing a small embedded computer with severely " "limited <acronym>RAM</acronym> could remove unneeded device drivers or " @@ -68167,7 +68582,7 @@ msgstr "" "除不需要的裝置驅動程式或選項來縮小核心。" #. (itstool) path: sect3/para -#: book.translate.xml:45683 +#: book.translate.xml:45923 msgid "" "Kernel config files are located in <filename>/usr/src/sys/<replaceable>arch</" "replaceable>/conf/</filename>, where <replaceable>arch</replaceable> is the " @@ -68182,7 +68597,7 @@ msgstr "" "filename>。" #. (itstool) path: tip/para -#: book.translate.xml:45691 +#: book.translate.xml:45931 msgid "" "<filename>/usr/src</filename> can be deleted or recreated, so it is " "preferable to keep custom kernel config files in a separate directory, like " @@ -68196,7 +68611,7 @@ msgstr "" "心設定的連結。" #. (itstool) path: sect3/para -#: book.translate.xml:45700 +#: book.translate.xml:45940 msgid "" "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 " @@ -68206,7 +68621,7 @@ msgstr "" "自訂核心要用在儲存伺服器,所以將其命名為 <filename>STORAGESERVER</filename>:" #. (itstool) path: sect3/screen -#: book.translate.xml:45705 +#: book.translate.xml:45945 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /usr/src/sys/amd64/conf/GENERIC /root/STORAGESERVER</userinput>\n" @@ -68215,7 +68630,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45709 +#: book.translate.xml:45949 msgid "" "<filename>/root/STORAGESERVER</filename> is then edited, adding or removing " "devices or options as shown in <citerefentry><refentrytitle>config</" @@ -68226,7 +68641,7 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect3/para -#: book.translate.xml:45713 +#: book.translate.xml:45953 msgid "" "The custom kernel is built by setting <varname>KERNCONF</varname> to the " "kernel config file on the command line:" @@ -68234,18 +68649,18 @@ msgstr "" "自訂核心要在指令列設定 <varname>KERNCONF</varname> 為核心設定檔來編譯:" #. (itstool) path: sect3/screen -#: book.translate.xml:45717 +#: book.translate.xml:45957 #, no-wrap msgid "<prompt>#</prompt> <userinput>make buildkernel KERNCONF=STORAGESERVER</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:45722 +#: book.translate.xml:45962 msgid "Installing the Compiled Code" msgstr "安裝編譯好的程式" #. (itstool) path: sect2/para -#: book.translate.xml:45724 +#: book.translate.xml:45964 msgid "" "After the <_:buildtarget-1/> and <_:buildtarget-2/> steps have been " "completed, the new kernel and world are installed:" @@ -68254,7 +68669,7 @@ msgstr "" "心與世界:" #. (itstool) path: sect2/screen -#: book.translate.xml:45728 +#: book.translate.xml:45968 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -68266,7 +68681,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45735 +#: book.translate.xml:45975 msgid "" "If a custom kernel was built, <varname>KERNCONF</varname> must also be set " "to use the new custom kernel:" @@ -68274,7 +68689,7 @@ msgstr "" "若使用自訂核心,則同樣須設定 <varname>KERNCONF</varname> 來使用新的自訂核心:" #. (itstool) path: sect2/screen -#: book.translate.xml:45738 +#: book.translate.xml:45978 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -68286,12 +68701,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:45747 +#: book.translate.xml:45987 msgid "Completing the Update" msgstr "完成更新" #. (itstool) path: sect2/para -#: book.translate.xml:45749 +#: book.translate.xml:45989 msgid "" "A few final tasks complete the update. Any modified configuration files are " "merged with the new versions, outdated libraries are located and removed, " @@ -68301,7 +68716,7 @@ msgstr "" "移除找到的過時程式庫,然後重新啟動系統。" #. (itstool) path: sect3/title -#: book.translate.xml:45755 +#: book.translate.xml:45995 msgid "" "Merging Configuration Files with <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -68310,7 +68725,7 @@ msgstr "" "manvolnum></citerefentry> 合併設定檔案" #. (itstool) path: sect3/para -#: book.translate.xml:45758 +#: book.translate.xml:45998 msgid "" "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> provides an easy way to merge changes that have " @@ -68320,7 +68735,7 @@ msgstr "" "manvolnum></citerefentry> 可簡單的將修改過的系統設定檔與新版設定檔合併。" #. (itstool) path: sect3/para -#: book.translate.xml:45762 +#: book.translate.xml:46002 msgid "" "With <option>-Ui</option>, <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> automatically updates " @@ -68332,13 +68747,13 @@ msgstr "" "者修改過的設定檔並安裝尚不存在的檔案:" #. (itstool) path: sect3/screen -#: book.translate.xml:45766 +#: book.translate.xml:46006 #, no-wrap msgid "<prompt>#</prompt> <userinput>mergemaster -Ui</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45768 +#: book.translate.xml:46008 msgid "" "If a file must be manually merged, an interactive display allows the user to " "choose which portions of the files are kept. See " @@ -68350,58 +68765,58 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: sect3/title -#: book.translate.xml:45775 +#: book.translate.xml:46015 msgid "Checking for Outdated Files and Libraries" msgstr "檢查過時的檔案與程式庫" #. (itstool) path: sect3/para -#: book.translate.xml:45777 +#: book.translate.xml:46017 msgid "" "Some obsolete files or directories can remain after an update. These files " "can be located:" msgstr "部份廢棄的檔案或目錄可以在更新之後保留,可使用以下指令找出這些檔案:" #. (itstool) path: sect3/screen -#: book.translate.xml:45780 +#: book.translate.xml:46020 #, no-wrap msgid "<prompt>#</prompt> <userinput>make check-old</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45782 +#: book.translate.xml:46022 msgid "and deleted:" msgstr "並用以下指令刪除:" #. (itstool) path: sect3/screen -#: book.translate.xml:45784 +#: book.translate.xml:46024 #, no-wrap msgid "<prompt>#</prompt> <userinput>make delete-old</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45786 +#: book.translate.xml:46026 msgid "Some obsolete libraries can also remain. These can be detected with:" msgstr "部份廢棄的程式庫也可以保留下來,可使用以下指令來偵測這些程式庫:" #. (itstool) path: sect3/screen -#: book.translate.xml:45789 +#: book.translate.xml:46029 #, no-wrap msgid "<prompt>#</prompt> <userinput>make check-old-libs</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45791 +#: book.translate.xml:46031 msgid "and deleted with" msgstr "並使用以下指令刪除" #. (itstool) path: sect3/screen -#: book.translate.xml:45793 +#: book.translate.xml:46033 #, no-wrap msgid "<prompt>#</prompt> <userinput>make delete-old-libs</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:45795 +#: book.translate.xml:46035 msgid "" "Programs which were still using those old libraries will stop working when " "the library has been deleted. These programs must be rebuilt or replaced " @@ -68411,7 +68826,7 @@ msgstr "" "舊程式庫之後重新編譯或更換。" #. (itstool) path: tip/para -#: book.translate.xml:45801 +#: book.translate.xml:46041 msgid "" "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 " @@ -68423,36 +68838,36 @@ msgstr "" "<varname>BATCH_DELETE_OLD_FILES</varname>,例如:" #. (itstool) path: tip/screen -#: book.translate.xml:45807 +#: book.translate.xml:46047 #, no-wrap msgid "<prompt>#</prompt> <userinput>make BATCH_DELETE_OLD_FILES=yes delete-old-libs</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:45812 +#: book.translate.xml:46052 msgid "Restarting After the Update" msgstr "更新後重新啟動" #. (itstool) path: sect3/para -#: book.translate.xml:45814 +#: book.translate.xml:46054 msgid "" "The last step after updating is to restart the computer so all the changes " "take effect:" msgstr "更新之後的最後一個步驟便是重新啟動電腦,來讓所有的變更生效:" #. (itstool) path: info/title -#: book.translate.xml:45824 +#: book.translate.xml:46064 msgid "Tracking for Multiple Machines" msgstr "多部機器追蹤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:45837 +#: book.translate.xml:46077 msgid "" "<primary>NFS</primary> <secondary>installing multiple machines</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45842 +#: book.translate.xml:46082 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 " @@ -68470,7 +68885,7 @@ msgstr "" ">。" #. (itstool) path: sect1/para -#: book.translate.xml:45851 +#: book.translate.xml:46091 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 " @@ -68488,7 +68903,7 @@ msgstr "" "buildworld</command> 與 <command>make buildkernel</command> 的主機。" #. (itstool) path: sect1/para -#: book.translate.xml:45861 +#: book.translate.xml:46101 msgid "" "Select a machine to be the <firstterm>test machine</firstterm>, which will " "test software updates before they are put into production. This " @@ -68500,7 +68915,7 @@ msgstr "" "服務停止一段時間的主機,它也可是同時是建置主機,但不是一定要。" #. (itstool) path: sect1/para -#: book.translate.xml:45867 +#: book.translate.xml:46107 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 " @@ -68514,7 +68929,7 @@ msgstr "" "使用 <acronym>NFS</acronym> 掛載。" #. (itstool) path: sect1/para -#: book.translate.xml:45873 +#: book.translate.xml:46113 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. " @@ -68536,7 +68951,7 @@ msgstr "" "usr/src/sys/<replaceable>arch</replaceable>/conf</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:45885 +#: book.translate.xml:46125 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. " @@ -68555,7 +68970,7 @@ msgstr "" "command>。完成之後,重新開機回到正常的多使用者模式運作。" #. (itstool) path: sect1/para -#: book.translate.xml:45896 +#: book.translate.xml:46136 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 " @@ -68565,7 +68980,7 @@ msgstr "" "在建置集中的其他主機。" #. (itstool) path: sect1/para -#: book.translate.xml:45900 +#: book.translate.xml:46140 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 " @@ -68589,22 +69004,22 @@ msgstr "" "<varname>PACKAGES</varname> 到一個類似 <varname>DISTDIR</varname> 的目錄。" #. (itstool) path: info/title -#: book.translate.xml:45933 +#: book.translate.xml:46173 msgid "DTrace" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:45944 +#: book.translate.xml:46184 msgid "<primary>DTrace</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:45945 +#: book.translate.xml:46185 msgid "<primary>DTrace support</primary> <see>DTrace</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45950 +#: book.translate.xml:46190 msgid "" "DTrace, also known as Dynamic Tracing, was developed by <trademark>Sun</" "trademark> as a tool for locating performance bottlenecks in production and " @@ -68614,7 +69029,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45957 +#: book.translate.xml:46197 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 " @@ -68624,7 +69039,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45964 +#: book.translate.xml:46204 msgid "" "The FreeBSD implementation provides full support for kernel DTrace and " "experimental support for userland DTrace. Userland DTrace allows users to " @@ -68638,36 +69053,36 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:45976 +#: book.translate.xml:46216 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:45984 +#: book.translate.xml:46224 msgid "What DTrace is and what features it provides." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45988 +#: book.translate.xml:46228 msgid "" "Differences between the <trademark>Solaris</trademark> DTrace implementation " "and the one provided by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45993 +#: book.translate.xml:46233 msgid "How to enable and use DTrace on FreeBSD." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46013 +#: book.translate.xml:46253 msgid "Implementation Differences" msgstr "實作差異" #. (itstool) path: sect1/para -#: book.translate.xml:46015 +#: book.translate.xml:46255 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, " @@ -68676,20 +69091,20 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46021 +#: book.translate.xml:46261 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload dtraceall</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46023 +#: book.translate.xml:46263 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:46027 +#: book.translate.xml:46267 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 " @@ -68705,7 +69120,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46041 +#: book.translate.xml:46281 msgid "" "Some different providers exist for FreeBSD than for <trademark>Solaris</" "trademark>. Most notable is the <literal>dtmalloc</literal> provider, which " @@ -68720,7 +69135,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46053 +#: book.translate.xml:46293 msgid "" "Due to security differences, only <systemitem class=\"username\">root</" "systemitem> may use DTrace on FreeBSD. <trademark>Solaris</trademark> has a " @@ -68730,7 +69145,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46059 +#: book.translate.xml:46299 msgid "" "DTrace falls under the Common Development and Distribution License " "(<acronym>CDDL</acronym>) license. To view this license on FreeBSD, see " @@ -68743,12 +69158,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46071 +#: book.translate.xml:46311 msgid "Enabling DTrace Support" msgstr "開啟 DTrace 支援" #. (itstool) path: sect1/para -#: book.translate.xml:46073 +#: book.translate.xml:46313 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 " @@ -68758,7 +69173,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:46079 +#: book.translate.xml:46319 #, no-wrap msgid "" "options KDTRACE_HOOKS\n" @@ -68768,18 +69183,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46084 +#: book.translate.xml:46324 msgid "Users of the AMD64 architecture should also add this line:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:46087 +#: book.translate.xml:46327 #, no-wrap msgid "options KDTRACE_FRAME" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46089 +#: book.translate.xml:46329 msgid "" "This option provides support for <acronym>FBT</acronym>. While DTrace will " "work without this option, there will be limited support for function " @@ -68787,7 +69202,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46093 +#: book.translate.xml:46333 msgid "" "Once the FreeBSD system has rebooted into the new kernel, or the DTrace " "kernel modules have been loaded using <command>kldload dtraceall</command>, " @@ -68799,7 +69214,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46103 +#: book.translate.xml:46343 msgid "" "Finally, install the current DTrace Toolkit, a collection of ready-made " "scripts for collecting system information. There are scripts to check open " @@ -68810,7 +69225,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:46116 +#: book.translate.xml:46356 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 " @@ -68819,7 +69234,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46123 +#: book.translate.xml:46363 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 " @@ -68829,12 +69244,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46131 +#: book.translate.xml:46371 msgid "Using DTrace" msgstr "使用 DTrace" #. (itstool) path: sect1/para -#: book.translate.xml:46133 +#: book.translate.xml:46373 msgid "" "DTrace scripts consist of a list of one or more <firstterm>probes</" "firstterm>, or instrumentation points, where each probe is associated with " @@ -68847,19 +69262,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46144 +#: book.translate.xml:46384 msgid "" "To view all probes, the administrator can execute the following command:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46147 +#: book.translate.xml:46387 #, no-wrap msgid "<prompt>#</prompt> <userinput>dtrace -l | more</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46149 +#: book.translate.xml:46389 msgid "" "Each probe has an <literal>ID</literal>, a <literal>PROVIDER</literal> " "(dtrace or fbt), a <literal>MODULE</literal>, and a <literal>FUNCTION NAME</" @@ -68869,7 +69284,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46155 +#: book.translate.xml:46395 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</" @@ -68877,7 +69292,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46161 +#: book.translate.xml:46401 msgid "" "The <filename>hotkernel</filename> script is designed to identify which " "function is using the most kernel time. It will produce output similar to " @@ -68885,7 +69300,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46165 +#: book.translate.xml:46405 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/share/dtrace/toolkit</userinput>\n" @@ -68894,7 +69309,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46169 +#: book.translate.xml:46409 msgid "" "As instructed, use the <keycombo action=\"simul\"><keycap>Ctrl</" "keycap><keycap>C</keycap> </keycombo> key combination to stop the process. " @@ -68903,7 +69318,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46176 +#: book.translate.xml:46416 #, no-wrap msgid "" "kernel`_thread_lock_flags 2 0.0%\n" @@ -68935,14 +69350,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46207 +#: book.translate.xml:46447 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:46210 +#: book.translate.xml:46450 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>./hotkernel -m</userinput>\n" @@ -68964,7 +69379,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46231 +#: book.translate.xml:46471 msgid "" "The <filename>procsystime</filename> script captures and prints the system " "call time usage for a given process <acronym>ID</acronym> (<acronym>PID</" @@ -68976,7 +69391,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46241 +#: book.translate.xml:46481 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>./procsystime -n csh</userinput>\n" @@ -69007,7 +69422,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46267 +#: book.translate.xml:46507 msgid "" "As shown, the <function>read()</function> system call used the most time in " "nanoseconds while the <function>getpid()</function> system call used the " @@ -69015,12 +69430,12 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:46283 +#: book.translate.xml:46523 msgid "USB Device Mode / USB OTG" msgstr "" #. (itstool) path: affiliation/address -#: book.translate.xml:46296 +#: book.translate.xml:46536 #, no-wrap msgid "" "\n" @@ -69029,7 +69444,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:46290 +#: book.translate.xml:46530 msgid "" "<personname> <firstname>Edward Tomasz</firstname> <surname>Napierala</" "surname> </personname> <affiliation> <_:address-1/> </affiliation> " @@ -69037,7 +69452,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46305 +#: book.translate.xml:46545 msgid "" "This chapter covers the use of USB Device Mode and USB On The Go " "(<acronym>USB OTG</acronym>) in FreeBSD. This includes virtual serial " @@ -69045,7 +69460,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46310 +#: book.translate.xml:46550 msgid "" "When running on hardware that supports USB device mode or <acronym>USB OTG</" "acronym>, like that built into many embedded boards, the FreeBSD " @@ -69059,7 +69474,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46322 +#: book.translate.xml:46562 msgid "" "There are two basic ways the hardware can provide the device mode " "functionality: with a separate \"client port\", which only supports the " @@ -69073,7 +69488,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46335 +#: book.translate.xml:46575 msgid "" "What FreeBSD presents to the <acronym>USB</acronym> host depends on the " "<varname>hw.usb.template</varname> sysctl. Some templates provide a single " @@ -69085,7 +69500,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46344 +#: book.translate.xml:46584 msgid "" "Note that in some cases, depending on the hardware and the hosts operating " "system, for the host to notice the configuration change, it must be either " @@ -69100,54 +69515,47 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46359 -#, fuzzy +#: book.translate.xml:46599 msgid "How to set up USB Device Mode functionality on FreeBSD." -msgstr "如何在 FreeBSD 設定 <application>Kerberos</application>。" +msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46364 -#, fuzzy +#: book.translate.xml:46604 msgid "How to configure the virtual serial port on FreeBSD." -msgstr "如何在網路裝置上設定虛擬主機。" +msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46369 -#, fuzzy +#: book.translate.xml:46609 msgid "" "How to connect to the virtual serial port from various operating systems." -msgstr "如何連線終端機到 FreeBSD 系統。" +msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46374 -#, fuzzy +#: book.translate.xml:46614 msgid "" "How to configure FreeBSD to provide a virtual <acronym>USB</acronym> network " "interface." -msgstr "如何設定 FreeBSD 使用 <acronym>USB</acronym> 儲存裝置。" +msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46379 -#, fuzzy +#: book.translate.xml:46619 msgid "" "How to configure FreeBSD to provide a virtual <acronym>USB</acronym> storage " "device." -msgstr "如何設定 FreeBSD 使用 <acronym>USB</acronym> 儲存裝置。" +msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46386 -#, fuzzy +#: book.translate.xml:46626 msgid "<acronym>USB</acronym> Virtual Serial Ports" -msgstr "<acronym>USB</acronym> 大容量儲存目標" +msgstr "<acronym>USB</acronym> 虛擬序列埠" #. (itstool) path: sect2/title -#: book.translate.xml:46389 +#: book.translate.xml:46629 msgid "Configuring USB Device Mode Serial Ports" -msgstr "" +msgstr "設定 USB 裝置模式序列埠" #. (itstool) path: sect2/para -#: book.translate.xml:46391 -#, fuzzy +#: book.translate.xml:46631 msgid "" "Virtual serial port support is provided by templates number 3, 8, and 10. " "Note that template 3 works with Microsoft Windows 10 without the need for " @@ -69157,23 +69565,16 @@ msgid "" "<citerefentry><refentrytitle>umodem</refentrytitle><manvolnum>4</manvolnum></" "citerefentry> kernel modules must be loaded." msgstr "" -"雖然可以使用 <citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 與 <citerefentry><refentrytitle>rrestore</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具可以跨網路備份一個" -"檔案系統到另一個系統或備份到連結另一台電腦的磁帶機,但這使用兩個工具備份的安" -"全性並不足夠。" #. (itstool) path: sect2/para -#: book.translate.xml:46398 -#, fuzzy +#: book.translate.xml:46638 msgid "" "To enable USB device mode serial ports, add those lines to <filename>/etc/" "ttys</filename>:" msgstr "" -"要永久變更權限,可加入下列幾行到 <filename>/etc/devfs.conf</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:46401 +#: book.translate.xml:46641 #, no-wrap msgid "" "ttyU0\t\"/usr/libexec/getty 3wire\"\tvt100\tonifconsole secure\n" @@ -69181,7 +69582,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46407 +#: book.translate.xml:46647 #, no-wrap msgid "" "notify 100 {\n" @@ -69194,29 +69595,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46415 -#, fuzzy +#: book.translate.xml:46655 msgid "" "Reload the configuration if <citerefentry><refentrytitle>devd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is already running:" msgstr "" -"預設的系統設定檔,詳情請參閱 <citerefentry><refentrytitle>rc</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/para #. (itstool) path: sect1/para -#: book.translate.xml:46420 book.translate.xml:46507 -#, fuzzy +#: book.translate.xml:46660 book.translate.xml:46747 msgid "" "Make sure the necessary modules are loaded and the correct template is set " "at boot by adding those lines to <filename>/boot/loader.conf</filename>, " "creating it if it does not already exist:" msgstr "" -"要確保該模組在重新開機後會載入,可加入下行到 <filename>/boot/loader.conf</" -"filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:46425 +#: book.translate.xml:46665 #, no-wrap msgid "" "umodem_load=\"YES\"\n" @@ -69225,12 +69620,12 @@ msgstr "" #. (itstool) path: sect2/para #. (itstool) path: sect1/para -#: book.translate.xml:46428 book.translate.xml:46515 +#: book.translate.xml:46668 book.translate.xml:46755 msgid "To load the module and set the template without rebooting use:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46431 +#: book.translate.xml:46671 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload umodem</userinput>\n" @@ -69238,12 +69633,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46437 +#: book.translate.xml:46677 msgid "Connecting to USB Device Mode Serial Ports from FreeBSD" -msgstr "" +msgstr "自 FreeBSD 連線到 USB 裝置模式序列埠" #. (itstool) path: sect2/para -#: book.translate.xml:46440 +#: book.translate.xml:46680 msgid "" "To connect to a board configured to provide USB device mode serial ports, " "connect the USB host, such as a laptop, to the boards USB OTG or USB client " @@ -69253,23 +69648,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46447 +#: book.translate.xml:46687 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l /dev/ttyU0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46449 +#: book.translate.xml:46689 msgid "After pressing the Enter key a few times you will see a login prompt." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46454 +#: book.translate.xml:46694 msgid "Connecting to USB Device Mode Serial Ports from macOS" -msgstr "" +msgstr "自 macOS 連線到 USB 裝置模式序列埠" #. (itstool) path: sect2/para -#: book.translate.xml:46457 book.translate.xml:46469 +#: book.translate.xml:46697 book.translate.xml:46709 msgid "" "To connect to a board configured to provide USB device mode serial ports, " "connect the USB host, such as a laptop, to the boards USB OTG or USB client " @@ -69277,29 +69672,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46462 +#: book.translate.xml:46702 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l /dev/cu.usbmodemFreeBSD1</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46466 +#: book.translate.xml:46706 msgid "Connecting to USB Device Mode Serial Ports from Linux" -msgstr "" +msgstr "自 Linux 連線到 USB 裝置模式序列埠" #. (itstool) path: sect2/screen -#: book.translate.xml:46474 +#: book.translate.xml:46714 #, no-wrap msgid "<prompt>#</prompt> <userinput>minicom -D /dev/ttyACM0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46478 +#: book.translate.xml:46718 msgid "Connecting to USB Device Mode Serial Ports from Microsoft Windows 10" -msgstr "" +msgstr "自 Microsoft Windows 10 連線到 USB 裝置模式序列埠" #. (itstool) path: sect2/para -#: book.translate.xml:46481 +#: book.translate.xml:46721 msgid "" "To connect to a board configured to provide USB device mode serial ports, " "connect the USB host, such as a laptop, to the boards USB OTG or USB client " @@ -69314,14 +69709,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46498 -#, fuzzy +#: book.translate.xml:46738 msgid "<acronym>USB</acronym> Device Mode Network Interfaces" -msgstr "<acronym>USB</acronym> 儲存裝置" +msgstr "<acronym>USB</acronym> 裝置模式網路介面" #. (itstool) path: sect1/para -#: book.translate.xml:46501 -#, fuzzy +#: book.translate.xml:46741 msgid "" "Virtual network interfaces support is provided by templates number 1, 8, and " "10. Note that none of them works with Microsoft Windows. Other host " @@ -69331,14 +69724,9 @@ msgid "" "refentrytitle><manvolnum>4</manvolnum></citerefentry> kernel modules must be " "loaded." msgstr "" -"雖然可以使用 <citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 與 <citerefentry><refentrytitle>rrestore</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具可以跨網路備份一個" -"檔案系統到另一個系統或備份到連結另一台電腦的磁帶機,但這使用兩個工具備份的安" -"全性並不足夠。" #. (itstool) path: sect1/screen -#: book.translate.xml:46512 +#: book.translate.xml:46752 #, no-wrap msgid "" "if_cdce_load=\"YES\"\n" @@ -69346,7 +69734,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46518 +#: book.translate.xml:46758 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload if_cdce</userinput>\n" @@ -69354,13 +69742,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46523 -#, fuzzy +#: book.translate.xml:46763 msgid "<acronym>USB</acronym> Virtual Storage Device" -msgstr "<acronym>USB</acronym> 儲存裝置" +msgstr "<acronym>USB</acronym> 虛擬儲存裝置" #. (itstool) path: note/para -#: book.translate.xml:46526 +#: book.translate.xml:46766 msgid "" "The <citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> driver is a <acronym>USB</acronym> device mode " @@ -69371,8 +69758,7 @@ msgstr "" "<acronym>USB</acronym> 裝置模式驅動程式。" #. (itstool) path: sect1/para -#: book.translate.xml:46530 -#, fuzzy +#: book.translate.xml:46770 msgid "" "Mass Storage target is provided by templates 0 and 10. Both " "<citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</" @@ -69384,19 +69770,14 @@ msgid "" "side, <acronym>USB</acronym> Mass Storage initiators can only access a " "single <acronym>LUN</acronym>, <acronym>LUN</acronym> 0." msgstr "" -"如同 <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</" -"manvolnum></citerefentry>,<citerefentry><refentrytitle>yppasswd</" -"refentrytitle><manvolnum>1</manvolnum></citerefentry> 連結到 " -"<citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry>,因此 <acronym>NIS</acronym> 在兩個指令上皆可運作。" #. (itstool) path: sect2/title -#: book.translate.xml:46540 +#: book.translate.xml:46780 msgid "Configuring USB Mass Storage Target Using the cfumass Startup Script" -msgstr "" +msgstr "使用 cfumass 啟動 Script 設定 USB 大容量儲存目標" #. (itstool) path: sect2/para -#: book.translate.xml:46543 +#: book.translate.xml:46783 msgid "" "The simplest way to set up a read-only USB storage target is to use the " "<filename>cfumass</filename> rc script. To configure it this way, copy the " @@ -69406,24 +69787,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:46550 +#: book.translate.xml:46790 #, no-wrap msgid "cfumass_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46552 +#: book.translate.xml:46792 msgid "To configure the target without restarting, run this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46555 +#: book.translate.xml:46795 #, no-wrap msgid "<prompt>#</prompt> <userinput>service cfumass start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46557 +#: book.translate.xml:46797 msgid "" "Differently from serial and network functionality, the template should not " "be set to 0 or 10 in <filename>/boot/loader.conf</filename>. This is because " @@ -69432,12 +69813,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46565 +#: book.translate.xml:46805 msgid "Configuring USB Mass Storage Using Other Means" -msgstr "" +msgstr "使用其他方式設定 USB 大容量存儲目標" #. (itstool) path: sect2/para -#: book.translate.xml:46567 +#: book.translate.xml:46807 msgid "" "The rest of this chapter provides detailed description of setting the target " "without using the cfumass rc file. This is necessary if eg one wants to " @@ -69445,7 +69826,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46571 +#: book.translate.xml:46811 msgid "" "<acronym>USB</acronym> Mass Storage does not require the " "<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" @@ -69459,26 +69840,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46579 +#: book.translate.xml:46819 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload cfumass</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46581 +#: book.translate.xml:46821 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:46585 +#: book.translate.xml:46825 #, no-wrap msgid "cfumass_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46587 +#: book.translate.xml:46827 msgid "" "A <acronym>LUN</acronym> can be created without the " "<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" @@ -69486,13 +69867,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46590 +#: book.translate.xml:46830 #, no-wrap msgid "<prompt>#</prompt> <userinput>ctladm create -b block -o file=/data/target0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46592 +#: book.translate.xml:46832 msgid "" "This presents the contents of the image file <filename>/data/target0</" "filename> as a <acronym>LUN</acronym> to the <acronym>USB</acronym> host. " @@ -69502,7 +69883,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46599 +#: book.translate.xml:46839 msgid "" "<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> can also be used to manage <acronym>LUN</acronym>s. Create " @@ -69513,7 +69894,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46606 +#: book.translate.xml:46846 msgid "" "This is an example of a simple <filename>/etc/ctl.conf</filename> " "configuration file. Refer to <citerefentry><refentrytitle>ctl.conf</" @@ -69522,7 +69903,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:46611 +#: book.translate.xml:46851 #, no-wrap msgid "" "target naa.50015178f369f092 {\n" @@ -69534,7 +69915,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46618 +#: book.translate.xml:46858 msgid "" "The example creates a single target with a single <acronym>LUN</acronym>. " "The <literal>naa.50015178f369f092</literal> is a device identifier composed " @@ -69546,7 +69927,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46628 +#: book.translate.xml:46868 msgid "" "To make sure the <citerefentry><refentrytitle>ctld</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon is started at " @@ -69554,26 +69935,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:46632 book.translate.xml:56732 +#: book.translate.xml:46872 book.translate.xml:57259 #, no-wrap msgid "ctld_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46634 book.translate.xml:56734 +#: book.translate.xml:46874 book.translate.xml:57261 msgid "" "To start <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> now, run this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:46636 book.translate.xml:56736 +#: book.translate.xml:46876 book.translate.xml:57263 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ctld start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46638 +#: book.translate.xml:46878 msgid "" "As the <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is started, it reads <filename>/etc/ctl." @@ -69586,18 +69967,18 @@ msgstr "" "生效:" #. (itstool) path: sect2/screen -#: book.translate.xml:46643 book.translate.xml:56743 +#: book.translate.xml:46883 book.translate.xml:57270 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ctld reload</userinput>" msgstr "" #. (itstool) path: part/title -#: book.translate.xml:46651 +#: book.translate.xml:46891 msgid "Network Communication" msgstr "網路通訊" #. (itstool) path: partintro/para -#: book.translate.xml:46654 +#: book.translate.xml:46894 msgid "" "FreeBSD is one of the most widely deployed operating systems for high " "performance network servers. The chapters in this part cover:" @@ -69605,39 +69986,39 @@ msgstr "" "FreeBSD 是一種廣泛的被使用在高效能的網路伺服器中的作業系統,這些章節包含了:" #. (itstool) path: listitem/para -#: book.translate.xml:46660 +#: book.translate.xml:46900 msgid "Serial communication" msgstr "序列通訊" #. (itstool) path: listitem/para -#: book.translate.xml:46664 +#: book.translate.xml:46904 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:46669 book.translate.xml:50550 +#: book.translate.xml:46909 book.translate.xml:50790 msgid "Electronic Mail" msgstr "電子郵件" #. (itstool) path: listitem/para -#: book.translate.xml:46673 +#: book.translate.xml:46913 msgid "Running Network Servers" msgstr "執行網路伺服器" #. (itstool) path: listitem/para #. (itstool) path: info/title -#: book.translate.xml:46677 book.translate.xml:56943 +#: book.translate.xml:46917 book.translate.xml:57470 msgid "Firewalls" msgstr "防火牆" #. (itstool) path: listitem/para -#: book.translate.xml:46681 +#: book.translate.xml:46921 msgid "Other Advanced Networking Topics" msgstr "其他的進階網路主題" #. (itstool) path: partintro/para -#: book.translate.xml:46685 +#: book.translate.xml:46925 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 " @@ -69647,17 +70028,17 @@ msgstr "" "要將這些章節全部讀過之後才將 FreeBSD 用在網路環境下。" #. (itstool) path: chapter/title -#: book.translate.xml:46698 +#: book.translate.xml:46938 msgid "Serial Communications" msgstr "序列通訊" #. (itstool) path: sect1/indexterm -#: book.translate.xml:46703 +#: book.translate.xml:46943 msgid "<primary>serial communications</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46705 +#: book.translate.xml:46945 msgid "" "<trademark class=\"registered\">UNIX</trademark> has always had support for " "serial communications as the very first <trademark class=\"registered" @@ -69672,102 +70053,102 @@ msgstr "" "改變很多。本章將說明幾種可在 FreeBSD 使用的序列通訊方式。" #. (itstool) path: listitem/para -#: book.translate.xml:46716 +#: book.translate.xml:46956 msgid "How to connect terminals to a FreeBSD system." msgstr "如何連線終端機到 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46719 +#: book.translate.xml:46959 msgid "How to use a modem to dial out to remote hosts." msgstr "如何使用數據機撥號給遠端主機。" #. (itstool) path: listitem/para -#: book.translate.xml:46722 +#: book.translate.xml:46962 msgid "How to allow remote users to login to a FreeBSD system with a modem." msgstr "如何允許遠端使用者透過數據機來登入 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46726 +#: book.translate.xml:46966 msgid "How to boot a FreeBSD system from a serial console." msgstr "如何從序列 Console 啟動 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46734 +#: book.translate.xml:46974 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:46738 +#: book.translate.xml:46978 msgid "" "Understand <link linkend=\"basics\"> FreeBSD permissions and processes</" "link>." msgstr "了解 <link linkend=\"basics\"> FreeBSD 的權限與程序</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:46742 +#: book.translate.xml:46982 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:46749 +#: book.translate.xml:46989 msgid "Serial Terminology and Hardware" msgstr "序列術語與硬體" #. (itstool) path: sect1/para -#: book.translate.xml:46751 +#: book.translate.xml:46991 msgid "The following terms are often used in serial communications:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46755 +#: book.translate.xml:46995 msgid "<acronym>bps</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46758 +#: book.translate.xml:46998 msgid "<primary>bits-per-second</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46757 +#: book.translate.xml:46997 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:46765 +#: book.translate.xml:47005 msgid "<acronym>DTE</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46768 +#: book.translate.xml:47008 msgid "<primary>DTE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46767 +#: book.translate.xml:47007 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:46776 +#: book.translate.xml:47016 msgid "<acronym>DCE</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46779 +#: book.translate.xml:47019 msgid "<primary>DCE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46778 +#: book.translate.xml:47018 msgid "" "Data Communications Equipment<_:indexterm-1/> (<acronym>DTE</acronym>) is " "the other endpoint in a serial communication. Typically, it is a modem or " @@ -69775,19 +70156,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46787 +#: book.translate.xml:47027 msgid "<acronym>RS-232</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46789 +#: book.translate.xml:47029 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:46796 +#: book.translate.xml:47036 msgid "" "When referring to communication data rates, this section does not use the " "term <firstterm>baud</firstterm>. Baud refers to the number of electrical " @@ -69796,7 +70177,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46802 +#: book.translate.xml:47042 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. " @@ -69805,12 +70186,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46808 +#: book.translate.xml:47048 msgid "Serial Cables and Ports" msgstr "序列線與埠" #. (itstool) path: sect2/para -#: book.translate.xml:46810 +#: book.translate.xml:47050 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. " @@ -69819,7 +70200,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46815 +#: book.translate.xml:47055 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 " @@ -69832,7 +70213,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46825 +#: book.translate.xml:47065 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 " @@ -69841,7 +70222,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46831 +#: book.translate.xml:47071 msgid "" "A null-modem cable can be constructed using the pin connections summarized " "in <xref linkend=\"nullmodem-db25\"/>, <xref linkend=\"nullmodem-db9\"/>, " @@ -69854,154 +70235,154 @@ msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: step/indexterm -#: book.translate.xml:46840 book.translate.xml:48508 +#: book.translate.xml:47080 book.translate.xml:48748 msgid "<primary>null-modem cable</primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46845 +#: book.translate.xml:47085 msgid "<acronym>RS-232C</acronym> Signal Names" msgstr "<acronym>RS-232C</acronym> 信號名稱" #. (itstool) path: row/entry -#: book.translate.xml:46850 +#: book.translate.xml:47090 msgid "Acronyms" msgstr "縮寫" #. (itstool) path: row/entry -#: book.translate.xml:46851 +#: book.translate.xml:47091 msgid "Names" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46857 +#: book.translate.xml:47097 msgid "<acronym>RD</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46858 book.translate.xml:65535 +#: book.translate.xml:47098 book.translate.xml:65535 msgid "Received Data" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46862 +#: book.translate.xml:47102 msgid "<acronym>TD</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46863 book.translate.xml:65535 +#: book.translate.xml:47103 book.translate.xml:65535 msgid "Transmitted Data" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46867 +#: book.translate.xml:47107 msgid "<acronym>DTR</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46868 book.translate.xml:65535 +#: book.translate.xml:47108 book.translate.xml:65535 msgid "Data Terminal Ready" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46872 +#: book.translate.xml:47112 msgid "<acronym>DSR</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46873 book.translate.xml:65535 +#: book.translate.xml:47113 book.translate.xml:65535 msgid "Data Set Ready" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46877 +#: book.translate.xml:47117 msgid "<acronym>DCD</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46878 +#: book.translate.xml:47118 msgid "Data Carrier Detect" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46882 +#: book.translate.xml:47122 msgid "<acronym>SG</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46883 book.translate.xml:65535 +#: book.translate.xml:47123 book.translate.xml:65535 msgid "Signal Ground" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46887 +#: book.translate.xml:47127 msgid "<acronym>RTS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46888 +#: book.translate.xml:47128 msgid "Request to Send" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46892 +#: book.translate.xml:47132 msgid "<acronym>CTS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46893 +#: book.translate.xml:47133 msgid "Clear to Send" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46900 +#: book.translate.xml:47140 msgid "DB-25 to DB-25 Null-Modem Cable" msgstr "DB-25 對 DB-25 Null-Modem 線" #. (itstool) path: row/entry -#: book.translate.xml:46905 book.translate.xml:46909 book.translate.xml:46995 -#: book.translate.xml:46999 book.translate.xml:47085 book.translate.xml:47089 +#: book.translate.xml:47145 book.translate.xml:47149 book.translate.xml:47235 +#: book.translate.xml:47239 book.translate.xml:47325 book.translate.xml:47329 msgid "Signal" msgstr "信號" #. (itstool) path: row/entry -#: book.translate.xml:46906 book.translate.xml:46908 book.translate.xml:46996 -#: book.translate.xml:46998 book.translate.xml:47086 book.translate.xml:47088 +#: book.translate.xml:47146 book.translate.xml:47148 book.translate.xml:47236 +#: book.translate.xml:47238 book.translate.xml:47326 book.translate.xml:47328 msgid "Pin #" msgstr "針腳 #" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46915 book.translate.xml:46919 book.translate.xml:47037 -#: book.translate.xml:47041 book.translate.xml:47127 book.translate.xml:47131 +#: book.translate.xml:47155 book.translate.xml:47159 book.translate.xml:47277 +#: book.translate.xml:47281 book.translate.xml:47367 book.translate.xml:47371 #: book.translate.xml:65535 msgid "SG" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46917 book.translate.xml:46925 book.translate.xml:46933 -#: book.translate.xml:46941 book.translate.xml:46949 book.translate.xml:46957 -#: book.translate.xml:46965 book.translate.xml:46973 book.translate.xml:46981 -#: book.translate.xml:47007 book.translate.xml:47015 book.translate.xml:47023 -#: book.translate.xml:47031 book.translate.xml:47039 book.translate.xml:47047 -#: book.translate.xml:47055 book.translate.xml:47063 book.translate.xml:47071 -#: book.translate.xml:47097 book.translate.xml:47105 book.translate.xml:47113 -#: book.translate.xml:47121 book.translate.xml:47129 book.translate.xml:47137 -#: book.translate.xml:47145 book.translate.xml:47153 book.translate.xml:47161 +#: book.translate.xml:47157 book.translate.xml:47165 book.translate.xml:47173 +#: book.translate.xml:47181 book.translate.xml:47189 book.translate.xml:47197 +#: book.translate.xml:47205 book.translate.xml:47213 book.translate.xml:47221 +#: book.translate.xml:47247 book.translate.xml:47255 book.translate.xml:47263 +#: book.translate.xml:47271 book.translate.xml:47279 book.translate.xml:47287 +#: book.translate.xml:47295 book.translate.xml:47303 book.translate.xml:47311 +#: book.translate.xml:47337 book.translate.xml:47345 book.translate.xml:47353 +#: book.translate.xml:47361 book.translate.xml:47369 book.translate.xml:47377 +#: book.translate.xml:47385 book.translate.xml:47393 book.translate.xml:47401 msgid "connects to" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46923 book.translate.xml:46935 book.translate.xml:47009 -#: book.translate.xml:47013 book.translate.xml:47099 book.translate.xml:47103 +#: book.translate.xml:47163 book.translate.xml:47175 book.translate.xml:47249 +#: book.translate.xml:47253 book.translate.xml:47339 book.translate.xml:47343 #: book.translate.xml:65535 msgid "TD" msgstr "" @@ -70009,8 +70390,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46927 book.translate.xml:46931 book.translate.xml:47005 -#: book.translate.xml:47017 book.translate.xml:47095 book.translate.xml:47107 +#: book.translate.xml:47167 book.translate.xml:47171 book.translate.xml:47245 +#: book.translate.xml:47257 book.translate.xml:47335 book.translate.xml:47347 #: book.translate.xml:65535 msgid "RD" msgstr "" @@ -70018,8 +70399,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46939 book.translate.xml:46951 book.translate.xml:47061 -#: book.translate.xml:47073 book.translate.xml:47151 book.translate.xml:47163 +#: book.translate.xml:47179 book.translate.xml:47191 book.translate.xml:47301 +#: book.translate.xml:47313 book.translate.xml:47391 book.translate.xml:47403 #: book.translate.xml:65535 msgid "RTS" msgstr "" @@ -70027,8 +70408,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46943 book.translate.xml:46947 book.translate.xml:47065 -#: book.translate.xml:47069 book.translate.xml:47155 book.translate.xml:47159 +#: book.translate.xml:47183 book.translate.xml:47187 book.translate.xml:47305 +#: book.translate.xml:47309 book.translate.xml:47395 book.translate.xml:47399 #: book.translate.xml:65535 msgid "CTS" msgstr "" @@ -70036,53 +70417,53 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46955 book.translate.xml:46963 book.translate.xml:46975 -#: book.translate.xml:46983 book.translate.xml:47021 book.translate.xml:47029 -#: book.translate.xml:47049 book.translate.xml:47057 book.translate.xml:47111 -#: book.translate.xml:47119 book.translate.xml:47139 book.translate.xml:47147 +#: book.translate.xml:47195 book.translate.xml:47203 book.translate.xml:47215 +#: book.translate.xml:47223 book.translate.xml:47261 book.translate.xml:47269 +#: book.translate.xml:47289 book.translate.xml:47297 book.translate.xml:47351 +#: book.translate.xml:47359 book.translate.xml:47379 book.translate.xml:47387 #: book.translate.xml:65535 msgid "DTR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46956 book.translate.xml:46964 book.translate.xml:46974 -#: book.translate.xml:46982 book.translate.xml:47138 book.translate.xml:47146 +#: book.translate.xml:47196 book.translate.xml:47204 book.translate.xml:47214 +#: book.translate.xml:47222 book.translate.xml:47378 book.translate.xml:47386 msgid "20" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46959 book.translate.xml:46971 book.translate.xml:47025 -#: book.translate.xml:47045 book.translate.xml:47115 book.translate.xml:47135 +#: book.translate.xml:47199 book.translate.xml:47211 book.translate.xml:47265 +#: book.translate.xml:47285 book.translate.xml:47355 book.translate.xml:47375 #: book.translate.xml:65535 msgid "DSR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46966 book.translate.xml:46980 book.translate.xml:47064 -#: book.translate.xml:47070 book.translate.xml:47122 book.translate.xml:47160 +#: book.translate.xml:47206 book.translate.xml:47220 book.translate.xml:47304 +#: book.translate.xml:47310 book.translate.xml:47362 book.translate.xml:47400 msgid "8" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46967 book.translate.xml:46979 book.translate.xml:47033 -#: book.translate.xml:47053 book.translate.xml:47123 book.translate.xml:47143 +#: book.translate.xml:47207 book.translate.xml:47219 book.translate.xml:47273 +#: book.translate.xml:47293 book.translate.xml:47363 book.translate.xml:47383 msgid "DCD" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46990 +#: book.translate.xml:47230 msgid "DB-9 to DB-9 Null-Modem Cable" msgstr "DB-9 對 DB-9 Null-Modem 線" #. (itstool) path: table/title -#: book.translate.xml:47080 +#: book.translate.xml:47320 msgid "DB-9 to DB-25 Null-Modem Cable" msgstr "DB-9 對 DB-25 Null-Modem 線" #. (itstool) path: note/para -#: book.translate.xml:47170 +#: book.translate.xml:47410 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 " @@ -70090,7 +70471,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47176 +#: book.translate.xml:47416 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. " @@ -70099,7 +70480,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47182 +#: book.translate.xml:47422 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 " @@ -70109,14 +70490,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47190 +#: book.translate.xml:47430 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:47196 +#: book.translate.xml:47436 msgid "" "Call-in ports are named <filename>/dev/ttyu<replaceable>N</replaceable></" "filename> where <replaceable>N</replaceable> is the port number, starting " @@ -70130,7 +70511,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47211 +#: book.translate.xml:47451 msgid "" "Call-out ports are named <filename>/dev/cuau<replaceable>N</replaceable></" "filename> on FreeBSD versions 8.X and higher and <filename>/dev/" @@ -70141,7 +70522,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47223 +#: book.translate.xml:47463 msgid "" "FreeBSD also provides initialization devices (<filename>/dev/" "ttyu<replaceable>N</replaceable>.init</filename> and <filename>/dev/" @@ -70164,12 +70545,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47247 +#: book.translate.xml:47487 msgid "Serial Port Configuration" msgstr "序列埠設定" #. (itstool) path: sect2/para -#: book.translate.xml:47249 +#: book.translate.xml:47489 msgid "" "By default, FreeBSD supports four serial ports which are commonly known as " "<filename>COM1</filename>, <filename>COM2</filename>, <filename>COM3</" @@ -70181,20 +70562,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47258 +#: book.translate.xml:47498 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:47262 +#: book.translate.xml:47502 #, no-wrap msgid "<prompt>#</prompt> <userinput>grep uart /var/run/dmesg.boot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47264 +#: book.translate.xml:47504 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 " @@ -70208,17 +70589,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47277 +#: book.translate.xml:47517 msgid "<primary><filename>ttyu</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47278 +#: book.translate.xml:47518 msgid "<primary><filename>cuau</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47280 +#: book.translate.xml:47520 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 " @@ -70226,13 +70607,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47285 +#: book.translate.xml:47525 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -a -f /dev/<replaceable>ttyu1</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47287 +#: book.translate.xml:47527 msgid "" "System-wide initialization of serial devices is controlled by <filename>/etc/" "rc.d/serial</filename>. This file affects the default settings of serial " @@ -70246,20 +70627,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47299 +#: book.translate.xml:47539 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -f /dev/ttyu5.init clocal cs8 ixon ixoff</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47301 book.translate.xml:47877 +#: book.translate.xml:47541 book.translate.xml:48117 msgid "" "<primary>rc files</primary> <secondary><filename>rc.serial</filename></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47306 +#: book.translate.xml:47546 msgid "" "To prevent certain settings from being changed by an application, make " "adjustments to the locking device. For example, to lock the speed of " @@ -70267,32 +70648,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47311 +#: book.translate.xml:47551 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -f /dev/ttyu5.lock 57600</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47313 +#: book.translate.xml:47553 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:47321 +#: book.translate.xml:47561 msgid "Terminals" msgstr "終端機" #. (itstool) path: authorgroup/author -#: book.translate.xml:47324 +#: book.translate.xml:47564 msgid "" "<personname> <firstname>Sean</firstname> <surname>Kelly</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47336 +#: book.translate.xml:47576 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 " @@ -70300,7 +70681,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47341 +#: book.translate.xml:47581 msgid "" "The original <trademark class=\"registered\">UNIX</trademark> systems did " "not have consoles. Instead, users logged in and ran programs through " @@ -70308,7 +70689,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47345 +#: book.translate.xml:47585 msgid "" "The ability to establish a login session on a serial port still exists in " "nearly every <trademark class=\"registered\">UNIX</trademark>-like operating " @@ -70318,7 +70699,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47352 +#: book.translate.xml:47592 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 " @@ -70327,17 +70708,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47358 +#: book.translate.xml:47598 msgid "FreeBSD supports three types of terminals:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:47362 +#: book.translate.xml:47602 msgid "Dumb terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47364 +#: book.translate.xml:47604 msgid "" "Dumb terminals are specialized hardware that connect to computers over " "serial lines. They are called <quote>dumb</quote> because they have only " @@ -70347,7 +70728,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47372 +#: book.translate.xml:47612 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 " @@ -70356,19 +70737,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47378 +#: book.translate.xml:47618 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:47385 +#: book.translate.xml:47625 msgid "Computers Acting as Terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47387 +#: book.translate.xml:47627 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 " @@ -70377,7 +70758,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47393 +#: book.translate.xml:47633 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 " @@ -70386,7 +70767,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47399 +#: book.translate.xml:47639 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</" @@ -70396,39 +70777,39 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47403 +#: book.translate.xml:47643 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:47406 -#, fuzzy, no-wrap +#: book.translate.xml:47646 +#, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l /dev/cuau<replaceable>N</replaceable></userinput>" -msgstr "<acronym>POSIX</acronym> 數字 ID,如 <replaceable>789</replaceable>。" +msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47408 +#: book.translate.xml:47648 msgid "" "Ports are numbered starting from zero. This means that <filename>COM1</" "filename> is <filename>/dev/cuau0</filename>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47412 +#: book.translate.xml:47652 msgid "" "Additional programs are available through the Ports Collection, such as " "<package>comms/minicom</package>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:47419 +#: book.translate.xml:47659 msgid "X Terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47421 +#: book.translate.xml:47661 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 " @@ -70437,18 +70818,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47428 +#: book.translate.xml:47668 msgid "" "This chapter does not cover the setup, configuration, or use of X terminals." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47435 +#: book.translate.xml:47675 msgid "Terminal Configuration" msgstr "終端機設定" #. (itstool) path: sect2/para -#: book.translate.xml:47437 +#: book.translate.xml:47677 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 " @@ -70457,7 +70838,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47443 +#: book.translate.xml:47683 msgid "" "In FreeBSD, <command>init</command> reads <filename>/etc/ttys</filename> and " "starts a <command>getty</command> process on the available terminals. The " @@ -70473,7 +70854,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47459 +#: book.translate.xml:47699 msgid "" "The default <filename>/etc/ttys</filename> configures support for the first " "four serial ports, <filename>ttyu0</filename> through <filename>ttyu3</" @@ -70481,7 +70862,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47464 +#: book.translate.xml:47704 #, no-wrap msgid "" "ttyu0 \"/usr/libexec/getty std.9600\" dialup off secure\n" @@ -70491,7 +70872,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47469 +#: book.translate.xml:47709 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</" @@ -70501,7 +70882,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47476 +#: book.translate.xml:47716 msgid "" "<xref linkend=\"ex-etc-ttys\"/> configures two terminals in <filename>/etc/" "ttys</filename>. The first entry configures a Wyse-50 connected to " @@ -70512,12 +70893,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:47485 +#: book.translate.xml:47725 msgid "Configuring Terminal Entries" msgstr "設定終端機項目" #. (itstool) path: example/programlisting -#: book.translate.xml:47487 +#: book.translate.xml:47727 #, 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" @@ -70525,12 +70906,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47492 +#: book.translate.xml:47732 msgid "The first field specifies the device name of the serial terminal." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47497 +#: book.translate.xml:47737 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 " @@ -70546,7 +70927,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47513 +#: book.translate.xml:47753 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 " @@ -70554,7 +70935,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47521 +#: book.translate.xml:47761 msgid "" "The third field is the type of terminal. For dial-up ports, " "<literal>unknown</literal> or <literal>dialup</literal> is typically used " @@ -70566,14 +70947,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47535 +#: book.translate.xml:47775 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:47541 +#: book.translate.xml:47781 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 " @@ -70587,7 +70968,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47555 +#: book.translate.xml:47795 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-" @@ -70595,20 +70976,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47560 book.translate.xml:47875 +#: book.translate.xml:47800 book.translate.xml:48115 #, no-wrap msgid "<prompt>#</prompt> <userinput>kill -HUP 1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47562 +#: book.translate.xml:47802 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:47566 +#: book.translate.xml:47806 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 " @@ -70617,12 +70998,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47574 +#: book.translate.xml:47814 msgid "Troubleshooting the Connection" msgstr "連線疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:47576 +#: book.translate.xml:47816 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 " @@ -70630,7 +71011,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47581 +#: book.translate.xml:47821 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 " @@ -70638,14 +71019,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47586 +#: book.translate.xml:47826 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:47590 +#: book.translate.xml:47830 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 " @@ -70654,7 +71035,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47596 +#: book.translate.xml:47836 msgid "" "Use <command>ps</command> to make sure that a <command>getty</command> " "process is running and serving the terminal. For example, the following " @@ -70664,7 +71045,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47604 +#: book.translate.xml:47844 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ps -axww|grep ttyu</userinput>\n" @@ -70672,7 +71053,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47607 +#: book.translate.xml:47847 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 -" @@ -70680,7 +71061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47612 +#: book.translate.xml:47852 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 " @@ -70695,7 +71076,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47626 +#: book.translate.xml:47866 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 " @@ -70705,7 +71086,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47634 +#: book.translate.xml:47874 msgid "" "If characters appear doubled and the password appears when typed, switch the " "terminal, or the terminal emulation software, from <quote>half duplex</" @@ -70713,31 +71094,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:47643 +#: book.translate.xml:47883 msgid "Dial-in Service" msgstr "撥入服務" #. (itstool) path: authorgroup/author -#: book.translate.xml:47646 +#: book.translate.xml:47886 msgid "" "<personname> <firstname>Guy</firstname> <surname>Helmer</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:47656 +#: book.translate.xml:47896 msgid "" "<personname> <firstname>Sean</firstname> <surname>Kelly</surname> </" "personname> <contrib>Additions by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:47666 +#: book.translate.xml:47906 msgid "<primary>dial-in service</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47668 +#: book.translate.xml:47908 msgid "" "Configuring a FreeBSD system for dial-in service is similar to configuring " "terminals, except that modems are used instead of terminal devices. FreeBSD " @@ -70745,7 +71126,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47673 +#: book.translate.xml:47913 msgid "" "External modems are more convenient because they often can be configured via " "parameters stored in non-volatile <acronym>RAM</acronym> and they usually " @@ -70755,7 +71136,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47680 +#: book.translate.xml:47920 msgid "" "Internal modems usually lack non-volatile <acronym>RAM</acronym>, so their " "configuration may be limited to setting <acronym>DIP</acronym> switches. If " @@ -70764,19 +71145,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:47686 +#: book.translate.xml:47926 msgid "<primary>modem</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47688 +#: book.translate.xml:47928 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:47692 +#: book.translate.xml:47932 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 " @@ -70789,7 +71170,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47702 +#: book.translate.xml:47942 msgid "" "Like other <trademark class=\"registered\">UNIX</trademark>-like operating " "systems, FreeBSD uses the hardware signals to find out when a call has been " @@ -70799,7 +71180,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47708 +#: book.translate.xml:47948 msgid "" "FreeBSD supports the <acronym>NS8250</acronym>, <acronym>NS16450</acronym>, " "<acronym>NS16550</acronym>, and <acronym>NS16550A</acronym>-based " @@ -70815,7 +71196,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47723 +#: book.translate.xml:47963 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 " @@ -70823,17 +71204,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47728 +#: book.translate.xml:47968 msgid "Modem Configuration" msgstr "數據機設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47730 +#: book.translate.xml:47970 msgid "<primary>getty</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47731 +#: book.translate.xml:47971 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 " @@ -70851,12 +71232,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47748 +#: book.translate.xml:47988 msgid "<primary><command>/usr/bin/login</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47752 +#: book.translate.xml:47992 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 " @@ -70869,7 +71250,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47764 +#: book.translate.xml:48004 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 " @@ -70887,7 +71268,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47782 +#: book.translate.xml:48022 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 " @@ -70904,7 +71285,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47799 +#: book.translate.xml:48039 #, no-wrap msgid "" "#\n" @@ -70923,14 +71304,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47813 +#: book.translate.xml:48053 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:47817 +#: book.translate.xml:48057 #, no-wrap msgid "" "#\n" @@ -70950,7 +71331,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47832 +#: book.translate.xml:48072 msgid "" "For a slow <acronym>CPU</acronym> or a heavily loaded system without 16550A-" "based serial ports, this configuration may produce <errorname>sio</" @@ -70958,12 +71339,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47837 +#: book.translate.xml:48077 msgid "<primary><filename>/etc/ttys</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47841 +#: book.translate.xml:48081 msgid "" "The configuration of <filename>/etc/ttys</filename> is similar to <xref " "linkend=\"ex-etc-ttys\"/>, but a different argument is passed to " @@ -70973,13 +71354,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47848 +#: book.translate.xml:48088 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty <replaceable>xxx</replaceable>\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47850 +#: book.translate.xml:48090 msgid "" "The <literal>dialup</literal> terminal type can be changed. For example, " "setting <literal>vt102</literal> as the default terminal type allows users " @@ -70987,7 +71368,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47856 +#: book.translate.xml:48096 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 " @@ -70995,13 +71376,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47861 +#: book.translate.xml:48101 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty std.<replaceable>19200</replaceable>\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47863 +#: book.translate.xml:48103 msgid "" "In a matching-speed configuration, the entry needs to reference the " "appropriate beginning <quote>auto-baud</quote> entry in <filename>/etc/" @@ -71010,20 +71391,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47869 +#: book.translate.xml:48109 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty V19200\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47871 +#: book.translate.xml:48111 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:47882 +#: book.translate.xml:48122 msgid "" "High-speed modems, like <acronym>V.32</acronym>, <acronym>V.32bis</acronym>, " "and <acronym>V.34</acronym> modems, use hardware (<literal>RTS/CTS</" @@ -71034,7 +71415,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47890 +#: book.translate.xml:48130 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>stty -f /dev/ttyu1.init crtscts</userinput>\n" @@ -71042,14 +71423,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48045 +#: book.translate.xml:48285 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:48048 +#: book.translate.xml:48288 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</" @@ -71060,7 +71441,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48057 +#: book.translate.xml:48297 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 " @@ -71068,13 +71449,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48062 +#: book.translate.xml:48302 #, no-wrap msgid " 114 ?? I 0:00.10 /usr/libexec/getty V19200 <replaceable>ttyu0</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48064 +#: book.translate.xml:48304 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 " @@ -71086,7 +71467,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48073 +#: book.translate.xml:48313 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</" @@ -71096,7 +71477,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48080 +#: book.translate.xml:48320 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 " @@ -71107,14 +71488,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48089 +#: book.translate.xml:48329 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:48095 +#: book.translate.xml:48335 msgid "" "The initial capability name specified in the entry in <filename>/etc/ttys</" "filename> matches the name of a capability in <filename>/etc/gettytab</" @@ -71122,21 +71503,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48101 +#: book.translate.xml:48341 msgid "" "Each <literal>nx=</literal> entry matches another <filename>gettytab</" "filename> capability name." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48106 +#: book.translate.xml:48346 msgid "" "Each <literal>tc=</literal> entry matches another <filename>gettytab</" "filename> capability name." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48111 +#: book.translate.xml:48351 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. " @@ -71145,7 +71526,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48118 +#: book.translate.xml:48358 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 " @@ -71153,17 +71534,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:48125 +#: book.translate.xml:48365 msgid "Dial-out Service" msgstr "撥出服務" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48127 +#: book.translate.xml:48367 msgid "<primary>dial-out service</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48129 +#: book.translate.xml:48369 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 " @@ -71171,7 +71552,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48133 +#: book.translate.xml:48373 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 " @@ -71180,19 +71561,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48139 +#: book.translate.xml:48379 msgid "Using a Stock Hayes Modem" msgstr "使用 Stock Hayes 數據機" #. (itstool) path: sect2/para -#: book.translate.xml:48141 +#: book.translate.xml:48381 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:48145 +#: book.translate.xml:48385 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 " @@ -71202,7 +71583,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48152 +#: book.translate.xml:48392 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 " @@ -71210,17 +71591,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48159 +#: book.translate.xml:48399 msgid "Using <literal>AT</literal> Commands" msgstr "使用 <literal>AT</literal> 指令" #. (itstool) path: sect2/indexterm -#: book.translate.xml:48161 +#: book.translate.xml:48401 msgid "<primary><filename>/etc/remote</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48164 +#: book.translate.xml:48404 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>/" @@ -71228,13 +71609,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48170 +#: book.translate.xml:48410 #, no-wrap msgid "cuau0:dv=/dev/cuau0:br#19200:pa=none" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48172 +#: book.translate.xml:48412 msgid "" "Use the highest <acronym>bps</acronym> rate the modem supports in the " "<literal>br</literal> capability. Then, type <command>tip cuau0</command> to " @@ -71242,20 +71623,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48176 +#: book.translate.xml:48416 msgid "" "Or, use <command>cu</command> as <systemitem class=\"username\">root</" "systemitem> with the following command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48179 +#: book.translate.xml:48419 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l<replaceable>line</replaceable> -s<replaceable>speed</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48181 +#: book.translate.xml:48421 msgid "" "<replaceable>line</replaceable> is the serial port, such as <filename>/dev/" "cuau0</filename>, and <replaceable>speed</replaceable> is the speed, such as " @@ -71264,12 +71645,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48189 +#: book.translate.xml:48429 msgid "The <literal>@</literal> Sign Does Not Work" msgstr "<literal>@</literal> 符號無法運作" #. (itstool) path: sect2/para -#: book.translate.xml:48191 +#: book.translate.xml:48431 msgid "" "The <literal>@</literal> sign in the phone number capability tells " "<command>tip</command> to look in <filename>/etc/phones</filename> for a " @@ -71279,25 +71660,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48198 +#: book.translate.xml:48438 #, no-wrap msgid "pn=\\@" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48202 +#: book.translate.xml:48442 msgid "Dialing from the Command Line" msgstr "從指令列撥號" #. (itstool) path: sect2/para -#: book.translate.xml:48204 +#: book.translate.xml:48444 msgid "" "Put a <quote>generic</quote> entry in <filename>/etc/remote</filename>. For " "example:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48207 +#: book.translate.xml:48447 #, no-wrap msgid "" "tip115200|Dial any phone number at 115200 bps:\\\n" @@ -71307,25 +71688,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48212 +#: book.translate.xml:48452 msgid "This should now work:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48214 +#: book.translate.xml:48454 #, no-wrap msgid "<prompt>#</prompt> <userinput>tip -115200 5551234</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48216 +#: book.translate.xml:48456 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:48220 +#: book.translate.xml:48460 #, no-wrap msgid "" "cu115200|Use cu to dial any number at 115200bps:\\\n" @@ -71333,23 +71714,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48223 +#: book.translate.xml:48463 msgid "and type:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48225 +#: book.translate.xml:48465 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu 5551234 -s 115200</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48229 +#: book.translate.xml:48469 msgid "Setting the <acronym>bps</acronym> Rate" msgstr "設定 <acronym>bps</acronym> 率" #. (itstool) path: sect2/para -#: book.translate.xml:48231 +#: book.translate.xml:48471 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 " @@ -71359,12 +71740,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48241 +#: book.translate.xml:48481 msgid "Accessing a Number of Hosts Through a Terminal Server" msgstr "透過終端伺服器存取多個主機" #. (itstool) path: sect2/para -#: book.translate.xml:48244 +#: book.translate.xml:48484 msgid "" "Rather than waiting until connected and typing <command>CONNECT " "<replaceable>host</replaceable></command> each time, use <command>tip</" @@ -71376,7 +71757,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48254 +#: book.translate.xml:48494 #, no-wrap msgid "" "pain|pain.deep13.com|Forrester's machine:\\\n" @@ -71388,26 +71769,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48264 +#: book.translate.xml:48504 msgid "Using More Than One Line with <command>tip</command>" msgstr "在 <command>tip</command> 使用超過一行" #. (itstool) path: sect2/para -#: book.translate.xml:48267 +#: book.translate.xml:48507 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:48271 +#: book.translate.xml:48511 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:48275 +#: book.translate.xml:48515 #, no-wrap msgid "" "big-university:\\\n" @@ -71417,12 +71798,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48280 +#: book.translate.xml:48520 msgid "Then, list the phone numbers in <filename>/etc/phones</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48283 +#: book.translate.xml:48523 #, no-wrap msgid "" "big-university 5551111\n" @@ -71432,7 +71813,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48288 +#: book.translate.xml:48528 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</" @@ -71440,12 +71821,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48295 +#: book.translate.xml:48535 msgid "Using the Force Character" msgstr "使用強制字元" #. (itstool) path: sect2/para -#: book.translate.xml:48297 +#: book.translate.xml:48537 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>P</keycap> </" "keycombo> is the default <quote>force</quote> character, used to tell " @@ -71455,7 +71836,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48306 +#: book.translate.xml:48546 msgid "" "Type <command>~sforce=<replaceable>single-char</replaceable></command> " "followed by a newline. <replaceable>single-char</replaceable> is any single " @@ -71469,25 +71850,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48327 +#: book.translate.xml:48567 msgid "" "To change the force character, specify the following in <filename>~/.tiprc</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48330 +#: book.translate.xml:48570 #, no-wrap msgid "force=<replaceable>single-char</replaceable>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48334 +#: book.translate.xml:48574 msgid "Upper Case Characters" msgstr "大寫字元" #. (itstool) path: sect2/para -#: book.translate.xml:48336 +#: book.translate.xml:48576 msgid "" "This happens when <keycombo action=\"simul\"> <keycap>Ctrl</keycap> " "<keycap>A</keycap> </keycombo> is pressed, which is <command>tip</command>'s " @@ -71498,7 +71879,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48347 +#: book.translate.xml:48587 msgid "" "Here is a sample <filename>~/.tiprc</filename> for <application>Emacs</" "application> users who need to type <keycombo action=\"simul\"> " @@ -71507,7 +71888,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48357 +#: book.translate.xml:48597 #, no-wrap msgid "" "force=^^\n" @@ -71515,19 +71896,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48360 +#: book.translate.xml:48600 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:48368 +#: book.translate.xml:48608 msgid "File Transfers with <command>tip</command>" msgstr "使用 <command>tip</command> 傳輸檔案" #. (itstool) path: sect2/para -#: book.translate.xml:48370 +#: book.translate.xml:48610 msgid "" "When talking to another <trademark class=\"registered\">UNIX</trademark>-" "like operating system, files can be sent and received using <command>~p</" @@ -71537,40 +71918,40 @@ msgid "" msgstr "" #. (itstool) path: sect2/cmdsynopsis -#: book.translate.xml:48376 +#: book.translate.xml:48616 msgid "" "<command>~p</command> <arg choice=\"plain\">local-file</arg> <arg choice=" "\"opt\">remote-file</arg>" msgstr "" #. (itstool) path: sect2/cmdsynopsis -#: book.translate.xml:48382 +#: book.translate.xml:48622 msgid "" "<command>~t</command> <arg choice=\"plain\">remote-file</arg> <arg choice=" "\"opt\">local-file</arg>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48388 +#: book.translate.xml:48628 msgid "" "There is no error checking, so another protocol, like zmodem, should " "probably be used." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48393 +#: book.translate.xml:48633 msgid "Using <application>zmodem</application> with <command>tip</command>?" msgstr "在 <application>zmodem</application> 使用 <command>tip</command>?" #. (itstool) path: sect2/para -#: book.translate.xml:48396 +#: book.translate.xml:48636 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:48400 +#: book.translate.xml:48640 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 " @@ -71578,31 +71959,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:48409 +#: book.translate.xml:48649 msgid "Setting Up the Serial Console" msgstr "設定序列 Console" #. (itstool) path: authorgroup/author -#: book.translate.xml:48412 +#: book.translate.xml:48652 msgid "" "<personname> <firstname>Kazutaka</firstname> <surname>YOKOTA</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:48422 +#: book.translate.xml:48662 msgid "" "<personname> <firstname>Bill</firstname> <surname>Paul</surname> </" "personname> <contrib>Based on a document by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48432 +#: book.translate.xml:48672 msgid "<primary>serial console</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48434 +#: book.translate.xml:48674 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 " @@ -71611,7 +71992,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48441 +#: book.translate.xml:48681 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 " @@ -71620,19 +72001,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48447 +#: book.translate.xml:48687 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:48452 +#: book.translate.xml:48692 msgid "Quick Serial Console Configuration" msgstr "快速序列 Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:48454 +#: book.translate.xml:48694 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</" @@ -71640,32 +72021,32 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:48459 +#: book.translate.xml:48699 msgid "Configuring a Serial Console on <filename>COM1</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48463 +#: book.translate.xml:48703 msgid "" "Connect the serial cable to <filename>COM1</filename> and the controlling " "terminal." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48469 +#: book.translate.xml:48709 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:48473 +#: book.translate.xml:48713 #, no-wrap msgid "<prompt>#</prompt> sysrc -f /boot/loader.conf console=comconsole" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48477 +#: book.translate.xml:48717 msgid "" "Edit <filename>/etc/ttys</filename> and change <literal>off</literal> to " "<literal>on</literal> and <literal>dialup</literal> to <literal>vt100</" @@ -71675,41 +72056,41 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48486 +#: book.translate.xml:48726 msgid "Reboot the system to see if the changes took effect." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48492 +#: book.translate.xml:48732 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:48497 +#: book.translate.xml:48737 msgid "In-Depth Serial Console Configuration" msgstr "深入序列 Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:48499 +#: book.translate.xml:48739 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:48503 +#: book.translate.xml:48743 msgid "Configuring a Serial Console" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48506 +#: book.translate.xml:48746 msgid "Prepare a serial cable." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48510 +#: book.translate.xml:48750 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 " @@ -71717,12 +72098,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48516 +#: book.translate.xml:48756 msgid "Unplug the keyboard." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48518 +#: book.translate.xml:48758 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 " @@ -71730,14 +72111,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48524 +#: book.translate.xml:48764 msgid "" "If the computer complains about the error, but boots anyway, no further " "configuration is needed." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48527 +#: book.translate.xml:48767 msgid "" "If the computer refuses to boot without a keyboard attached, configure the " "<acronym>BIOS</acronym> so that it ignores this error. Consult the " @@ -71745,7 +72126,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:48533 +#: book.translate.xml:48773 msgid "" "Try setting the keyboard to <quote>Not installed</quote> in the " "<acronym>BIOS</acronym>. This setting tells the <acronym>BIOS</acronym> not " @@ -71757,7 +72138,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48544 +#: book.translate.xml:48784 msgid "" "If the system has a <trademark class=\"registered\">PS/2</trademark> mouse, " "unplug it as well. <trademark class=\"registered\">PS/2</trademark> mice " @@ -71766,7 +72147,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48550 +#: book.translate.xml:48790 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 " @@ -71779,7 +72160,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48565 +#: book.translate.xml:48805 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 " @@ -71787,7 +72168,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48571 +#: book.translate.xml:48811 msgid "" "Add the appropriate <literal>hint.sio.*</literal> entries to <filename>/boot/" "device.hints</filename> for the serial port. Some multi-port cards also " @@ -71798,14 +72179,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48580 +#: book.translate.xml:48820 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:48584 +#: book.translate.xml:48824 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 " @@ -71814,12 +72195,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:48592 book.translate.xml:48701 +#: book.translate.xml:48832 book.translate.xml:48941 msgid "<option>-h</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48595 +#: book.translate.xml:48835 msgid "" "Toggles between the internal and serial consoles. Use this to switch console " "devices. For instance, to boot from the internal (video) console, use " @@ -71831,12 +72212,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:48608 book.translate.xml:48706 +#: book.translate.xml:48848 book.translate.xml:48946 msgid "<option>-D</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48611 +#: book.translate.xml:48851 msgid "" "Toggles between the single and dual console configurations. In the single " "configuration, the console will be either the internal console (video " @@ -71849,19 +72230,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:48629 +#: book.translate.xml:48869 msgid "<option>-P</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48632 +#: book.translate.xml:48872 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:48638 +#: book.translate.xml:48878 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 " @@ -71871,7 +72252,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48651 +#: book.translate.xml:48891 msgid "" "Use either <option>-P</option> to select the console automatically or " "<option>-h</option> to activate the serial console. Refer to " @@ -71881,7 +72262,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48656 +#: book.translate.xml:48896 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 " @@ -71893,19 +72274,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48669 +#: book.translate.xml:48909 msgid "Boot the machine." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48671 +#: book.translate.xml:48911 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:48675 +#: book.translate.xml:48915 #, no-wrap msgid "" "/boot.config: -P\n" @@ -71913,7 +72294,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48678 +#: book.translate.xml:48918 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. " @@ -71922,52 +72303,52 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48689 +#: book.translate.xml:48929 msgid "Options" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48690 +#: book.translate.xml:48930 msgid "Message goes to" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48696 +#: book.translate.xml:48936 msgid "none" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48697 book.translate.xml:48717 +#: book.translate.xml:48937 book.translate.xml:48957 msgid "internal console" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48702 book.translate.xml:48722 +#: book.translate.xml:48942 book.translate.xml:48962 msgid "serial console" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48707 book.translate.xml:48712 +#: book.translate.xml:48947 book.translate.xml:48952 msgid "serial and internal consoles" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48711 +#: book.translate.xml:48951 msgid "<option>-Dh</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48716 +#: book.translate.xml:48956 msgid "<option>-P</option>, keyboard present" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48721 +#: book.translate.xml:48961 msgid "<option>-P</option>, keyboard absent" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48728 +#: book.translate.xml:48968 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 " @@ -71977,7 +72358,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48735 +#: book.translate.xml:48975 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 " @@ -71985,7 +72366,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48743 +#: book.translate.xml:48983 msgid "" "Verify that the above message appears on either the serial or internal " "console, or both, according to the options in <filename>/boot.config</" @@ -71994,7 +72375,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48750 +#: book.translate.xml:48990 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 " @@ -72004,7 +72385,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48760 +#: book.translate.xml:49000 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 " @@ -72013,7 +72394,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48767 +#: book.translate.xml:49007 msgid "" "This line in <filename>/boot/loader.conf</filename> or <filename>/boot/" "loader.conf.local</filename> configures the boot loader and the kernel to " @@ -72022,13 +72403,13 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:48773 +#: book.translate.xml:49013 #, no-wrap msgid "console=\"comconsole\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48775 +#: book.translate.xml:49015 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 " @@ -72036,7 +72417,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48780 +#: book.translate.xml:49020 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 " @@ -72046,7 +72427,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48786 +#: book.translate.xml:49026 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 " @@ -72055,7 +72436,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:48794 +#: book.translate.xml:49034 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 " @@ -72065,12 +72446,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48805 +#: book.translate.xml:49045 msgid "Setting a Faster Serial Port Speed" msgstr "設定使用更快的序列埠速度" #. (itstool) path: sect2/para -#: book.translate.xml:48807 +#: book.translate.xml:49047 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 " @@ -72078,7 +72459,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48813 +#: book.translate.xml:49053 msgid "" "Edit <filename>/etc/make.conf</filename> and set " "<varname>BOOT_COMCONSOLE_SPEED</varname> to the new console speed. Then, " @@ -72086,7 +72467,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:48818 +#: book.translate.xml:49058 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /sys/boot</userinput>\n" @@ -72096,7 +72477,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48823 +#: book.translate.xml:49063 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 " @@ -72106,13 +72487,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:48830 +#: book.translate.xml:49070 #, no-wrap msgid "options CONSPEED=<replaceable>19200</replaceable>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48834 +#: book.translate.xml:49074 msgid "" "Add the <option>-S<replaceable>19200</replaceable></option> boot option to " "<filename>/boot.config</filename>, replacing <replaceable>19200</" @@ -72120,14 +72501,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48842 +#: book.translate.xml:49082 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:48847 +#: book.translate.xml:49087 #, no-wrap msgid "" "boot_multicons=\"YES\"\n" @@ -72137,12 +72518,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48856 +#: book.translate.xml:49096 msgid "Entering the DDB Debugger from the Serial Line" msgstr "從序列線路 (Serial Line) 進入 DDB 除錯程式" #. (itstool) path: sect2/para -#: book.translate.xml:48858 +#: book.translate.xml:49098 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 " @@ -72156,7 +72537,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48867 +#: book.translate.xml:49107 #, no-wrap msgid "" "options BREAK_TO_DEBUGGER\n" @@ -72164,18 +72545,18 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:48892 +#: book.translate.xml:49132 msgid "<acronym>PPP</acronym>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) id: book.translate.xml#ppp-ppp -#: book.translate.xml:48897 book.translate.xml:48924 +#: book.translate.xml:49137 book.translate.xml:49164 msgid "<primary><acronym>PPP</acronym></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48901 +#: book.translate.xml:49141 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 " @@ -72187,13 +72568,13 @@ msgstr "" "為基礎的通訊服務。" #. (itstool) path: listitem/para -#: book.translate.xml:48910 +#: book.translate.xml:49150 msgid "" "How to configure, use, and troubleshoot a <acronym>PPP</acronym> connection." msgstr "如何設定、使用 <acronym>PPP</acronym> 連線及排除問題。" #. (itstool) path: listitem/para -#: book.translate.xml:48914 +#: book.translate.xml:49154 msgid "" "How to set up <acronym>PPP</acronym> over Ethernet (<acronym>PPPoE</" "acronym>)." @@ -72202,7 +72583,7 @@ msgstr "" "acronym>)。" #. (itstool) path: listitem/para -#: book.translate.xml:48918 +#: book.translate.xml:49158 msgid "" "How to set up <acronym>PPP</acronym> over <acronym>ATM</acronym> " "(<acronym>PPPoA</acronym>)." @@ -72211,31 +72592,31 @@ msgstr "" "(<acronym>PPPoA</acronym>)。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48927 book.translate.xml:50188 +#: book.translate.xml:49167 book.translate.xml:50428 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>over Ethernet</" "secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48936 book.translate.xml:60718 +#: book.translate.xml:49176 book.translate.xml:61752 msgid "Be familiar with basic network terminology." msgstr "熟悉基本網路術語。" #. (itstool) path: listitem/para -#: book.translate.xml:48939 +#: book.translate.xml:49179 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:48980 +#: book.translate.xml:49220 msgid "Configuring <acronym>PPP</acronym>" msgstr "設定 <acronym>PPP</acronym>" #. (itstool) path: sect1/para -#: book.translate.xml:48982 +#: book.translate.xml:49222 msgid "" "FreeBSD provides built-in support for managing dial-up <acronym>PPP</" "acronym> connections using <citerefentry><refentrytitle>ppp</" @@ -72248,35 +72629,35 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48991 +#: book.translate.xml:49231 msgid "" "In order to use a <acronym>PPP</acronym> connection, the following items are " "needed:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48996 +#: book.translate.xml:49236 msgid "" "A dial-up account with an Internet Service Provider (<acronym>ISP</acronym>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49001 +#: book.translate.xml:49241 msgid "A dial-up modem." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49005 +#: book.translate.xml:49245 msgid "The dial-up number for the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49010 +#: book.translate.xml:49250 msgid "The login name and password assigned by the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49015 +#: book.translate.xml:49255 msgid "" "The <acronym>IP</acronym> address of one or more <acronym>DNS</acronym> " "servers. Normally, the <acronym>ISP</acronym> provides these addresses. If " @@ -72285,21 +72666,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:49023 +#: book.translate.xml:49263 msgid "" "If any of the required information is missing, contact the <acronym>ISP</" "acronym>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:49026 +#: book.translate.xml:49266 msgid "" "The following information may be supplied by the <acronym>ISP</acronym>, but " "is not necessary:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49031 +#: book.translate.xml:49271 msgid "" "The <acronym>IP</acronym> address of the default gateway. If this " "information is unknown, the <acronym>ISP</acronym> will automatically " @@ -72309,7 +72690,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49040 +#: book.translate.xml:49280 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 " @@ -72319,12 +72700,12 @@ msgstr "" #. (itstool) path: listitem/indexterm #. (itstool) id: book.translate.xml#ppp-static-ip -#: book.translate.xml:49046 +#: book.translate.xml:49286 msgid "<primary>static <acronym>IP</acronym> address</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49050 +#: book.translate.xml:49290 msgid "" "If the <acronym>ISP</acronym> has assigned a static <acronym>IP</acronym> " "address and hostname, it should be input into the configuration file. " @@ -72333,7 +72714,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:49058 +#: book.translate.xml:49298 msgid "" "The rest of this section demonstrates how to configure FreeBSD for common " "<acronym>PPP</acronym> connection scenarios. The required configuration file " @@ -72342,7 +72723,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49066 +#: book.translate.xml:49306 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 " @@ -72350,7 +72731,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49071 +#: book.translate.xml:49311 msgid "" "When editing a configuration file, proper indentation is important. Lines " "that end in a <literal>:</literal> start in the first column (beginning of " @@ -72359,19 +72740,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49078 book.translate.xml:51439 +#: book.translate.xml:49318 book.translate.xml:51679 msgid "Basic Configuration" msgstr "基礎設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49080 +#: book.translate.xml:49320 msgid "" "<primary>PPP</primary> <secondary>with static <acronym>IP</acronym> " "addresses</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49086 +#: book.translate.xml:49326 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 " @@ -72379,7 +72760,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49091 +#: book.translate.xml:49331 #, no-wrap msgid "" "1 default:\n" @@ -72402,12 +72783,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49111 +#: book.translate.xml:49351 msgid "Line 1:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49114 +#: book.translate.xml:49354 msgid "" "Identifies the <literal>default</literal> entry. Commands in this entry " "(lines 2 through 9) are executed automatically when <command>ppp</command> " @@ -72415,30 +72796,30 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49122 +#: book.translate.xml:49362 msgid "Line 2:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49125 +#: book.translate.xml:49365 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:49130 +#: book.translate.xml:49370 #, no-wrap msgid "set log phase tun" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49136 +#: book.translate.xml:49376 msgid "Line 3:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49139 +#: book.translate.xml:49379 msgid "" "Displays the version of <citerefentry><refentrytitle>ppp</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to the <acronym>PPP</" @@ -72446,12 +72827,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49146 +#: book.translate.xml:49386 msgid "Line 4:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49149 +#: book.translate.xml:49389 msgid "" "Identifies the device to which the modem is connected, where <filename>COM1</" "filename> is <filename>/dev/cuau0</filename> and <filename>COM2</filename> " @@ -72459,24 +72840,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49158 +#: book.translate.xml:49398 msgid "Line 5:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49161 +#: book.translate.xml:49401 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:49168 +#: book.translate.xml:49408 msgid "Lines 6 & 7:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49171 +#: book.translate.xml:49411 msgid "" "The dial string written as an expect-send syntax. Refer to " "<citerefentry><refentrytitle>chat</refentrytitle><manvolnum>8</manvolnum></" @@ -72484,7 +72865,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49175 +#: book.translate.xml:49415 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 " @@ -72492,22 +72873,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49184 +#: book.translate.xml:49424 msgid "Line 8:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49187 +#: book.translate.xml:49427 msgid "Sets the idle timeout for the link in seconds." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49193 +#: book.translate.xml:49433 msgid "Line 9:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49196 +#: book.translate.xml:49436 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 " @@ -72516,12 +72897,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49206 +#: book.translate.xml:49446 msgid "Line 10:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49209 +#: book.translate.xml:49449 msgid "" "A blank line for readability. Blank lines are ignored by " "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -72529,12 +72910,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49215 +#: book.translate.xml:49455 msgid "Line 11:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49218 +#: book.translate.xml:49458 msgid "" "Identifies an entry called <literal>provider</literal>. This could be " "changed to the name of the <acronym>ISP</acronym> so that <option>load " @@ -72542,12 +72923,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49228 +#: book.translate.xml:49468 msgid "Line 12:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49231 +#: book.translate.xml:49471 msgid "" "Use the phone number for the <acronym>ISP</acronym>. Multiple phone numbers " "may be specified using the colon (<literal>:</literal>) or pipe character " @@ -72559,22 +72940,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49246 +#: book.translate.xml:49486 msgid "Lines 13 & 14:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49249 +#: book.translate.xml:49489 msgid "Use the user name and password for the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49255 book.translate.xml:49660 +#: book.translate.xml:49495 book.translate.xml:49900 msgid "Line 15:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49258 +#: book.translate.xml:49498 msgid "" "Sets the default idle timeout in seconds for the connection. In this " "example, the connection will be closed automatically after 300 seconds of " @@ -72582,12 +72963,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49267 +#: book.translate.xml:49507 msgid "Line 16:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49269 +#: book.translate.xml:49509 msgid "" "Sets the interface addresses. The values used depend upon whether a static " "<acronym>IP</acronym> address has been obtained from the <acronym>ISP</" @@ -72596,7 +72977,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49276 +#: book.translate.xml:49516 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 " @@ -72608,7 +72989,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49287 +#: book.translate.xml:49527 msgid "" "If the <acronym>IP</acronym> address changes whenever a connection is made, " "change this line to the following value. This tells " @@ -72619,18 +73000,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49294 +#: book.translate.xml:49534 #, 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:49300 +#: book.translate.xml:49540 msgid "Line 17:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49303 +#: book.translate.xml:49543 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 " @@ -72639,7 +73020,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49312 +#: book.translate.xml:49552 msgid "" "Depending upon whether <citerefentry><refentrytitle>ppp</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is started manually or " @@ -72654,7 +73035,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49326 +#: book.translate.xml:49566 #, no-wrap msgid "" "provider:\n" @@ -72662,7 +73043,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49329 +#: book.translate.xml:49569 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 " @@ -72673,7 +73054,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49337 +#: book.translate.xml:49577 msgid "" "By default, <command>ppp</command> must be run as <systemitem class=" "\"username\">root</systemitem>. To change this default, add the account of " @@ -72682,7 +73063,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49343 +#: book.translate.xml:49583 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 " @@ -72692,39 +73073,39 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49352 +#: book.translate.xml:49592 #, no-wrap msgid "allow users <replaceable>fred mary</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49354 +#: book.translate.xml:49594 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:49564 +#: book.translate.xml:49804 msgid "<primary>NetBIOS</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49568 +#: book.translate.xml:49808 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>Microsoft extensions</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49573 +#: book.translate.xml:49813 msgid "" "It is possible to configure PPP to supply DNS and NetBIOS nameserver " "addresses on demand." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49576 +#: book.translate.xml:49816 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/" @@ -72732,7 +73113,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49581 +#: book.translate.xml:49821 #, no-wrap msgid "" "enable msext\n" @@ -72741,12 +73122,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49585 +#: book.translate.xml:49825 msgid "And for <acronym>PPP</acronym> version 2 and above:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49588 +#: book.translate.xml:49828 #, no-wrap msgid "" "accept dns\n" @@ -72755,14 +73136,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49592 +#: book.translate.xml:49832 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:49596 +#: book.translate.xml:49836 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." @@ -72770,22 +73151,22 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:49602 +#: book.translate.xml:49842 msgid "PAP and CHAP Authentication" msgstr "PAP 與 CHAP 認證" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49604 +#: book.translate.xml:49844 msgid "<primary>PAP</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49605 +#: book.translate.xml:49845 msgid "<primary>CHAP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49606 +#: book.translate.xml:49846 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 " @@ -72795,7 +73176,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49614 +#: book.translate.xml:49854 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 " @@ -72804,12 +73185,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49620 +#: book.translate.xml:49860 msgid "The following alterations must be made:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49623 +#: book.translate.xml:49863 #, no-wrap msgid "" "13 set authname <replaceable>MyUserName</replaceable>\n" @@ -72818,29 +73199,29 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49629 +#: book.translate.xml:49869 msgid "Line 13:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49632 +#: book.translate.xml:49872 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:49639 +#: book.translate.xml:49879 msgid "Line 14:" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:49642 +#: book.translate.xml:49882 msgid "<primary>password</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49641 +#: book.translate.xml:49881 msgid "" "This line specifies the PAP/CHAP password<_:indexterm-1/>. Insert the " "correct value for <replaceable>MyPassword</replaceable>. You may want to add " @@ -72848,26 +73229,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49647 +#: book.translate.xml:49887 #, no-wrap msgid "16 accept PAP" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49651 +#: book.translate.xml:49891 #, no-wrap msgid "16 accept CHAP" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49653 +#: book.translate.xml:49893 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:49663 +#: book.translate.xml:49903 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> " @@ -72875,17 +73256,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:49673 +#: book.translate.xml:49913 msgid "Using <acronym>PPP</acronym> Network Address Translation Capability" msgstr "使用 <acronym>PPP</acronym> 網路位址轉譯功能" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49676 +#: book.translate.xml:49916 msgid "<primary><acronym>PPP</acronym></primary><secondary>NAT</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49680 +#: book.translate.xml:49920 msgid "" "PPP has ability to use internal NAT without kernel diverting capabilities. " "This functionality may be enabled by the following line in <filename>/etc/" @@ -72893,13 +73274,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49685 +#: book.translate.xml:49925 #, no-wrap msgid "nat enable yes" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49687 +#: book.translate.xml:49927 msgid "" "Alternatively, NAT may be enabled by command-line option <literal>-nat</" "literal>. There is also <filename>/etc/rc.conf</filename> knob named " @@ -72907,7 +73288,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49693 +#: book.translate.xml:49933 msgid "" "When using this feature, it may be useful to include the following " "<filename>/etc/ppp/ppp.conf</filename> options to enable incoming " @@ -72915,7 +73296,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49697 +#: book.translate.xml:49937 #, no-wrap msgid "" "nat port tcp 10.0.0.2:ftp ftp\n" @@ -72923,56 +73304,56 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49700 +#: book.translate.xml:49940 msgid "or do not trust the outside at all" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49702 +#: book.translate.xml:49942 #, no-wrap msgid "nat deny_incoming yes" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49707 +#: book.translate.xml:49947 msgid "Final System Configuration" msgstr "最終系統設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49709 +#: book.translate.xml:49949 msgid "" "<primary><acronym>PPP</acronym></primary><secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49713 +#: book.translate.xml:49953 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:49717 +#: book.translate.xml:49957 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:49720 +#: book.translate.xml:49960 #, no-wrap msgid "hostname=\"foo.example.com\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49722 +#: book.translate.xml:49962 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:49726 +#: book.translate.xml:49966 msgid "" "Look for the <literal>network_interfaces</literal> variable. To configure " "the system to dial the <acronym>ISP</acronym> on demand, make sure the " @@ -72980,7 +73361,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49732 +#: book.translate.xml:49972 #, no-wrap msgid "" "network_interfaces=\"lo0 tun0\"\n" @@ -72988,7 +73369,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49736 +#: book.translate.xml:49976 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 " @@ -72996,13 +73377,13 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:49741 +#: book.translate.xml:49981 #, no-wrap msgid "ppp -auto mysystem" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49743 +#: book.translate.xml:49983 msgid "" "This script is executed at network configuration time, starting the ppp " "daemon in automatic mode. If this machine acts as a gateway, consider " @@ -73011,25 +73392,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49750 +#: book.translate.xml:49990 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:49754 +#: book.translate.xml:49994 #, no-wrap msgid "router_enable=\"NO\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49756 +#: book.translate.xml:49996 msgid "<primary><application>routed</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49760 +#: book.translate.xml:50000 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 " @@ -73037,7 +73418,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49765 +#: book.translate.xml:50005 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 " @@ -73046,18 +73427,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49772 +#: book.translate.xml:50012 #, no-wrap msgid "sendmail_flags=\"-bd\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49774 +#: book.translate.xml:50014 msgid "<primary><application>sendmail</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49777 +#: book.translate.xml:50017 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</" @@ -73065,7 +73446,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49782 +#: book.translate.xml:50022 #, no-wrap msgid "" "1 provider:\n" @@ -73075,36 +73456,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49787 book.translate.xml:51464 +#: book.translate.xml:50027 book.translate.xml:51704 msgid "<primary>SMTP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49791 +#: book.translate.xml:50031 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:49797 +#: book.translate.xml:50037 msgid "Using <command>ppp</command>" msgstr "使用 <command>ppp</command>" #. (itstool) path: sect2/para -#: book.translate.xml:49799 +#: book.translate.xml:50039 msgid "" "All that is left is to reboot the machine. After rebooting, either type:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49802 book.translate.xml:49995 +#: book.translate.xml:50042 book.translate.xml:50235 #, no-wrap msgid "<prompt>#</prompt> <userinput>ppp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49804 +#: book.translate.xml:50044 msgid "" "and then <command>dial provider</command> to start the <acronym>PPP</" "acronym> session, or, to configure <command>ppp</command> to establish " @@ -73113,13 +73494,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49811 +#: book.translate.xml:50051 #, no-wrap msgid "<prompt>#</prompt> <userinput>ppp -auto provider</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49813 +#: book.translate.xml:50053 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 " @@ -73127,13 +73508,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49818 +#: book.translate.xml:50058 #, no-wrap msgid "set server /var/run/ppp-tun<replaceable>%d</replaceable> DiagnosticPassword 0177" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49820 +#: book.translate.xml:50060 msgid "" "This will tell PPP to listen to the specified <trademark class=\"registered" "\">UNIX</trademark> domain socket, asking clients for the specified password " @@ -73142,7 +73523,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49827 +#: book.translate.xml:50067 msgid "" "Once a socket has been set up, the <citerefentry><refentrytitle>pppctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> program may be used in " @@ -73150,27 +73531,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49833 +#: book.translate.xml:50073 msgid "Configuring Dial-in Services" msgstr "設定撥入服務" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49835 +#: book.translate.xml:50075 msgid "<primary><command>mgetty</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49839 +#: book.translate.xml:50079 msgid "<primary>AutoPPP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49843 +#: book.translate.xml:50083 msgid "<primary>LCP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49846 +#: book.translate.xml:50086 msgid "" "<xref linkend=\"dialup\"/> provides a good description on enabling dial-up " "services using <citerefentry><refentrytitle>getty</" @@ -73178,7 +73559,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49849 +#: book.translate.xml:50089 msgid "" "An alternative to <command>getty</command> is <package>comms/mgetty+sendfax</" "package> port), a smarter version of <command>getty</command> designed with " @@ -73186,7 +73567,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49854 +#: book.translate.xml:50094 msgid "" "The advantages of using <command>mgetty</command> is that it actively " "<emphasis>talks</emphasis> to modems, meaning if port is turned off in " @@ -73194,7 +73575,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49860 +#: book.translate.xml:50100 msgid "" "Later versions of <command>mgetty</command> (from 0.99beta onwards) also " "support the automatic detection of <acronym>PPP</acronym> streams, allowing " @@ -73202,7 +73583,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49865 +#: book.translate.xml:50105 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 " @@ -73210,7 +73591,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49868 +#: book.translate.xml:50108 msgid "" "By default the <package>comms/mgetty+sendfax</package> port comes with the " "<literal>AUTO_PPP</literal> option enabled allowing <command>mgetty</" @@ -73221,41 +73602,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49877 +#: book.translate.xml:50117 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:49882 +#: book.translate.xml:50122 msgid "" "Ensure that <filename>/usr/local/etc/mgetty+sendfax/login.config</filename> " "has the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49886 +#: book.translate.xml:50126 #, no-wrap msgid "/AutoPPP/ - - /etc/ppp/ppp-pap-dialup" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49888 +#: book.translate.xml:50128 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:49892 +#: book.translate.xml:50132 msgid "" "Create an executable file called <filename>/etc/ppp/ppp-pap-dialup</" "filename> containing the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49896 +#: book.translate.xml:50136 #, no-wrap msgid "" "#!/bin/sh\n" @@ -73263,7 +73644,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49899 +#: book.translate.xml:50139 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 " @@ -73271,7 +73652,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49905 +#: book.translate.xml:50145 #, no-wrap msgid "" "pap:\n" @@ -73281,7 +73662,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49910 +#: book.translate.xml:50150 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 " @@ -73290,13 +73671,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49917 +#: book.translate.xml:50157 #, no-wrap msgid "enable passwdauth" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49919 +#: book.translate.xml:50159 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>. " @@ -73305,19 +73686,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:49939 +#: book.translate.xml:50179 msgid "Troubleshooting <acronym>PPP</acronym> Connections" msgstr "<acronym>PPP</acronym> 連線疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:49941 +#: book.translate.xml:50181 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>troubleshooting</" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:49946 +#: book.translate.xml:50186 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 " @@ -73328,25 +73709,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49957 +#: book.translate.xml:50197 msgid "Check the Device Nodes" msgstr "檢查裝置節點" #. (itstool) path: sect2/para -#: book.translate.xml:49959 +#: book.translate.xml:50199 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:49962 +#: book.translate.xml:50202 #, no-wrap msgid "device uart" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49964 +#: book.translate.xml:50204 msgid "" "The <filename>uart</filename> device is already included in the " "<literal>GENERIC</literal> kernel, so no additional steps are necessary in " @@ -73355,13 +73736,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49970 +#: book.translate.xml:50210 #, no-wrap msgid "<prompt>#</prompt> <userinput>dmesg | grep uart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49972 +#: book.translate.xml:50212 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 " @@ -73372,12 +73753,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49983 +#: book.translate.xml:50223 msgid "Connecting Manually" msgstr "手動連線" #. (itstool) path: sect2/para -#: book.translate.xml:49985 +#: book.translate.xml:50225 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 " @@ -73389,36 +73770,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49997 +#: book.translate.xml:50237 #, no-wrap msgid "ppp ON example> <userinput>set device /dev/cuau1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49999 +#: book.translate.xml:50239 msgid "" "This second command sets the modem device to <filename>cuau1</filename>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50002 +#: book.translate.xml:50242 #, no-wrap msgid "ppp ON example> <userinput>set speed 115200</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50004 +#: book.translate.xml:50244 msgid "This sets the connection speed to 115,200 <acronym>kbps</acronym>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50007 +#: book.translate.xml:50247 #, no-wrap msgid "ppp ON example> <userinput>enable dns</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50009 +#: book.translate.xml:50249 msgid "" "This tells <command>ppp</command> to configure the resolver and add the " "nameserver lines to <filename>/etc/resolv.conf</filename>. If <command>ppp</" @@ -73426,20 +73807,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50015 +#: book.translate.xml:50255 #, no-wrap msgid "ppp ON example> <userinput>term</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50017 +#: book.translate.xml:50257 msgid "" "This switches to <quote>terminal</quote> mode in order to manually control " "the modem." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50020 +#: book.translate.xml:50260 #, no-wrap msgid "" "deflink: Entering terminal mode on <filename class=\"devicefile\">/dev/cuau1</filename>\n" @@ -73447,7 +73828,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50023 +#: book.translate.xml:50263 #, no-wrap msgid "" "<userinput>at</userinput>\n" @@ -73456,7 +73837,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50027 +#: book.translate.xml:50267 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 " @@ -73464,13 +73845,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50031 +#: book.translate.xml:50271 #, no-wrap msgid "CONNECT" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50033 +#: book.translate.xml:50273 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 " @@ -73478,26 +73859,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50037 +#: book.translate.xml:50277 #, no-wrap msgid "ISP Login:<userinput>myusername</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50039 +#: book.translate.xml:50279 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:50042 +#: book.translate.xml:50282 #, no-wrap msgid "ISP Pass:<userinput>mypassword</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50044 +#: book.translate.xml:50284 msgid "" "At this prompt, reply with the password that was provided by the " "<acronym>ISP</acronym>. Just like logging into FreeBSD, the password will " @@ -73505,13 +73886,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50048 +#: book.translate.xml:50288 #, no-wrap msgid "Shell or PPP:<userinput>ppp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50050 +#: book.translate.xml:50290 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 " @@ -73520,13 +73901,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50057 +#: book.translate.xml:50297 #, no-wrap msgid "Ppp ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50059 +#: book.translate.xml:50299 msgid "" "Notice that in this example the first <option>p</option> has been " "capitalized. This shows that we have successfully connected to the " @@ -73534,39 +73915,39 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50063 +#: book.translate.xml:50303 #, no-wrap msgid "PPp ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50065 +#: book.translate.xml:50305 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:50069 +#: book.translate.xml:50309 #, no-wrap msgid "PPP ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50071 +#: book.translate.xml:50311 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:50074 +#: book.translate.xml:50314 #, no-wrap msgid "PPP ON example><userinput>add default HISADDR</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50076 +#: book.translate.xml:50316 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. " @@ -73577,7 +73958,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50085 +#: book.translate.xml:50325 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=" @@ -73589,12 +73970,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50097 +#: book.translate.xml:50337 msgid "Debugging" msgstr "除錯" #. (itstool) path: sect2/para -#: book.translate.xml:50099 +#: book.translate.xml:50339 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 " @@ -73610,7 +73991,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50112 +#: book.translate.xml:50352 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 " @@ -73618,7 +73999,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50117 +#: book.translate.xml:50357 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 " @@ -73627,7 +74008,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50123 +#: book.translate.xml:50363 msgid "" "If a login prompt never appears, <acronym>PAP</acronym> or <acronym>CHAP</" "acronym> authentication is most likely required. To use <acronym>PAP</" @@ -73636,33 +74017,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50130 +#: book.translate.xml:50370 #, no-wrap msgid "ppp ON example> <userinput>set authname <replaceable>myusername</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50132 +#: book.translate.xml:50372 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:50136 +#: book.translate.xml:50376 #, no-wrap msgid "ppp ON example> <userinput>set authkey <replaceable>mypassword</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50138 +#: book.translate.xml:50378 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:50142 +#: book.translate.xml:50382 msgid "" "If a connection is established, but cannot seem to find any domain name, try " "to <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</" @@ -73675,7 +74056,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50153 +#: book.translate.xml:50393 #, no-wrap msgid "" "domain <replaceable>example.com</replaceable>\n" @@ -73684,7 +74065,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50157 +#: book.translate.xml:50397 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 " @@ -73692,7 +74073,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50162 +#: book.translate.xml:50402 msgid "" "To configure <citerefentry><refentrytitle>syslog</" "refentrytitle><manvolnum>3</manvolnum></citerefentry> to provide logging for " @@ -73701,7 +74082,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50166 +#: book.translate.xml:50406 #, no-wrap msgid "" "!ppp\n" @@ -73709,24 +74090,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:50186 +#: book.translate.xml:50426 msgid "Using <acronym>PPP</acronym> over Ethernet (PPPoE)" msgstr "在乙太網路使用 <acronym>PPP</acronym> (PPPoE)" #. (itstool) path: sect1/para -#: book.translate.xml:50193 +#: book.translate.xml:50433 msgid "" "This section describes how to set up <acronym>PPP</acronym> over Ethernet " "(<acronym>PPPoE</acronym>)." msgstr "" +"本節介紹如何設定在 乙太網路使用 <acronym>PPP</acronym> (<acronym>PPPoE</" +"acronym>)。" #. (itstool) path: sect1/para -#: book.translate.xml:50196 +#: book.translate.xml:50436 msgid "Here is an example of a working <filename>ppp.conf</filename>:" -msgstr "" +msgstr "以下有一個可用的的 <filename>ppp.conf</filename> 範例:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:50199 +#: book.translate.xml:50439 #, no-wrap msgid "" "default:\n" @@ -73743,24 +74126,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50211 +#: book.translate.xml:50451 msgid "As <systemitem class=\"username\">root</systemitem>, run:" -msgstr "" +msgstr "以 <systemitem class=\"username\">root</systemitem> 身份執行:" #. (itstool) path: sect1/screen -#: book.translate.xml:50214 +#: book.translate.xml:50454 #, 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:50216 book.translate.xml:62313 +#: book.translate.xml:50456 book.translate.xml:63368 msgid "Add the following to <filename>/etc/rc.conf</filename>:" -msgstr "" +msgstr "將以下參數加到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:50219 +#: book.translate.xml:50459 #, no-wrap msgid "" "ppp_enable=\"YES\"\n" @@ -73770,27 +74153,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50225 +#: book.translate.xml:50465 msgid "Using a PPPoE Service Tag" msgstr "使用 PPPoE 服務標籤" #. (itstool) path: sect2/para -#: book.translate.xml:50227 +#: book.translate.xml:50467 msgid "" "Sometimes it will be necessary to use a service tag to establish the " "connection. Service tags are used to distinguish between different PPPoE " "servers attached to a given network." msgstr "" +"有時需要使用服務標籤 (Service Tag) 才能建立連線,服務標籤用來區別不同網路要各" +"自連線的 PPPoE 伺服器。" #. (itstool) path: sect2/para -#: book.translate.xml:50232 +#: book.translate.xml:50472 msgid "" "Any required service tag information should be in the documentation provided " "by the <acronym>ISP</acronym>." -msgstr "" +msgstr "所需的服務標籤資訊應該會在 <acronym>ISP</acronym> 所提供的文件中說明。" #. (itstool) path: sect2/para -#: book.translate.xml:50235 +#: book.translate.xml:50475 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 " @@ -73799,9 +74184,14 @@ msgid "" "guimenu> menu from the program. The name of the profile should be listed " "there. It is usually <emphasis>ISP</emphasis>." msgstr "" +"最後的手段是嘗試安裝 <package>net/rr-pppoe</package> 套件或 Port。但是請注" +"意,這可能會解除安裝數據機中的程式並使其無法運作,所以請三思而為。只需要安裝" +"數據機所提供的程式,然後由該程式進入 <guimenu>System</guimenu> 選單,基本資" +"料 (Profile name) 的名稱應該會列出來,通常是 <emphasis>ISP</emphasis> 的名" +"稱。" #. (itstool) path: sect2/para -#: book.translate.xml:50244 +#: book.translate.xml:50484 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 " @@ -73809,35 +74199,43 @@ msgid "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> for full details. It " "should look like this:" msgstr "" +"基本資料名稱 (Profile Name) 即服務標籤,會被用在 <filename>ppp.conf</" +"filename> 中的 PPPoE 設定項目,<command>set device</command> 的提供商 " +"(Provider) 部份。請參考 <citerefentry><refentrytitle>ppp</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 以取得詳細說明,結果應" +"如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50250 +#: book.translate.xml:50490 #, no-wrap msgid "set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50252 +#: book.translate.xml:50492 msgid "" "Do not forget to change <replaceable>xl1</replaceable> to the proper device " "for the Ethernet card." -msgstr "" +msgstr "別忘記更改 <replaceable>xl1</replaceable> 為乙太網路卡的裝置名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:50255 +#: book.translate.xml:50495 msgid "Do not forget to change <replaceable>ISP</replaceable> to the profile." -msgstr "" +msgstr "別忘記更改 <replaceable>ISP</replaceable> 為基本資料名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:50258 +#: book.translate.xml:50498 msgid "" "For additional information, refer to <link xlink:href=\"http://renaud." "waldura.com/doc/freebsd/pppoe/\">Cheaper Broadband with FreeBSD on DSL</" "link> by Renaud Waldura." msgstr "" +"要取得更進一步資訊,請參考 Renaud Waldura 所著的 <link xlink:href=\"http://" +"renaud.waldura.com/doc/freebsd/pppoe/\">Cheaper Broadband with FreeBSD on " +"DSL</link>。" #. (itstool) path: sect2/title -#: book.translate.xml:50264 +#: book.translate.xml:50504 msgid "" "PPPoE with a <trademark class=\"registered\">3Com</trademark> <trademark " "class=\"registered\">HomeConnect</trademark> ADSL Modem Dual Link" @@ -73846,78 +74244,85 @@ msgstr "" "\"registered\">HomeConnect</trademark> ADSL Modem Dual Link 使用 PPPoE" #. (itstool) path: sect2/para -#: book.translate.xml:50268 +#: book.translate.xml:50508 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 "" +"這台數據機並不採用 <link xlink:href=\"http://www.faqs.org/rfcs/rfc2516.html" +"\">RFC 2516</link> 所定義的規格。" #. (itstool) path: sect2/para -#: book.translate.xml:50272 +#: book.translate.xml:50512 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 " "<filename>/etc/sysctl.conf</filename>:" msgstr "" +"為了要讓 FreeBSD 能夠與這台裝置通訊,必須設定 sysctl,這可以透過更新 " +"<filename>/etc/sysctl.conf</filename> 來讓開機時自動設定。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50277 +#: book.translate.xml:50517 #, no-wrap msgid "net.graph.nonstandard_pppoe=1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50279 +#: book.translate.xml:50519 msgid "or can be done immediately with the command:" -msgstr "" +msgstr "或可以執行以下指令立即更改:" #. (itstool) path: sect2/screen -#: book.translate.xml:50281 +#: book.translate.xml:50521 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.graph.nonstandard_pppoe=1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50283 +#: book.translate.xml:50523 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" "\">3Com</trademark> <trademark class=\"registered\">HomeConnect</trademark> " "ADSL Modem at the same time." msgstr "" +"不幸的是,由於這是一個全系統的設定,這可能導致一般 PPPoE 客戶端或伺服器無法" +"與 <trademark class=\"registered\">3Com</trademark> <trademark class=" +"\"registered\">HomeConnect</trademark> ADSL 數據機同時使用。" #. (itstool) path: sect1/title -#: book.translate.xml:50291 +#: book.translate.xml:50531 msgid "" "Using <application>PPP</application> over <acronym>ATM</acronym> (PPPoA)" msgstr "在 ATM 使用 <application>PPP</application> (PPPoA)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50294 +#: book.translate.xml:50534 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>over <acronym>ATM</" "acronym></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50299 +#: book.translate.xml:50539 msgid "<primary>PPPoA</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50303 +#: book.translate.xml:50543 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:50360 +#: book.translate.xml:50600 msgid "Using mpd" msgstr "使用 mpd" #. (itstool) path: sect2/para -#: book.translate.xml:50362 +#: book.translate.xml:50602 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 " @@ -73926,7 +74331,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50369 +#: book.translate.xml:50609 msgid "" "Once installed, configure <application>mpd</application> to suit the " "provider's settings. The port places a set of sample configuration files " @@ -73939,14 +74344,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:50381 +#: book.translate.xml:50621 msgid "" "This example <filename>mpd.conf</filename> only works with <application>mpd</" "application> 4.x." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50385 +#: book.translate.xml:50625 #, no-wrap msgid "" "default:\n" @@ -73975,17 +74380,17 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50411 +#: book.translate.xml:50651 msgid "The username used to authenticate with your <acronym>ISP</acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50415 +#: book.translate.xml:50655 msgid "The password used to authenticate with your <acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50420 +#: book.translate.xml:50660 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 " @@ -73993,7 +74398,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50425 +#: book.translate.xml:50665 #, no-wrap msgid "" "adsl:\n" @@ -74005,14 +74410,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50434 +#: book.translate.xml:50674 msgid "" "The <acronym>IP</acronym> address of FreeBSD computer running " "<application>mpd</application>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50438 +#: book.translate.xml:50678 msgid "" "The <acronym>IP</acronym> address of the ADSL modem. The Alcatel " "<trademark>SpeedTouch</trademark> Home defaults to <systemitem class=" @@ -74020,25 +74425,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50443 +#: book.translate.xml:50683 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:50447 +#: book.translate.xml:50687 #, no-wrap msgid "<prompt>#</prompt> <userinput>mpd -b <replaceable>adsl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50449 +#: book.translate.xml:50689 msgid "To view the status of the connection:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50451 +#: book.translate.xml:50691 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig <replaceable>ng0</replaceable></userinput>\n" @@ -74047,26 +74452,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50455 +#: book.translate.xml:50695 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:50460 +#: book.translate.xml:50700 msgid "Using pptpclient" msgstr "使用 pptpclient" #. (itstool) path: sect2/para -#: book.translate.xml:50462 +#: book.translate.xml:50702 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:50465 +#: book.translate.xml:50705 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</" @@ -74077,7 +74482,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50472 +#: book.translate.xml:50712 #, no-wrap msgid "" "adsl:\n" @@ -74091,24 +74496,24 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50483 +#: book.translate.xml:50723 msgid "The username for the DSL provider." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50487 +#: book.translate.xml:50727 msgid "The password for your account." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:50492 +#: book.translate.xml:50732 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:50496 +#: book.translate.xml:50736 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chown root:wheel /etc/ppp/ppp.conf</userinput>\n" @@ -74116,7 +74521,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50501 +#: book.translate.xml:50741 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> " @@ -74127,20 +74532,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50510 +#: book.translate.xml:50750 #, no-wrap msgid "<prompt>#</prompt> <userinput>pptp <replaceable>address</replaceable> <replaceable>adsl</replaceable></userinput>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:50513 +#: book.translate.xml:50753 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:50519 +#: book.translate.xml:50759 msgid "" "A <filename>tun</filename> virtual tunnel device will be created for " "interaction between the <application>pptp</application> and " @@ -74150,7 +74555,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50527 +#: book.translate.xml:50767 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig <replaceable>tun0</replaceable></userinput>\n" @@ -74160,7 +74565,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50532 +#: book.translate.xml:50772 msgid "" "If the connection fails, check the configuration of the router, which is " "usually accessible using a web browser. Also, examine the output of " @@ -74169,21 +74574,21 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:50553 +#: book.translate.xml:50793 msgid "" "<personname><firstname>Bill</firstname><surname>Lloyd</surname></" "personname><contrib>Original work by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:50557 +#: book.translate.xml:50797 msgid "" "<personname><firstname>Jim</firstname><surname>Mock</surname></" "personname><contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50567 +#: book.translate.xml:50807 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 " @@ -74196,31 +74601,31 @@ msgstr "" "細節請參閱 <xref linkend=\"bibliography\"/> 內的參考書籍。" #. (itstool) path: listitem/para -#: book.translate.xml:50578 +#: book.translate.xml:50818 msgid "" "Which software components are involved in sending and receiving electronic " "mail." msgstr "哪些軟體元件與收發電子郵件有關。" #. (itstool) path: listitem/para -#: book.translate.xml:50583 +#: book.translate.xml:50823 msgid "" "Where basic <application>Sendmail</application> configuration files are " "located in FreeBSD." msgstr "FreeBSD 內的 <application>Sendmail</application> 設定檔在哪。" #. (itstool) path: listitem/para -#: book.translate.xml:50588 +#: book.translate.xml:50828 msgid "The difference between remote and local mailboxes." msgstr "遠端信箱 (Mailbox) 與本機信箱的差異。" #. (itstool) path: listitem/para -#: book.translate.xml:50593 +#: book.translate.xml:50833 msgid "How to block spammers from illegally using a mail server as a relay." msgstr "如何阻擋垃圾郵件寄件者 (Spammer) 非法使用郵件伺服器作為中繼站。" #. (itstool) path: listitem/para -#: book.translate.xml:50598 +#: book.translate.xml:50838 msgid "" "How to install and configure an alternate Mail Transfer Agent, replacing " "<application>Sendmail</application>." @@ -74229,27 +74634,27 @@ msgstr "" "<application>Sendmail</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:50604 +#: book.translate.xml:50844 msgid "How to troubleshoot common mail server problems." msgstr "如何排除常見的郵件伺服器問題。" #. (itstool) path: listitem/para -#: book.translate.xml:50608 +#: book.translate.xml:50848 msgid "How to set up the system to send mail only." msgstr "如何設定系統只能寄送郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50612 +#: book.translate.xml:50852 msgid "How to use mail with a dialup connection." msgstr "如何在撥號連線上使用郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50616 +#: book.translate.xml:50856 msgid "How to configure SMTP authentication for added security." msgstr "如何設定 SMTP 認証來增加安全性。" #. (itstool) path: listitem/para -#: book.translate.xml:50621 +#: book.translate.xml:50861 msgid "" "How to install and use a Mail User Agent, such as <application>mutt</" "application>, to send and receive email." @@ -74258,7 +74663,7 @@ msgstr "" "application> 來寄發與接收電子郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50627 +#: book.translate.xml:50867 msgid "" "How to download mail from a remote <acronym>POP</acronym> or <acronym>IMAP</" "acronym> server." @@ -74267,19 +74672,19 @@ msgstr "" "件。" #. (itstool) path: listitem/para -#: book.translate.xml:50633 +#: book.translate.xml:50873 msgid "How to automatically apply filters and rules to incoming email." msgstr "如何自動套用過濾器及規則在收到的電子郵件上。" #. (itstool) path: listitem/para -#: book.translate.xml:50642 +#: book.translate.xml:50882 msgid "" "Properly set up a network connection (<xref linkend=\"advanced-networking\"/" ">)." msgstr "正確的設定網路連線 (<xref linkend=\"advanced-networking\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:50646 +#: book.translate.xml:50886 msgid "" "Properly set up the <acronym>DNS</acronym> information for a mail host " "(<xref linkend=\"network-servers\"/>)." @@ -74288,66 +74693,66 @@ msgstr "" "servers\"/>)。" #. (itstool) path: sect1/title -#: book.translate.xml:50658 +#: book.translate.xml:50898 msgid "Mail Components" msgstr "郵件組成" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50660 +#: book.translate.xml:50900 msgid "<primary>POP</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50661 +#: book.translate.xml:50901 msgid "<primary>IMAP</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50663 +#: book.translate.xml:50903 msgid "" "<primary>mail server daemons</primary> <secondary><application>Sendmail</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50667 +#: book.translate.xml:50907 msgid "" "<primary>mail server daemons</primary> <secondary><application>Postfix</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50671 +#: book.translate.xml:50911 msgid "" "<primary>mail server daemons</primary> <secondary><application>qmail</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50675 +#: book.translate.xml:50915 msgid "" "<primary>mail server daemons</primary> <secondary><application>Exim</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50679 +#: book.translate.xml:50919 msgid "<primary>email</primary> <secondary>receiving</secondary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: para/indexterm -#: book.translate.xml:50683 book.translate.xml:51355 book.translate.xml:51474 +#: book.translate.xml:50923 book.translate.xml:51595 book.translate.xml:51714 msgid "<primary>MX record</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50684 +#: book.translate.xml:50924 msgid "<primary>mail host</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50686 +#: book.translate.xml:50926 msgid "" "There are five major parts involved in an email exchange: the Mail User " "Agent (<acronym>MUA</acronym>), the Mail Transfer Agent (<acronym>MTA</" @@ -74356,12 +74761,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50694 +#: book.translate.xml:50934 msgid "Mail User Agent (<acronym>MUA</acronym>)" msgstr "郵件使用者代理程式 (Mail User Agent, <acronym>MUA</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50696 +#: book.translate.xml:50936 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 " @@ -74378,12 +74783,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50716 +#: book.translate.xml:50956 msgid "Mail Transfer Agent (<acronym>MTA</acronym>)" msgstr "郵件傳輸代理程式 (Mail Transfer Agent, <acronym>MTA</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50718 +#: book.translate.xml:50958 msgid "" "The Mail Transfer Agent (<acronym>MTA</acronym>) is responsible for " "receiving incoming mail and delivering outgoing mail. FreeBSD ships with " @@ -74398,12 +74803,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50738 +#: book.translate.xml:50978 msgid "Mail Host and Mailboxes" msgstr "郵件主機 (Mail Host) 與郵件信箱 (Mailbox)" #. (itstool) path: listitem/para -#: book.translate.xml:50740 +#: book.translate.xml:50980 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 " @@ -74417,7 +74822,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50753 +#: book.translate.xml:50993 msgid "" "To access mailboxes remotely, a <acronym>POP</acronym> or <acronym>IMAP</" "acronym> server is required as these protocols allow users to connect to " @@ -74431,7 +74836,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50766 +#: book.translate.xml:51006 msgid "" "Several <acronym>POP</acronym> and <acronym>IMAP</acronym> servers are " "available in the Ports Collection. These include <package>mail/qpopper</" @@ -74440,7 +74845,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:50775 +#: book.translate.xml:51015 msgid "" "It should be noted that both <acronym>POP</acronym> and <acronym>IMAP</" "acronym> transmit information, including username and password credentials, " @@ -74453,12 +74858,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: sect1/title -#: book.translate.xml:50787 book.translate.xml:55391 +#: book.translate.xml:51027 book.translate.xml:55819 msgid "Domain Name System (<acronym>DNS</acronym>)" msgstr "網域名稱系統 (<acronym>DNS</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50789 +#: book.translate.xml:51029 msgid "" "The Domain Name System (<acronym>DNS</acronym>) and its daemon " "<command>named</command> play a large role in the delivery of email. In " @@ -74469,7 +74874,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50798 +#: book.translate.xml:51038 msgid "" "In addition to mapping hostnames to <acronym>IP</acronym> addresses, " "<acronym>DNS</acronym> is responsible for storing information specific to " @@ -74479,7 +74884,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50806 +#: book.translate.xml:51046 msgid "" "To view the <acronym>MX</acronym> records for a domain, specify the type of " "record. Refer to <citerefentry><refentrytitle>host</" @@ -74488,7 +74893,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:50810 +#: book.translate.xml:51050 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>host -t mx FreeBSD.org</userinput>\n" @@ -74496,31 +74901,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50813 +#: book.translate.xml:51053 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:50823 +#: book.translate.xml:51063 msgid "<application>Sendmail</application> Configuration Files" msgstr "<application>Sendmail</application> 設定檔" #. (itstool) path: authorgroup/author -#: book.translate.xml:50827 +#: book.translate.xml:51067 msgid "" "<personname> <firstname>Christopher</firstname> <surname>Shumway</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50837 +#: book.translate.xml:51077 msgid "<primary><application>Sendmail</application></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50841 +#: book.translate.xml:51081 msgid "" "<application>Sendmail</application> is the default <acronym>MTA</acronym> " "installed with FreeBSD. It accepts mail from <acronym>MUA</acronym>s and " @@ -74530,7 +74935,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50849 +#: book.translate.xml:51089 msgid "" "The configuration files for <application>Sendmail</application> are located " "in <filename>/etc/mail</filename>. This section describes these files in " @@ -74538,47 +74943,47 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50854 +#: book.translate.xml:51094 msgid "<primary><filename>/etc/mail/access</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50857 +#: book.translate.xml:51097 msgid "<primary><filename>/etc/mail/aliases</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50860 +#: book.translate.xml:51100 msgid "<primary><filename>/etc/mail/local-host-names</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50863 +#: book.translate.xml:51103 msgid "<primary><filename>/etc/mail/mailer.conf</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50866 +#: book.translate.xml:51106 msgid "<primary><filename>/etc/mail/mailertable</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50869 +#: book.translate.xml:51109 msgid "<primary><filename>/etc/mail/sendmail.cf</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50872 +#: book.translate.xml:51112 msgid "<primary><filename>/etc/mail/virtusertable</filename></primary>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50878 +#: book.translate.xml:51118 msgid "<filename>/etc/mail/access</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50880 +#: book.translate.xml:51120 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 " @@ -74596,7 +75001,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50898 +#: book.translate.xml:51138 msgid "" "Examples of using these options for both <acronym>IPv4</acronym> and " "<acronym>IPv6</acronym> addresses can be found in the FreeBSD sample " @@ -74604,7 +75009,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50903 +#: book.translate.xml:51143 #, no-wrap msgid "" "# <_:phrase-1/>\n" @@ -74626,7 +75031,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50920 +#: book.translate.xml:51160 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 " @@ -74637,14 +75042,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50929 +#: book.translate.xml:51169 msgid "" "Whenever this file is updated, update its database and restart " "<application>Sendmail</application>:" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:50932 +#: book.translate.xml:51172 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>makemap hash /etc/mail/access < /etc/mail/access</userinput>\n" @@ -74652,12 +75057,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50938 +#: book.translate.xml:51178 msgid "<filename>/etc/mail/aliases</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50940 +#: book.translate.xml:51180 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 " @@ -74665,7 +75070,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50945 +#: book.translate.xml:51185 #, no-wrap msgid "" "root: localuser\n" @@ -74675,7 +75080,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50950 +#: book.translate.xml:51190 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" @@ -74697,19 +75102,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50968 +#: book.translate.xml:51208 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:51002 +#: book.translate.xml:51242 msgid "<filename>/etc/mail/sendmail.cf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51004 +#: book.translate.xml:51244 msgid "" "This is the master configuration file for <application>Sendmail</" "application>. It controls the overall behavior of <application>Sendmail</" @@ -74720,7 +75125,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51013 +#: book.translate.xml:51253 msgid "" "The master <application>Sendmail</application> configuration file can be " "built from <citerefentry><refentrytitle>m4</refentrytitle><manvolnum>1</" @@ -74730,19 +75135,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51020 +#: book.translate.xml:51260 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:51027 +#: book.translate.xml:51267 msgid "<filename>/etc/mail/virtusertable</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51029 +#: book.translate.xml:51269 msgid "" "This database file maps mail addresses for virtual domains and users to real " "mailboxes. These mailboxes can be local, remote, aliases defined in " @@ -74751,7 +75156,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51036 +#: book.translate.xml:51276 msgid "" "FreeBSD provides a sample configuration file in <filename>/etc/mail/" "virtusertable.sample</filename> to further demonstrate its format. The " @@ -74760,7 +75165,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:51042 +#: book.translate.xml:51282 #, no-wrap msgid "" "root@example.com root\n" @@ -74769,7 +75174,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51046 +#: book.translate.xml:51286 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 " @@ -74785,7 +75190,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:51061 +#: book.translate.xml:51301 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable</userinput>\n" @@ -74793,12 +75198,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:51067 +#: book.translate.xml:51307 msgid "<filename>/etc/mail/relay-domains</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51069 +#: book.translate.xml:51309 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 " @@ -74810,7 +75215,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51080 +#: book.translate.xml:51320 msgid "" "The most straightforward solution is to add the <acronym>ISP</acronym>'s " "<acronym>FQDN</acronym> to <filename>/etc/mail/relay-domains</filename>. If " @@ -74818,7 +75223,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:51086 +#: book.translate.xml:51326 #, no-wrap msgid "" "your.isp.example.com\n" @@ -74828,14 +75233,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51091 +#: book.translate.xml:51331 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:51095 +#: book.translate.xml:51335 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 " @@ -74844,31 +75249,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51107 +#: book.translate.xml:51347 msgid "Changing the Mail Transfer Agent" msgstr "更改郵件傳輸代理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:51110 +#: book.translate.xml:51350 msgid "" "<personname> <firstname>Andrew</firstname> <surname>Boothman</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:51120 +#: book.translate.xml:51360 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:51130 +#: book.translate.xml:51370 msgid "<primary>email</primary> <secondary>change mta</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51135 +#: book.translate.xml:51375 msgid "" "FreeBSD comes with <application>Sendmail</application> already installed as " "the <acronym>MTA</acronym> which is in charge of outgoing and incoming mail. " @@ -74878,7 +75283,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51143 +#: book.translate.xml:51383 msgid "" "Once a new <acronym>MTA</acronym> is installed, configure and test the new " "software before replacing <application>Sendmail</application>. Refer to the " @@ -74887,7 +75292,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51149 +#: book.translate.xml:51389 msgid "" "Once the new <acronym>MTA</acronym> is working, use the instructions in this " "section to disable <application>Sendmail</application> and configure FreeBSD " @@ -74895,12 +75300,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51155 +#: book.translate.xml:51395 msgid "Disable <application>Sendmail</application>" msgstr "關閉 <application>Sendmail</application>" #. (itstool) path: warning/para -#: book.translate.xml:51158 +#: book.translate.xml:51398 msgid "" "If <application>Sendmail</application>'s outgoing mail service is disabled, " "it is important that it is replaced with an alternative mail delivery " @@ -74914,14 +75319,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51170 +#: book.translate.xml:51410 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:51174 +#: book.translate.xml:51414 #, no-wrap msgid "" "sendmail_enable=\"NO\"\n" @@ -74931,20 +75336,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51179 +#: book.translate.xml:51419 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:51183 +#: book.translate.xml:51423 #, no-wrap msgid "sendmail_enable=\"NO\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51185 +#: book.translate.xml:51425 msgid "" "More information on <application>Sendmail</application>'s startup options is " "available in <citerefentry><refentrytitle>rc.sendmail</" @@ -74952,12 +75357,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51190 +#: book.translate.xml:51430 msgid "Replace the Default <acronym>MTA</acronym>" msgstr "替換預設的 <acronym>MTA</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:51192 +#: book.translate.xml:51432 msgid "" "When a new <acronym>MTA</acronym> is installed using the Ports Collection, " "its startup script is also installed and startup instructions are mentioned " @@ -74968,7 +75373,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51200 +#: book.translate.xml:51440 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sendmail stop</userinput>\n" @@ -74976,7 +75381,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51203 +#: book.translate.xml:51443 msgid "" "To start the replacement <acronym>MTA</acronym> at system boot, add its " "configuration line to <filename>/etc/rc.conf</filename>. This entry enables " @@ -74984,13 +75389,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51208 +#: book.translate.xml:51448 #, no-wrap msgid "postfix_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51210 +#: book.translate.xml:51450 msgid "" "Some extra configuration is needed as <application>Sendmail</application> is " "so ubiquitous that some software assumes it is already installed and " @@ -75000,7 +75405,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51217 +#: book.translate.xml:51457 #, no-wrap msgid "" "daily_clean_hoststat_enable=\"NO\"\n" @@ -75010,7 +75415,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51222 +#: book.translate.xml:51462 msgid "" "Some alternative <acronym>MTA</acronym>s provide their own compatible " "implementations of the <application>Sendmail</application> command-line " @@ -75026,12 +75431,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51235 +#: book.translate.xml:51475 msgid "The default <filename>/etc/mail/mailer.conf</filename> looks like this:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51238 +#: book.translate.xml:51478 #, no-wrap msgid "" "# <_:phrase-1/>\n" @@ -75047,7 +75452,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51249 +#: book.translate.xml:51489 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 " @@ -75056,7 +75461,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51254 +#: book.translate.xml:51494 msgid "" "Some <acronym>MTA</acronym>s, when installed using the Ports Collection, " "will prompt to update this file for the new binaries. For example, " @@ -75064,7 +75469,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51259 +#: book.translate.xml:51499 #, no-wrap msgid "" "#\n" @@ -75077,7 +75482,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51267 +#: book.translate.xml:51507 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 " @@ -75086,7 +75491,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51274 +#: book.translate.xml:51514 #, no-wrap msgid "" "sendmail /usr/local/sbin/ssmtp\n" @@ -75098,7 +75503,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51281 +#: book.translate.xml:51521 msgid "" "Once everything is configured, it is recommended to reboot the system. " "Rebooting provides the opportunity to ensure that the system is correctly " @@ -75106,17 +75511,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:51291 +#: book.translate.xml:51531 msgid "<primary>email</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: question/para -#: book.translate.xml:51299 +#: book.translate.xml:51539 msgid "Why do I have to use the FQDN for hosts on my site?" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51304 +#: book.translate.xml:51544 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 " @@ -75128,12 +75533,12 @@ msgid "" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:51313 +#: book.translate.xml:51553 msgid "<primary>BIND</primary>" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51312 +#: book.translate.xml:51552 msgid "" "This is because the version of <application>BIND</application><_:indexterm-1/" "> which ships with FreeBSD no longer provides default abbreviations for non-" @@ -75144,7 +75549,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51321 +#: book.translate.xml:51561 msgid "" "In older versions of <application>BIND</application>, the search continued " "across <systemitem class=\"fqdomainname\">mumble.bar.edu</systemitem>, and " @@ -75153,29 +75558,29 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51327 +#: book.translate.xml:51567 msgid "As a good workaround, place the line:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51329 +#: book.translate.xml:51569 #, no-wrap msgid "search foo.bar.edu bar.edu" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51331 +#: book.translate.xml:51571 msgid "instead of the previous:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51333 +#: book.translate.xml:51573 #, no-wrap msgid "domain foo.bar.edu" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51335 +#: book.translate.xml:51575 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 " @@ -75183,19 +75588,19 @@ msgid "" msgstr "" #. (itstool) path: question/para -#: book.translate.xml:51344 +#: book.translate.xml:51584 msgid "How can I run a mail server on a dial-up PPP host?" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51349 +#: book.translate.xml:51589 msgid "" "Connect to a FreeBSD mail gateway on the LAN. The PPP connection is non-" "dedicated." msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51352 +#: book.translate.xml:51592 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 " @@ -75206,7 +75611,7 @@ msgid "" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51363 +#: book.translate.xml:51603 #, no-wrap msgid "" "example.com. MX 10 example.com.\n" @@ -75214,7 +75619,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51366 +#: book.translate.xml:51606 msgid "" "Only one host should be specified as the final recipient. For " "<application>Sendmail</application>, add <literal>Cw example.com</literal> " @@ -75223,7 +75628,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51371 +#: book.translate.xml:51611 msgid "" "When the sending <acronym>MTA</acronym> attempts to deliver mail, it will " "try to connect to the system, <systemitem class=\"fqdomainname\">example." @@ -75237,12 +75642,12 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51383 +#: book.translate.xml:51623 msgid "Use something like this as a login script:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51385 +#: book.translate.xml:51625 #, no-wrap msgid "" "#!/bin/sh\n" @@ -75252,7 +75657,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51390 +#: book.translate.xml:51630 msgid "" "When creating a separate login script for users, instead use " "<command>sendmail -qRexample.com</command> in the script above. This will " @@ -75261,7 +75666,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51397 +#: book.translate.xml:51637 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" @@ -75269,7 +75674,7 @@ msgid "" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51400 +#: book.translate.xml:51640 #, no-wrap msgid "" "> we provide the secondary MX for a customer. The customer connects to\n" @@ -75302,19 +75707,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51435 +#: book.translate.xml:51675 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:51441 +#: book.translate.xml:51681 msgid "<primary>email</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51446 +#: book.translate.xml:51686 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 " @@ -75323,18 +75728,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51454 +#: book.translate.xml:51694 msgid "Run a <acronym>DNS</acronym> server for the domain." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51459 +#: book.translate.xml:51699 msgid "" "Get mail delivered directly to the <acronym>FQDN</acronym> for the machine." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51465 +#: book.translate.xml:51705 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 " @@ -75343,32 +75748,32 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51473 +#: book.translate.xml:51713 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:51481 +#: book.translate.xml:51721 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:51486 +#: book.translate.xml:51726 msgid "" "Either of the above will allow mail to be received directly at the host." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51489 +#: book.translate.xml:51729 msgid "Try this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51491 +#: book.translate.xml:51731 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hostname</userinput>\n" @@ -75378,7 +75783,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51496 +#: book.translate.xml:51736 msgid "" "In this example, mail sent directly to <email role=\"nolink" "\">yourlogin@example.FreeBSD.org</email> should work without problems, " @@ -75387,12 +75792,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51502 +#: book.translate.xml:51742 msgid "For this example:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51504 +#: book.translate.xml:51744 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>host example.FreeBSD.org</userinput>\n" @@ -75401,7 +75806,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51508 +#: book.translate.xml:51748 msgid "" "All mail sent to <systemitem class=\"fqdomainname\">example.FreeBSD.org</" "systemitem> will be collected on <systemitem>hub</systemitem> under the same " @@ -75409,7 +75814,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51512 +#: book.translate.xml:51752 msgid "" "The above information is handled by the <acronym>DNS</acronym> server. The " "<acronym>DNS</acronym> record that carries mail routing information is the " @@ -75418,14 +75823,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51519 +#: book.translate.xml:51759 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:51522 +#: book.translate.xml:51762 #, no-wrap msgid "" "freefall\t\tMX\t30\tmail.crl.net\n" @@ -75435,7 +75840,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51527 +#: book.translate.xml:51767 msgid "" "<systemitem>freefall</systemitem> had many <acronym>MX</acronym> entries. " "The lowest <acronym>MX</acronym> number is the host that receives mail " @@ -75445,7 +75850,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51535 +#: book.translate.xml:51775 msgid "" "Alternate <acronym>MX</acronym> sites should have separate Internet " "connections in order to be most useful. Your <acronym>ISP</acronym> can " @@ -75453,12 +75858,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51541 +#: book.translate.xml:51781 msgid "Mail for a Domain" msgstr "網域中的郵件" #. (itstool) path: sect2/para -#: book.translate.xml:51543 +#: book.translate.xml:51783 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 " @@ -75466,7 +75871,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51549 +#: book.translate.xml:51789 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 " @@ -75476,7 +75881,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51555 +#: book.translate.xml:51795 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> " @@ -75484,7 +75889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51560 +#: book.translate.xml:51800 #, no-wrap msgid "" "example.FreeBSD.org\tA\t204.216.27.XX\t\t; Workstation\n" @@ -75492,7 +75897,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51563 +#: book.translate.xml:51803 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</" @@ -75500,7 +75905,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51567 +#: book.translate.xml:51807 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 " @@ -75508,7 +75913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51573 +#: book.translate.xml:51813 msgid "" "The following is an example of virtual email hosting. Consider a customer " "with the domain <systemitem class=\"fqdomainname\">customer1.org</" @@ -75519,13 +75924,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51579 +#: book.translate.xml:51819 #, no-wrap msgid "customer1.org\t\tMX\t10\tmail.myhost.com" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51581 +#: book.translate.xml:51821 msgid "" "An <literal>A</literal>> record is <emphasis>not</emphasis> needed for " "<systemitem class=\"fqdomainname\">customer1.org</systemitem> in order to " @@ -75535,7 +75940,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51588 +#: book.translate.xml:51828 msgid "" "Tell the <acronym>MTA</acronym> which domains and/or hostnames it should " "accept mail for. Either of the following will work for " @@ -75543,58 +75948,55 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51594 +#: book.translate.xml:51834 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:51600 +#: book.translate.xml:51840 msgid "" "Add a <literal>Cwyour.host.com</literal> line to <filename>/etc/sendmail.cf</" "filename>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51609 +#: book.translate.xml:51849 msgid "Setting Up to Send Only" msgstr "寄件設定" #. (itstool) path: authorgroup/author -#: book.translate.xml:51612 +#: book.translate.xml:51852 msgid "" "<personname> <firstname>Bill</firstname> <surname>Moran</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51622 +#: book.translate.xml:51862 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:51627 -#, fuzzy +#: book.translate.xml:51867 msgid "" "The computer is a desktop machine that needs to use programs such as " "<citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>, using the <acronym>ISP</acronym>'s mail relay." msgstr "" -"郵件傳輸代理程式,像是 <citerefentry><refentrytitle>sendmail</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> 的相關設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:51633 +#: book.translate.xml:51873 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:51639 +#: book.translate.xml:51879 msgid "" "While any <acronym>MTA</acronym> is capable of filling this particular " "niche, it can be difficult to properly configure a full-featured " @@ -75604,21 +76006,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51646 +#: book.translate.xml:51886 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:51649 +#: book.translate.xml:51889 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:51652 +#: book.translate.xml:51892 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/mail/ssmtp</userinput>\n" @@ -75626,14 +76028,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51655 +#: book.translate.xml:51895 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:51659 +#: book.translate.xml:51899 #, no-wrap msgid "" "root=yourrealemail@example.com\n" @@ -75643,7 +76045,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51664 +#: book.translate.xml:51904 msgid "" "Use the real email address for <systemitem class=\"username\">root</" "systemitem>. Enter the <acronym>ISP</acronym>'s outgoing mail relay in place " @@ -75653,7 +76055,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51670 +#: book.translate.xml:51910 msgid "" "Make sure to disable <application>Sendmail</application>, including the " "outgoing mail service. See <xref linkend=\"mail-disable-sendmail\"/> for " @@ -75661,7 +76063,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51673 +#: book.translate.xml:51913 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 " @@ -75669,7 +76071,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51678 +#: book.translate.xml:51918 msgid "" "Setting up <application>ssmtp</application> in this manner allows any " "software on the computer that needs to send mail to function properly, while " @@ -75678,12 +76080,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:51686 +#: book.translate.xml:51926 msgid "Using Mail with a Dialup Connection" msgstr "在撥號連線使用郵件" #. (itstool) path: sect1/para -#: book.translate.xml:51688 +#: book.translate.xml:51928 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 " @@ -75691,7 +76093,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51693 +#: book.translate.xml:51933 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 " @@ -75704,7 +76106,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51702 +#: book.translate.xml:51942 msgid "" "In order to retrieve mail from the <acronym>ISP</acronym>'s mailbox, install " "a retrieval agent from the Ports Collection. <package>mail/fetchmail</" @@ -75716,7 +76118,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51712 +#: book.translate.xml:51952 #, no-wrap msgid "" "MYADDR:\n" @@ -75724,7 +76126,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51715 +#: book.translate.xml:51955 msgid "" "When using <application>Sendmail</application> to deliver mail to non-local " "accounts, configure <application>Sendmail</application> to process the mail " @@ -75734,13 +76136,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51722 +#: book.translate.xml:51962 #, no-wrap msgid " !bg su user -c \"sendmail -q\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51724 +#: book.translate.xml:51964 msgid "" "In this example, there is an account for <systemitem class=\"username" "\">user</systemitem> on <systemitem class=\"fqdomainname\">bsd.home</" @@ -75750,13 +76152,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51731 +#: book.translate.xml:51971 #, no-wrap msgid "poll example.net protocol pop3 fetchall pass MySecret" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51733 +#: book.translate.xml:51973 msgid "" "This file should not be readable by anyone except <systemitem class=" "\"username\">user</systemitem> as it contains the password " @@ -75764,7 +76166,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51737 +#: book.translate.xml:51977 msgid "" "In order to send mail with the correct <literal>from:</literal> header, " "configure <application>Sendmail</application> to use <email>user@example." @@ -75774,12 +76176,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51744 +#: book.translate.xml:51984 msgid "The following <filename>.mc</filename> should suffice:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51747 +#: book.translate.xml:51987 #, no-wrap msgid "" "VERSIONID(`bsd.home.mc version 1.0')\n" @@ -75801,7 +76203,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51764 +#: book.translate.xml:52004 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 " @@ -75810,19 +76212,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51772 +#: book.translate.xml:52012 msgid "SMTP Authentication" msgstr "SMTP 認證" #. (itstool) path: authorgroup/author -#: book.translate.xml:51775 +#: book.translate.xml:52015 msgid "" "<personname> <firstname>James</firstname> <surname>Gorham</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51785 +#: book.translate.xml:52025 msgid "" "Configuring <acronym>SMTP</acronym> authentication on the <acronym>MTA</" "acronym> provides a number of benefits. <acronym>SMTP</acronym> " @@ -75833,7 +76235,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51795 +#: book.translate.xml:52035 msgid "" "Install <package>security/cyrus-sasl2</package> from the Ports Collection. " "This port supports a number of compile-time options. For the SMTP " @@ -75842,7 +76244,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51804 +#: book.translate.xml:52044 msgid "" "After installing <package>security/cyrus-sasl2</package>, edit <filename>/" "usr/local/lib/sasl2/Sendmail.conf</filename>, or create it if it does not " @@ -75850,37 +76252,37 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51810 +#: book.translate.xml:52050 #, no-wrap msgid "pwcheck_method: saslauthd" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51814 +#: book.translate.xml:52054 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:51819 +#: book.translate.xml:52059 #, no-wrap msgid "saslauthd_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51821 +#: book.translate.xml:52061 msgid "Finally, start the saslauthd daemon:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:51823 +#: book.translate.xml:52063 #, no-wrap msgid "<prompt>#</prompt> <userinput>service saslauthd start</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51825 +#: book.translate.xml:52065 msgid "" "This daemon serves as a broker for <application>Sendmail</application> to " "authenticate against the FreeBSD <citerefentry><refentrytitle>passwd</" @@ -75891,13 +76293,13 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51834 +#: book.translate.xml:52074 msgid "" "Next, edit <filename>/etc/make.conf</filename> and add the following lines:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51837 +#: book.translate.xml:52077 #, no-wrap msgid "" "SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL\n" @@ -75906,7 +76308,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51841 +#: book.translate.xml:52081 msgid "" "These lines provide <application>Sendmail</application> the proper " "configuration options for linking to <package>cyrus-sasl2</package> at " @@ -75915,14 +76317,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51850 +#: book.translate.xml:52090 msgid "" "Recompile <application>Sendmail</application> by executing the following " "commands:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:51853 +#: book.translate.xml:52093 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/lib/libsmutil</userinput>\n" @@ -75934,14 +76336,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51860 +#: book.translate.xml:52100 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:51866 +#: book.translate.xml:52106 msgid "" "After <application>Sendmail</application> has been compiled and reinstalled, " "edit <filename>/etc/mail/freebsd.mc</filename> or the local <filename>.mc</" @@ -75952,7 +76354,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51874 +#: book.translate.xml:52114 #, no-wrap msgid "" "dnl set SASL options\n" @@ -75961,7 +76363,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51878 +#: book.translate.xml:52118 msgid "" "These options configure the different methods available to " "<application>Sendmail</application> for authenticating users. To use a " @@ -75970,7 +76372,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51886 +#: book.translate.xml:52126 msgid "" "Finally, run <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> while in <filename>/etc/mail</filename>. That will " @@ -75983,7 +76385,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51900 +#: book.translate.xml:52140 msgid "" "To test the configuration, use a <acronym>MUA</acronym> to send a test " "message. For further investigation, set the <option>LogLevel</option> of " @@ -75992,31 +76394,31 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51906 +#: book.translate.xml:52146 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:51912 +#: book.translate.xml:52152 msgid "Mail User Agents" msgstr "郵件使用者代理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:51915 book.translate.xml:52272 book.translate.xml:52372 +#: book.translate.xml:52155 book.translate.xml:52512 book.translate.xml:52612 msgid "" "<personname> <firstname>Marc</firstname> <surname>Silver</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:51925 +#: book.translate.xml:52165 msgid "<primary>Mail User Agents</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51929 +#: book.translate.xml:52169 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, " @@ -76030,12 +76432,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51942 +#: book.translate.xml:52182 msgid "<command>mail</command>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51944 +#: book.translate.xml:52184 msgid "" "<citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> is the default <acronym>MUA</acronym> installed with FreeBSD. " @@ -76045,7 +76447,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51951 +#: book.translate.xml:52191 msgid "" "Although <command>mail</command> does not natively support interaction with " "<acronym>POP</acronym> or <acronym>IMAP</acronym> servers, these mailboxes " @@ -76054,18 +76456,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51958 +#: book.translate.xml:52198 msgid "In order to send and receive email, run <command>mail</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51961 +#: book.translate.xml:52201 #, no-wrap msgid "<prompt>%</prompt> <userinput>mail</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51963 +#: book.translate.xml:52203 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, " @@ -76076,7 +76478,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51972 +#: book.translate.xml:52212 #, no-wrap msgid "" "Mail version 8.1 6/6/93. Type ? for help.\n" @@ -76087,14 +76489,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51978 +#: book.translate.xml:52218 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:51982 +#: book.translate.xml:52222 #, no-wrap msgid "" "& <userinput>t 1</userinput>\n" @@ -76111,14 +76513,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51994 +#: book.translate.xml:52234 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:51998 +#: book.translate.xml:52238 msgid "" "If the email requires a reply, press either <keycap>R</keycap> or <keycap>r</" "keycap> <command>mail</command> keys. <keycap>R</keycap> instructs " @@ -76130,7 +76532,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:52009 +#: book.translate.xml:52249 #, no-wrap msgid "" "& <userinput>R 1</userinput>\n" @@ -76143,7 +76545,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52017 +#: book.translate.xml:52257 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 " @@ -76154,7 +76556,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:52025 +#: book.translate.xml:52265 #, no-wrap msgid "" "& <userinput>mail root@localhost</userinput>\n" @@ -76166,7 +76568,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52032 +#: book.translate.xml:52272 msgid "" "While using <command>mail</command>, press <keycap>?</keycap> to display " "help at any time. Refer to <citerefentry><refentrytitle>mail</" @@ -76175,7 +76577,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:52038 +#: book.translate.xml:52278 msgid "" "<citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> was not designed to handle attachments and thus deals with " @@ -76185,51 +76587,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52048 +#: book.translate.xml:52288 msgid "<application>mutt</application>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52050 +#: book.translate.xml:52290 msgid "" "<application>mutt</application> is a powerful <acronym>MUA</acronym>, with " "many features, including:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52055 +#: book.translate.xml:52295 msgid "The ability to thread messages." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52059 +#: book.translate.xml:52299 msgid "PGP support for digital signing and encryption of email." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52064 +#: book.translate.xml:52304 msgid "MIME support." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52068 +#: book.translate.xml:52308 msgid "Maildir support." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52072 +#: book.translate.xml:52312 msgid "Highly customizable." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52076 +#: book.translate.xml:52316 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:52080 +#: book.translate.xml:52320 msgid "" "<application>mutt</application> may be installed using the <package>mail/" "mutt</package> port. After the port has been installed, <application>mutt</" @@ -76237,13 +76639,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:52085 +#: book.translate.xml:52325 #, no-wrap msgid "<prompt>%</prompt> <userinput>mutt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52087 +#: book.translate.xml:52327 msgid "" "<application>mutt</application> will automatically read and display the " "contents of the user mailbox in <filename>/var/mail</filename>. If no mails " @@ -76257,13 +76659,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:52097 +#: book.translate.xml:52337 msgctxt "_" msgid "external ref='mail/mutt1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52101 +#: book.translate.xml:52341 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 " @@ -76275,13 +76677,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:52108 +#: book.translate.xml:52348 msgctxt "_" msgid "external ref='mail/mutt2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52112 +#: book.translate.xml:52352 msgid "" "Similar to <citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <application>mutt</application> can be used to " @@ -76292,7 +76694,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:52120 +#: book.translate.xml:52360 msgid "" "By default, <application>mutt</application> uses the " "<citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></" @@ -76305,7 +76707,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52131 +#: book.translate.xml:52371 msgid "" "To compose a new mail message, press <keycap>m</keycap>. After a valid " "subject has been given, <application>mutt</application> will start " @@ -76322,13 +76724,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:52143 +#: book.translate.xml:52383 msgctxt "_" msgid "external ref='mail/mutt3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52147 +#: book.translate.xml:52387 msgid "" "<application>mutt</application> contains extensive help which can be " "accessed from most of the menus by pressing <keycap>?</keycap>. The top line " @@ -76336,19 +76738,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52155 +#: book.translate.xml:52395 msgid "<application>alpine</application>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52157 +#: book.translate.xml:52397 msgid "" "<application>alpine</application> is aimed at a beginner user, but also " "includes some advanced features." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:52161 +#: book.translate.xml:52401 msgid "" "<application>alpine</application> has had several remote vulnerabilities " "discovered in the past, which allowed remote attackers to execute arbitrary " @@ -76361,7 +76763,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52173 +#: book.translate.xml:52413 msgid "" "The current version of <application>alpine</application> may be installed " "using the <package>mail/alpine</package> port. Once the port has installed, " @@ -76370,13 +76772,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:52179 +#: book.translate.xml:52419 #, no-wrap msgid "<prompt>%</prompt> <userinput>alpine</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52181 +#: book.translate.xml:52421 msgid "" "The first time <application>alpine</application> runs, it displays a " "greeting page with a brief introduction, as well as a request from the " @@ -76392,13 +76794,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:52194 +#: book.translate.xml:52434 msgctxt "_" msgid "external ref='mail/pine1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52198 +#: book.translate.xml:52438 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, " @@ -76408,7 +76810,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52205 +#: book.translate.xml:52445 msgid "" "The default directory opened by <application>alpine</application> is " "<filename>inbox</filename>. To view the message index, press <keycap>I</" @@ -76421,13 +76823,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:52214 +#: book.translate.xml:52454 msgctxt "_" msgid "external ref='mail/pine2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52218 +#: book.translate.xml:52458 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 " @@ -76439,13 +76841,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:52225 +#: book.translate.xml:52465 msgctxt "_" msgid "external ref='mail/pine3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52229 +#: book.translate.xml:52469 msgid "" "In the screenshot below, a sample message is displayed by " "<application>alpine</application>. Contextual keyboard shortcuts are " @@ -76459,13 +76861,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:52238 +#: book.translate.xml:52478 msgctxt "_" msgid "external ref='mail/pine4' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52242 +#: book.translate.xml:52482 msgid "" "Replying to an email in <application>alpine</application> is done using the " "<application>pico</application> editor, which is installed by default with " @@ -76484,13 +76886,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:52255 +#: book.translate.xml:52495 msgctxt "_" msgid "external ref='mail/pine5' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52259 +#: book.translate.xml:52499 msgid "" "<application>alpine</application> can be customized using the " "<guimenuitem>SETUP</guimenuitem> option from the main menu. Consult <uri " @@ -76499,17 +76901,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52269 +#: book.translate.xml:52509 msgid "Using <application>fetchmail</application>" msgstr "使用 <application>fetchmail</application>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52282 +#: book.translate.xml:52522 msgid "<primary>fetchmail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52286 +#: book.translate.xml:52526 msgid "" "<application>fetchmail</application> is a full-featured <acronym>IMAP</" "acronym> and <acronym>POP</acronym> client. It allows users to automatically " @@ -76521,7 +76923,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52297 +#: book.translate.xml:52537 msgid "" "Support for the <acronym>POP3</acronym>, <acronym>APOP</acronym>, " "<acronym>KPOP</acronym>, <acronym>IMAP</acronym>, <acronym>ETRN</acronym> " @@ -76529,26 +76931,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52304 +#: book.translate.xml:52544 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:52310 +#: book.translate.xml:52550 msgid "May be run in daemon mode to check periodically for new messages." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52315 +#: book.translate.xml:52555 msgid "" "Can retrieve multiple mailboxes and forward them, based on configuration, to " "different local users." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52320 +#: book.translate.xml:52560 msgid "" "This section explains some of the basic features of <application>fetchmail</" "application>. This utility requires a <filename>.fetchmailrc</filename> " @@ -76559,13 +76961,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:52329 +#: book.translate.xml:52569 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod 600 .fetchmailrc</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52331 +#: book.translate.xml:52571 msgid "" "The following <filename>.fetchmailrc</filename> serves as an example for " "downloading a single user mailbox using <acronym>POP</acronym>. It tells " @@ -76577,13 +76979,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52341 +#: book.translate.xml:52581 #, no-wrap msgid "poll example.com protocol pop3 username \"joesoap\" password \"XXX\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52343 +#: book.translate.xml:52583 msgid "" "The next example connects to multiple <acronym>POP</acronym> and " "<acronym>IMAP</acronym> servers and redirects to different local usernames " @@ -76591,7 +76993,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52347 +#: book.translate.xml:52587 #, no-wrap msgid "" "poll example.com proto pop3:\n" @@ -76602,7 +77004,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52353 +#: book.translate.xml:52593 msgid "" "<application>fetchmail</application> can be run in daemon mode by running it " "with <option>-d</option>, followed by the interval (in seconds) that " @@ -76612,13 +77014,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:52361 +#: book.translate.xml:52601 #, no-wrap msgid "<prompt>%</prompt> <userinput>fetchmail -d 600</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52363 +#: book.translate.xml:52603 msgid "" "More information on <application>fetchmail</application> can be found at " "<uri xlink:href=\"http://www.fetchmail.info/\">http://www.fetchmail.info/</" @@ -76626,17 +77028,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52369 +#: book.translate.xml:52609 msgid "Using <application>procmail</application>" msgstr "使用 <application>procmail</application>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52382 +#: book.translate.xml:52622 msgid "<primary>procmail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52386 +#: book.translate.xml:52626 msgid "" "<application>procmail</application> is a powerful application used to filter " "incoming mail. It allows users to define <quote>rules</quote> which can be " @@ -76651,13 +77053,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52400 +#: book.translate.xml:52640 #, no-wrap msgid "\"|exec /usr/local/bin/procmail || exit 75\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52402 +#: book.translate.xml:52642 msgid "" "The following section displays some basic <application>procmail</" "application> rules, as well as brief descriptions of what they do. Rules " @@ -76666,7 +77068,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52408 +#: book.translate.xml:52648 msgid "" "The majority of these rules can be found in <citerefentry vendor=\"ports" "\"><refentrytitle>procmailex</refentrytitle><manvolnum>5</manvolnum></" @@ -76674,14 +77076,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52411 +#: book.translate.xml:52651 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:52414 +#: book.translate.xml:52654 #, no-wrap msgid "" ":0\n" @@ -76690,14 +77092,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52418 +#: book.translate.xml:52658 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:52421 +#: book.translate.xml:52661 #, no-wrap msgid "" ":0\n" @@ -76706,14 +77108,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52425 +#: book.translate.xml:52665 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:52429 +#: book.translate.xml:52669 #, no-wrap msgid "" ":0\n" @@ -76722,14 +77124,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52433 +#: book.translate.xml:52673 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:52436 +#: book.translate.xml:52676 #, no-wrap msgid "" ":0\n" @@ -76738,7 +77140,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52440 +#: book.translate.xml:52680 msgid "" "A useful recipe that parses incoming <systemitem class=\"fqdomainname" "\">FreeBSD.org</systemitem> mailing lists and places each list in its own " @@ -76746,7 +77148,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52443 +#: book.translate.xml:52683 #, no-wrap msgid "" ":0\n" @@ -76760,12 +77162,12 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:52473 +#: book.translate.xml:52713 msgid "Network Servers" msgstr "網路伺服器" #. (itstool) path: sect1/para -#: book.translate.xml:52478 +#: book.translate.xml:52718 msgid "" "This chapter covers some of the more frequently used network services on " "<trademark class=\"registered\">UNIX</trademark> systems. This includes " @@ -76778,22 +77180,22 @@ msgstr "" "定檔以供參考。" #. (itstool) path: sect1/para -#: book.translate.xml:52484 +#: book.translate.xml:52724 msgid "By the end of this chapter, readers will know:" msgstr "讀完本章,您將了解:" #. (itstool) path: listitem/para -#: book.translate.xml:52488 +#: book.translate.xml:52728 msgid "How to manage the <application>inetd</application> daemon." msgstr "如何管理 <application>inetd</application> Daemon。" #. (itstool) path: listitem/para -#: book.translate.xml:52493 +#: book.translate.xml:52733 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:52498 +#: book.translate.xml:52738 msgid "" "How to set up the Network Information Server (<acronym>NIS</acronym>) for " "centralizing and sharing user accounts." @@ -76802,23 +77204,23 @@ msgstr "" "來集中管理及共用使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:52504 +#: book.translate.xml:52744 msgid "" "How to set FreeBSD up to act as an <acronym>LDAP</acronym> server or client" -msgstr "如何設定 FreeBSD 成為 <acronym>LDAP</acronym> 伺服器或客戶端。" +msgstr "如何設定 FreeBSD 成為 <acronym>LDAP</acronym> 伺服器或客戶端" #. (itstool) path: listitem/para -#: book.translate.xml:52509 +#: book.translate.xml:52749 msgid "How to set up automatic network settings using <acronym>DHCP</acronym>." msgstr "如何設定使用 <acronym>DHCP</acronym> 自動網路設定。" #. (itstool) path: listitem/para -#: book.translate.xml:52514 +#: book.translate.xml:52754 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:52519 +#: book.translate.xml:52759 msgid "" "How to set up the <application>Apache</application> <acronym>HTTP</acronym> " "Server." @@ -76826,14 +77228,14 @@ msgstr "" "如何設定 <application>Apache</application> <acronym>HTTP</acronym> 伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:52524 +#: book.translate.xml:52764 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:52529 +#: book.translate.xml:52769 msgid "" "How to set up a file and print server for <trademark class=\"registered" "\">Windows</trademark> clients using <application>Samba</application>." @@ -76842,7 +77244,7 @@ msgstr "" "class=\"registered\">Windows</trademark> 客戶端使用。" #. (itstool) path: listitem/para -#: book.translate.xml:52534 +#: book.translate.xml:52774 msgid "" "How to synchronize the time and date, and set up a time server using the " "Network Time Protocol (<acronym>NTP</acronym>)." @@ -76851,38 +77253,38 @@ msgstr "" "acronym>) 設定時間伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:52540 +#: book.translate.xml:52780 msgid "How to set up <acronym>iSCSI</acronym>." msgstr "如何設定 <acronym>iSCSI</acronym>。" #. (itstool) path: sect1/para -#: book.translate.xml:52544 +#: book.translate.xml:52784 msgid "This chapter assumes a basic knowledge of:" msgstr "本章假設您有以下基礎知識:" #. (itstool) path: listitem/para -#: book.translate.xml:52548 +#: book.translate.xml:52788 msgid "<filename>/etc/rc</filename> scripts." msgstr "<filename>/etc/rc</filename> Script。" #. (itstool) path: listitem/para -#: book.translate.xml:52552 +#: book.translate.xml:52792 msgid "Network terminology." msgstr "網路術語。" #. (itstool) path: listitem/para -#: book.translate.xml:52556 +#: book.translate.xml:52796 msgid "" "Installation of additional third-party software (<xref linkend=\"ports\"/>)." msgstr "安裝其他第三方軟體 (<xref linkend=\"ports\"/>)。" #. (itstool) path: sect1/title -#: book.translate.xml:52563 +#: book.translate.xml:52803 msgid "The <application>inetd</application> Super-Server" msgstr "<application>inetd</application> 超級伺服器" #. (itstool) path: sect1/para -#: book.translate.xml:52584 +#: book.translate.xml:52824 msgid "" "The <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is sometimes referred to as a Super-Server " @@ -76897,7 +77299,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52596 +#: book.translate.xml:52836 msgid "" "Primarily, <application>inetd</application> is used to spawn other daemons, " "but several trivial protocols are handled internally, such as " @@ -76907,19 +77309,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52605 +#: book.translate.xml:52845 msgid "" "This section covers the basics of configuring <application>inetd</" "application>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52609 +#: book.translate.xml:52849 msgid "Configuration File" msgstr "設定檔" #. (itstool) path: sect2/para -#: book.translate.xml:52611 +#: book.translate.xml:52851 msgid "" "Configuration of <application>inetd</application> is done by editing " "<filename>/etc/inetd.conf</filename>. Each line of this configuration file " @@ -76932,7 +77334,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52623 +#: book.translate.xml:52863 msgid "" "After saving your edits, configure <application>inetd</application> to start " "at system boot by editing <filename>/etc/rc.conf</filename>:" @@ -76940,13 +77342,13 @@ msgstr "" #. (itstool) path: sect2/programlisting #. (itstool) path: step/programlisting -#: book.translate.xml:52627 book.translate.xml:64536 +#: book.translate.xml:52867 book.translate.xml:65535 #, no-wrap msgid "inetd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52629 +#: book.translate.xml:52869 msgid "" "To start <application>inetd</application> now, so that it listens for the " "service you configured, type:" @@ -76954,31 +77356,31 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:52632 book.translate.xml:64558 +#: book.translate.xml:52872 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52634 +#: book.translate.xml:52874 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:52639 +#: book.translate.xml:52879 msgid "Reloading the <application>inetd</application> Configuration File" msgstr "重新庫入 <application>inetd</application> 設定檔" #. (itstool) path: example/screen -#: book.translate.xml:52642 +#: book.translate.xml:52882 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd reload</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52645 +#: book.translate.xml:52885 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 " @@ -76986,7 +77388,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52650 +#: book.translate.xml:52890 msgid "" "As an example, this is the default entry for " "<citerefentry><refentrytitle>ftpd</refentrytitle><manvolnum>8</manvolnum></" @@ -76994,18 +77396,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:52653 +#: book.translate.xml:52893 #, no-wrap msgid "ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52655 +#: book.translate.xml:52895 msgid "The seven columns in an entry are as follows:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:52657 +#: book.translate.xml:52897 #, no-wrap msgid "" "service-name\n" @@ -77018,17 +77420,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52665 book.translate.xml:65535 +#: book.translate.xml:52905 book.translate.xml:65535 msgid "where:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52669 +#: book.translate.xml:52909 msgid "service-name" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52672 +#: book.translate.xml:52912 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 " @@ -77038,12 +77440,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52683 +#: book.translate.xml:52923 msgid "socket-type" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52686 +#: book.translate.xml:52926 msgid "" "Either <literal>stream</literal>, <literal>dgram</literal>, <literal>raw</" "literal>, or <literal>seqpacket</literal>. Use <literal>stream</literal> for " @@ -77052,94 +77454,94 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52696 +#: book.translate.xml:52936 msgid "protocol" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52699 +#: book.translate.xml:52939 msgid "Use one of the following protocol names:" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52705 +#: book.translate.xml:52945 msgid "Protocol Name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52706 +#: book.translate.xml:52946 msgid "Explanation" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52712 +#: book.translate.xml:52952 msgid "tcp or tcp4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52713 +#: book.translate.xml:52953 msgid "TCP IPv4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52717 +#: book.translate.xml:52957 msgid "udp or udp4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52718 +#: book.translate.xml:52958 msgid "<acronym>UDP</acronym> IPv4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52722 +#: book.translate.xml:52962 msgid "tcp6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52723 +#: book.translate.xml:52963 msgid "TCP IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52727 +#: book.translate.xml:52967 msgid "udp6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52728 +#: book.translate.xml:52968 msgid "<acronym>UDP</acronym> IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52732 +#: book.translate.xml:52972 msgid "tcp46" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52733 +#: book.translate.xml:52973 msgid "Both TCP IPv4 and IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52737 +#: book.translate.xml:52977 msgid "udp46" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52738 +#: book.translate.xml:52978 msgid "Both <acronym>UDP</acronym> IPv4 and IPv6" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52748 +#: book.translate.xml:52988 msgid "" "{wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-" "ip]]]" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52751 +#: book.translate.xml:52991 msgid "" "In this field, <option>wait</option> or <option>nowait</option> must be " "specified. <option>max-child</option>, <option>max-connections-per-ip-per-" @@ -77147,7 +77549,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52757 +#: book.translate.xml:52997 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 " @@ -77158,7 +77560,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52767 +#: book.translate.xml:53007 msgid "" "The maximum number of child daemons <application>inetd</application> may " "spawn is set by <option>max-child</option>. For example, to limit ten " @@ -77168,7 +77570,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52775 +#: book.translate.xml:53015 msgid "" "<option>max-connections-per-ip-per-minute</option> limits the number of " "connections from any particular <acronym>IP</acronym> address per minute. " @@ -77182,7 +77584,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52789 +#: book.translate.xml:53029 msgid "" "An example can be seen in the default settings for " "<citerefentry><refentrytitle>fingerd</refentrytitle><manvolnum>8</" @@ -77190,18 +77592,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:52792 +#: book.translate.xml:53032 #, no-wrap msgid "finger stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd -k -s" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52797 +#: book.translate.xml:53037 msgid "user" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52800 +#: book.translate.xml:53040 msgid "" "The username the daemon will run as. Daemons typically run as <systemitem " "class=\"username\">root</systemitem>, <systemitem class=\"username\">daemon</" @@ -77209,24 +77611,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52809 +#: book.translate.xml:53049 msgid "server-program" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52812 +#: book.translate.xml:53052 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:52819 +#: book.translate.xml:53059 msgid "server-program-arguments" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52822 +#: book.translate.xml:53062 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</" @@ -77234,12 +77636,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52832 +#: book.translate.xml:53072 msgid "Command-Line Options" msgstr "指令列選項" #. (itstool) path: sect2/para -#: book.translate.xml:52834 +#: book.translate.xml:53074 msgid "" "Like most server daemons, <application>inetd</application> has a number of " "options that can be used to modify its behavior. By default, " @@ -77250,7 +77652,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52842 +#: book.translate.xml:53082 msgid "" "To change the default options which are passed to <application>inetd</" "application>, add an entry for <literal>inetd_flags</literal> in <filename>/" @@ -77259,17 +77661,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52849 +#: book.translate.xml:53089 msgid "The available rate limiting options are:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52853 +#: book.translate.xml:53093 msgid "-c maximum" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52856 +#: book.translate.xml:53096 msgid "" "Specify the default maximum number of simultaneous invocations of each " "service, where the default is unlimited. May be overridden on a per-service " @@ -77278,12 +77680,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52865 +#: book.translate.xml:53105 msgid "-C rate" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52868 +#: book.translate.xml:53108 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-" @@ -77292,12 +77694,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52878 +#: book.translate.xml:53118 msgid "-R rate" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52881 +#: book.translate.xml:53121 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> " @@ -77305,12 +77707,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52889 +#: book.translate.xml:53129 msgid "-s maximum" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52892 +#: book.translate.xml:53132 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 " @@ -77319,7 +77721,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52902 +#: book.translate.xml:53142 msgid "" "Additional options are available. Refer to " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -77327,7 +77729,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52909 +#: book.translate.xml:53149 msgid "" "Many of the daemons which can be managed by <application>inetd</application> " "are not security-conscious. Some daemons, such as <application>fingerd</" @@ -77339,7 +77741,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52920 +#: book.translate.xml:53160 msgid "" "By default, TCP wrappers is enabled. Consult " "<citerefentry><refentrytitle>hosts_access</refentrytitle><manvolnum>5</" @@ -77348,26 +77750,26 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52929 +#: book.translate.xml:53169 msgid "Network File System (NFS)" msgstr "網路檔案系統 (NFS)" #. (itstool) path: authorgroup/author -#: book.translate.xml:52932 +#: book.translate.xml:53172 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:52942 +#: book.translate.xml:53182 msgid "" "<personname> <firstname>Bill</firstname> <surname>Swingle</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52953 +#: book.translate.xml:53193 msgid "" "FreeBSD supports the Network File System (<acronym>NFS</acronym>), which " "allows a server to share directories and files with clients over a network. " @@ -77376,21 +77778,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52959 +#: book.translate.xml:53199 msgid "" "<acronym>NFS</acronym> has many practical uses. Some of the more common uses " "include:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52964 +#: book.translate.xml:53204 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:52970 +#: book.translate.xml:53210 msgid "" "Several clients may need access to the <filename>/usr/ports/distfiles</" "filename> directory. Sharing that directory allows for quick access to the " @@ -77398,7 +77800,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52978 +#: book.translate.xml:53218 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. " @@ -77407,14 +77809,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52986 +#: book.translate.xml:53226 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:52992 +#: book.translate.xml:53232 msgid "" "Removable media storage devices can be used by other machines on the " "network. This reduces the number of devices throughout the network and " @@ -77424,7 +77826,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53001 +#: book.translate.xml:53241 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 " @@ -77433,79 +77835,79 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53006 +#: book.translate.xml:53246 msgid "These daemons must be running on the server:" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53007 +#: book.translate.xml:53247 msgid "<primary>NFS</primary> <secondary>server</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53011 +#: book.translate.xml:53251 msgid "<primary>file server</primary> <secondary>UNIX clients</secondary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:53016 book.translate.xml:53524 +#: book.translate.xml:53256 book.translate.xml:53764 msgid "<primary><application>rpcbind</application></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53019 +#: book.translate.xml:53259 msgid "<primary><application>mountd</application></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53022 +#: book.translate.xml:53262 msgid "<primary><application>nfsd</application></primary>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53033 +#: book.translate.xml:53273 msgid "Daemon" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53040 +#: book.translate.xml:53280 msgid "<application>nfsd</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53041 +#: book.translate.xml:53281 msgid "" "The <acronym>NFS</acronym> daemon which services requests from <acronym>NFS</" "acronym> clients." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53046 +#: book.translate.xml:53286 msgid "<application>mountd</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53047 +#: book.translate.xml:53287 msgid "" "The <acronym>NFS</acronym> mount daemon which carries out requests received " "from <application>nfsd</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53053 +#: book.translate.xml:53293 msgid "<application>rpcbind</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53054 +#: book.translate.xml:53294 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:53062 +#: book.translate.xml:53302 msgid "" "Running <citerefentry><refentrytitle>nfsiod</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on the client can improve performance, but is not " @@ -77513,17 +77915,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53066 +#: book.translate.xml:53306 msgid "Configuring the Server" msgstr "設定伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53068 +#: book.translate.xml:53308 msgid "<primary>NFS</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53073 +#: book.translate.xml:53313 msgid "" "The file systems which the <acronym>NFS</acronym> server will share are " "specified in <filename>/etc/exports</filename>. Each line in this file " @@ -77535,12 +77937,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53082 +#: book.translate.xml:53322 msgid "<primary>NFS</primary> <secondary>export examples</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53087 +#: book.translate.xml:53327 msgid "" "The following <filename>/etc/exports</filename> entries demonstrate how to " "export file systems. The examples can be modified to match the file systems " @@ -77551,7 +77953,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53094 +#: book.translate.xml:53334 msgid "" "This example shows how to export <filename>/cdrom</filename> to three hosts " "named <replaceable>alpha</replaceable>, <replaceable>bravo</replaceable>, " @@ -77559,13 +77961,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53100 +#: book.translate.xml:53340 #, no-wrap msgid "/cdrom -ro <replaceable>alpha</replaceable> <replaceable>bravo</replaceable> <replaceable>charlie</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53102 +#: book.translate.xml:53342 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 " @@ -77576,7 +77978,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53110 +#: book.translate.xml:53350 msgid "" "The next example exports <filename>/home</filename> to three clients by " "<acronym>IP</acronym> address. This can be useful for networks without " @@ -77587,13 +77989,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53119 +#: book.translate.xml:53359 #, 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:53121 +#: book.translate.xml:53361 msgid "" "This next example exports <filename>/a</filename> so that two clients from " "different domains may access that file system. The <option>-maproot=root</" @@ -77607,13 +78009,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53130 +#: book.translate.xml:53370 #, no-wrap msgid "/a -maproot=root host.example.com box.example.org" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53132 +#: book.translate.xml:53372 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 " @@ -77621,7 +78023,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53137 +#: book.translate.xml:53377 #, no-wrap msgid "" "# Invalid when /usr is one file system\n" @@ -77630,25 +78032,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53141 +#: book.translate.xml:53381 msgid "The correct format for this situation is to use one entry:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53144 +#: book.translate.xml:53384 #, no-wrap msgid "/usr/src /usr/ports client" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53146 +#: book.translate.xml:53386 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:53150 +#: book.translate.xml:53390 #, no-wrap msgid "" "# Export src and ports to client01 and client02, but only\n" @@ -77662,14 +78064,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53159 +#: book.translate.xml:53399 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:53163 +#: book.translate.xml:53403 #, no-wrap msgid "" "rpcbind_enable=\"YES\"\n" @@ -77678,19 +78080,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53167 +#: book.translate.xml:53407 msgid "The server can be started now by running this command:" msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:53170 book.translate.xml:64529 +#: book.translate.xml:53410 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>service nfsd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53172 +#: book.translate.xml:53412 msgid "" "Whenever the <acronym>NFS</acronym> server is started, <application>mountd</" "application> also starts automatically. However, <application>mountd</" @@ -77700,42 +78102,42 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53180 +#: book.translate.xml:53420 #, no-wrap msgid "<prompt>#</prompt> <userinput>service mountd reload</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53184 +#: book.translate.xml:53424 msgid "Configuring the Client" msgstr "設定客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:53186 +#: book.translate.xml:53426 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:53189 +#: book.translate.xml:53429 #, no-wrap msgid "nfs_client_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53191 +#: book.translate.xml:53431 msgid "Then, run this command on each <acronym>NFS</acronym> client:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53194 +#: book.translate.xml:53434 #, no-wrap msgid "<prompt>#</prompt> <userinput>service nfsclient start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53196 +#: book.translate.xml:53436 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 " @@ -77745,18 +78147,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53205 +#: book.translate.xml:53445 msgid "<primary>NFS</primary> <secondary>mounting</secondary>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53209 +#: book.translate.xml:53449 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount server:/home /mnt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53211 +#: book.translate.xml:53451 msgid "" "The files and directories in <filename>/home</filename> will now be " "available on <systemitem>client</systemitem>, in the <filename>/mnt</" @@ -77764,32 +78166,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53216 +#: book.translate.xml:53456 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:53219 +#: book.translate.xml:53459 #, no-wrap msgid "server:/home\t/mnt\tnfs\trw\t0\t0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53221 +#: book.translate.xml:53461 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:53226 +#: book.translate.xml:53466 msgid "Locking" msgstr "鎖定" #. (itstool) path: sect2/para -#: book.translate.xml:53228 +#: book.translate.xml:53468 msgid "" "Some applications require file locking to operate correctly. To enable " "locking, add these lines to <filename>/etc/rc.conf</filename> on both the " @@ -77797,7 +78199,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53233 +#: book.translate.xml:53473 #, no-wrap msgid "" "rpc_lockd_enable=\"YES\"\n" @@ -77805,12 +78207,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53236 +#: book.translate.xml:53476 msgid "Then start the applications:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53238 +#: book.translate.xml:53478 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service lockd start</userinput>\n" @@ -77818,7 +78220,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53241 +#: book.translate.xml:53481 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 " @@ -77828,7 +78230,7 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:53250 +#: book.translate.xml:53490 msgid "" "Automating Mounts with <citerefentry><refentrytitle>amd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -77837,31 +78239,31 @@ msgstr "" "manvolnum></citerefentry> 自動掛載" #. (itstool) path: authorgroup/author -#: book.translate.xml:53253 +#: book.translate.xml:53493 msgid "" "<personname> <firstname>Wylie</firstname> <surname>Stilwell</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:53263 +#: book.translate.xml:53503 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53273 +#: book.translate.xml:53513 msgid "<primary>amd</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53274 +#: book.translate.xml:53514 msgid "<primary>automatic mounter daemon</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53278 +#: book.translate.xml:53518 msgid "" "The automatic mounter daemon, <application>amd</application>, automatically " "mounts a remote file system whenever a file or directory within that file " @@ -77870,7 +78272,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53285 +#: book.translate.xml:53525 msgid "" "This daemon provides an alternative to modifying <filename>/etc/fstab</" "filename> to list every client. It operates by attaching itself as an " @@ -77886,12 +78288,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:53303 +#: book.translate.xml:53543 msgid "Mounting an Export with <application>amd</application>" msgstr "使用 <application>amd</application> 掛載 Export" #. (itstool) path: example/para -#: book.translate.xml:53306 +#: book.translate.xml:53546 msgid "" "In this example, <command>showmount -e</command> shows the exported file " "systems that can be mounted from the <acronym>NFS</acronym> server, " @@ -77899,7 +78301,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:53311 +#: book.translate.xml:53551 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>showmount -e foobar</userinput>\n" @@ -77910,7 +78312,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53318 +#: book.translate.xml:53558 msgid "" "The output from <command>showmount</command> shows <filename>/usr</filename> " "as an export. When changing directories to <filename>/host/foobar/usr</" @@ -77921,31 +78323,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53327 +#: book.translate.xml:53567 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:53330 +#: book.translate.xml:53570 #, no-wrap msgid "amd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53332 +#: book.translate.xml:53572 msgid "To start <application>amd</application> now:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53334 +#: book.translate.xml:53574 #, no-wrap msgid "<prompt>#</prompt> <userinput>service amd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53336 +#: book.translate.xml:53576 msgid "" "Custom flags can be passed to <application>amd</application> from the " "<varname>amd_flags</varname> environment variable. By default, " @@ -77953,13 +78355,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53341 +#: book.translate.xml:53581 #, 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:53343 +#: book.translate.xml:53583 msgid "" "The default options with which exports are mounted are defined in <filename>/" "etc/amd.map</filename>. Some of the more advanced features of " @@ -77968,7 +78370,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53348 +#: book.translate.xml:53588 msgid "" "Consult <citerefentry><refentrytitle>amd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>amd.conf</" @@ -77976,7 +78378,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53353 +#: book.translate.xml:53593 msgid "" "Automating Mounts with <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>" @@ -77985,7 +78387,7 @@ msgstr "" "manvolnum></citerefentry> 自動掛載" #. (itstool) path: note/para -#: book.translate.xml:53356 +#: book.translate.xml:53596 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> automount facility is supported starting with " @@ -77997,17 +78399,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53364 +#: book.translate.xml:53604 msgid "<primary>autofs</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53365 +#: book.translate.xml:53605 msgid "<primary>automounter subsystem</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53369 +#: book.translate.xml:53609 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> facility is a common name for several components " @@ -78028,7 +78430,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53382 +#: book.translate.xml:53622 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> virtual filesystem is mounted on specified " @@ -78038,7 +78440,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53386 +#: book.translate.xml:53626 msgid "" "Whenever a process attempts to access file within the " "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" @@ -78055,7 +78457,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53396 +#: book.translate.xml:53636 msgid "" "The primary autofs configuration file is <filename>/etc/auto_master</" "filename>. It assigns individual maps to top-level mounts. For an " @@ -78065,7 +78467,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53402 +#: book.translate.xml:53642 msgid "" "There is a special automounter map mounted on <filename>/net</filename>. " "When a file is accessed within this directory, " @@ -78079,7 +78481,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:53412 +#: book.translate.xml:53652 msgid "" "Mounting an Export with <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>" @@ -78088,7 +78490,7 @@ msgstr "" "manvolnum></citerefentry> 掛載 Export" #. (itstool) path: example/para -#: book.translate.xml:53414 +#: book.translate.xml:53654 msgid "" "In this example, <command>showmount -e</command> shows the exported file " "systems that can be mounted from the <acronym>NFS</acronym> server, " @@ -78096,7 +78498,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:53419 +#: book.translate.xml:53659 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>showmount -e foobar</userinput>\n" @@ -78107,7 +78509,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53426 +#: book.translate.xml:53666 msgid "" "The output from <command>showmount</command> shows <filename>/usr</filename> " "as an export. When changing directories to <filename>/host/foobar/usr</" @@ -78120,7 +78522,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53434 +#: book.translate.xml:53674 msgid "" "To enable <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> at boot time, add this line to <filename>/etc/rc." @@ -78128,14 +78530,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53439 +#: book.translate.xml:53679 msgid "" "Then <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> can be started by running:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53441 +#: book.translate.xml:53681 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount start</userinput>\n" @@ -78144,7 +78546,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53445 +#: book.translate.xml:53685 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> map format is the same as in other operating " @@ -78154,7 +78556,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53450 +#: book.translate.xml:53690 msgid "" "Consult the <citerefentry><refentrytitle>automount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, " @@ -78166,47 +78568,47 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:53479 +#: book.translate.xml:53719 msgid "Network Information System (<acronym>NIS</acronym>)" msgstr "網路資訊系統 (<acronym>NIS</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53482 +#: book.translate.xml:53722 msgid "<primary>NIS</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53484 +#: book.translate.xml:53724 msgid "<primary>HP-UX</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53485 +#: book.translate.xml:53725 msgid "<primary>AIX</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53486 +#: book.translate.xml:53726 msgid "<primary>Linux</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53487 +#: book.translate.xml:53727 msgid "<primary>NetBSD</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53488 +#: book.translate.xml:53728 msgid "<primary>OpenBSD</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53489 +#: book.translate.xml:53729 msgid "<primary>yellow pages</primary> <see>NIS</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53494 +#: book.translate.xml:53734 msgid "" "Network Information System (<acronym>NIS</acronym>) is designed to " "centralize administration of <trademark class=\"registered\">UNIX</" @@ -78218,12 +78620,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53502 +#: book.translate.xml:53742 msgid "<primary>NIS</primary> <secondary>domains</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53507 +#: book.translate.xml:53747 msgid "" "<acronym>NIS</acronym> is a Remote Procedure Call (<acronym>RPC</acronym>)-" "based client/server system that allows a group of machines within an " @@ -78234,44 +78636,44 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53515 +#: book.translate.xml:53755 msgid "FreeBSD uses version 2 of the <acronym>NIS</acronym> protocol." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53519 +#: book.translate.xml:53759 msgid "<acronym>NIS</acronym> Terms and Processes" msgstr "<acronym>NIS</acronym> 術語與程序" #. (itstool) path: sect2/para -#: book.translate.xml:53521 +#: book.translate.xml:53761 msgid "" "Table 28.1 summarizes the terms and important processes used by " "<acronym>NIS</acronym>:" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53527 +#: book.translate.xml:53767 msgid "<primary><application>portmap</application></primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:53532 +#: book.translate.xml:53772 msgid "<acronym>NIS</acronym> Terminology" msgstr "<acronym>NIS</acronym> 術語" #. (itstool) path: row/entry -#: book.translate.xml:53540 book.translate.xml:55422 +#: book.translate.xml:53780 book.translate.xml:55850 msgid "Term" msgstr "術語" #. (itstool) path: row/entry -#: book.translate.xml:53547 +#: book.translate.xml:53787 msgid "<acronym>NIS</acronym> domain name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53549 +#: book.translate.xml:53789 msgid "" "<acronym>NIS</acronym> servers and clients share an <acronym>NIS</acronym> " "domain name. Typically, this name does not have anything to do with " @@ -78279,14 +78681,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53556 +#: book.translate.xml:53796 msgid "" "<citerefentry><refentrytitle>rpcbind</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53558 +#: book.translate.xml:53798 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> " @@ -78294,14 +78696,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53565 +#: book.translate.xml:53805 msgid "" "<citerefentry><refentrytitle>ypbind</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53566 +#: book.translate.xml:53806 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 " @@ -78312,14 +78714,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53578 +#: book.translate.xml:53818 msgid "" "<citerefentry><refentrytitle>ypserv</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53579 +#: book.translate.xml:53819 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</" @@ -78330,14 +78732,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53591 +#: book.translate.xml:53831 msgid "" "<citerefentry><refentrytitle>rpc.yppasswdd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53592 +#: book.translate.xml:53832 msgid "" "This process only runs on <acronym>NIS</acronym> master servers. This daemon " "allows <acronym>NIS</acronym> clients to change their <acronym>NIS</acronym> " @@ -78346,38 +78748,38 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53608 +#: book.translate.xml:53848 msgid "Machine Types" msgstr "主機類型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53610 +#: book.translate.xml:53850 msgid "<primary>NIS</primary> <secondary>master server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53613 book.translate.xml:53970 +#: book.translate.xml:53853 book.translate.xml:54210 msgid "<primary>NIS</primary> <secondary>slave server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53616 +#: book.translate.xml:53856 msgid "<primary>NIS</primary> <secondary>client</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53620 +#: book.translate.xml:53860 msgid "" "There are three types of hosts in an <acronym>NIS</acronym> environment:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53625 +#: book.translate.xml:53865 msgid "<acronym>NIS</acronym> master server" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53627 +#: book.translate.xml:53867 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 " @@ -78391,12 +78793,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53642 +#: book.translate.xml:53882 msgid "<acronym>NIS</acronym> slave servers" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53644 +#: book.translate.xml:53884 msgid "" "<acronym>NIS</acronym> slave servers maintain copies of the <acronym>NIS</" "acronym> master's data files in order to provide redundancy. Slave servers " @@ -78406,19 +78808,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53654 +#: book.translate.xml:53894 msgid "<acronym>NIS</acronym> clients" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53656 +#: book.translate.xml:53896 msgid "" "<acronym>NIS</acronym> clients authenticate against the <acronym>NIS</" "acronym> server during log on." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53662 +#: book.translate.xml:53902 msgid "" "Information in many files can be shared using <acronym>NIS</acronym>. The " "<filename>master.passwd</filename>, <filename>group</filename>, and " @@ -78429,12 +78831,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53674 +#: book.translate.xml:53914 msgid "Planning Considerations" msgstr "規劃注意事項" #. (itstool) path: sect2/para -#: book.translate.xml:53676 +#: book.translate.xml:53916 msgid "" "This section describes a sample <acronym>NIS</acronym> environment which " "consists of 15 FreeBSD machines with no centralized point of administration. " @@ -78445,97 +78847,97 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53685 +#: book.translate.xml:53925 msgid "The configuration of the lab will be as follows:" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53691 +#: book.translate.xml:53931 msgid "Machine name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53693 +#: book.translate.xml:53933 msgid "Machine role" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53699 +#: book.translate.xml:53939 msgid "<systemitem>ellington</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53700 +#: book.translate.xml:53940 msgid "<systemitem class=\"ipaddress\">10.0.0.2</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53701 +#: book.translate.xml:53941 msgid "<acronym>NIS</acronym> master" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53705 +#: book.translate.xml:53945 msgid "<systemitem>coltrane</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53706 +#: book.translate.xml:53946 msgid "<systemitem class=\"ipaddress\">10.0.0.3</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53707 +#: book.translate.xml:53947 msgid "<acronym>NIS</acronym> slave" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53711 +#: book.translate.xml:53951 msgid "<systemitem>basie</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53712 +#: book.translate.xml:53952 msgid "<systemitem class=\"ipaddress\">10.0.0.4</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53713 +#: book.translate.xml:53953 msgid "Faculty workstation" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53717 +#: book.translate.xml:53957 msgid "<systemitem>bird</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53718 +#: book.translate.xml:53958 msgid "<systemitem class=\"ipaddress\">10.0.0.5</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53719 +#: book.translate.xml:53959 msgid "Client machine" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53723 +#: book.translate.xml:53963 msgid "<systemitem>cli[1-11]</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53724 +#: book.translate.xml:53964 msgid "<systemitem class=\"ipaddress\">10.0.0.[6-17]</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53726 +#: book.translate.xml:53966 msgid "Other client machines" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53732 +#: book.translate.xml:53972 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 " @@ -78544,17 +78946,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53738 +#: book.translate.xml:53978 msgid "Choosing a <acronym>NIS</acronym> Domain Name" msgstr "選擇 <acronym>NIS</acronym> 網域名稱" #. (itstool) path: sect3/indexterm -#: book.translate.xml:53740 +#: book.translate.xml:53980 msgid "<primary>NIS</primary> <secondary>domain name</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53744 +#: book.translate.xml:53984 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 " @@ -78564,7 +78966,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53751 +#: book.translate.xml:53991 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 " @@ -78577,7 +78979,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53762 +#: book.translate.xml:54002 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 " @@ -78586,12 +78988,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53771 +#: book.translate.xml:54011 msgid "Physical Server Requirements" msgstr "實體伺服器需求" #. (itstool) path: sect3/para -#: book.translate.xml:53773 +#: book.translate.xml:54013 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 " @@ -78605,12 +79007,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53789 +#: book.translate.xml:54029 msgid "Configuring the <acronym>NIS</acronym> Master Server" msgstr "設定 <acronym>NIS</acronym> Master 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:53792 +#: book.translate.xml:54032 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 " @@ -78622,7 +79024,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53803 +#: book.translate.xml:54043 msgid "" "<acronym>NIS</acronym> master and slave servers handle all <acronym>NIS</" "acronym> requests through <citerefentry><refentrytitle>ypserv</" @@ -78634,12 +79036,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53811 +#: book.translate.xml:54051 msgid "<primary>NIS</primary> <secondary>server configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53814 +#: book.translate.xml:54054 msgid "" "Setting up a master <acronym>NIS</acronym> server can be relatively straight " "forward, depending on environmental needs. Since FreeBSD provides built-in " @@ -78648,7 +79050,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53820 +#: book.translate.xml:54060 #, no-wrap msgid "" "nisdomainname=\"test-domain\"\t<co xml:id=\"network-nis-co-domainname\"/>\n" @@ -78657,21 +79059,21 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:53826 +#: book.translate.xml:54066 msgid "" "This line sets the <acronym>NIS</acronym> domain name to <literal>test-" "domain</literal>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:53831 +#: book.translate.xml:54071 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:53837 +#: book.translate.xml:54077 msgid "" "This enables the <citerefentry><refentrytitle>rpc.yppasswdd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon so that users " @@ -78679,7 +79081,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53843 +#: book.translate.xml:54083 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 " @@ -78692,14 +79094,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53855 +#: book.translate.xml:54095 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:53859 +#: book.translate.xml:54099 #, no-wrap msgid "" "nis_client_enable=\"YES\" # run client stuff as well\n" @@ -78707,7 +79109,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53862 +#: book.translate.xml:54102 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>. " @@ -78717,23 +79119,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53868 +#: book.translate.xml:54108 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ypserv start</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53871 +#: book.translate.xml:54111 msgid "Initializing the <acronym>NIS</acronym> Maps" msgstr "初始化 <acronym>NIS</acronym> 對應表" #. (itstool) path: sect3/indexterm -#: book.translate.xml:53873 +#: book.translate.xml:54113 msgid "<primary>NIS</primary> <secondary>maps</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53877 +#: book.translate.xml:54117 msgid "" "<acronym>NIS</acronym> maps are generated from the configuration files in " "<filename>/etc</filename> on the <acronym>NIS</acronym> master, with one " @@ -78744,7 +79146,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53886 +#: book.translate.xml:54126 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /etc/master.passwd /var/yp/master.passwd</userinput>\n" @@ -78753,7 +79155,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53890 +#: book.translate.xml:54130 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</" @@ -78762,14 +79164,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:53897 +#: book.translate.xml:54137 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:53903 +#: book.translate.xml:54143 msgid "" "After completing this task, initialize the <acronym>NIS</acronym> maps. " "FreeBSD includes the <citerefentry><refentrytitle>ypinit</" @@ -78779,7 +79181,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53909 +#: book.translate.xml:54149 #, no-wrap msgid "" "ellington<prompt>#</prompt> <userinput>ypinit -m test-domain</userinput>\n" @@ -78808,7 +79210,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53933 +#: book.translate.xml:54173 msgid "" "This will create <filename>/var/yp/Makefile</filename> from <filename>/var/" "yp/Makefile.dist</filename>. By default, this file assumes that the " @@ -78819,18 +79221,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:53942 +#: book.translate.xml:54182 #, no-wrap msgid "NOPUSH = \"True\"" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53946 +#: book.translate.xml:54186 msgid "Adding New Users" msgstr "新增使用者" #. (itstool) path: sect3/para -#: book.translate.xml:53948 +#: book.translate.xml:54188 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 " @@ -78841,7 +79243,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53957 +#: book.translate.xml:54197 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw useradd jsmith</userinput>\n" @@ -78850,19 +79252,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53961 +#: book.translate.xml:54201 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:53968 +#: book.translate.xml:54208 msgid "Setting up a <acronym>NIS</acronym> Slave Server" msgstr "設定 <acronym>NIS</acronym> Slave 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:53974 +#: book.translate.xml:54214 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 " @@ -78874,7 +79276,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53984 +#: book.translate.xml:54224 #, no-wrap msgid "" "coltrane<prompt>#</prompt> <userinput>ypinit -s ellington test-domain</userinput>\n" @@ -78936,7 +79338,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54041 +#: book.translate.xml:54281 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> " @@ -78946,7 +79348,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54048 +#: book.translate.xml:54288 #, no-wrap msgid "" "20 * * * * root /usr/libexec/ypxfr passwd.byname\n" @@ -78954,7 +79356,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54051 +#: book.translate.xml:54291 msgid "" "These entries are not mandatory because the master server automatically " "attempts to push any map changes to its slaves. However, since clients may " @@ -78964,19 +79366,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54059 +#: book.translate.xml:54299 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:54065 +#: book.translate.xml:54305 msgid "Setting Up an <acronym>NIS</acronym> Client" msgstr "設定 <acronym>NIS</acronym> 客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:54067 +#: book.translate.xml:54307 msgid "" "An <acronym>NIS</acronym> client binds to an <acronym>NIS</acronym> server " "using <citerefentry><refentrytitle>ypbind</refentrytitle><manvolnum>8</" @@ -78995,17 +79397,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54085 +#: book.translate.xml:54325 msgid "<primary>NIS</primary> <secondary>client configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54089 +#: book.translate.xml:54329 msgid "To configure a FreeBSD machine to be an <acronym>NIS</acronym> client:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54094 +#: book.translate.xml:54334 msgid "" "Edit <filename>/etc/rc.conf</filename> and add the following lines in order " "to set the <acronym>NIS</acronym> domain name and start " @@ -79014,7 +79416,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:54099 +#: book.translate.xml:54339 #, no-wrap msgid "" "nisdomainname=\"test-domain\"\n" @@ -79022,7 +79424,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54104 +#: book.translate.xml:54344 msgid "" "To import all possible password entries from the <acronym>NIS</acronym> " "server, use <command>vipw</command> to remove all user accounts except one " @@ -79036,13 +79438,13 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: sect2/programlisting -#: book.translate.xml:54116 book.translate.xml:54489 +#: book.translate.xml:54356 book.translate.xml:54729 #, no-wrap msgid "+:::::::::" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54118 +#: book.translate.xml:54358 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. " @@ -79053,27 +79455,27 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54129 +#: book.translate.xml:54369 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:54133 +#: book.translate.xml:54373 #, no-wrap msgid "+:*::" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54137 +#: book.translate.xml:54377 msgid "" "To start the <acronym>NIS</acronym> client immediately, execute the " "following commands as the superuser:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54140 +#: book.translate.xml:54380 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>/etc/netstart</userinput>\n" @@ -79081,19 +79483,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54143 +#: book.translate.xml:54383 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:54149 +#: book.translate.xml:54389 msgid "<acronym>NIS</acronym> Security" msgstr "<acronym>NIS</acronym> 安全性" #. (itstool) path: sect2/para -#: book.translate.xml:54151 +#: book.translate.xml:54391 msgid "" "Since <acronym>RPC</acronym> is a broadcast-based service, any system " "running <application>ypbind</application> within the same domain can " @@ -79111,7 +79513,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54166 +#: book.translate.xml:54406 #, no-wrap msgid "" "# allow connections from local host -- mandatory\n" @@ -79126,7 +79528,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54176 +#: book.translate.xml:54416 msgid "" "If <citerefentry><refentrytitle>ypserv</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> receives a request from an address that matches " @@ -79137,7 +79539,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54184 +#: book.translate.xml:54424 msgid "" "<xref linkend=\"tcpwrappers\"/> is an alternate mechanism for providing " "access control instead of <filename>securenets</filename>. While either " @@ -79147,7 +79549,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54192 +#: book.translate.xml:54432 msgid "" "Servers using <filename>securenets</filename> may fail to serve legitimate " "<acronym>NIS</acronym> clients with archaic TCP/IP implementations. Some of " @@ -79159,7 +79561,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54204 +#: book.translate.xml:54444 msgid "" "The use of <application>TCP Wrapper</application> increases the latency of " "the <acronym>NIS</acronym> server. The additional delay may be long enough " @@ -79170,12 +79572,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:54214 +#: book.translate.xml:54454 msgid "Barring Some Users" msgstr "阻擋部份使用者" #. (itstool) path: sect3/para -#: book.translate.xml:54216 +#: book.translate.xml:54456 msgid "" "In this example, the <systemitem>basie</systemitem> system is a faculty " "workstation within the <acronym>NIS</acronym> domain. The <filename>passwd</" @@ -79185,7 +79587,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:54225 +#: book.translate.xml:54465 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> " @@ -79199,25 +79601,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:54238 +#: book.translate.xml:54478 #, no-wrap msgid "" "basie<prompt>#</prompt> <userinput>cat /etc/master.passwd</userinput>\n" "root:[password]:0:0::0:0:The super-user:/root:/bin/csh\n" "toor:[password]:0:0::0:0:The other super-user:/root:/bin/sh\n" -"daemon:*:1:1::0:0:Owner of many system processes:/root:/sbin/nologin\n" -"operator:*:2:5::0:0:System &:/:/sbin/nologin\n" -"bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/sbin/nologin\n" -"tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin\n" -"kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin\n" -"games:*:7:13::0:0:Games pseudo-user:/usr/games:/sbin/nologin\n" -"news:*:8:8::0:0:News Subsystem:/:/sbin/nologin\n" -"man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/sbin/nologin\n" -"bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin\n" +"daemon:*:1:1::0:0:Owner of many system processes:/root:/usr/sbin/nologin\n" +"operator:*:2:5::0:0:System &:/:/usr/sbin/nologin\n" +"bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/usr/sbin/nologin\n" +"tty:*:4:65533::0:0:Tty Sandbox:/:/usr/sbin/nologin\n" +"kmem:*:5:65533::0:0:KMem Sandbox:/:/usr/sbin/nologin\n" +"games:*:7:13::0:0:Games pseudo-user:/usr/games:/usr/sbin/nologin\n" +"news:*:8:8::0:0:News Subsystem:/:/usr/sbin/nologin\n" +"man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/usr/sbin/nologin\n" +"bind:*:53:53::0:0:Bind Sandbox:/:/usr/sbin/nologin\n" "uucp:*:66:66::0:0:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico\n" -"xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/sbin/nologin\n" -"pop:*:68:6::0:0:Post Office Owner:/nonexistent:/sbin/nologin\n" -"nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/sbin/nologin\n" +"xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/usr/sbin/nologin\n" +"pop:*:68:6::0:0:Post Office Owner:/nonexistent:/usr/sbin/nologin\n" +"nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/usr/sbin/nologin\n" "-bill:::::::::\n" "+:::::::::\n" "\n" @@ -79225,17 +79627,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:54274 +#: book.translate.xml:54514 msgid "Using Netgroups" msgstr "使用 Netgroups" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54276 book.translate.xml:54442 +#: book.translate.xml:54516 book.translate.xml:54682 msgid "<primary>netgroups</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54278 +#: book.translate.xml:54518 msgid "" "Barring specified users from logging on to individual systems becomes " "unscaleable on larger networks and quickly loses the main benefit of " @@ -79243,7 +79645,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54283 +#: book.translate.xml:54523 msgid "" "Netgroups were developed to handle large, complex networks with hundreds of " "users and machines. Their use is comparable to <trademark class=\"registered" @@ -79253,7 +79655,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54289 +#: book.translate.xml:54529 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 " @@ -79261,41 +79663,41 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:54294 +#: book.translate.xml:54534 msgid "Additional Users" msgstr "其他使用者" #. (itstool) path: row/entry -#: book.translate.xml:54299 +#: book.translate.xml:54539 msgid "User Name(s)" msgstr "使用者名稱" #. (itstool) path: row/entry -#: book.translate.xml:54306 +#: book.translate.xml:54546 msgid "" "<systemitem class=\"username\">alpha</systemitem>, <systemitem class=" "\"username\">beta</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54308 +#: book.translate.xml:54548 msgid "IT department employees" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54312 +#: book.translate.xml:54552 msgid "" "<systemitem class=\"username\">charlie</systemitem>, <systemitem class=" "\"username\">delta</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54313 +#: book.translate.xml:54553 msgid "IT department apprentices" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54317 +#: book.translate.xml:54557 msgid "" "<systemitem class=\"username\">echo</systemitem>, <systemitem class=" "\"username\">foxtrott</systemitem>, <systemitem class=\"username\">golf</" @@ -79303,46 +79705,46 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54321 +#: book.translate.xml:54561 msgid "employees" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54325 +#: book.translate.xml:54565 msgid "" "<systemitem class=\"username\">able</systemitem>, <systemitem class=" "\"username\">baker</systemitem>, ..." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54328 +#: book.translate.xml:54568 msgid "interns" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:54335 +#: book.translate.xml:54575 msgid "Additional Systems" msgstr "其他系統" #. (itstool) path: row/entry -#: book.translate.xml:54340 +#: book.translate.xml:54580 msgid "Machine Name(s)" msgstr "機器名稱" #. (itstool) path: row/entry -#: book.translate.xml:54349 +#: book.translate.xml:54589 msgid "" "<systemitem>war</systemitem>, <systemitem>death</systemitem>, " "<systemitem>famine</systemitem>, <systemitem>pollution</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54353 +#: book.translate.xml:54593 msgid "Only IT employees are allowed to log onto these servers." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54359 +#: book.translate.xml:54599 msgid "" "<systemitem>pride</systemitem>, <systemitem>greed</systemitem>, " "<systemitem>envy</systemitem>, <systemitem>wrath</systemitem>, " @@ -79350,37 +79752,37 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54365 +#: book.translate.xml:54605 msgid "" "All members of the IT department are allowed to login onto these servers." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54370 +#: book.translate.xml:54610 msgid "" "<systemitem>one</systemitem>, <systemitem>two</systemitem>, " "<systemitem>three</systemitem>, <systemitem>four</systemitem>, ..." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54375 +#: book.translate.xml:54615 msgid "Ordinary workstations used by employees." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54380 +#: book.translate.xml:54620 msgid "<systemitem>trashcan</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54381 +#: book.translate.xml:54621 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:54388 +#: book.translate.xml:54628 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 " @@ -79392,7 +79794,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54398 +#: book.translate.xml:54638 msgid "" "The first step is the initialization of the <acronym>NIS</acronym> " "<literal>netgroup</literal> map. In FreeBSD, this map is not created by " @@ -79401,14 +79803,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54404 +#: book.translate.xml:54644 msgid "" "This example creates four netgroups to represent IT employees, IT " "apprentices, employees, and interns:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54407 +#: book.translate.xml:54647 #, no-wrap msgid "" "IT_EMP (,alpha,test-domain) (,beta,test-domain)\n" @@ -79419,7 +79821,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54413 +#: book.translate.xml:54653 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 " @@ -79428,26 +79830,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:54421 +#: book.translate.xml:54661 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:54427 +#: book.translate.xml:54667 msgid "The name of the account that belongs to this netgroup." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:54432 +#: book.translate.xml:54672 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:54438 +#: book.translate.xml:54678 msgid "" "If a group contains multiple users, separate each user with whitespace. " "Additionally, each field may contain wildcards. See " @@ -79456,7 +79858,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54443 +#: book.translate.xml:54683 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 " @@ -79464,7 +79866,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54448 +#: book.translate.xml:54688 msgid "" "Some non-FreeBSD <acronym>NIS</acronym> clients cannot handle netgroups " "containing more than 15 entries. This limit may be circumvented by creating " @@ -79473,7 +79875,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54454 +#: book.translate.xml:54694 #, no-wrap msgid "" "BIGGRP1 (,joe1,domain) (,joe2,domain) (,joe3,domain) [...]\n" @@ -79483,19 +79885,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54459 +#: book.translate.xml:54699 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:54462 +#: book.translate.xml:54702 msgid "To activate and distribute the new <acronym>NIS</acronym> map:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54465 +#: book.translate.xml:54705 #, no-wrap msgid "" "ellington<prompt>#</prompt> <userinput>cd /var/yp</userinput>\n" @@ -79503,7 +79905,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54468 +#: book.translate.xml:54708 msgid "" "This will generate the three <acronym>NIS</acronym> maps <filename>netgroup</" "filename>, <filename>netgroup.byhost</filename> and <filename>netgroup." @@ -79513,7 +79915,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54475 +#: book.translate.xml:54715 #, no-wrap msgid "" "ellington<prompt>%</prompt> <userinput>ypcat -k netgroup</userinput>\n" @@ -79522,7 +79924,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54479 +#: book.translate.xml:54719 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-" @@ -79531,7 +79933,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54485 +#: book.translate.xml:54725 msgid "" "To configure a client, use <citerefentry><refentrytitle>vipw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to specify the name of " @@ -79540,18 +79942,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54491 +#: book.translate.xml:54731 msgid "with" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54493 +#: book.translate.xml:54733 #, no-wrap msgid "+@IT_EMP:::::::::" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54495 +#: book.translate.xml:54735 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 " @@ -79559,7 +79961,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54500 +#: book.translate.xml:54740 msgid "" "This configuration also applies to the <literal>~</literal> function of the " "shell and all routines which convert between user names and numerical user " @@ -79572,59 +79974,59 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54512 +#: book.translate.xml:54752 #, no-wrap -msgid "+:::::::::/sbin/nologin" +msgid "+:::::::::/usr/sbin/nologin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54514 +#: book.translate.xml:54754 msgid "" "This line configures the client to import all entries but to replace the " -"shell in those entries with <filename>/sbin/nologin</filename>." +"shell in those entries with <filename>/usr/sbin/nologin</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54519 +#: book.translate.xml:54759 msgid "" "Make sure that extra line is placed <emphasis>after</emphasis> <literal>" "+@IT_EMP:::::::::</literal>. Otherwise, all user accounts imported from " -"<acronym>NIS</acronym> will have <filename>/sbin/nologin</filename> as their " -"login shell and no one will be able to login to the system." +"<acronym>NIS</acronym> will have <filename>/usr/sbin/nologin</filename> as " +"their login shell and no one will be able to login to the system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54526 +#: book.translate.xml:54766 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:54530 +#: book.translate.xml:54770 #, no-wrap msgid "" "+@IT_EMP:::::::::\n" "+@IT_APP:::::::::\n" -"+:::::::::/sbin/nologin" +"+:::::::::/usr/sbin/nologin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54534 +#: book.translate.xml:54774 msgid "The corresponding lines for the workstations would be:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54537 +#: book.translate.xml:54777 #, no-wrap msgid "" "+@IT_EMP:::::::::\n" "+@USERS:::::::::\n" -"+:::::::::/sbin/nologin" +"+:::::::::/usr/sbin/nologin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54541 +#: book.translate.xml:54781 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 " @@ -79639,7 +80041,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54554 +#: book.translate.xml:54794 #, no-wrap msgid "" "BIGSRV IT_EMP IT_APP\n" @@ -79648,7 +80050,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54558 +#: book.translate.xml:54798 msgid "" "This method of defining login restrictions works reasonably well when it is " "possible to define groups of machines with identical restrictions. " @@ -79657,27 +80059,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54565 +#: book.translate.xml:54805 msgid "" "Machine-specific netgroup definitions are another possibility to deal with " "the policy changes. In this scenario, the <filename>/etc/master.passwd</" "filename> of each system contains two lines starting with <quote>+</quote>. " "The first line adds a netgroup with the accounts allowed to login onto this " -"machine and the second line adds all other accounts with <filename>/sbin/" +"machine and the second line adds all other accounts with <filename>/usr/sbin/" "nologin</filename> as shell. It is recommended to use the <quote>ALL-CAPS</" "quote> version of the hostname as the name of the netgroup:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54575 +#: book.translate.xml:54815 #, no-wrap msgid "" "+@<replaceable>BOXNAME</replaceable>:::::::::\n" -"+:::::::::/sbin/nologin" +"+:::::::::/usr/sbin/nologin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54578 +#: book.translate.xml:54818 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 " @@ -79687,7 +80089,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54585 +#: book.translate.xml:54825 #, no-wrap msgid "" "# Define groups of users first\n" @@ -79728,7 +80130,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54621 +#: book.translate.xml:54861 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 " @@ -79737,17 +80139,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:54630 +#: book.translate.xml:54870 msgid "Password Formats" msgstr "密碼格式" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54632 +#: book.translate.xml:54872 msgid "<primary>NIS</primary> <secondary>password formats</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54636 +#: book.translate.xml:54876 msgid "" "<acronym>NIS</acronym> requires that all hosts within an <acronym>NIS</" "acronym> domain use the same format for encrypting passwords. If users have " @@ -79758,14 +80160,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54644 +#: book.translate.xml:54884 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:54648 +#: book.translate.xml:54888 #, no-wrap msgid "" "default:\\\n" @@ -79775,7 +80177,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54653 +#: book.translate.xml:54893 msgid "" "In this example, the system is using the <acronym>DES</acronym> format. " "Other possible values are <literal>blf</literal> for Blowfish and " @@ -79783,7 +80185,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54658 +#: book.translate.xml:54898 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 " @@ -79791,7 +80193,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:54666 +#: book.translate.xml:54906 msgid "" "The format of passwords for existing user accounts will not be updated until " "each user changes their password <emphasis>after</emphasis> the login " @@ -79799,18 +80201,32 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:54676 +#: book.translate.xml:54916 msgid "Lightweight Directory Access Protocol (<acronym>LDAP</acronym>)" msgstr "輕量級目錄存取協定 (<acronym>LDAP</acronym>)" +#. (itstool) path: authorgroup/author +#: book.translate.xml:54920 +msgid "" +"<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" +"personname> <contrib>Originally contributed by </contrib>" +msgstr "" + +#. (itstool) path: authorgroup/author +#: book.translate.xml:54929 +msgid "" +"<personname> <firstname>Rocky</firstname> <surname>Hotas</surname> </" +"personname> <contrib>Updates by </contrib>" +msgstr "" + #. (itstool) path: sect1/indexterm #. (itstool) path: listitem/indexterm -#: book.translate.xml:54690 book.translate.xml:56356 +#: book.translate.xml:54939 book.translate.xml:56784 msgid "<primary>LDAP</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:54692 +#: book.translate.xml:54941 msgid "" "The Lightweight Directory Access Protocol (<acronym>LDAP</acronym>) is an " "application layer protocol used to access, modify, and authenticate objects " @@ -79832,7 +80248,7 @@ msgstr "" "取。" #. (itstool) path: sect1/para -#: book.translate.xml:54705 +#: book.translate.xml:54954 msgid "" "This section provides a quick start guide for configuring an <acronym>LDAP</" "acronym> server on a FreeBSD system. It assumes that the administrator " @@ -79847,12 +80263,12 @@ msgstr "" "取。" #. (itstool) path: sect2/title -#: book.translate.xml:54714 +#: book.translate.xml:54963 msgid "<acronym>LDAP</acronym> Terminology and Structure" msgstr "<acronym>LDAP</acronym> 術語與結構" #. (itstool) path: sect2/para -#: book.translate.xml:54716 +#: book.translate.xml:54965 msgid "" "<acronym>LDAP</acronym> uses several terms which should be understood before " "starting the configuration. All directory entries consist of a group of " @@ -79873,7 +80289,7 @@ msgstr "" "路徑,<acronym>RDN</acronym> 當做相對路徑。" #. (itstool) path: sect2/para -#: book.translate.xml:54730 +#: book.translate.xml:54979 msgid "" "An example <acronym>LDAP</acronym> entry looks like the following. This " "example searches for the entry for the specified user account (<literal>uid</" @@ -79885,7 +80301,7 @@ msgstr "" "(<literal>o</literal>):" #. (itstool) path: sect2/screen -#: book.translate.xml:54736 +#: book.translate.xml:54985 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ldapsearch -xb \"uid=<replaceable>trhodes</replaceable>,ou=<replaceable>users</replaceable>,o=<replaceable>example.com</replaceable>\"</userinput>\n" @@ -79913,7 +80329,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54759 +#: book.translate.xml:55008 msgid "" "This example entry shows the values for the <literal>dn</literal>, " "<literal>mail</literal>, <literal>cn</literal>, <literal>uid</literal>, and " @@ -79926,7 +80342,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:54766 +#: book.translate.xml:55015 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" @@ -79937,130 +80353,144 @@ msgstr "" "doc/admin24/intro.html</uri> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:54771 +#: book.translate.xml:55020 msgid "Configuring an <acronym>LDAP</acronym> Server" msgstr "設定 <acronym>LDAP</acronym> 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54773 +#: book.translate.xml:55022 msgid "<primary>LDAP Server</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54775 +#: book.translate.xml:55024 msgid "" "FreeBSD does not provide a built-in <acronym>LDAP</acronym> server. Begin " -"the configuration by installing the <package role=\"port\">net/openldap24-" -"server</package> package or port. Since the port has many configurable " -"options, it is recommended that the default options are reviewed to see if " -"the package is sufficient, and to instead compile the port if any options " -"should be changed. In most cases, the defaults are fine. However, if SQL " -"support is needed, this option must be enabled and the port compiled using " -"the instructions in <xref linkend=\"ports-using\"/>." +"the configuration by installing <package role=\"port\">net/openldap-server</" +"package> package or port:" msgstr "" -"FreeBSD 並未提供內建的 <acronym>LDAP</acronym> 伺服器,因此要從安裝 <package " -"role=\"port\">net/openldap24-server</package> 套件或 Port 開始設置。由於 " -"Port 有許多可以設定的選項,建議安裝套件使用預設的選項,若選項必須做修改才改用" -"編譯 Port 的方式安裝,大多數的案例皆可使用預設值。然而,若需要支援 SQL,則必" -"須開啟選項並依 <xref linkend=\"ports-using\"/> 的指示編譯 Port。" - -#. (itstool) path: sect2/para -#: book.translate.xml:54785 -msgid "" -"Next, create the directories to hold the data and to store the certificates:" -msgstr "接著,建立目錄來儲存資枓以及儲存憑證:" +"FreeBSD 並未提供內建的 <acronym>LDAP</acronym> 伺服器,要開始設定前請先安裝 " +"<package role=\"port\">net/openldap-server</package> 套件或 Port:" #. (itstool) path: sect2/screen -#: book.translate.xml:54788 +#: book.translate.xml:55028 #, no-wrap +msgid "<prompt>#</prompt> <userinput>pkg install openldap-server</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55030 msgid "" -"<prompt>#</prompt> <userinput>mkdir /var/db/openldap-data</userinput>\n" -"<prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/private</userinput>" +"There is a large set of default options enabled in the <link xlink:href=" +"\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/linux-users/software.html" +"\"> package</link>. Review them by running <command>pkg info openldap-" +"server</command>. If they are not sufficient (for example if SQL support is " +"needed), please consider recompiling the port using the appropriate <link " +"xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-" +"using.html\">framework</link>." msgstr "" +"在<link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/linux-" +"users/software.html\">套件</link>中已開啟了許多的預設選項,可以透過執行 " +"<command>pkg info openldap-server</command> 來查看已開啟的選項,若有不足的地" +"方 (例如需要開啟 SQL 的支援),請考慮使用適當的<link xlink:href=" +"\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-using.html\">方" +"式</link>重新編譯該 Port。" #. (itstool) path: sect2/para -#: book.translate.xml:54791 -msgid "Copy over the database configuration file:" -msgstr "複製資料庫設定檔:" +#: book.translate.xml:55037 +msgid "" +"The installation creates the directory <filename>/var/db/openldap-data</" +"filename> to hold the data. The directory to store the certificates must be " +"created:" +msgstr "" +"安裝程序會建立目錄 <filename>/var/db/openldap-data</filename> 來儲存資料,同" +"時需要建立儲存憑證的目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:54793 +#: book.translate.xml:55042 #, no-wrap -msgid "<prompt>#</prompt> <userinput>cp /usr/local/etc/openldap/DB_CONFIG.example /var/db/openldap-data/DB_CONFIG</userinput>" +msgid "<prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/private</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54795 +#: book.translate.xml:55044 msgid "" -"The next phase is to configure the certificate authority. The following " +"The next phase is to configure the Certificate Authority. The following " "commands must be executed from <filename>/usr/local/etc/openldap/private</" "filename>. This is important as the file permissions need to be restrictive " -"and users should not have access to these files. To create the certificate " -"authority, start with this command and follow the prompts:" +"and users should not have access to these files. More detailed information " +"about certificates and their parameters can be found in <xref linkend=" +"\"openssl\"/>. To create the Certificate Authority, start with this command " +"and follow the prompts:" msgstr "" -"下一個階段是設定憑証機構 (Certificate authority)。以下指令必須在 <filename>/" -"usr/local/etc/openldap/private</filename> 執行,這很重要是由於檔案權限須要被" -"限制且使用者不應有這些檔案的存取權限。要建立憑証授權,需先輸人這個指令並依提" -"示作業:" +"接下來是設定憑証機構 (Certificate authority)。以下指令必須在 <filename>/usr/" +"local/etc/openldap/private</filename> 下執行,這很重要是由於檔案權限須要被限" +"制且其他使用者不應有這些檔案的存取權限,更多有關憑証的詳細資訊以及相關的參數" +"可在 <xref linkend=\"openssl\"/> 中找到。要建立憑証授權,需先輸人這個指令並依" +"提示操作:" #. (itstool) path: sect2/screen -#: book.translate.xml:54803 +#: book.translate.xml:55054 #, 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:54805 +#: book.translate.xml:55056 msgid "" "The entries for the prompts may be generic <emphasis>except</emphasis> for " "the <literal>Common Name</literal>. This entry must be <emphasis>different</" "emphasis> than the system hostname. If this will be a self signed " -"certificate, prefix the hostname with <literal>CA</literal> for certificate " -"authority." +"certificate, prefix the hostname with <literal>CA</literal> for Certificate " +"Authority." msgstr "" -"提示的輸入項目除了通用名稱 (<literal>Common Name</literal>) 其他是可以一樣" -"的,這個項目必須使用與系統主機名稱 <emphasis>不同</emphasis> 的名稱。若這是一" -"個自行簽署的憑証 (Self signed certificate),則在憑証機構 <literal>CA</" -"literal> 的前面加上主機名稱。" +"提示輸入的項目<emphasis>除了</emphasis>通用名稱 (<literal>Common Name</" +"literal>) 外其他是可以一樣的,這個項目必須使用跟系統主機名稱 <emphasis>不同</" +"emphasis> 的名稱。若這是一個自行簽署的憑証 (Self signed certificate),則在憑" +"証機構 <literal>CA</literal> 的前面加上主機名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:54812 +#: book.translate.xml:55063 msgid "" "The next task is to create a certificate signing request and a private key. " "Input this command and follow the prompts:" msgstr "" -"接下來的工作是建立一個憑証簽署的請求及私鑰。請輸入以下指令然後依提示操作:" +"接下來的工作是建立一個伺服器的憑証簽署請求與一個私鑰。請輸入以下指令然後依提" +"示操作:" #. (itstool) path: sect2/screen -#: book.translate.xml:54816 +#: book.translate.xml:55067 #, 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:54818 +#: book.translate.xml:55069 msgid "" "During the certificate generation process, be sure to correctly set the " -"<literal>Common Name</literal> attribute. Once complete, sign the key:" +"<literal>Common Name</literal> attribute. The Certificate Signing Request " +"must be signed with the Certificate Authority in order to be used as a valid " +"certificate:" msgstr "" -"在憑証產生程序的過程中請確認 <literal>Common Name</literal> 屬性設定正確。完" -"成之後便可簽署金鑰:" +"在憑証產生程序的過程中請確認 <literal>Common Name</literal> 屬性設定正確。憑" +"証簽署請求 (Certificate Signing Request) 必須經過憑証機構簽署後才會成為有效的" +"憑証:" #. (itstool) path: sect2/screen -#: book.translate.xml:54822 +#: book.translate.xml:55075 #, 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:54824 +#: book.translate.xml:55077 msgid "" "The final part of the certificate generation process is to generate and sign " "the client certificates:" -msgstr "在憑証產生程序的最後一步是產生並簽署用戶憑証:" +msgstr "在憑証產生程序的最後一步是產生並簽署客戶端憑証:" #. (itstool) path: sect2/screen -#: book.translate.xml:54827 +#: book.translate.xml:55080 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -keyout client.key -out client.csr</userinput>\n" @@ -80068,327 +80498,616 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54830 +#: book.translate.xml:55083 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 " -"been generated through the proceeding commands. If so, the next step is to " -"edit <filename>/usr/local/etc/openldap/slapd.conf</filename> and add the " -"following options:" +"been generated through the proceeding commands." msgstr "" -"要記得當提示是要使用同樣的 <literal>Common Name</literal> 屬性。完成之後,請" -"確認執行的指令產生了共 8 個新檔案。若正確無誤,下個步驟便是編輯 <filename>/" -"usr/local/etc/openldap/slapd.conf</filename> 並加入以下選項:" +"記得當提示時要使用同樣的 <literal>Common Name</literal> 屬性。完成之後,請確" +"認執行的指令產生了 8 個新檔案。" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:54837 -#, no-wrap +#. (itstool) path: sect2/para +#: book.translate.xml:55088 msgid "" -"TLSCipherSuite HIGH:MEDIUM:+SSLv3\n" -"TLSCertificateFile /usr/local/etc/openldap/server.crt\n" -"TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key\n" -"TLSCACertificateFile /usr/local/etc/openldap/ca.crt" +"The daemon running the OpenLDAP server is <filename>slapd</filename>. Its " +"configuration is performed through <filename>slapd.ldif</filename>: the old " +"<filename>slapd.conf</filename> has been deprecated by OpenLDAP." msgstr "" +"OpenLDAP 伺服器所執行的 Daemon 為 <filename>slapd</filename>,OpenLDAP 是透" +"過 <filename>slapd.ldif</filename> 來做設定, OpenLDAP 官方已停止採用舊的 " +"<filename>slapd.conf</filename> 格式。" #. (itstool) path: sect2/para -#: book.translate.xml:54842 +#: book.translate.xml:55094 msgid "" -"Then, edit <filename>/usr/local/etc/openldap/ldap.conf</filename> and add " -"the following lines:" +"<link xlink:href=\"http://www.openldap.org/doc/admin24/slapdconf2.html" +"\">Configuration examples</link> for <filename>slapd.ldif</filename> are " +"available and can also be found in <filename>/usr/local/etc/openldap/slapd." +"ldif.sample</filename>. Options are documented in slapd-config(5). Each " +"section of <filename>slapd.ldif</filename>, like all the other LDAP " +"attribute sets, is uniquely identified through a DN. Be sure that no blank " +"lines are left between the <literal>dn:</literal> statement and the desired " +"end of the section. In the following example, TLS will be used to implement " +"a secure channel. The first section represents the global configuration:" msgstr "" -"接著編輯 <filename>/usr/local/etc/openldap/ldap.conf</filename> 然後加入下" -"行:" +"這裡有些 <filename>slapd.ldif</filename> 的 <link xlink:href=\"http://www." +"openldap.org/doc/admin24/slapdconf2.html\">設定檔範例</link> 可以使用,同時您" +"也可以在 <filename>/usr/local/etc/openldap/slapd.ldif.sample</filename> 找到" +"範例資訊。相關可用的選項在 slapd-config(5) 文件會有說明。<filename>slapd." +"ldif</filename> 的每個段落,如同其他 LDAP 屬性設定一樣會透過獨一無二 DN 來辨" +"識,並請確保 <literal>dn:</literal> 描述與其相關屬性之間沒有空行。以下的範例" +"中會實作一個使用 TLS 的安全通道,首先是全域的設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54846 +#: book.translate.xml:55107 #, no-wrap msgid "" -"TLS_CACERT /usr/local/etc/openldap/ca.crt\n" -"TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3" +"#\n" +"# See slapd-config(5) for details on configuration options.\n" +"# This file should NOT be world readable.\n" +"#\n" +"dn: cn=config\n" +"objectClass: olcGlobal\n" +"cn: config\n" +"#\n" +"#\n" +"# Define global ACLs to disable default read access.\n" +"#\n" +"olcArgsFile: /var/run/openldap/slapd.args\n" +"olcPidFile: /var/run/openldap/slapd.pid\n" +"olcTLSCertificateFile: /usr/local/etc/openldap/server.crt\n" +"olcTLSCertificateKeyFile: /usr/local/etc/openldap/private/server.key\n" +"olcTLSCACertificateFile: /usr/local/etc/openldap/ca.crt\n" +"#olcTLSCipherSuite: HIGH\n" +"olcTLSProtocolMin: 3.1\n" +"olcTLSVerifyClient: never" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54849 +#: book.translate.xml:55127 msgid "" -"While editing this file, uncomment the following entries and set them to the " -"desired values: <option>BASE</option>, <option>URI</option>, " -"<option>SIZELIMIT</option> and <option>TIMELIMIT</option>. Set the " -"<option>URI</option> to contain <option>ldap://</option> and <option>ldaps://" -"</option>. Then, add two entries pointing to the certificate authority. When " -"finished, the entries should look similar to the following:" +"The Certificate Authority, server certificate and server private key files " +"must be specified here. It is recommended to let the clients choose the " +"security cipher and omit option <literal>olcTLSCipherSuite</literal> " +"(incompatible with TLS clients other than <filename>openssl</filename>). " +"Option <literal>olcTLSProtocolMin</literal> lets the server require a " +"minimum security level: it is recommended. While verification is mandatory " +"for the server, it is not for the client: <literal>olcTLSVerifyClient: " +"never</literal>." msgstr "" -"在編輯這個檔案的時候,取消註解以下項目然後設定這些項目使用實際要使用的數值:" -"<option>BASE</option>, <option>URI</option>, <option>SIZELIMIT</option> 以 " -"<option>TIMELIMIT</option>。設定 <option>URI</option> 要包含 <option>ldap://" -"</option> 及 <option>ldaps://</option>。然後加入兩個項目指向憑証機構。完成之" -"後,所有的設定項目會如下:" +"這個檔案中必須指定憑証機構 (Certificate Authority)、伺服器憑証 (Server " +"Certificate) 與伺服器私鑰 (Server Private Key),建議可讓客戶端決定使用的安全" +"密碼 (Security Cipher),略過 <literal>olcTLSCipherSuite</literal> 選項 (此選" +"項不相容 <filename>openssl</filename> 以外的 TLS 客戶端)。選項 " +"<literal>olcTLSProtocolMin</literal> 讓伺服器可要求一個安全等級的最低限度,建" +"議使用。伺服器有進行驗証的必要,但客戶端並不需要,因此可設定 " +"<literal>olcTLSVerifyClient: never</literal>。" + +#. (itstool) path: sect2/para +#: book.translate.xml:55137 +msgid "" +"The second section is about the backend modules and can be configured as " +"follows:" +msgstr "第二個部份是設定後端要採用的模組有那些,可使用以下方式設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54858 +#: book.translate.xml:55140 #, no-wrap msgid "" -"BASE dc=example,dc=com\n" -"URI ldap:// ldaps://\n" -"\n" -"SIZELIMIT 12\n" -"TIMELIMIT 15\n" -"\n" -"TLS_CACERT /usr/local/etc/openldap/ca.crt\n" -"TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3" +"#\n" +"# Load dynamic backend modules:\n" +"#\n" +"dn: cn=module,cn=config\n" +"objectClass: olcModuleList\n" +"cn: module\n" +"olcModulepath:\t/usr/local/libexec/openldap\n" +"olcModuleload:\tback_mdb.la\n" +"#olcModuleload:\tback_bdb.la\n" +"#olcModuleload:\tback_hdb.la\n" +"#olcModuleload:\tback_ldap.la\n" +"#olcModuleload:\tback_passwd.la\n" +"#olcModuleload:\tback_shell.la" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54867 -msgid "The default password for the server should then be changed:" -msgstr "給伺服器用的預設密碼應該要更換:" +#: book.translate.xml:55154 +msgid "" +"The third section is devoted to load the needed <literal>ldif</literal> " +"schemas to be used by the databases: they are essential." +msgstr "" +"第三個部份要載入資料庫所需的 <literal>ldif</literal> 綱要 (Schema),這個動作" +"是必要的。" -#. (itstool) path: sect2/screen -#: book.translate.xml:54870 +#. (itstool) path: sect2/programlisting +#: book.translate.xml:55158 #, no-wrap -msgid "<prompt>#</prompt> <userinput>slappasswd -h \"{SHA}\" >> /usr/local/etc/openldap/slapd.conf</userinput>" +msgid "" +"dn: cn=schema,cn=config\n" +"objectClass: olcSchemaConfig\n" +"cn: schema\n" +"\n" +"include: file:///usr/local/etc/openldap/schema/core.ldif\n" +"include: file:///usr/local/etc/openldap/schema/cosine.ldif\n" +"include: file:///usr/local/etc/openldap/schema/inetorgperson.ldif\n" +"include: file:///usr/local/etc/openldap/schema/nis.ldif" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54872 +#: book.translate.xml:55167 +msgid "Next, the frontend configuration section:" +msgstr "接下來是前端設定的部份:" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:55169 +#, no-wrap 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>. " -"Several hashing formats are supported. Refer to the manual page for " -"<command>slappasswd</command> for more information." +"# Frontend settings\n" +"#\n" +"dn: olcDatabase={-1}frontend,cn=config\n" +"objectClass: olcDatabaseConfig\n" +"objectClass: olcFrontendConfig\n" +"olcDatabase: {-1}frontend\n" +"olcAccess: to * by * read\n" +"#\n" +"# Sample global access control policy:\n" +"#\tRoot DSE: allow anyone to read it\n" +"#\tSubschema (sub)entry DSE: allow anyone to read it\n" +"#\tOther DSEs:\n" +"#\t\tAllow self write access\n" +"#\t\tAllow authenticated users read access\n" +"#\t\tAllow anonymous users to authenticate\n" +"#\n" +"#olcAccess: to dn.base=\"\" by * read\n" +"#olcAccess: to dn.base=\"cn=Subschema\" by * read\n" +"#olcAccess: to *\n" +"#\tby self write\n" +"#\tby users read\n" +"#\tby anonymous auth\n" +"#\n" +"# if no access controls are present, the default policy\n" +"# allows anyone and everyone to read anything but restricts\n" +"# updates to rootdn. (e.g., \"access to * by * read\")\n" +"#\n" +"# rootdn can always read and write EVERYTHING!\n" +"#\n" +"olcPasswordHash: {SSHA}\n" +"# {SSHA} is already the default for olcPasswordHash" msgstr "" -"這個指令會提示輸入密碼,若程序沒有失敗,便會將編碼過的密碼加到 " -"<filename>slapd.conf</filename> 的最後。支援的編碼格式有許多種,請參考 " -"<command>slappasswd</command> 的操作手冊以取得更多資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:54878 +#: book.translate.xml:55201 msgid "" -"Next, edit <filename>/usr/local/etc/openldap/slapd.conf</filename> and add " -"the following lines:" +"Another section is devoted to the <emphasis>configuration backend</" +"emphasis>, the only way to later access the OpenLDAP server configuration is " +"as a global super-user." msgstr "" -"接著編輯 <filename>/usr/local/etc/openldap/slapd.conf</filename> 並加入下行:" +"再來是<emphasis>設定後端</emphasis>的部份,之後唯一能夠存取 OpenLDAP 伺服器設" +"定的方式是使用全域超級使用者。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54882 +#: book.translate.xml:55206 #, no-wrap msgid "" -"password-hash {sha}\n" -"allow bind_v2" +"dn: olcDatabase={0}config,cn=config\n" +"objectClass: olcDatabaseConfig\n" +"olcDatabase: {0}config\n" +"olcAccess: to * by * none\n" +"olcRootPW: {SSHA}iae+lrQZILpiUdf16Z9KmDmSwT77Dj4U" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54885 +#: book.translate.xml:55212 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</" -"filename> and <option>rootdn</option> should also be set. A recommended " -"value for <option>rootdn</option> is something like <option>cn=Manager</" -"option>. Before saving this file, place the <option>rootpw</option> in front " -"of the password output from <command>slappasswd</command> and delete the old " -"<option>rootpw</option>. The end result should look similar to this:" +"The default administrator username is <literal>cn=config</literal>. Type " +"<filename>slappasswd</filename> in a shell, choose a password and use its " +"hash in <literal>olcRootPW</literal>. If this option is not specified now, " +"before <filename>slapd.ldif</filename> is imported, no one will be later " +"able to modify the <emphasis>global configuration</emphasis> section." msgstr "" -"在這個設定檔的 <option>suffix</option> 必須更新為與在 <filename>/usr/local/" -"etc/openldap/ldap.conf</filename> 及 <option>rootdn</option> 使用的 " -"<option>BASE</option> 相同。<option>rootdn</option> 建議的值為 " -"<option>cn=Manager</option>。在儲存這個檔案之前,將 <option>rootpw</option> " -"放到由 <command>slappasswd</command> 產生的密碼之前,然後刪除原有的 " -"<option>rootpw</option>。最後的結果應該如下:" +"預設的管理者使用者名稱是 <literal>cn=config</literal>,可在 Shell 中輸入 " +"<filename>slappasswd</filename>,決定要使用的密碼並將其產生的編碼放到 " +"<literal>olcRootPW</literal> 欄位中。若這個選項在這時沒有設定好,在匯入 " +"<filename>slapd.ldif</filename> 之後將沒有任何人有辦法修改<emphasis>全域的設" +"定</emphasis>。" + +#. (itstool) path: sect2/para +#: book.translate.xml:55221 +msgid "The last section is about the database backend:" +msgstr "最後一個部份是有關資料庫後端的設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54896 +#: book.translate.xml:55223 #, no-wrap msgid "" -"TLSCipherSuite HIGH:MEDIUM:+SSLv3\n" -"TLSCertificateFile /usr/local/etc/openldap/server.crt\n" -"TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key\n" -"TLSCACertificateFile /usr/local/etc/openldap/ca.crt\n" -"rootpw {SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=" +"#######################################################################\n" +"# LMDB database definitions\n" +"#######################################################################\n" +"#\n" +"dn: olcDatabase=mdb,cn=config\n" +"objectClass: olcDatabaseConfig\n" +"objectClass: olcMdbConfig\n" +"olcDatabase: mdb\n" +"olcDbMaxSize: 1073741824\n" +"olcSuffix: dc=domain,dc=example\n" +"olcRootDN: cn=mdbadmin,dc=domain,dc=example\n" +"# Cleartext passwords, especially for the rootdn, should\n" +"# be avoided. See slappasswd(8) and slapd-config(5) for details.\n" +"# Use of strong authentication encouraged.\n" +"olcRootPW: {SSHA}X2wHvIWDk6G76CQyCMS1vDCvtICWgn0+\n" +"# The database directory MUST exist prior to running slapd AND\n" +"# should only be accessible by the slapd and slap tools.\n" +"# Mode 700 recommended.\n" +"olcDbDirectory:\t/var/db/openldap-data\n" +"# Indices to maintain\n" +"olcDbIndex: objectClass eq" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55245 +msgid "" +"This database hosts the <emphasis>actual contents</emphasis> of the " +"<acronym>LDAP</acronym> directory. Types other than <literal>mdb</literal> " +"are available. Its super-user, not to be confused with the global one, is " +"configured here: a (possibly custom) username in <literal>olcRootDN</" +"literal> and the password hash in <literal>olcRootPW</literal>; " +"<filename>slappasswd</filename> can be used as before." +msgstr "" +"這裡指定的資料庫即<emphasis>實際用來保存</emphasis> <acronym>LDAP</acronym> " +"目錄的資料,也可以使用 <literal>mdb</literal> 以外的項目,資料庫的超級使用者" +"可在這裡設定 (與全域的超級使用者是不同的東西):<literal>olcRootDN</literal> " +"需填寫使用者名稱 (可自訂),<literal>olcRootPW</literal> 需填寫該使用者編碼後" +"的密碼,將密碼編碼可使用 <filename>slappasswd</filename> 如同前面所述。" + +#. (itstool) path: sect2/para +#: book.translate.xml:55254 +msgid "" +"This <link xlink:href=\"http://www.openldap.org/devel/gitweb.cgi?p=openldap." +"git;a=tree;f=tests/data/regressions/its8444;" +"h=8a5e808e63b0de3d2bdaf2cf34fecca8577ca7fd;hb=HEAD\">repository</link> " +"contains four examples of <filename>slapd.ldif</filename>. To convert an " +"existing <filename>slapd.conf</filename> into <filename>slapd.ldif</" +"filename>, refer to <link xlink:href=\"http://www.openldap.org/doc/admin24/" +"slapdconf2.html\">this page</link> (please note that this may introduce some " +"unuseful options)." msgstr "" +"這裡有個<link xlink:href=\"http://www.openldap.org/devel/gitweb.cgi?" +"p=openldap.git;a=tree;f=tests/data/regressions/its8444;" +"h=8a5e808e63b0de3d2bdaf2cf34fecca8577ca7fd;hb=HEAD\">檔案庫</link>內有四個 " +"<filename>slapd.ldif</filename> 的範例,要將現有的 <filename>slapd.conf</" +"filename> 轉換成 <filename>slapd.ldif</filename> 格式,可參考<link xlink:" +"href=\"http://www.openldap.org/doc/admin24/slapdconf2.html\">此頁</link> (注" +"意,這裡面的說明也會介紹一些不常用的選項)。" #. (itstool) path: sect2/para -#: book.translate.xml:54902 +#: book.translate.xml:55261 msgid "" -"Finally, enable the <application>OpenLDAP</application> service in " -"<filename>/etc/rc.conf</filename> and set the <acronym>URI</acronym>:" +"When the configuration is completed, <filename>slapd.ldif</filename> must be " +"placed in an empty directory. It is recommended to create it as:" msgstr "" -"最後,在 <filename>/etc/rc.conf</filename> 開啟 <application>OpenLDAP</" -"application> 服務並設定 <acronym>URI</acronym>:" +"當設定完成之後,需將 <filename>slapd.ldif</filename> 放在一個空的目錄當中,建" +"議如以下方式建立:" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:54906 +#. (itstool) path: sect2/screen +#: book.translate.xml:55265 #, no-wrap -msgid "" -"slapd_enable=\"YES\"\n" -"slapd_flags=\"-4 -h ldaps:///\"" +msgid "<prompt>#</prompt> <userinput>mkdir /usr/local/etc/openldap/slapd.d/</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55267 +msgid "Import the configuration database:" +msgstr "匯入設定資料庫:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:55269 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>/usr/local/sbin/slapadd -n0 -F /usr/local/etc/openldap/slapd.d/ -l /usr/local/etc/openldap/slapd.ldif</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54909 -msgid "At this point the server can be started and tested:" -msgstr "此時便可啟動並測試伺服器:" +#: book.translate.xml:55271 +msgid "Start the <filename>slapd</filename> daemon:" +msgstr "啟動 <filename>slapd</filename> Daemon:" #. (itstool) path: sect2/screen -#: book.translate.xml:54911 +#: book.translate.xml:55273 #, no-wrap -msgid "<prompt>#</prompt> <userinput>service slapd start</userinput>" +msgid "<prompt>#</prompt> <userinput>/usr/local/libexec/slapd -F /usr/local/etc/openldap/slapd.d/</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54913 +#: book.translate.xml:55275 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 "若所有的設定均正確,搜尋目錄應會如此範例顯示成功連線並有一筆回應:" +"Option <literal>-d</literal> can be used for debugging, as specified in " +"slapd(8). To verify that the server is running and working:" +msgstr "" +"選項 <literal>-d</literal> 可以用來除錯使用,如同 slapd(8) 中所說明的,若要檢" +"驗伺服器是否正常執行與運作可以:" #. (itstool) path: sect2/screen -#: book.translate.xml:54917 +#: book.translate.xml:55279 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>ldapsearch -Z</userinput>\n" +"<prompt>#</prompt> <userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput>\n" "# extended LDIF\n" "#\n" "# LDAPv3\n" -"# base <dc=example,dc=com> (default) with scope subtree\n" +"# base <> with scope baseObject\n" "# filter: (objectclass=*)\n" -"# requesting: ALL\n" +"# requesting: namingContexts\n" "#\n" "\n" +"#\n" +"dn:\n" +"namingContexts: dc=domain,dc=example\n" +"\n" "# search result\n" -"search: 3\n" -"result: 32 No such object\n" +"search: 2\n" +"result: 0 Success\n" "\n" -"# numResponses: 1" +"# numResponses: 2\n" +"# numEntries: 1" msgstr "" -#. (itstool) path: note/para -#: book.translate.xml:54933 +#. (itstool) path: sect2/para +#: book.translate.xml:55299 msgid "" -"If the command fails and the configuration looks correct, stop the " -"<command>slapd</command> service and restart it with debugging options:" +"The server must still be trusted. If that has never been done before, follow " +"these instructions. Install the OpenSSL package or port:" msgstr "" -"若指令失敗且設定看起來沒有問題,可先停止 <command>slapd</command> 服務並開啟" -"除錯選項並重新啟動:" +"伺服器端仍必須受到信任,若在此之前未做過這個動作,請依照以下指示操作。安裝 " +"OpenSSL 套件或 Port:" -#. (itstool) path: note/screen -#: book.translate.xml:54937 +#. (itstool) path: sect2/screen +#: book.translate.xml:55303 #, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>service slapd stop</userinput>\n" -"<prompt>#</prompt> <userinput>/usr/local/libexec/slapd -d -1</userinput>" +msgid "<prompt>#</prompt> <userinput>pkg install openssl</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54941 +#: book.translate.xml:55305 msgid "" -"Once the service is responding, the directory can be populated using " -"<command>ldapadd</command>. In this example, a file containing this list of " -"users is first created. Each user should use the following format:" +"From the directory where <filename>ca.crt</filename> is stored (in this " +"example, <filename>/usr/local/etc/openldap</filename>), run:" msgstr "" -"服務有回應之後,便可使用 <command>ldapadd</command> 匯入資料到目錄。在此例" -"中,會先建立一個含有使用者清單的檔案,每位使用者應使用以下格式定義:" +"進入 <filename>ca.crt</filename> 所在的目錄 (以這邊使用的例子來說則是 " +"<filename>/usr/local/etc/openldap</filename>),執行:" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:54946 +#. (itstool) path: sect2/screen +#: book.translate.xml:55309 #, no-wrap -msgid "" -"dn: dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>\n" -"objectclass: dcObject\n" -"objectclass: organization\n" -"o: <replaceable>Example</replaceable>\n" -"dc: <replaceable>Example</replaceable>\n" -"\n" -"dn: cn=<replaceable>Manager</replaceable>,dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>\n" -"objectclass: organizationalRole\n" -"cn: <replaceable>Manager</replaceable>" +msgid "<prompt>#</prompt> <userinput>c_rehash .</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54956 +#: book.translate.xml:55311 msgid "" -"To import this file, specify the file name. The following command will " -"prompt for the password specified earlier and the output should look " -"something like this:" +"Both the CA and the server certificate are now correctly recognized in their " +"respective roles. To verify this, run this command from the <filename>server." +"crt</filename> directory:" msgstr "" -"要匯入這個檔案,可指定檔案名稱。以下指令會提示輸入先前設定過的密碼然後輸入如" -"下的結果:" +"現在 CA 與伺服器憑証可以依其用途被辨識,可進入 <filename>server.crt</" +"filename> 所在的目錄執行以下指令來檢查:" #. (itstool) path: sect2/screen -#: book.translate.xml:54960 +#: book.translate.xml:55316 #, no-wrap +msgid "<prompt>#</prompt> <userinput>openssl verify -verbose -CApath . server.crt</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55318 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" -"Enter LDAP Password:\n" -"adding new entry \"dc=example,dc=com\"\n" -"\n" -"adding new entry \"cn=Manager,dc=example,dc=com\"" +"If <filename>slapd</filename> was running, restart it. As stated in " +"<filename>/usr/local/etc/rc.d/slapd</filename>, to properly run " +"<filename>slapd</filename> at boot the following lines must be added to " +"<filename>/etc/rc.conf</filename>:" +msgstr "" +"若 <filename>slapd</filename> 已正在執行,就重新啟動它。如同 <filename>/usr/" +"local/etc/rc.d/slapd</filename> 所述,要讓 <filename>slapd</filename> 開機時" +"可正常執行,須要加入以下行到 <filename>/etc/rc.conf</filename>:" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:55324 +#, no-wrap +msgid "" +"lapd_enable=\"YES\"\n" +"slapd_flags='-h \"ldapi://%2fvar%2frun%2fopenldap%2fldapi/\n" +"ldap://0.0.0.0/\"'\n" +"slapd_sockets=\"/var/run/openldap/ldapi\"\n" +"slapd_cn_config=\"YES\"" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55330 +msgid "" +"<filename>slapd</filename> does not provide debugging at boot. Check " +"<filename>/var/log/debug.log</filename>, <filename>dmesg -a</filename> and " +"<filename>/var/log/messages</filename> for this purpose." msgstr "" +"開機啟動 <filename>slapd</filename> 並不會提供除錯的功能,您可以檢查 " +"<filename>/var/log/debug.log</filename>, <filename>dmesg -a</filename> 及 " +"<filename>/var/log/messages</filename> 檢確認是否有正常運作。" #. (itstool) path: sect2/para -#: book.translate.xml:54966 +#: book.translate.xml:55336 msgid "" -"Verify the data was added by issuing a search on the server using " -"<command>ldapsearch</command>:" +"The following example adds the group <literal>team</literal> and the user " +"<literal>john</literal> to the <systemitem class=\"systemname\">domain." +"example</systemitem> <acronym>LDAP</acronym> database, which is still empty. " +"First, create the file <filename>domain.ldif</filename>:" msgstr "" -"使用 <command>ldapsearch</command> 發出一個查詢到伺服器來確認資料已新增:" +"以下範例會新增群組 <literal>team</literal> 及使用者 <literal>john</literal> " +"到 <systemitem class=\"systemname\">domain.example</systemitem> " +"<acronym>LDAP</acronym> 資料庫,而該資料庫目前是空的。首先要先建立 " +"<filename>domain.ldif</filename> 檔:" #. (itstool) path: sect2/screen -#: book.translate.xml:54969 +#: book.translate.xml:55343 #, no-wrap msgid "" -"<prompt>%</prompt> <userinput>ldapsearch -Z</userinput>\n" -"# extended LDIF\n" -"#\n" -"# LDAPv3\n" -"# base <dc=example,dc=com> (default) with scope subtree\n" -"# filter: (objectclass=*)\n" -"# requesting: ALL\n" -"#\n" -"\n" -"# example.com\n" -"dn: dc=example,dc=com\n" +"<prompt>#</prompt> <userinput>cat domain.ldif</userinput>\n" +"dn: dc=domain,dc=example\n" "objectClass: dcObject\n" "objectClass: organization\n" -"o: Example\n" -"dc: Example\n" +"o: domain.example\n" +"dc: domain\n" "\n" -"# Manager, example.com\n" -"dn: cn=Manager,dc=example,dc=com\n" -"objectClass: organizationalRole\n" -"cn: Manager\n" +"dn: ou=groups,dc=domain,dc=example\n" +"objectClass: top\n" +"objectClass: organizationalunit\n" +"ou: groups\n" "\n" -"# search result\n" -"search: 3\n" -"result: 0 Success\n" +"dn: ou=users,dc=domain,dc=example\n" +"objectClass: top\n" +"objectClass: organizationalunit\n" +"ou: users\n" +"\n" +"dn: cn=team,ou=groups,dc=domain,dc=example\n" +"objectClass: top\n" +"objectClass: posixGroup\n" +"cn: team\n" +"gidNumber: 10001\n" "\n" -"# numResponses: 3\n" -"# numEntries: 2" +"dn: uid=john,ou=users,dc=domain,dc=example\n" +"objectClass: top\n" +"objectClass: account\n" +"objectClass: posixAccount\n" +"objectClass: shadowAccount\n" +"cn: John McUser\n" +"uid: john\n" +"uidNumber: 10001\n" +"gidNumber: 10001\n" +"homeDirectory: /home/john/\n" +"loginShell: /usr/bin/bash\n" +"userPassword: secret" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55379 +msgid "" +"See the OpenLDAP documentation for more details. Use <filename>slappasswd</" +"filename> to replace the plain text password <literal>secret</literal> with " +"a hash in <literal>userPassword</literal>. The path specified as " +"<literal>loginShell</literal> must exist in all the systems where " +"<literal>john</literal> is allowed to login. Finally, use the <literal>mdb</" +"literal> administrator to modify the database:" +msgstr "" +"請查看 OpenLDAP 說明文件取得更詳細的資訊,使用 <filename>slappasswd</" +"filename> 來將純文字的密碼 <literal>secret</literal> 更改為已編碼的型式來填" +"寫 <literal>userPassword</literal> 欄位。在 <literal>loginShell</literal> 所" +"指定的路徑,必須在所有可讓 <literal>john</literal> 登入的系統中存在。最後是使" +"用 <literal>mdb</literal> 管理者修改資料庫:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:55388 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>ldapadd -W -D \"cn=mdbadmin,dc=domain,dc=example\" -f domain.ldif</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55390 +msgid "" +"Modifications to the <emphasis>global configuration</emphasis> section can " +"only be performed by the global super-user. For example, assume that the " +"option <literal>olcTLSCipherSuite: HIGH:MEDIUM:SSLv3</literal> was initially " +"specified and must now be deleted. First, create a file that contains the " +"following:" +msgstr "" +"要修改<emphasis>全域設定</emphasis>只能使用全域的超及使用者。例如,假設一開始" +"採用了 <literal>olcTLSCipherSuite: HIGH:MEDIUM:SSLv3</literal> 選項,但最後想" +"要把它移除,可以建立一個有以下內容的檔案:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:55397 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>cat <replaceable>global_mod</replaceable></userinput>\n" +"dn: cn=config\n" +"changetype: modify\n" +"delete: olcTLSCipherSuite" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55402 +msgid "Then, apply the modifications:" +msgstr "然後套用修改內容:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:55404 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>ldapmodify -f global_mod -x -D \"cn=config\" -W</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:55406 +msgid "" +"When asked, provide the password chosen in the <emphasis>configuration " +"backend</emphasis> section. The username is not required: here, " +"<literal>cn=config</literal> represents the DN of the database section to be " +"modified. Alternatively, use <literal>ldapmodify</literal> to delete a " +"single line of the database, <literal>ldapdelete</literal> to delete a whole " +"entry." +msgstr "" +"當提示輸入密碼時,提供當時在<emphasis>設定後端</emphasis>一節所設定的密碼,在" +"這裡無須填寫使用者名稱,<literal>cn=config</literal> 代表要修改資料庫資料的位" +"置。也可以使用 <literal>ldapmodify</literal> 刪除其中一行屬性,或是 " +"<literal>ldapdelete</literal> 刪除整筆資料。" + +#. (itstool) path: sect2/para +#: book.translate.xml:55414 +msgid "" +"If something goes wrong, or if the global super-user cannot access the " +"configuration backend, it is possible to delete and re-write the whole " +"configuration:" +msgstr "" +"若有問題無法正常執行,或是全域的超級使用者無法存取後端的設定,可以刪除並重建" +"整個後端設定:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:55418 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>rm -rf /usr/local/etc/openldap/slapd.d/</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54997 +#: book.translate.xml:55420 msgid "" -"At this point, the server should be configured and functioning properly." -msgstr "此時,伺服器應已設定完成並可正常運作。" +"<filename>slapd.ldif</filename> can then be edited and imported again. " +"Please, follow this procedure only when no other solution is available." +msgstr "" +"可以修改 <filename>slapd.ldif</filename> 後再重新匯入一次。請注意,這個步驟只" +"在沒有其他方式可用時才使用。" + +#. (itstool) path: sect2/para +#: book.translate.xml:55424 +msgid "" +"This is the configuration of the server only. The same machine can also host " +"an LDAP client, with its own separate configuration." +msgstr "" +"本章節的設定說明只針對伺服器端的部份,在同一台主機中也可以同時有安裝 LDAP 客" +"戶端但需要額外做設定。" #. (itstool) path: sect1/title -#: book.translate.xml:55014 +#: book.translate.xml:55442 msgid "Dynamic Host Configuration Protocol (<acronym>DHCP</acronym>)" msgstr "動態主機設置協定 (<acronym>DHCP</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55017 +#: book.translate.xml:55445 msgid "" "<primary>Dynamic Host Configuration Protocol</primary> <see><acronym>DHCP</" "acronym></see>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55021 +#: book.translate.xml:55449 msgid "<primary>Internet Systems Consortium (ISC)</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55025 +#: book.translate.xml:55453 msgid "" "The Dynamic Host Configuration Protocol (<acronym>DHCP</acronym>) allows a " "system to connect to a network in order to be assigned the necessary " @@ -80411,7 +81130,7 @@ msgstr "" "\">isc.org/downloads/dhcp/</link> 取得。" #. (itstool) path: sect1/para -#: book.translate.xml:55037 +#: book.translate.xml:55465 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</" @@ -80421,7 +81140,7 @@ msgstr "" "設定一個 <acronym>DHCP</acronym> 伺服器。" #. (itstool) path: note/para -#: book.translate.xml:55042 +#: book.translate.xml:55470 msgid "" "In FreeBSD, the <citerefentry><refentrytitle>bpf</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> device is needed by " @@ -80437,7 +81156,7 @@ msgstr "" "<acronym>DHCP</acronym> 則須保留這個裝置。" #. (itstool) path: note/para -#: book.translate.xml:55049 +#: book.translate.xml:55477 msgid "" "It should be noted that <filename>bpf</filename> also allows privileged " "users to run network packet sniffers on that system." @@ -80446,12 +81165,12 @@ msgstr "" "封包監聽程式。" #. (itstool) path: sect2/title -#: book.translate.xml:55055 +#: book.translate.xml:55483 msgid "Configuring a <acronym>DHCP</acronym> Client" msgstr "設定 <acronym>DHCP</acronym> 客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:55057 +#: book.translate.xml:55485 msgid "" "<acronym>DHCP</acronym> client support is included in the FreeBSD installer, " "making it easy to configure a newly installed system to automatically " @@ -80464,12 +81183,12 @@ msgstr "" "考 <xref linkend=\"bsdinstall-post\"/> 取得網路設置的範例。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55064 +#: book.translate.xml:55492 msgid "<primary><acronym>UDP</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55065 +#: book.translate.xml:55493 msgid "" "When <command>dhclient</command> is executed on the client machine, it " "begins broadcasting requests for configuration information. By default, " @@ -80493,7 +81212,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 找到。" #. (itstool) path: sect2/para -#: book.translate.xml:55081 +#: book.translate.xml:55509 msgid "" "By default, when a FreeBSD system boots, its <acronym>DHCP</acronym> client " "runs in the background, or <firstterm>asynchronously</firstterm>. Other " @@ -80505,7 +81224,7 @@ msgstr "" "acronym> 程序的同時其他啟動 Script 會繼續執行,來加速系統啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:55087 +#: book.translate.xml:55515 msgid "" "Background <acronym>DHCP</acronym> works well when the <acronym>DHCP</" "acronym> server responds quickly to the client's requests. However, " @@ -80524,7 +81243,7 @@ msgstr "" "<acronym>DHCP</acronym> 已設置完成。" #. (itstool) path: sect2/para -#: book.translate.xml:55097 +#: book.translate.xml:55525 msgid "" "This line in <filename>/etc/rc.conf</filename> is used to configure " "background or asynchronous mode:" @@ -80532,13 +81251,13 @@ msgstr "" "在 <filename>/etc/rc.conf</filename> 中的這行用來設定採用背景 (非同步模式):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55100 +#: book.translate.xml:55528 #, no-wrap msgid "ifconfig_<replaceable>fxp0</replaceable>=\"DHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55102 +#: book.translate.xml:55530 msgid "" "This line may already exist if the system was configured to use " "<acronym>DHCP</acronym> during installation. Replace the <replaceable>fxp0</" @@ -80551,7 +81270,7 @@ msgstr "" "<xref linkend=\"config-network-setup\"/> 中的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:55108 +#: book.translate.xml:55536 msgid "" "To instead configure the system to use synchronous mode, and to pause during " "startup while <acronym>DHCP</acronym> completes, use " @@ -80561,13 +81280,13 @@ msgstr "" "用 <quote><literal>SYNCDHCP</literal></quote>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55113 +#: book.translate.xml:55541 #, no-wrap msgid "ifconfig_<replaceable>fxp0</replaceable>=\"SYNCDHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55115 +#: book.translate.xml:55543 msgid "" "Additional client options are available. Search for <literal>dhclient</" "literal> in <citerefentry><refentrytitle>rc.conf</" @@ -80578,24 +81297,24 @@ msgstr "" "<literal>dhclient</literal> 來取得詳細資訊。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55119 book.translate.xml:55323 +#: book.translate.xml:55547 book.translate.xml:55751 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>configuration files</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55124 +#: book.translate.xml:55552 msgid "The <acronym>DHCP</acronym> client uses the following files:" msgstr "<acronym>DHCP</acronym> 客戶端會使用到以下檔案:" #. (itstool) path: listitem/para -#: book.translate.xml:55129 +#: book.translate.xml:55557 msgid "<filename>/etc/dhclient.conf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55131 +#: book.translate.xml:55559 msgid "" "The configuration file used by <command>dhclient</command>. Typically, this " "file contains only comments as the defaults are suitable for most clients. " @@ -80608,12 +81327,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 中有說明。" #. (itstool) path: listitem/para -#: book.translate.xml:55139 +#: book.translate.xml:55567 msgid "<filename>/sbin/dhclient</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55141 +#: book.translate.xml:55569 msgid "" "More information about the command itself can be found in " "<citerefentry><refentrytitle>dhclient</refentrytitle><manvolnum>8</" @@ -80623,12 +81342,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 找到。" #. (itstool) path: listitem/para -#: book.translate.xml:55146 +#: book.translate.xml:55574 msgid "<filename>/sbin/dhclient-script</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55148 +#: book.translate.xml:55576 msgid "" "The FreeBSD-specific <acronym>DHCP</acronym> client configuration script. It " "is described in <citerefentry><refentrytitle>dhclient-script</" @@ -80640,14 +81359,14 @@ msgstr "" "manvolnum></citerefentry> 中有說明,但應不須做任何修改便可正常運作。" #. (itstool) path: listitem/para -#: book.translate.xml:55156 +#: book.translate.xml:55584 msgid "" "<filename>/var/db/dhclient.leases.<replaceable>interface</replaceable></" "filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55158 +#: book.translate.xml:55586 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 " @@ -80659,12 +81378,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 有說明。" #. (itstool) path: sect2/title -#: book.translate.xml:55166 +#: book.translate.xml:55594 msgid "Installing and Configuring a <acronym>DHCP</acronym> Server" msgstr "安裝並設定 <acronym>DHCP</acronym> 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:55169 +#: book.translate.xml:55597 msgid "" "This section demonstrates how to configure a FreeBSD system to act as a " "<acronym>DHCP</acronym> server using the Internet Systems Consortium " @@ -80678,20 +81397,20 @@ msgstr "" "package> 套件或 Port 安裝。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55177 +#: book.translate.xml:55605 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55182 +#: book.translate.xml:55610 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>installation</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55187 +#: book.translate.xml:55615 msgid "" "The installation of <package>net/isc-dhcp43-server</package> installs a " "sample configuration file. Copy <filename>/usr/local/etc/dhcpd.conf.example</" @@ -80703,13 +81422,13 @@ msgstr "" "local/etc/dhcpd.conf</filename> 並在這個新檔案做編輯。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55194 +#: book.translate.xml:55622 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>dhcpd.conf</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55198 +#: book.translate.xml:55626 msgid "" "The configuration file is comprised of declarations for subnets and hosts " "which define the information that is provided to <acronym>DHCP</acronym> " @@ -80719,7 +81438,7 @@ msgstr "" "acronym> 客戶端的資訊。如以下行設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55203 +#: book.translate.xml:55631 #, no-wrap msgid "" "option domain-name \"example.org\";<co xml:id=\"domain-name\"/>\n" @@ -80742,7 +81461,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:55223 +#: book.translate.xml:55651 msgid "" "This option specifies the default search domain that will be provided to " "clients. Refer to <citerefentry><refentrytitle>resolv.conf</" @@ -80753,7 +81472,7 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: callout/para -#: book.translate.xml:55229 +#: book.translate.xml:55657 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 " @@ -80765,19 +81484,19 @@ msgstr "" "<acronym>FQDN</acronym>) 或伺服器的 <acronym>IP</acronym> 位址。" #. (itstool) path: callout/para -#: book.translate.xml:55237 +#: book.translate.xml:55665 msgid "The subnet mask that will be provided to clients." msgstr "要提供給客戶端的子網路遮罩。" #. (itstool) path: callout/para -#: book.translate.xml:55242 +#: book.translate.xml:55670 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:55247 +#: book.translate.xml:55675 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 " @@ -80787,7 +81506,7 @@ msgstr "" "只會在 <literal>max-lease-time</literal> 內有效。" #. (itstool) path: callout/para -#: book.translate.xml:55254 +#: book.translate.xml:55682 msgid "" "The default of <option>none</option> disables dynamic DNS updates. Changing " "this to <option>interim</option> configures the <acronym>DHCP</acronym> " @@ -80804,7 +81523,7 @@ msgstr "" "<acronym>DNS</acronym> 伺服器已設定為支援動態 <acronym>DNS</acronym>。" #. (itstool) path: callout/para -#: book.translate.xml:55267 +#: book.translate.xml:55695 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 " @@ -80816,7 +81535,7 @@ msgstr "" "路中有效。" #. (itstool) path: callout/para -#: book.translate.xml:55275 +#: book.translate.xml:55703 msgid "" "Declares the default gateway that is valid for the network or subnet " "specified before the opening <literal>{</literal> bracket." @@ -80825,7 +81544,7 @@ msgstr "" "訊閘。" #. (itstool) path: callout/para -#: book.translate.xml:55281 +#: book.translate.xml:55709 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 " @@ -80835,7 +81554,7 @@ msgstr "" "服器在客戶端發出請求時可以辨識客戶端。" #. (itstool) path: callout/para -#: book.translate.xml:55287 +#: book.translate.xml:55715 msgid "" "Specifies that this host should always be given the same <acronym>IP</" "acronym> address. Using the hostname is correct, since the <acronym>DHCP</" @@ -80846,7 +81565,7 @@ msgstr "" "的,由於 <acronym>DHCP</acronym> 伺服器會在回傳租約資訊前先解析主機名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:55295 +#: book.translate.xml:55723 msgid "" "This configuration file supports many more options. Refer to dhcpd.conf(5), " "installed with the server, for details and examples." @@ -80855,7 +81574,7 @@ msgstr "" "訊與範例。" #. (itstool) path: sect2/para -#: book.translate.xml:55299 +#: book.translate.xml:55727 msgid "" "Once the configuration of <filename>dhcpd.conf</filename> is complete, " "enable the <acronym>DHCP</acronym> server in <filename>/etc/rc.conf</" @@ -80865,7 +81584,7 @@ msgstr "" "filename> 啟動 <acronym>DHCP</acronym> 伺服器:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55303 +#: book.translate.xml:55731 #, no-wrap msgid "" "dhcpd_enable=\"YES\"\n" @@ -80873,7 +81592,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55306 +#: book.translate.xml:55734 msgid "" "Replace the <literal>dc0</literal> with the interface (or interfaces, " "separated by whitespace) that the <acronym>DHCP</acronym> server should " @@ -80883,18 +81602,18 @@ msgstr "" "<acronym>DHCP</acronym> 客戶端請求的網路介面 (多個介面可以空白分隔)。" #. (itstool) path: sect2/para -#: book.translate.xml:55311 +#: book.translate.xml:55739 msgid "Start the server by issuing the following command:" msgstr "執行以下指令來啟動伺服器:" #. (itstool) path: sect2/screen -#: book.translate.xml:55313 book.translate.xml:64732 +#: book.translate.xml:55741 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>service isc-dhcpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55315 +#: book.translate.xml:55743 msgid "" "Any future changes to the configuration of the server will require the " "<application>dhcpd</application> service to be stopped and then started " @@ -80906,7 +81625,7 @@ msgstr "" "<application>dhcpd</application> 服務然後啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:55319 +#: book.translate.xml:55747 msgid "" "The <acronym>DHCP</acronym> server uses the following files. Note that the " "manual pages are installed with the server software." @@ -80915,12 +81634,12 @@ msgstr "" "一同安裝。" #. (itstool) path: listitem/para -#: book.translate.xml:55329 +#: book.translate.xml:55757 msgid "<filename>/usr/local/sbin/dhcpd</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55331 +#: book.translate.xml:55759 msgid "" "More information about the <application>dhcpd</application> server can be " "found in dhcpd(8)." @@ -80928,28 +81647,28 @@ msgstr "" "更多有關 <application>dhcpd</application> 伺服器的資訊可在 dhcpd(8) 找到。" #. (itstool) path: listitem/para -#: book.translate.xml:55337 +#: book.translate.xml:55765 msgid "<filename>/usr/local/etc/dhcpd.conf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55339 +#: book.translate.xml:55767 msgid "" "The server configuration file needs to contain all the information that " "should be provided to clients, along with information regarding the " "operation of the server. This configuration file is described in dhcpd." "conf(5)." msgstr "" -"伺服器設定檔需要含有所有要提供給客戶端的資訊以及有關伺服器運作的資訊。在 " -"dhcpd.conf(5) 有此設定檔的說明。 " +"伺服器設定檔需要含有所有要提供給客戶端的資訊以及有關伺服器運作的資訊。在 " +"dhcpd.conf(5) 有此設定檔的說明。" #. (itstool) path: listitem/para -#: book.translate.xml:55346 +#: book.translate.xml:55774 msgid "<filename>/var/db/dhcpd.leases</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55348 +#: book.translate.xml:55776 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 " @@ -80959,12 +81678,12 @@ msgstr "" "式類似日誌。參考 dhcpd.leases(5) 會有更完整的說明。" #. (itstool) path: listitem/para -#: book.translate.xml:55355 +#: book.translate.xml:55783 msgid "<filename>/usr/local/sbin/dhcrelay</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55357 +#: book.translate.xml:55785 msgid "" "This daemon is used in advanced environments where one <acronym>DHCP</" "acronym> server forwards a request from a client to another <acronym>DHCP</" @@ -80978,7 +81697,7 @@ msgstr "" "安裝會包含 dhcrelay(8),裡面有提供更詳細的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:55395 +#: book.translate.xml:55823 msgid "" "Domain Name System (<acronym>DNS</acronym>) is the protocol through which " "domain names are mapped to <acronym>IP</acronym> addresses, and vice versa. " @@ -80996,86 +81715,86 @@ msgstr "" "個名稱伺服器。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55405 +#: book.translate.xml:55833 msgid "<primary>resolver</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55406 +#: book.translate.xml:55834 msgid "<primary>reverse <acronym>DNS</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55408 +#: book.translate.xml:55836 msgid "<primary>root zone</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55410 +#: book.translate.xml:55838 msgid "" "The following table describes some of the terms associated with " "<acronym>DNS</acronym>:" msgstr "以下表格會說明一些與 <acronym>DNS</acronym> 有關的術語:" #. (itstool) path: table/title -#: book.translate.xml:55414 +#: book.translate.xml:55842 msgid "<acronym>DNS</acronym> Terminology" msgstr "<acronym>DNS</acronym> 術語" #. (itstool) path: row/entry -#: book.translate.xml:55423 +#: book.translate.xml:55851 msgid "Definition" msgstr "定義" #. (itstool) path: row/entry -#: book.translate.xml:55429 +#: book.translate.xml:55857 msgid "Forward <acronym>DNS</acronym>" msgstr "正向 <acronym>DNS</acronym> (Forward <acronym>DNS</acronym>)" #. (itstool) path: row/entry -#: book.translate.xml:55430 +#: book.translate.xml:55858 msgid "Mapping of hostnames to <acronym>IP</acronym> addresses." msgstr "將主機名稱對應 <acronym>IP</acronym> 位址的動作。" #. (itstool) path: row/entry -#: book.translate.xml:55435 +#: book.translate.xml:55863 msgid "Origin" msgstr "源頭 (Origin)" #. (itstool) path: row/entry -#: book.translate.xml:55436 +#: book.translate.xml:55864 msgid "Refers to the domain covered in a particular zone file." msgstr "代表某個轄區檔案中所涵蓋的網域。" #. (itstool) path: row/entry -#: book.translate.xml:55441 +#: book.translate.xml:55869 msgid "Resolver" msgstr "解析器 (Resolver)" #. (itstool) path: row/entry -#: book.translate.xml:55442 +#: book.translate.xml:55870 msgid "" "A system process through which a machine queries a name server for zone " "information." msgstr "主機向名稱伺服器查詢轄區資訊的系統程序。" #. (itstool) path: row/entry -#: book.translate.xml:55447 +#: book.translate.xml:55875 msgid "Reverse <acronym>DNS</acronym>" msgstr "反向 <acronym>DNS</acronym> (Reverse <acronym>DNS</acronym>)" #. (itstool) path: row/entry -#: book.translate.xml:55448 +#: book.translate.xml:55876 msgid "Mapping of <acronym>IP</acronym> addresses to hostnames." msgstr "將 <acronym>IP</acronym> 對應主機名稱的動作。" #. (itstool) path: row/entry -#: book.translate.xml:55453 +#: book.translate.xml:55881 msgid "Root zone" msgstr "根轄區 (Root zone)" #. (itstool) path: row/entry -#: book.translate.xml:55455 +#: book.translate.xml:55883 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 " @@ -81085,12 +81804,12 @@ msgstr "" "案會在根目錄底下。" #. (itstool) path: row/entry -#: book.translate.xml:55461 +#: book.translate.xml:55889 msgid "Zone" msgstr "轄區 (Zone)" #. (itstool) path: row/entry -#: book.translate.xml:55462 +#: book.translate.xml:55890 msgid "" "An individual domain, subdomain, or portion of the <acronym>DNS</acronym> " "administered by the same authority." @@ -81099,24 +81818,24 @@ msgstr "" "acronym>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55470 +#: book.translate.xml:55898 msgid "<primary>zones</primary> <secondary>examples</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55475 +#: book.translate.xml:55903 msgid "Examples of zones:" msgstr "轄區範例:" #. (itstool) path: listitem/para -#: book.translate.xml:55479 +#: book.translate.xml:55907 msgid "" "<systemitem>.</systemitem> is how the root zone is usually referred to in " "documentation." msgstr "<systemitem>.</systemitem> 是一般在文件中表達根轄區的方式。" #. (itstool) path: listitem/para -#: book.translate.xml:55484 +#: book.translate.xml:55912 msgid "" "<systemitem>org.</systemitem> is a Top Level Domain (<acronym>TLD</acronym>) " "under the root zone." @@ -81125,7 +81844,7 @@ msgstr "" "Domain , <acronym>TLD</acronym>)。" #. (itstool) path: listitem/para -#: book.translate.xml:55489 +#: book.translate.xml:55917 msgid "" "<systemitem class=\"fqdomainname\">example.org.</systemitem> is a zone under " "the <systemitem>org.</systemitem> <acronym>TLD</acronym>." @@ -81134,7 +81853,7 @@ msgstr "" "<systemitem>org.</systemitem> <acronym>TLD</acronym> 底下的轄區。" #. (itstool) path: listitem/para -#: book.translate.xml:55495 +#: book.translate.xml:55923 msgid "" "<systemitem>1.168.192.in-addr.arpa</systemitem> is a zone referencing all " "<acronym>IP</acronym> addresses which fall under the <systemitem class=" @@ -81145,7 +81864,7 @@ msgstr "" "acronym> 位址空間底下的 <acronym>IP</acronym> 位址。" #. (itstool) path: sect1/para -#: book.translate.xml:55502 +#: book.translate.xml:55930 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 " @@ -81160,12 +81879,12 @@ msgstr "" "系統:<filename>/dev</filename> 目錄在根目錄底下,以此類推。" #. (itstool) path: sect2/title -#: book.translate.xml:55511 +#: book.translate.xml:55939 msgid "Reasons to Run a Name Server" msgstr "要架設名稱伺服器的原因" #. (itstool) path: sect2/para -#: book.translate.xml:55513 +#: book.translate.xml:55941 msgid "" "Name servers generally come in two forms: authoritative name servers, and " "caching (also known as resolving) name servers." @@ -81174,19 +81893,19 @@ msgstr "" "名稱伺服器。" #. (itstool) path: sect2/para -#: book.translate.xml:55517 +#: book.translate.xml:55945 msgid "An authoritative name server is needed when:" msgstr "以下情況會需要一台有權的名稱伺服器:" #. (itstool) path: listitem/para -#: book.translate.xml:55521 +#: book.translate.xml:55949 msgid "" "One wants to serve <acronym>DNS</acronym> information to the world, replying " "authoritatively to queries." msgstr "想要提供 <acronym>DNS</acronym> 資訊給全世界,做為官方回覆查詢。" #. (itstool) path: listitem/para -#: book.translate.xml:55526 +#: book.translate.xml:55954 msgid "" "A domain, such as <systemitem class=\"fqdomainname\">example.org</" "systemitem>, is registered and <acronym>IP</acronym> addresses need to be " @@ -81196,7 +81915,7 @@ msgstr "" "systemitem>,且要將 <acronym>IP</acronym> 位址分配到主機名稱下。" #. (itstool) path: listitem/para -#: book.translate.xml:55532 +#: book.translate.xml:55960 msgid "" "An <acronym>IP</acronym> address block requires reverse <acronym>DNS</" "acronym> entries (<acronym>IP</acronym> to hostname)." @@ -81205,17 +81924,17 @@ msgstr "" "(<acronym>IP</acronym> 轉主機名稱)。" #. (itstool) path: listitem/para -#: book.translate.xml:55538 +#: book.translate.xml:55966 msgid "A backup or second name server, called a slave, will reply to queries." msgstr "要有一台備援或次要名稱伺服器用來回覆查詢。" #. (itstool) path: sect2/para -#: book.translate.xml:55543 +#: book.translate.xml:55971 msgid "A caching name server is needed when:" msgstr "以下情況會需要一台快取名稱伺服器:" #. (itstool) path: listitem/para -#: book.translate.xml:55547 +#: book.translate.xml:55975 msgid "" "A local <acronym>DNS</acronym> server may cache and respond more quickly " "than querying an outside name server." @@ -81224,7 +81943,7 @@ msgstr "" "應。" #. (itstool) path: sect2/para -#: book.translate.xml:55553 +#: book.translate.xml:55981 msgid "" "When one queries for <systemitem class=\"fqdomainname\">www.FreeBSD.org</" "systemitem>, the resolver usually queries the uplink <acronym>ISP</" @@ -81241,13 +81960,12 @@ msgstr "" "這些資訊已經在本地被快取了。" #. (itstool) path: sect2/title -#: book.translate.xml:55564 -#, fuzzy +#: book.translate.xml:55992 msgid "<acronym>DNS</acronym> Server Configuration" -msgstr "<acronym>NTP</acronym> 設定" +msgstr "<acronym>DNS</acronym> 伺服器設定" #. (itstool) path: sect2/para -#: book.translate.xml:55566 +#: book.translate.xml:55994 msgid "" "<application>Unbound</application> is provided in the FreeBSD base system. " "By default, it will provide <acronym>DNS</acronym> resolution to the local " @@ -81262,7 +81980,7 @@ msgstr "" "<application>Unbound</application>。" #. (itstool) path: sect2/para -#: book.translate.xml:55575 +#: book.translate.xml:56003 msgid "" "To enable <application>Unbound</application>, add the following to " "<filename>/etc/rc.conf</filename>:" @@ -81271,13 +81989,13 @@ msgstr "" "conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55578 +#: book.translate.xml:56006 #, no-wrap msgid "local_unbound_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55580 +#: book.translate.xml:56008 msgid "" "Any existing nameservers in <filename>/etc/resolv.conf</filename> will be " "configured as forwarders in the new <application>Unbound</application> " @@ -81287,7 +82005,7 @@ msgstr "" "<application>Unbound</application> 設定中被設為追隨者 (Forwarder)。" #. (itstool) path: note/para -#: book.translate.xml:55586 +#: book.translate.xml:56014 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 " @@ -81301,13 +82019,13 @@ msgstr "" "\">192.168.1.1</systemitem> 上執行失敗的名稱伺服器:" #. (itstool) path: sect2/screen -#: book.translate.xml:55594 +#: book.translate.xml:56022 #, 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:55596 +#: book.translate.xml:56024 msgid "" "Once each nameserver is confirmed to support <acronym>DNSSEC</acronym>, " "start <application>Unbound</application>:" @@ -81316,13 +82034,13 @@ msgstr "" "<application>Unbound</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:55600 +#: book.translate.xml:56028 #, no-wrap msgid "<prompt>#</prompt> <userinput>service local_unbound onestart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55602 +#: book.translate.xml:56030 msgid "" "This will take care of updating <filename>/etc/resolv.conf</filename> so " "that queries for <acronym>DNSSEC</acronym> secured domains will now work. " @@ -81330,10 +82048,11 @@ msgid "" "acronym> trust tree:" msgstr "" "這將會更新 <filename>/etc/resolv.conf</filename> 來讓查詢已用 " -"<acronym>DNSSEC</acronym> 確保安全的網域現在可以運作。" +"<acronym>DNSSEC</acronym> 確保安全的網域現在可以運作,例如,執行以下指令來檢" +"驗 FreeBSD.org <acronym>DNSSEC</acronym> 信任樹:" #. (itstool) path: sect2/screen -#: book.translate.xml:55608 +#: book.translate.xml:56036 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>drill -S FreeBSD.org</userinput>\n" @@ -81358,17 +82077,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:55632 +#: book.translate.xml:56060 msgid "Apache HTTP Server" msgstr "Apache HTTP 伺服器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55645 +#: book.translate.xml:56073 msgid "<primary>web servers</primary> <secondary>setting up</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55649 +#: book.translate.xml:56077 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, " @@ -81380,7 +82099,7 @@ msgstr "" "apache24</package> 套件或 Port 安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:55655 +#: book.translate.xml:56083 msgid "" "This section summarizes how to configure and start version 2.<replaceable>x</" "replaceable> of the <application>Apache HTTP Server</application> on " @@ -81394,17 +82113,17 @@ msgstr "" "href=\"http://httpd.apache.org/\">httpd.apache.org</link>。" #. (itstool) path: sect2/title -#: book.translate.xml:55662 +#: book.translate.xml:56090 msgid "Configuring and Starting Apache" msgstr "設定並啟動 Apache" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55664 +#: book.translate.xml:56092 msgid "<primary>Apache</primary> <secondary>configuration file</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55667 +#: book.translate.xml:56095 msgid "" "In FreeBSD, the main <application>Apache HTTP Server</application> " "configuration file is installed as <filename>/usr/local/etc/" @@ -81420,12 +82139,12 @@ msgstr "" "有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:55677 +#: book.translate.xml:56105 msgid "<literal>ServerRoot \"/usr/local\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55680 +#: book.translate.xml:56108 msgid "" "Specifies the default directory hierarchy for the <application>Apache</" "application> installation. Binaries are stored in the <filename>bin</" @@ -81439,12 +82158,12 @@ msgstr "" "replaceable></filename> 子目錄。" #. (itstool) path: varlistentry/term -#: book.translate.xml:55690 +#: book.translate.xml:56118 msgid "<literal>ServerAdmin you@example.com</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55693 +#: book.translate.xml:56121 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." @@ -81453,12 +82172,12 @@ msgstr "" "的頁面上,如:錯誤頁面。" #. (itstool) path: varlistentry/term -#: book.translate.xml:55700 +#: book.translate.xml:56128 msgid "<literal>ServerName www.example.com:80</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55704 +#: book.translate.xml:56132 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 " @@ -81473,14 +82192,14 @@ msgstr "" "器需要傾聽其他埠號,可更改 <literal>80</literal> 為其他埠號。" #. (itstool) path: varlistentry/term -#: book.translate.xml:55717 +#: book.translate.xml:56145 msgid "" "<literal>DocumentRoot \"/usr/local/www/apache2<replaceable>x</replaceable>/" "data\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55721 +#: book.translate.xml:56149 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 " @@ -81490,7 +82209,7 @@ msgstr "" "他地方。" #. (itstool) path: sect2/para -#: book.translate.xml:55729 +#: book.translate.xml:56157 msgid "" "It is always a good idea to make a backup copy of the default " "<application>Apache</application> configuration file before making changes. " @@ -81505,12 +82224,12 @@ msgstr "" "command> 的結果應回傳 <literal>Syntax OK</literal>。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55738 +#: book.translate.xml:56166 msgid "<primary>Apache</primary> <secondary>starting or stopping</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55741 +#: book.translate.xml:56169 msgid "" "To launch <application>Apache</application> at system startup, add the " "following line to <filename>/etc/rc.conf</filename>:" @@ -81519,13 +82238,13 @@ msgstr "" "<filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55745 +#: book.translate.xml:56173 #, no-wrap msgid "apache<replaceable>24</replaceable>_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55747 +#: book.translate.xml:56175 msgid "" "If <application>Apache</application> should be started with non-default " "options, the following line may be added to <filename>/etc/rc.conf</" @@ -81535,13 +82254,13 @@ msgstr "" "<filename>/etc/rc.conf</filename> 來指定所需的旗標參數:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55752 +#: book.translate.xml:56180 #, no-wrap msgid "apache<replaceable>24</replaceable>_flags=\"\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55754 +#: book.translate.xml:56182 msgid "" "If <application>apachectl</application> does not report configuration " "errors, start <command>httpd</command> now:" @@ -81550,13 +82269,13 @@ msgstr "" "<command>httpd</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:55758 +#: book.translate.xml:56186 #, no-wrap msgid "<prompt>#</prompt> <userinput>service apache<replaceable>24</replaceable> start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55760 +#: book.translate.xml:56188 msgid "" "The <command>httpd</command> service can be tested by entering " "<literal>http://<replaceable>localhost</replaceable></literal> in a web " @@ -81573,7 +82292,7 @@ msgstr "" "html</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:55769 +#: book.translate.xml:56197 msgid "" "The <application>Apache</application> configuration can be tested for errors " "after making subsequent configuration changes while <command>httpd</command> " @@ -81583,13 +82302,13 @@ msgstr "" "application> 設定檔可使用以下指令來測試是否有誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:55774 +#: book.translate.xml:56202 #, no-wrap msgid "<prompt>#</prompt> <userinput>service apache<replaceable>24</replaceable> configtest</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:55777 +#: book.translate.xml:56205 msgid "" "It is important to note that <literal>configtest</literal> is not an " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -81601,12 +82320,12 @@ msgstr "" "citerefentry> 標準,不應預期其可在所有的啟動 Script 中正常運作。" #. (itstool) path: sect2/title -#: book.translate.xml:55785 +#: book.translate.xml:56213 msgid "Virtual Hosting" msgstr "虛擬主機" #. (itstool) path: sect2/para -#: book.translate.xml:55787 +#: book.translate.xml:56215 msgid "" "Virtual hosting allows multiple websites to run on one <application>Apache</" "application> server. The virtual hosts can be <firstterm>IP-based</" @@ -81624,7 +82343,7 @@ msgstr "" "<acronym>IP</acronym> 位址。" #. (itstool) path: sect2/para -#: book.translate.xml:55797 +#: book.translate.xml:56225 msgid "" "To setup <application>Apache</application> to use name-based virtual " "hosting, add a <literal>VirtualHost</literal> block for each website. For " @@ -81640,7 +82359,7 @@ msgstr "" "擬網域,可加入以下項目到 <filename>httpd.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55805 +#: book.translate.xml:56233 #, no-wrap msgid "" "<VirtualHost *>\n" @@ -81655,7 +82374,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55815 +#: book.translate.xml:56243 msgid "" "For each virtual host, replace the values for <literal>ServerName</literal> " "and <literal>DocumentRoot</literal> with the values to be used." @@ -81664,7 +82383,7 @@ msgstr "" "<literal>DocumentRoot</literal> 的值為實際要使用的值。" #. (itstool) path: sect2/para -#: book.translate.xml:55820 +#: book.translate.xml:56248 msgid "" "For more information about setting up virtual hosts, consult the official " "<application>Apache</application> documentation at: <uri xlink:href=\"http://" @@ -81675,17 +82394,17 @@ msgstr "" "httpd.apache.org/docs/vhosts/</uri>。" #. (itstool) path: sect2/title -#: book.translate.xml:55826 +#: book.translate.xml:56254 msgid "Apache Modules" msgstr "Apache 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55828 +#: book.translate.xml:56256 msgid "<primary>Apache</primary> <secondary>modules</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55831 +#: book.translate.xml:56259 msgid "" "<application>Apache</application> uses modules to augment the functionality " "provided by the basic server. Refer to <uri xlink:href=\"http://httpd.apache." @@ -81699,7 +82418,7 @@ msgstr "" "設定詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:55836 +#: book.translate.xml:56264 msgid "" "In FreeBSD, some modules can be compiled with the <package>www/apache24</" "package> port. Type <command>make config</command> within <filename>/usr/" @@ -81715,27 +82434,27 @@ msgstr "" "組。" #. (itstool) path: sect3/title -#: book.translate.xml:55847 +#: book.translate.xml:56275 msgid "<filename>mod_ssl</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55849 +#: book.translate.xml:56277 msgid "<primary>web servers</primary> <secondary>secure</secondary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55853 +#: book.translate.xml:56281 msgid "<primary>SSL</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55854 +#: book.translate.xml:56282 msgid "<primary>cryptography</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55856 +#: book.translate.xml:56284 msgid "" "The <filename>mod_ssl</filename> module uses the <application>OpenSSL</" "application> library to provide strong cryptography via the Secure Sockets " @@ -81751,7 +82470,7 @@ msgstr "" "網頁伺服器。" #. (itstool) path: sect3/para -#: book.translate.xml:55865 +#: book.translate.xml:56293 msgid "" "In FreeBSD, <filename>mod_ssl</filename> module is enabled by default in " "both the package and the port. The available configuration directives are " @@ -81764,17 +82483,17 @@ msgstr "" "說明。" #. (itstool) path: sect3/title -#: book.translate.xml:55871 +#: book.translate.xml:56299 msgid "<filename>mod_perl</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55873 +#: book.translate.xml:56301 msgid "<primary>mod_perl</primary> <secondary>Perl</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55878 +#: book.translate.xml:56306 msgid "" "The <filename>mod_perl</filename> module makes it possible to write " "<application>Apache</application> modules in <application>Perl</" @@ -81788,7 +82507,7 @@ msgstr "" "耗費的啟動時間。" #. (itstool) path: sect3/para -#: book.translate.xml:55886 +#: book.translate.xml:56314 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 " @@ -81801,17 +82520,17 @@ msgstr "" "uri> 中找到。" #. (itstool) path: info/title -#: book.translate.xml:55893 +#: book.translate.xml:56321 msgid "<filename>mod_php</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55906 +#: book.translate.xml:56334 msgid "<primary>mod_php</primary> <secondary>PHP</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55911 +#: book.translate.xml:56339 msgid "" "<firstterm>PHP: Hypertext Preprocessor</firstterm> (<acronym>PHP</acronym>) " "is a general-purpose scripting language that is especially suited for web " @@ -81827,7 +82546,7 @@ msgstr "" "開發人員能快速的寫出動態網頁。" #. (itstool) path: sect3/para -#: book.translate.xml:55920 +#: book.translate.xml:56348 msgid "" "To gain support for <acronym>PHP</acronym>5 for the <application>Apache</" "application> web server, install the <package>www/mod_php56</package> " @@ -81843,25 +82562,25 @@ msgstr "" "conf</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:55928 +#: book.translate.xml:56356 #, no-wrap msgid "LoadModule php5_module libexec/apache24/libphp5.so" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55943 +#: book.translate.xml:56371 msgid "" "Then, perform a graceful restart to load the <acronym>PHP</acronym> module:" msgstr "接著,執行 graceful 重新啟動來載入 <acronym>PHP</acronym> 模組:" #. (itstool) path: sect3/screen -#: book.translate.xml:55946 book.translate.xml:55965 +#: book.translate.xml:56374 book.translate.xml:56393 #, no-wrap msgid "<prompt>#</prompt> <userinput>apachectl graceful</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55948 +#: book.translate.xml:56376 msgid "" "The <acronym>PHP</acronym> support provided by <package>www/mod_php56</" "package> is limited. Additional support can be installed using the " @@ -81873,7 +82592,7 @@ msgstr "" "來安裝,該 Port 提供了選單介面來選擇可用的 <acronym>PHP</acronym> 擴充套件。" #. (itstool) path: sect3/para -#: book.translate.xml:55955 +#: book.translate.xml:56383 msgid "" "Alternatively, individual extensions can be installed using the appropriate " "port. For instance, to add <acronym>PHP</acronym> support for the " @@ -81885,7 +82604,7 @@ msgstr "" "<package>databases/php56-mysql</package>。" #. (itstool) path: sect3/para -#: book.translate.xml:55961 +#: book.translate.xml:56389 msgid "" "After installing an extension, the <application>Apache</application> server " "must be reloaded to pick up the new configuration changes:" @@ -81894,17 +82613,17 @@ msgstr "" "使用新的設定值:" #. (itstool) path: sect2/title -#: book.translate.xml:55970 +#: book.translate.xml:56398 msgid "Dynamic Websites" msgstr "動態網站" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55972 +#: book.translate.xml:56400 msgid "<primary>web servers</primary> <secondary>dynamic</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55977 +#: book.translate.xml:56405 msgid "" "In addition to <application>mod_perl</application> and <application>mod_php</" "application>, other languages are available for creating dynamic web " @@ -81917,22 +82636,22 @@ msgstr "" "application>。" #. (itstool) path: sect3/title -#: book.translate.xml:55984 +#: book.translate.xml:56412 msgid "Django" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55986 +#: book.translate.xml:56414 msgid "<primary>Python</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55987 +#: book.translate.xml:56415 msgid "<primary>Django</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55989 +#: book.translate.xml:56417 msgid "" "<application>Django</application> is a BSD-licensed framework designed to " "allow developers to write high performance, elegant web applications " @@ -81951,7 +82670,7 @@ msgstr "" "統,來讓應用程式的邏輯與 <acronym>HTML</acronym> 呈現能夠被拆開。" #. (itstool) path: sect3/para -#: book.translate.xml:56001 +#: book.translate.xml:56429 msgid "" "Django depends on <filename>mod_python</filename>, and an <acronym>SQL</" "acronym> database engine. In FreeBSD, the <package>www/py-django</package> " @@ -81971,7 +82690,7 @@ msgstr "" "<command>make config</command> 然後再安裝該 Port。" #. (itstool) path: sect3/para -#: book.translate.xml:56013 +#: book.translate.xml:56441 msgid "" "Once <application>Django</application> is installed, the application will " "need a project directory along with the <application>Apache</application> " @@ -81985,7 +82704,7 @@ msgstr "" "<acronym>URL</acronym> 的應用程式。" #. (itstool) path: sect3/para -#: book.translate.xml:56021 +#: book.translate.xml:56449 msgid "" "To configure <application>Apache</application> to pass requests for certain " "<acronym>URL</acronym>s to the web application, add the following to " @@ -81997,7 +82716,7 @@ msgstr "" "完整路徑:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56027 +#: book.translate.xml:56455 #, no-wrap msgid "" "<Location \"/\">\n" @@ -82011,7 +82730,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56036 +#: book.translate.xml:56464 msgid "" "Refer to <uri xlink:href=\"https://docs.djangoproject.com\">https://docs." "djangoproject.com</uri> for more information on how to use " @@ -82022,17 +82741,17 @@ msgstr "" "多資訊。" #. (itstool) path: sect3/title -#: book.translate.xml:56042 +#: book.translate.xml:56470 msgid "Ruby on Rails" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56044 +#: book.translate.xml:56472 msgid "<primary>Ruby on Rails</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56046 +#: book.translate.xml:56474 msgid "" "<application>Ruby on Rails</application> is another open source web " "framework that provides a full development stack. It is optimized to make " @@ -82046,7 +82765,7 @@ msgstr "" "package> 套件或 Port 安裝。" #. (itstool) path: sect3/para -#: book.translate.xml:56053 +#: book.translate.xml:56481 msgid "" "Refer to <uri xlink:href=\"http://guides.rubyonrails.org\">http://guides." "rubyonrails.org</uri> for more information on how to use <application>Ruby " @@ -82057,17 +82776,17 @@ msgstr "" "application> 的資訊。" #. (itstool) path: sect1/title -#: book.translate.xml:56072 +#: book.translate.xml:56500 msgid "File Transfer Protocol (<acronym>FTP</acronym>)" msgstr "檔案傳輸協定 (<acronym>FTP</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56074 +#: book.translate.xml:56502 msgid "<primary><acronym>FTP</acronym> servers</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56077 +#: book.translate.xml:56505 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. " @@ -82080,7 +82799,7 @@ msgstr "" "系統 (Base system) 中。" #. (itstool) path: sect1/para -#: book.translate.xml:56083 +#: book.translate.xml:56511 msgid "" "FreeBSD provides several configuration files for controlling access to the " "<acronym>FTP</acronym> server. This section summarizes these files. Refer to " @@ -82094,7 +82813,7 @@ msgstr "" "<acronym>FTP</acronym> 伺服器的詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:56091 +#: book.translate.xml:56519 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 " @@ -82111,7 +82830,7 @@ msgstr "" "<acronym>FTP</acronym> 的使用者也可在此加入。" #. (itstool) path: sect2/para -#: book.translate.xml:56100 +#: book.translate.xml:56528 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 " @@ -82127,13 +82846,13 @@ msgstr "" "到 <acronym>FTP</acronym> 存取限制的使用者與群組。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56107 book.translate.xml:56165 +#: book.translate.xml:56535 book.translate.xml:56593 msgid "" "<primary><acronym>FTP</acronym></primary> <secondary>anonymous</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56112 +#: book.translate.xml:56540 msgid "" "To enable anonymous <acronym>FTP</acronym> access to the server, create a " "user named <systemitem class=\"username\">ftp</systemitem> on the FreeBSD " @@ -82157,7 +82876,7 @@ msgstr "" "systemitem> 使用者的家目錄。" #. (itstool) path: sect2/para -#: book.translate.xml:56123 +#: book.translate.xml:56551 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>/" @@ -82174,7 +82893,7 @@ msgstr "" "只會對匿名使用者顯示。" #. (itstool) path: sect2/para -#: book.translate.xml:56135 +#: book.translate.xml:56563 msgid "" "Once the <acronym>FTP</acronym> server has been configured, set the " "appropriate variable in <filename>/etc/rc.conf</filename> to start the " @@ -82184,41 +82903,41 @@ msgstr "" "filename> 設定適當的變數來在開機時啟動該服務:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56140 +#: book.translate.xml:56568 #, no-wrap msgid "ftpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56142 +#: book.translate.xml:56570 msgid "To start the service now:" msgstr "要立即啟動服務可:" #. (itstool) path: sect2/screen -#: book.translate.xml:56144 +#: book.translate.xml:56572 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ftpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56146 +#: book.translate.xml:56574 msgid "Test the connection to the <acronym>FTP</acronym> server by typing:" msgstr "要測試到 <acronym>FTP</acronym> 伺服器的連線可輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:56149 +#: book.translate.xml:56577 #, no-wrap msgid "<prompt>%</prompt> <userinput>ftp localhost</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56152 +#: book.translate.xml:56580 msgid "" "<primary>log files</primary> <secondary><acronym>FTP</acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56155 +#: book.translate.xml:56583 msgid "" "The <application>ftpd</application> daemon uses " "<citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></" @@ -82235,13 +82954,13 @@ msgstr "" "來做修改:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56163 +#: book.translate.xml:56591 #, no-wrap msgid "ftp.info /var/log/xferlog" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:56171 +#: book.translate.xml:56599 msgid "" "Be aware of the potential problems involved with running an anonymous " "<acronym>FTP</acronym> server. In particular, think twice about allowing " @@ -82258,7 +82977,7 @@ msgstr "" "匿名使用者讀取。" #. (itstool) path: sect1/title -#: book.translate.xml:56196 +#: book.translate.xml:56624 msgid "" "File and Print Services for <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> Clients " @@ -82268,27 +82987,27 @@ msgstr "" "\"registered\">Windows</trademark> 用戶端檔案與列印服務 (Samba)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56199 +#: book.translate.xml:56627 msgid "<primary>Samba server</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56200 +#: book.translate.xml:56628 msgid "<primary>Microsoft Windows</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56201 +#: book.translate.xml:56629 msgid "<primary>file server</primary> <secondary>Windows clients</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56205 +#: book.translate.xml:56633 msgid "<primary>print server</primary> <secondary>Windows clients</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56210 +#: book.translate.xml:56638 msgid "" "<application>Samba</application> is a popular open source software package " "that provides file and print services using the <acronym>SMB/CIFS</acronym> " @@ -82311,8 +83030,7 @@ msgstr "" "享的印表機則可以當做本機的印表機使用。" #. (itstool) path: sect1/para -#: book.translate.xml:56220 -#, fuzzy +#: book.translate.xml:56648 msgid "" "On FreeBSD, the <application>Samba</application> client libraries can be " "installed using the <package>net/samba48</package> port or package. The " @@ -82320,15 +83038,14 @@ msgid "" "CIFS</acronym> shares in a <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> network." msgstr "" -"在 FreeBSD 上,可以使用 <package>net/samba-smbclient</package> Port 或套件來" -"安裝 <application>Samba</application> 客戶端程式庫,這個客戶端提供了讓 " -"FreeBSD 系統能存取 <acronym>SMB/CIFS</acronym> 在 <trademark class=" -"\"registered\">Microsoft</trademark> <trademark class=\"registered" -"\">Windows</trademark> 網路中共享的資源。" +"在 FreeBSD 上,可以使用 <package>net/samba48</package> Port 或套件來安裝 " +"<application>Samba</application> 客戶端程式庫,這個客戶端提供了讓 FreeBSD 系" +"統能存取 <acronym>SMB/CIFS</acronym> 在 <trademark class=\"registered" +"\">Microsoft</trademark> <trademark class=\"registered\">Windows</trademark> " +"網路中共享的資源。" #. (itstool) path: sect1/para -#: book.translate.xml:56227 -#, fuzzy +#: book.translate.xml:56655 msgid "" "A FreeBSD system can also be configured to act as a <application>Samba</" "application> server by installing the same <package>net/samba48</package> " @@ -82338,7 +83055,7 @@ msgid "" "trademark> <trademark class=\"registered\">Windows</trademark> or the " "<application>Samba</application> client libraries." msgstr "" -"FreeBSD 系統也可以透過安裝 <package>net/samba46</package> Port 或套件來設定" +"FreeBSD 系統也可以透過安裝 <package>net/samba48</package> Port 或套件來設定" "成 <application>Samba</application> 伺服器,這讓管理者可以在 FreeBSD 系統上建" "立 <acronym>SMB</acronym>/<acronym>CIFS</acronym> 的共享資源,讓執行 " "<trademark class=\"registered\">Microsoft</trademark> <trademark class=" @@ -82346,12 +83063,12 @@ msgstr "" "程式庫的客戶端能夠存取。" #. (itstool) path: sect2/title -#: book.translate.xml:56237 +#: book.translate.xml:56665 msgid "Server Configuration" msgstr "伺服器設定" #. (itstool) path: sect2/para -#: book.translate.xml:56239 +#: book.translate.xml:56667 msgid "" "<application>Samba</application> is configured in <filename>/usr/local/etc/" "smb4.conf</filename>. This file must be created before <application>Samba</" @@ -82362,7 +83079,7 @@ msgstr "" "application>。" #. (itstool) path: sect2/para -#: book.translate.xml:56244 +#: book.translate.xml:56672 msgid "" "A simple <filename>smb4.conf</filename> to share directories and printers " "with <trademark class=\"registered\">Windows</trademark> clients in a " @@ -82378,7 +83095,7 @@ msgstr "" "manvolnum></citerefentry> 來建立初始的 <filename>smb4.conf</filename>。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56251 +#: book.translate.xml:56679 #, no-wrap msgid "" "[global]\n" @@ -82403,12 +83120,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56272 +#: book.translate.xml:56700 msgid "Global Settings" msgstr "全域設定" #. (itstool) path: sect3/para -#: book.translate.xml:56274 +#: book.translate.xml:56702 msgid "" "Settings that describe the network are added in <filename>/usr/local/etc/" "smb4.conf</filename>:" @@ -82417,22 +83134,22 @@ msgstr "" "有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:56279 +#: book.translate.xml:56707 msgid "<literal>workgroup</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56282 +#: book.translate.xml:56710 msgid "The name of the workgroup to be served." msgstr "要提供的工作群組名稱。" #. (itstool) path: varlistentry/term -#: book.translate.xml:56287 +#: book.translate.xml:56715 msgid "<literal>netbios name</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56290 +#: book.translate.xml:56718 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 " @@ -82442,12 +83159,12 @@ msgstr "" "<acronym>DNS</acronym> 名稱第一節。" #. (itstool) path: varlistentry/term -#: book.translate.xml:56298 +#: book.translate.xml:56726 msgid "<literal>server string</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56301 +#: book.translate.xml:56729 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 " @@ -82457,12 +83174,12 @@ msgstr "" "示的網路工具的文字。" #. (itstool) path: varlistentry/term -#: book.translate.xml:56309 +#: book.translate.xml:56737 msgid "<literal>wins support</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56312 +#: book.translate.xml:56740 msgid "" "Whether <application>Samba</application> will act as a <acronym>WINS</" "acronym> server. Do not enable support for <acronym>WINS</acronym> on more " @@ -82472,12 +83189,12 @@ msgstr "" "器,請不要在網路上開啟超過一台伺服器的 <acronym>WINS</acronym> 功能。" #. (itstool) path: sect3/title -#: book.translate.xml:56322 +#: book.translate.xml:56750 msgid "Security Settings" msgstr "安全性設定" #. (itstool) path: sect3/para -#: book.translate.xml:56324 +#: book.translate.xml:56752 msgid "" "The most important settings in <filename>/usr/local/etc/smb4.conf</filename> " "are the security model and the backend password format. These directives " @@ -82487,12 +83204,12 @@ msgstr "" "以及後端密碼格式,以下項目管控的選項有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:56331 +#: book.translate.xml:56759 msgid "<literal>security</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56334 +#: book.translate.xml:56762 msgid "" "The most common settings are <literal>security = share</literal> and " "<literal>security = user</literal>. If the clients use usernames that are " @@ -82506,7 +83223,7 @@ msgstr "" "端在存取共享資源前先登入。" #. (itstool) path: listitem/para -#: book.translate.xml:56343 +#: book.translate.xml:56771 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 " @@ -82518,22 +83235,22 @@ msgstr "" "性模式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:56352 +#: book.translate.xml:56780 msgid "<literal>passdb backend</literal>" msgstr "" #. (itstool) path: listitem/indexterm -#: book.translate.xml:56355 +#: book.translate.xml:56783 msgid "<primary>NIS+</primary>" msgstr "" #. (itstool) path: listitem/indexterm -#: book.translate.xml:56357 +#: book.translate.xml:56785 msgid "<primary>SQL database</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56359 +#: book.translate.xml:56787 msgid "" "<application>Samba</application> has several different backend " "authentication models. Clients may be authenticated with LDAP, NIS+, an SQL " @@ -82550,12 +83267,12 @@ msgstr "" "literal> 是舊版的預設值,現在已廢棄不使用。" #. (itstool) path: sect3/title -#: book.translate.xml:56376 +#: book.translate.xml:56804 msgid "<application>Samba</application> Users" msgstr "<application>Samba</application> 使用者" #. (itstool) path: sect3/para -#: book.translate.xml:56378 +#: book.translate.xml:56806 msgid "" "FreeBSD user accounts must be mapped to the <literal>SambaSAMAccount</" "literal> database for <trademark class=\"registered\">Windows</trademark> " @@ -82569,13 +83286,13 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>:" #. (itstool) path: sect3/screen -#: book.translate.xml:56384 +#: book.translate.xml:56812 #, no-wrap msgid "<prompt>#</prompt> <userinput>pdbedit -a <replaceable>username</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56386 +#: book.translate.xml:56814 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-" @@ -82587,12 +83304,12 @@ msgstr "" "用設定選項的額外資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:56394 +#: book.translate.xml:56822 msgid "Starting <application>Samba</application>" msgstr "啟動 <application>Samba</application>" #. (itstool) path: sect2/para -#: book.translate.xml:56396 +#: book.translate.xml:56824 msgid "" "To enable <application>Samba</application> at boot time, add the following " "line to <filename>/etc/rc.conf</filename>:" @@ -82601,18 +83318,18 @@ msgstr "" "rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56400 +#: book.translate.xml:56828 #, no-wrap msgid "samba_server_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56402 +#: book.translate.xml:56830 msgid "To start <application>Samba</application> now:" msgstr "要立即啟動 <application>Samba</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:56404 +#: book.translate.xml:56832 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service samba_server start</userinput>\n" @@ -82622,7 +83339,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56409 +#: book.translate.xml:56837 msgid "" "<application>Samba</application> consists of three separate daemons. Both " "the <application>nmbd</application> and <application>smbd</application> " @@ -82635,24 +83352,24 @@ msgstr "" "務則需額外設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56415 +#: book.translate.xml:56843 #, no-wrap msgid "winbindd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56417 +#: book.translate.xml:56845 msgid "<application>Samba</application> can be stopped at any time by typing:" msgstr "<application>Samba</application> 可以隨時停止,要停止可輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:56420 +#: book.translate.xml:56848 #, no-wrap msgid "<prompt>#</prompt> <userinput>service samba_server stop</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56422 +#: book.translate.xml:56850 msgid "" "<application>Samba</application> is a complex software suite with " "functionality that allows broad integration with <trademark class=" @@ -82668,17 +83385,17 @@ msgstr "" "samba.org</uri>。" #. (itstool) path: sect1/title -#: book.translate.xml:56442 +#: book.translate.xml:56870 msgid "Clock Synchronization with NTP" msgstr "NTP 時間校對" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56444 +#: book.translate.xml:56872 msgid "<primary>NTP</primary> <secondary>ntpd</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56448 +#: book.translate.xml:56876 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 " @@ -82692,41 +83409,20 @@ msgstr "" "間準確的方式。" #. (itstool) path: sect1/para -#: book.translate.xml:56455 +#: book.translate.xml:56883 msgid "" "FreeBSD includes <citerefentry><refentrytitle>ntpd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> which can be " -"configured to query other <acronym>NTP</acronym> servers in order to " -"synchronize the clock on that machine or to provide time services to other " -"computers in the network. The servers which are queried can be local to the " -"network or provided by an <acronym>ISP</acronym>. In addition, an <link " -"xlink:href=\"http://support.ntp.org/bin/view/Servers/WebHome\">online list " -"of publicly accessible <acronym>NTP</acronym> servers</link> is available. " -"When choosing a public <acronym>NTP</acronym> server, select one that is " -"geographically close and review its usage policy." -msgstr "" -"FreeBSD 內建 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> 可以設定來查詢其他 <acronym>NTP</acronym> 伺服器來" -"同步在該主機的時間或者提供時間服務給其他在網路上的電腦,查詢的伺服器可以為在" -"網路上的本地主機或者由 <acronym>ISP</acronym> 提供。除此之外也有 <link xlink:" -"href=\"http://support.ntp.org/bin/view/Servers/WebHome\">開放存取的 " -"<acronym>NTP</acronym> 伺服器線上清單</link>,當要使用開放的 <acronym>NTP</" -"acronym> 伺服器,請選擇地理位置較近的並檢查該服務的使用方針。" - -#. (itstool) path: sect1/para -#: book.translate.xml:56466 -msgid "" -"Choosing several <acronym>NTP</acronym> servers is recommended in case one " -"of the servers becomes unreachable or its clock proves unreliable. As " -"<application>ntpd</application> receives responses, it favors reliable " -"servers over the less reliable ones." +"configured to query other <acronym>NTP</acronym> servers to synchronize the " +"clock on that machine or to provide time services to other computers in the " +"network." msgstr "" -"建議選擇多個 <acronym>NTP</acronym> 伺服器,以避免萬一某一台伺服器無法連線," -"或者該伺服器的時間變的不可靠,當 <application>ntpd</application> 收到回應,會" -"自動先選擇可靠的伺服器。" +"FreeBSD 內含 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 可設定來查詢其他 <acronym>NTP</acronym> 伺服器來同" +"步電腦的時間或提供時間服務給其他在網路上的電腦。" #. (itstool) path: sect1/para -#: book.translate.xml:56472 +#: book.translate.xml:56888 msgid "" "This section describes how to configure <application>ntpd</application> on " "FreeBSD. Further documentation can be found in <filename>/usr/share/doc/ntp/" @@ -82736,200 +83432,430 @@ msgstr "" "說明文件可於 <filename>/usr/share/doc/ntp/</filename> 找到 HTML 格式的版本。" #. (itstool) path: sect2/title -#: book.translate.xml:56478 +#: book.translate.xml:56894 msgid "<acronym>NTP</acronym> Configuration" msgstr "<acronym>NTP</acronym> 設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56480 -msgid "<primary>NTP</primary> <secondary>ntp.conf</secondary>" -msgstr "" +#: book.translate.xml:56896 +msgid "<primary>NTP</primary>" +msgstr "<primary>NTP</primary>" #. (itstool) path: sect2/para -#: book.translate.xml:56484 +#: book.translate.xml:56898 msgid "" "On FreeBSD, the built-in <application>ntpd</application> can be used to " -"synchronize a system's clock. To enable <application>ntpd</application> at " -"boot time, add <literal>ntpd_enable=\"YES\"</literal> to <filename>/etc/rc." -"conf</filename>. Additional variables can be specified in <filename>/etc/rc." -"conf</filename>. Refer to <citerefentry><refentrytitle>rc.conf</" -"refentrytitle><manvolnum>5</manvolnum></citerefentry> and " -"<citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> for details." +"synchronize a system's clock. <application>Ntpd</application> is configured " +"using <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> variables and <filename>/etc/ntp.conf</filename>, " +"as detailed in the following sections." msgstr "" -"在 FreeBSD,內建的 <application>ntpd</application> 可用來同步系統的時間,要在" -"開機時開啟 <application>ntpd</application>,可加入 <literal>ntpd_enable=\"YES" -"\"</literal> 到 <filename>/etc/rc.conf</filename>,也可在 <filename>/etc/rc." -"conf</filename> 設定其他的變數,請參考 <citerefentry><refentrytitle>rc.conf</" -"refentrytitle><manvolnum>5</manvolnum></citerefentry> 與 " -"<citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> 來了解詳情。" +"在 FreeBSD,內建的 <application>ntpd</application> 可用來同步系統的時間," +"<application>Ntpd</application> 要使用 <citerefentry><refentrytitle>rc.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry> 中的變數以及下一節會詳" +"細說明的 <filename>/etc/ntp.conf</filename> 來設定。" #. (itstool) path: sect2/para -#: book.translate.xml:56493 +#: book.translate.xml:56904 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 " -"<filename>/etc/ntp.conf</filename>:" +"<application>Ntpd</application> communicates with its network peers using " +"UDP packets. Any firewalls between your machine and its NTP peers must be " +"configured to allow UDP packets in and out on port 123." +msgstr "" +"<application>Ntpd</application> 與網路中各節點的通訊採用 UDP 封包,在伺服器" +"與 NTP 各節點間的防火牆必須設定成可允許進/出埠 123 的 UDP 封包。" + +#. (itstool) path: sect3/title +#: book.translate.xml:56910 +msgid "The <filename>/etc/ntp.conf</filename> file" +msgstr "<filename>/etc/ntp.conf</filename> 檔" + +#. (itstool) path: sect3/indexterm +#: book.translate.xml:56912 +msgid "<primary>NTP</primary> <secondary>ntp.conf</secondary>" msgstr "" -"該應用程式會讀取 <filename>/etc/ntp.conf</filename> 來得知要查詢那一個 " -"<acronym>NTP</acronym> 伺服器,這裡有一個簡單的 <filename>/etc/ntp.conf</" -"filename> 範例:" + +#. (itstool) path: sect3/para +#: book.translate.xml:56916 +msgid "" +"<application>Ntpd</application> reads <filename>/etc/ntp.conf</filename> to " +"determine which <acronym>NTP</acronym> servers to query. Choosing several " +"<acronym>NTP</acronym> servers is recommended in case one of the servers " +"becomes unreachable or its clock proves unreliable. As <application>ntpd</" +"application> receives responses, it favors reliable servers over the less " +"reliable ones. The servers which are queried can be local to the network, " +"provided by an <acronym>ISP</acronym>, or selected from an <link xlink:href=" +"\"http://support.ntp.org/bin/view/Servers/WebHome\"> online list of publicly " +"accessible <acronym>NTP</acronym> servers</link>. When choosing a public " +"<acronym>NTP</acronym> server, select one that is geographically close and " +"review its usage policy. The <literal>pool</literal> configuration keyword " +"selects one or more servers from a pool of servers. An <link xlink:href=" +"\"http://support.ntp.org/bin/view/Servers/NTPPoolServers\"> online list of " +"publicly accessible <acronym>NTP</acronym> pools</link> is available, " +"organized by geographic area. In addition, FreeBSD provides a project-" +"sponsored pool, <literal>0.freebsd.pool.ntp.org</literal>." +msgstr "" +"<application>Ntpd</application> 會讀取 <filename>/etc/ntp.conf</filename> 來" +"得知要從那些 <acronym>NTP</acronym> 伺服器查詢時間,建議可設定多個 " +"<acronym>NTP</acronym> 伺服器,來避免萬一其中一個伺服器無法連線或是時間不可靠" +"的問題,當 <application>ntpd</application> 收到回應,它會偏好先採用較可信賴的" +"伺服器。查詢的伺服器可以是來自本地網路的 <acronym>ISP</acronym> 所提供,也可" +"從<link xlink:href=\"http://support.ntp.org/bin/view/Servers/WebHome\">線上可" +"公開存取的<acronym>NTP</acronym> 伺服器清單</link>中挑選,您可以選擇一個離您" +"地理位置較近的伺服器並閱讀它的使用規則。也有 <link xlink:href=\"http://" +"support.ntp.org/bin/view/Servers/NTPPoolServers\">可公開存取的 <acronym>NTP</" +"acronym> 池線上清單</link>可用,由一個地理區域所組織,除此之外 FreeBSD 提供了" +"計劃贊助的伺服器池,<literal>0.freebsd.pool.ntp.org</literal>。" #. (itstool) path: example/title -#: book.translate.xml:56499 +#: book.translate.xml:56938 msgid "Sample <filename>/etc/ntp.conf</filename>" msgstr "<filename>/etc/ntp.conf</filename> 範例" +#. (itstool) path: example/para +#: book.translate.xml:56939 +msgid "" +"This is a simple example of an <filename>ntp.conf</filename> file. It can " +"safely be used as-is; it contains the recommended <literal>restrict</" +"literal> options for operation on a publicly-accessible network connection." +msgstr "" +"這份簡單的 <filename>ntp.conf</filename> 範例檔可以放心的使用,其中包含了建議" +"的 <literal>restrict</literal> 選項可避免伺服器被公開存取。" + #. (itstool) path: example/programlisting -#: book.translate.xml:56501 +#: book.translate.xml:56943 #, no-wrap msgid "" -"server ntplocal.example.com prefer\n" -"server timeserver.example.org\n" -"server ntp2a.example.net\n" "\n" -"driftfile /var/db/ntp.drift" +"# Disallow ntpq control/query access. Allow peers to be added only\n" +"# based on pool and server statements in this file.\n" +"restrict default limited kod nomodify notrap noquery nopeer\n" +"restrict source limited kod nomodify notrap noquery\n" +"\n" +"# Allow unrestricted access from localhost for queries and control.\n" +"restrict 127.0.0.1\n" +"restrict ::1\n" +"\n" +"# Add a specific server.\n" +"server ntplocal.example.com iburst\n" +"\n" +"# Add FreeBSD pool servers until 3-6 good servers are available.\n" +"tos minclock 3 maxclock 6\n" +"pool 0.freebsd.pool.ntp.org iburst\n" +"\n" +"# Use a local leap-seconds file.\n" +"leapfile \"/var/db/ntpd.leap-seconds.list\"" msgstr "" -#. (itstool) path: sect2/para -#: book.translate.xml:56508 +#. (itstool) path: sect3/para +#: book.translate.xml:56963 msgid "" "The format of this file is described in <citerefentry><refentrytitle>ntp." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The " -"<literal>server</literal> option specifies which servers to query, with one " -"server listed on each line. If a server entry includes <literal>prefer</" -"literal>, that server is preferred over other servers. A response from a " -"preferred server will be discarded if it differs significantly from other " -"servers' responses; otherwise it will be used. The <literal>prefer</literal> " -"argument should only be used for <acronym>NTP</acronym> servers that are " -"known to be highly accurate, such as those with special time monitoring " -"hardware." +"descriptions below provide a quick overview of just the keywords used in the " +"sample file above." msgstr "" "這個檔案的格式在 <citerefentry><refentrytitle>ntp.conf</" -"refentrytitle><manvolnum>5</manvolnum></citerefentry> 有說明," -"<literal>server</literal> 選項設定了要查詢那一些伺服器,每一行列一個伺服器。" -"若伺服項目中含有 <literal>prefer</literal>,則會較偏好使用該伺服器。從偏好伺" -"服器收到的回應若明顯與他伺服器的回應差異過大則會被放棄,否則都會以偏好的伺服" -"器為主。<literal>prefer</literal> 參數只應用在已知高度準確的 <acronym>NTP</" -"acronym> 伺服器上,例如那些有特別在監控時間的硬體。" +"refentrytitle><manvolnum>5</manvolnum></citerefentry> 有詳細說明,以下的說明" +"僅快速的帶過以上範例檔有用到的一些關鍵字。" -#. (itstool) path: sect2/para -#: book.translate.xml:56520 +#. (itstool) path: sect3/para +#: book.translate.xml:56967 msgid "" -"The <literal>driftfile</literal> entry specifies which file is used to store " -"the system clock's frequency offset. <application>ntpd</application> uses " -"this to automatically compensate for the clock's natural drift, allowing it " -"to maintain a reasonably correct setting even if it is cut off from all " -"external time sources for a period of time. This file also stores " -"information about previous responses from <acronym>NTP</acronym> servers. " -"Since this file contains internal information for <acronym>NTP</acronym>, it " -"should not be modified." +"By default, an <acronym>NTP</acronym> server is accessible to any network " +"host. The <literal>restrict</literal> keyword controls which systems can " +"access the server. Multiple <literal>restrict</literal> entries are " +"supported, each one refining the restrictions given in previous statements. " +"The values shown in the example grant the local system full query and " +"control access, while allowing remote systems only the ability to query the " +"time. For more details, refer to the <literal>Access Control Support</" +"literal> subsection of <citerefentry><refentrytitle>ntp.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry>." msgstr "" -"<literal>driftfile</literal> 項目用來指定要使用那一個檔案儲存系統時間的頻率偏" -"移量,<application>ntpd</application> 會使用這個檔來自動補償時間的自然偏移," -"讓時間即始在切斷所有外部時間來源一段時間時仍能夠保持合理的設定值。這個檔案也" -"會儲存有關前次由 <acronym>NTP</acronym> 伺服器收到的回應,由於這個檔案包含供 " -"<acronym>NTP</acronym> 使用的內部資訊,所以不應手動修改。" +"預設 <acronym>NTP</acronym> 伺服器是可以被任何網路主機所存取," +"<literal>restrict</literal> 關鍵字可以控制有那些系統可以存取伺服器。" +"<literal>restrict</literal> 支援設定多項,每一項可再更進一步調整前面所做的設" +"定。範例中的設定授權本地系統有完整的查詢及控制權限,而遠端系統只有查詢時間的" +"權限。要了解更詳細的資訊請參考 <citerefentry><refentrytitle>ntp.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry> 中的 <literal>Access " +"Control Support</literal> 一節。" + +#. (itstool) path: sect3/para +#: book.translate.xml:56978 +msgid "" +"The <literal>server</literal> keyword specifies a single server to query. " +"The file can contain multiple server keywords, with one server listed on " +"each line. The <literal>pool</literal> keyword specifies a pool of servers. " +"<application>Ntpd</application> will add one or more servers from this pool " +"as needed to reach the number of peers specified using the <literal>tos " +"minclock</literal> value. The <literal>iburst</literal> keyword directs " +"<application>ntpd</application> to perform a burst of eight quick packet " +"exchanges with a server when contact is first established, to help quickly " +"synchronize system time." +msgstr "" +"<literal>server</literal> 關鍵字可指定要查詢的伺服器,設定檔中可以使用多個 " +"server 關鍵字,一個伺服器列一行。<literal>pool</literal> 關鍵字可指定伺服器" +"池,<application>Ntpd</application> 會加入該伺服器池中的一或多台伺服器,直到" +"數量滿足 <literal>tos minclock</literal> 的設定。<literal>iburst</literal> 關" +"鍵字會指示 <application>ntpd</application> 在建立連線時執行 8 連發快速封包交" +"換,可以更快的同步系統時間。" + +#. (itstool) path: sect3/para +#: book.translate.xml:56990 +msgid "" +"The <literal>leapfile</literal> keyword specifies the location of a file " +"containing information about leap seconds. The file is updated automatically " +"by <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry>. The file location specified by this keyword must " +"match the location set in the <literal>ntp_db_leapfile</literal> variable in " +"<filename>/etc/rc.conf</filename>." +msgstr "" +"<literal>leapfile</literal> 關鍵字用來指定含有閏秒 (Leap second) 資訊的檔案位" +"置,該檔案是由 <citerefentry><refentrytitle>periodic</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 自動更新。這個關鍵字指" +"定的檔案位置必須與 <filename>/etc/rc.conf</filename> 中設定的 " +"<literal>ntp_db_leapfile</literal> 相同。" -#. (itstool) path: sect2/para -#: book.translate.xml:56531 +#. (itstool) path: sect3/title +#: book.translate.xml:56999 +msgid "NTP entries in <filename>/etc/rc.conf</filename>" +msgstr "在 <filename>/etc/rc.conf</filename> 中的 NTP 設定項目" + +#. (itstool) path: sect3/indexterm +#: book.translate.xml:57001 +msgid "<primary>NTP</primary> <secondary>rc.conf</secondary>" +msgstr "<primary>NTP</primary> <secondary>rc.conf</secondary>" + +#. (itstool) path: sect3/para +#: book.translate.xml:57005 msgid "" -"By default, an <acronym>NTP</acronym> server is accessible to any network " -"host. The <literal>restrict</literal> option in <filename>/etc/ntp.conf</" -"filename> can be used to control which systems can access the server. For " -"example, to deny all machines from accessing the <acronym>NTP</acronym> " -"server, add the following line to <filename>/etc/ntp.conf</filename>:" +"Set <literal>ntpd_enable=YES</literal> to start <application>ntpd</" +"application> at boot time. Once <literal>ntpd_enable=YES</literal> has been " +"added to <filename>/etc/rc.conf</filename>, <application>ntpd</application> " +"can be started immediately without rebooting the system by typing:" msgstr "" -"預設,<acronym>NTP</acronym> 伺服器是開放給任何網路主機存取的,在 <filename>/" -"etc/ntp.conf</filename> 中的 <literal>restrict</literal> 選項可以用來控制那些" -"系統可以存取該伺服器。例如,要拒絕所有主機的存取,可加入下行到 <filename>/" -"etc/ntp.conf</filename>:" +"設定 <literal>ntpd_enable=\"YES\"</literal> 可讓開機時會啟動 " +"<application>ntpd</application>。將 <literal>ntpd_enable=YES</literal> 加到 " +"<filename>/etc/rc.conf</filename> 之後,可輸入以下指令讓 <application>ntpd</" +"application> 不需重新開機立即啟動:" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:56539 +#. (itstool) path: sect3/screen +#: book.translate.xml:57012 #, no-wrap -msgid "restrict default ignore" +msgid "<prompt>#</prompt> <userinput>service ntpd start</userinput>" msgstr "" -#. (itstool) path: note/para -#: book.translate.xml:56542 +#. (itstool) path: sect3/para +#: book.translate.xml:57014 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> " -"server, allow only that specific server. Refer to " -"<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> for more information." +"Only <literal>ntpd_enable</literal> must be set to use ntpd. The " +"<filename>rc.conf</filename> variables listed below may also be set as " +"needed." msgstr "" -"這將會避免其他 <acronym>NTP</acronym> 伺服器的存取,若有需要與一個外部 " -"<acronym>NTP</acronym> 伺服器同步,則可以只允許該伺服器。請參考 " -"<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> 來取得更多資訊。" +"要使用 ntpd 必須設定 <literal>ntpd_enable</literal>,以下所列的 <filename>rc." +"conf</filename> 變數可視所需請況設定。" -#. (itstool) path: sect2/para -#: book.translate.xml:56549 +#. (itstool) path: sect3/para +#: book.translate.xml:57018 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 " -"as peers to synchronize against, instead use:" +"Set <literal>ntpd_sync_on_start=YES</literal> to allow <application>ntpd</" +"application> to step the clock any amount, one time at startup. Normally " +"<application>ntpd</application> will log an error message and exit if the " +"clock is off by more than 1000 seconds. This option is especially useful on " +"systems without a battery-backed realtime clock." msgstr "" -"要允許在網路內的主機與伺服器同步時間,但要確保這些主機不允許設定伺服器或者被" -"這些主機當作同輩的主機相互同步,可改使用:" +"設定 <literal>ntpd_sync_on_start=YES</literal> 可讓 <application>ntpd</" +"application> 可以在系統啟動時一次同步任何差距的時間,正常情況若時鐘的差距超" +"過 1000 秒便會記錄錯誤並且中止。這個設定項目在沒有電池備援的時鐘上特別有用。" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:56554 -#, no-wrap -msgid "restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap" +#. (itstool) path: sect3/para +#: book.translate.xml:57025 +msgid "" +"Set <literal>ntpd_oomprotect=YES</literal> to protect the <application>ntpd</" +"application> daemon from being killed by the system attempting to recover " +"from an Out Of Memory (<acronym>OOM</acronym>) condition." msgstr "" +"設定 <literal>ntpd_oomprotect=YES</literal> 可保護 <application>ntpd</" +"application> daemon 被系統中止並嘗試從記憶體不足 (Out Of Memory, " +"<acronym>OOM</acronym>) 的情況恢復運作。" -#. (itstool) path: sect2/para -#: book.translate.xml:56556 +#. (itstool) path: sect3/para +#: book.translate.xml:57030 msgid "" -"where <systemitem class=\"ipaddress\">192.168.1.0</systemitem> is the local " -"network address and <systemitem class=\"netmask\">255.255.255.0</systemitem> " -"is the network's subnet mask." +"Set <literal>ntpd_config=</literal> to the location of an alternate " +"<filename>ntp.conf</filename> file." msgstr "" -"其中 <systemitem class=\"ipaddress\">192.168.1.0</systemitem> 是本地網路的位" -"址,而 <systemitem class=\"netmask\">255.255.255.0</systemitem> 是網路的子遮" -"罩。" +"設定 <literal>ntpd_config=</literal> 可更改 <filename>ntp.conf</filename> 檔" +"案的位置。" -#. (itstool) path: sect2/para -#: book.translate.xml:56560 +#. (itstool) path: listitem/para +#: book.translate.xml:57038 +msgid "<literal>-p</literal> (pid file location)" +msgstr "<literal>-p</literal> (pid 檔案位置)" + +#. (itstool) path: listitem/para +#: book.translate.xml:57040 +msgid "<literal>-c</literal> (set <literal>ntpd_config=</literal> instead)" +msgstr "<literal>-c</literal> (改用<literal>ntpd_config=</literal> 設定)" + +#. (itstool) path: sect3/para +#: book.translate.xml:57033 msgid "" -"Multiple <literal>restrict</literal> entries are supported. For more " -"details, refer to the <literal>Access Control Support</literal> subsection " -"of <citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry>." +"Set <literal>ntpd_flags=</literal> to contain any other <application>ntpd</" +"application> flags as needed, but avoid using these flags which are managed " +"internally by <filename>/etc/rc.d/ntpd</filename>: <_:itemizedlist-1/>" msgstr "" -"也支援多個 <literal>restrict</literal> 項目,要取得詳細的資料,請參考 " -"<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> 的 <literal>Access Control Support</literal> 子章" -"節。" +"設定 <literal>ntpd_flags=</literal> 可設定使用任何其他所需 " +"<application>ntpd</application> 參數,但要避免使用由 <filename>/etc/rc.d/" +"ntpd</filename> 內部控管的參數如下:<_:itemizedlist-1/>" -#. (itstool) path: sect2/para -#: book.translate.xml:56565 +#. (itstool) path: sect3/title +#: book.translate.xml:57047 msgid "" -"Once <literal>ntpd_enable=\"YES\"</literal> has been added to <filename>/etc/" -"rc.conf</filename>, <application>ntpd</application> can be started now " -"without rebooting the system by typing:" +"<application>Ntpd</application> and the unpriveleged <literal>ntpd</literal> " +"user" msgstr "" -"<literal>ntpd_enable=\"YES\"</literal> 加入到 <filename>/etc/rc.conf</" -"filename> 之後,<application>ntpd</application> 便可不需重新開機立即啟動,只" -"要輸入:" +"使用無特權的 <literal>ntpd</literal> 使用者執行 <application>Ntpd</" +"application>" -#. (itstool) path: sect2/screen -#: book.translate.xml:56570 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>service ntpd start</userinput>" +#. (itstool) path: sect3/para +#: book.translate.xml:57050 +msgid "" +"<application>Ntpd</application> on FreeBSD can start and run as an " +"unpriveleged user. Doing so requires the " +"<citerefentry><refentrytitle>mac_ntpd</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> policy module. The <filename>/etc/rc.d/ntpd</" +"filename> startup script first examines the NTP configuration. If possible, " +"it loads the <literal>mac_ntpd</literal> module, then starts " +"<application>ntpd</application> as unpriveleged user <literal>ntpd</literal> " +"(user id 123). To avoid problems with file and directory access, the startup " +"script will not automatically start <application>ntpd</application> as " +"<literal>ntpd</literal> when the configuration contains any file-related " +"options." msgstr "" +"在 FreeBSD 上的 <application>Ntpd</application> 現在可以使用無特權的使用者啟" +"動並執行,要達到這個功能需要 <citerefentry><refentrytitle>mac_ntpd</" +"refentrytitle><manvolnum>4</manvolnum></citerefentry> 規則模組。<filename>/" +"etc/rc.d/ntpd</filename> 啟動 Script 會先檢查 NTP 的設定,若可以的話它會載入 " +"<literal>mac_ntpd</literal> 模組,然後以無特權的使用者 <literal>ntpd</" +"literal> (user id 123) 來啟動 <application>ntpd</application>。為了避免檔案與" +"目錄存取權限的問題,當設定中有任何檔案相關的選項時,啟動 Script 不會自動以 " +"<literal>ntpd</literal> 身份啟動 <application>ntpd</application>。" + +#. (itstool) path: listitem/para +#: book.translate.xml:57067 +msgid "-f or --driftfile" +msgstr "-f 或 --driftfile" + +#. (itstool) path: listitem/para +#: book.translate.xml:57068 +msgid "-i or --jaildir" +msgstr "-i 或 --jaildir" + +#. (itstool) path: listitem/para +#: book.translate.xml:57069 +msgid "-k or --keyfile" +msgstr "-k 或 --keyfile" + +#. (itstool) path: listitem/para +#: book.translate.xml:57070 +msgid "-l or --logfile" +msgstr "-l 或 --logfile" + +#. (itstool) path: listitem/para +#: book.translate.xml:57071 +msgid "-s or --statsdir" +msgstr "-s 或 --statsdir" + +#. (itstool) path: sect3/para +#: book.translate.xml:57063 +msgid "" +"The presence of any of the following in <literal>ntpd_flags</literal> " +"requires manual configuration as described below to run as the " +"<literal>ntpd</literal> user: <_:itemizedlist-1/>" +msgstr "" +"在 <literal>ntpd_flags</literal> 若出現以下任何參數則需要以最下面的方式手動設" +"定才能以 <literal>ntpd</literal> 使用者的身份執行:<_:itemizedlist-1/>" + +#. (itstool) path: listitem/para +#: book.translate.xml:57078 +msgid "crypto" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:57079 +msgid "driftfile" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:57080 +msgid "key" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:57081 +msgid "logdir" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:57082 +msgid "statsdir" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:57074 +msgid "" +"The presence of any of the following keywords in <filename>ntp.conf</" +"filename> requires manual configuration as described below to run as the " +"<literal>ntpd</literal> user: <_:itemizedlist-1/>" +msgstr "" +"在 <filename>ntp.conf</filename> 若出現以下任何關鍵字則需要以最下面的方式手動" +"設定才能以 <literal>ntpd</literal> 使用者的身份執行:<_:itemizedlist-1/>" + +#. (itstool) path: listitem/para +#: book.translate.xml:57088 +msgid "" +"Ensure that the <literal>ntpd</literal> user has access to all the files and " +"directories specified in the configuration." +msgstr "" +"確保 <literal>ntpd</literal> 使用者有權限存取所有在設定檔中指定的檔案與目錄。" + +#. (itstool) path: listitem/para +#: book.translate.xml:57091 +msgid "" +"Arrange for the <literal>mac_ntpd</literal> module to be loaded or compiled " +"into the kernel. See <citerefentry><refentrytitle>mac_ntpd</" +"refentrytitle><manvolnum>4</manvolnum></citerefentry> for details." +msgstr "" +"讓 <literal>mac_ntpd</literal> 模組載入或編譯至核心,請參考 " +"<citerefentry><refentrytitle>mac_ntpd</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> 取得詳細資訊。" + +#. (itstool) path: listitem/para +#: book.translate.xml:57094 +msgid "" +"Set <literal>ntpd_user=\"ntpd\"</literal> in <filename>/etc/rc.conf</" +"filename>" +msgstr "" +"在 <filename>/etc/rc.conf</filename> 中設定 <literal>ntpd_user=\"ntpd\"</" +"literal>" + +#. (itstool) path: sect3/para +#: book.translate.xml:57085 +msgid "" +"To manually configure <application>ntpd</application> to run as user " +"<literal>ntpd</literal> you must: <_:itemizedlist-1/>" +msgstr "" +"要手動設定以使用者 <literal>ntpd</literal> 身份執行 <application>ntpd</" +"application> 你必須:<_:itemizedlist-1/>" #. (itstool) path: sect2/title -#: book.translate.xml:56574 +#: book.translate.xml:57101 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:56577 +#: book.translate.xml:57104 msgid "" "<application>ntpd</application> does not need a permanent connection to the " "Internet to function properly. However, if a <acronym>PPP</acronym> " @@ -82941,24 +83867,24 @@ msgstr "" "<application>ntpd</application> 並不需要永久的網際網路連線才能正常運作,若有" "一個 <acronym>PPP</acronym> 連線是設定成需要時撥號,那麼便需要避免 " "<acronym>NTP</acronym> 的流量觸發撥號或是保持連線不中斷,這可在 <filename>/" -"etc/ppp/ppp.conf</filename> 使用 <literal>filter</literal> 項目設定,例如: " +"etc/ppp/ppp.conf</filename> 使用 <literal>filter</literal> 項目設定,例如:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56586 +#: book.translate.xml:57113 #, no-wrap msgid "" -" set filter dial 0 deny udp src eq 123\n" -" # Prevent NTP traffic from initiating dial out\n" -" set filter dial 1 permit 0 0\n" -" set filter alive 0 deny udp src eq 123\n" -" # Prevent incoming NTP traffic from keeping the connection open\n" -" set filter alive 1 deny udp dst eq 123\n" -" # Prevent outgoing NTP traffic from keeping the connection open\n" -" set filter alive 2 permit 0/0 0/0" +"set filter dial 0 deny udp src eq 123\n" +"# Prevent NTP traffic from initiating dial out\n" +"set filter dial 1 permit 0 0\n" +"set filter alive 0 deny udp src eq 123\n" +"# Prevent incoming NTP traffic from keeping the connection open\n" +"set filter alive 1 deny udp dst eq 123\n" +"# Prevent outgoing NTP traffic from keeping the connection open\n" +"set filter alive 2 permit 0/0 0/0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56595 +#: book.translate.xml:57122 msgid "" "For more details, refer to the <literal>PACKET FILTERING</literal> section " "in <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -82971,7 +83897,7 @@ msgstr "" "中的範例。" #. (itstool) path: note/para -#: book.translate.xml:56601 +#: book.translate.xml:57128 msgid "" "Some Internet access providers block low-numbered ports, preventing NTP from " "functioning since replies never reach the machine." @@ -82980,12 +83906,12 @@ msgstr "" "到傳送到該主機。" #. (itstool) path: sect1/title -#: book.translate.xml:56620 +#: book.translate.xml:57147 msgid "<acronym>iSCSI</acronym> Initiator and Target Configuration" msgstr "<acronym>iSCSI</acronym> Initiator 與 Target 設定" #. (itstool) path: sect1/para -#: book.translate.xml:56623 +#: book.translate.xml:57150 msgid "" "<acronym>iSCSI</acronym> is a way to share storage over a network. Unlike " "<acronym>NFS</acronym>, which works at the file system level, " @@ -82993,7 +83919,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56628 +#: book.translate.xml:57155 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 " @@ -83003,7 +83929,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56636 +#: book.translate.xml:57163 msgid "" "The clients which access the <acronym>iSCSI</acronym> storage are called " "<emphasis>initiators</emphasis>. To initiators, the storage available " @@ -83013,7 +83939,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56644 +#: book.translate.xml:57171 msgid "" "FreeBSD provides a native, kernel-based <acronym>iSCSI</acronym> target and " "initiator. This section describes how to configure a FreeBSD system as a " @@ -83021,12 +83947,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:56650 +#: book.translate.xml:57177 msgid "Configuring an <acronym>iSCSI</acronym> Target" msgstr "設定 <acronym>iSCSI</acronym> Target" #. (itstool) path: sect2/para -#: book.translate.xml:56652 +#: book.translate.xml:57179 msgid "" "To configure an <acronym>iSCSI</acronym> target, create the <filename>/etc/" "ctl.conf</filename> configuration file, add a line to <filename>/etc/rc." @@ -83036,7 +83962,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56658 +#: book.translate.xml:57185 msgid "" "The following is an example of a simple <filename>/etc/ctl.conf</filename> " "configuration file. Refer to <citerefentry><refentrytitle>ctl.conf</" @@ -83045,7 +83971,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56663 +#: book.translate.xml:57190 #, no-wrap msgid "" "portal-group pg0 {\n" @@ -83066,7 +83992,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56679 +#: book.translate.xml:57206 msgid "" "The first entry defines the <literal>pg0</literal> portal group. Portal " "groups define which network addresses the <citerefentry><refentrytitle>ctld</" @@ -83081,7 +84007,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56691 +#: book.translate.xml:57218 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 " @@ -83091,7 +84017,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56699 +#: book.translate.xml:57226 msgid "" "The second entry defines a single target. Target has two possible meanings: " "a machine serving <acronym>iSCSI</acronym> or a named group of " @@ -83105,7 +84031,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56712 +#: book.translate.xml:57239 msgid "" "The <literal>auth-group no-authentication</literal> line allows all " "initiators to connect to the specified target and <literal>portal-group pg0</" @@ -83114,7 +84040,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56717 +#: book.translate.xml:57244 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 " @@ -83128,7 +84054,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56728 +#: book.translate.xml:57255 msgid "" "Next, to make sure the <citerefentry><refentrytitle>ctld</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon is started at " @@ -83136,7 +84062,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56738 +#: book.translate.xml:57265 msgid "" "As the <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is started, it reads <filename>/etc/ctl." @@ -83146,12 +84072,12 @@ msgstr "" #. (itstool) path: sect3/title #. (itstool) path: sect5/title -#: book.translate.xml:56746 book.translate.xml:61713 +#: book.translate.xml:57273 book.translate.xml:62768 msgid "Authentication" msgstr "認證" #. (itstool) path: sect3/para -#: book.translate.xml:56748 +#: book.translate.xml:57275 msgid "" "The previous example is inherently insecure as it uses no authentication, " "granting anyone full access to all targets. To require a username and " @@ -83159,7 +84085,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56753 +#: book.translate.xml:57280 #, no-wrap msgid "" "auth-group ag0 {\n" @@ -83184,7 +84110,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56773 +#: book.translate.xml:57300 msgid "" "The <literal>auth-group</literal> section defines username and password " "pairs. An initiator trying to connect to <literal>iqn.2012-06.com.example:" @@ -83196,7 +84122,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56783 +#: book.translate.xml:57310 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 " @@ -83204,7 +84130,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56788 +#: book.translate.xml:57315 #, no-wrap msgid "" "target iqn.2012-06.com.example:target0 {\n" @@ -83219,12 +84145,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:56801 +#: book.translate.xml:57328 msgid "Configuring an <acronym>iSCSI</acronym> Initiator" msgstr "設定 <acronym>iSCSI</acronym> Initiator" #. (itstool) path: note/para -#: book.translate.xml:56804 +#: book.translate.xml:57331 msgid "" "The <acronym>iSCSI</acronym> initiator described in this section is " "supported starting with FreeBSD 10.0-RELEASE. To use the <acronym>iSCSI</" @@ -83234,7 +84160,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56810 +#: book.translate.xml:57337 msgid "" "The <acronym>iSCSI</acronym> initiator requires that the " "<citerefentry><refentrytitle>iscsid</refentrytitle><manvolnum>8</manvolnum></" @@ -83244,26 +84170,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56815 +#: book.translate.xml:57342 #, no-wrap msgid "iscsid_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56817 +#: book.translate.xml:57344 msgid "" "To start <citerefentry><refentrytitle>iscsid</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> now, run this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:56819 +#: book.translate.xml:57346 #, no-wrap msgid "<prompt>#</prompt> <userinput>service iscsid start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56821 +#: book.translate.xml:57348 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 " @@ -83271,32 +84197,32 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56826 +#: book.translate.xml:57353 msgid "Connecting to a Target Without a Configuration File" -msgstr "不使用設定檔連線到 Target " +msgstr "不使用設定檔連線到 Target" #. (itstool) path: sect3/para -#: book.translate.xml:56829 +#: book.translate.xml:57356 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:56833 +#: book.translate.xml:57360 #, 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:56835 +#: book.translate.xml:57362 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:56839 +#: book.translate.xml:57366 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83304,7 +84230,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56842 +#: book.translate.xml:57369 msgid "" "In this example, the <acronym>iSCSI</acronym> session was successfully " "established, with <filename>/dev/da0</filename> representing the attached " @@ -83314,13 +84240,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:56851 +#: book.translate.xml:57378 #, no-wrap msgid "Connected: da0 da1 da2." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56853 +#: book.translate.xml:57380 msgid "" "Any errors will be reported in the output, as well as the system logs. For " "example, this message usually means that the " @@ -83329,7 +84255,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56857 +#: book.translate.xml:57384 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83337,14 +84263,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56860 +#: book.translate.xml:57387 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:56864 +#: book.translate.xml:57391 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83352,12 +84278,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56867 +#: book.translate.xml:57394 msgid "This message means that the specified target name is wrong:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56870 +#: book.translate.xml:57397 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83365,12 +84291,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56873 +#: book.translate.xml:57400 msgid "This message means that the target requires authentication:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56876 +#: book.translate.xml:57403 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83378,31 +84304,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56879 +#: book.translate.xml:57406 msgid "" "To specify a <acronym>CHAP</acronym> username and secret, use this syntax:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:56882 +#: book.translate.xml:57409 #, 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:56886 +#: book.translate.xml:57413 msgid "Connecting to a Target with a Configuration File" -msgstr "使用設定檔連線到 Target " +msgstr "使用設定檔連線到 Target" #. (itstool) path: sect3/para -#: book.translate.xml:56889 +#: book.translate.xml:57416 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:56893 +#: book.translate.xml:57420 #, no-wrap msgid "" "t0 {\n" @@ -83415,7 +84341,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56901 +#: book.translate.xml:57428 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 " @@ -83426,31 +84352,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56911 +#: book.translate.xml:57438 msgid "To connect to the defined target, specify the nickname:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:56914 +#: book.translate.xml:57441 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -An <replaceable>t0</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56916 +#: book.translate.xml:57443 msgid "" "Alternately, to connect to all targets defined in the configuration file, " "use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:56919 +#: book.translate.xml:57446 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -Aa</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56921 +#: book.translate.xml:57448 msgid "" "To make the initiator automatically connect to all targets in <filename>/etc/" "iscsi.conf</filename>, add the following to <filename>/etc/rc.conf</" @@ -83458,7 +84384,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:56925 +#: book.translate.xml:57452 #, no-wrap msgid "" "iscsictl_enable=\"YES\"\n" @@ -83466,19 +84392,19 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:56956 +#: book.translate.xml:57483 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:56968 +#: book.translate.xml:57495 msgid "<primary>security</primary> <secondary>firewalls</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56977 +#: book.translate.xml:57504 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</" @@ -83495,14 +84421,14 @@ msgstr "" "(Port)。" #. (itstool) path: sect1/para -#: book.translate.xml:56986 +#: book.translate.xml:57513 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:56991 +#: book.translate.xml:57518 msgid "" "Protect and insulate the applications, services, and machines of an internal " "network from unwanted traffic from the public Internet." @@ -83510,14 +84436,14 @@ msgstr "" "保護並隔離內部網路的應用程式、服務與主機,避免來自網際網路不必要的存取。" #. (itstool) path: listitem/para -#: book.translate.xml:56997 +#: book.translate.xml:57524 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:57002 +#: book.translate.xml:57529 msgid "" "Support network address translation (<acronym>NAT</acronym>), which allows " "an internal network to use private <acronym>IP</acronym> addresses and share " @@ -83530,7 +84456,7 @@ msgstr "" "<acronym>IP</acronym> 位址連到網際網路或者自動分配一個共用池當中的公開位址。" #. (itstool) path: sect1/para -#: book.translate.xml:57011 +#: book.translate.xml:57538 msgid "" "FreeBSD has three firewalls built into the base system: <application>PF</" "application>, <application>IPFW</application>, and <application>IPFILTER</" @@ -83557,7 +84483,7 @@ msgstr "" "往 FreeBSD 的封包,儘管它們用不同的方式運作且有不同的規則語法。" #. (itstool) path: sect1/para -#: book.translate.xml:57025 +#: book.translate.xml:57552 msgid "" "FreeBSD provides multiple firewalls in order to meet the different " "requirements and preferences for a wide variety of users. Each user should " @@ -83567,59 +84493,58 @@ msgstr "" "估那一種防火牆最能滿足其需求。" #. (itstool) path: listitem/para -#: book.translate.xml:57034 +#: book.translate.xml:57561 msgid "How to define packet filtering rules." msgstr "如何定義封包過濾規則。" #. (itstool) path: listitem/para -#: book.translate.xml:57038 +#: book.translate.xml:57565 msgid "The differences between the firewalls built into FreeBSD." msgstr "FreeBSD 內建防火牆之間的差異。" #. (itstool) path: listitem/para -#: book.translate.xml:57043 +#: book.translate.xml:57570 msgid "How to use and configure the <application>PF</application> firewall." msgstr "如何使用與設定 <application>PF</application> 防火牆。" #. (itstool) path: listitem/para -#: book.translate.xml:57048 +#: book.translate.xml:57575 msgid "How to use and configure the <application>IPFW</application> firewall." msgstr "如何使用與設定 <application>IPFW</application> 防火牆。" #. (itstool) path: listitem/para -#: book.translate.xml:57053 +#: book.translate.xml:57580 msgid "" "How to use and configure the <application>IPFILTER</application> firewall." msgstr "如何使用與設定 <application>IPFILTER</application> 防火牆。" #. (itstool) path: note/para -#: book.translate.xml:57067 +#: book.translate.xml:57594 msgid "" "Since all firewalls are based on inspecting the values of selected packet " "control fields, the creator of the firewall ruleset must have an " "understanding of how <acronym>TCP/IP</acronym> works, what the different " "values in the packet control fields are, and how these values are used in a " "normal session conversation. For a good introduction, refer to <link xlink:" -"href=\"http://www.ipprimer.com/overview.cfm\">Daryl's TCP/IP Primer</link>." +"href=\"http://www.ipprimer.com\">Daryl's TCP/IP Primer</link>." msgstr "" "由於所有防火牆均是以監控所選封包的控制欄位值為基礎運作,所以防火牆規則集的建" "立者必須很明白 <acronym>TCP/IP</acronym> 是如何運作的,在封包的控制欄位中會有" "那些數值,這些數值會被如何用在一般的連線階段,要了解更多相關資訊,可參考 " -"<link xlink:href=\"http://www.ipprimer.com/overview.cfm\">Daryl's TCP/IP " -"Primer</link>。" +"<link xlink:href=\"http://www.ipprimer.com\">Daryl's TCP/IP Primer</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:57079 +#: book.translate.xml:57606 msgid "Firewall Concepts" msgstr "防火牆概念" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57081 +#: book.translate.xml:57608 msgid "<primary>firewall</primary> <secondary>rulesets</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57087 +#: book.translate.xml:57614 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 " @@ -83640,7 +84565,7 @@ msgstr "" "當做建立規則的篩選條件,來允許或封鎖服務。" #. (itstool) path: sect1/para -#: book.translate.xml:57100 +#: book.translate.xml:57627 msgid "" "To lookup unknown port numbers, refer to <filename>/etc/services</filename>. " "Alternatively, visit <uri xlink:href=\"http://en.wikipedia.org/wiki/" @@ -83654,18 +84579,18 @@ msgstr "" "List_of_TCP_and_UDP_port_numbers</uri> 查詢埠號來找出特定埠號的用途。" #. (itstool) path: sect1/para -#: book.translate.xml:57105 +#: book.translate.xml:57632 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." -"sans.org/security-resources/idfaq/oddports.php</uri>." +"Check out this link for <uri xlink:href=\"http://web.archive.org/" +"web/20150803024617/http://www.sans.org/security-resources/idfaq/oddports.php" +"\">port numbers used by Trojans</uri>." msgstr "" -"查看這個連結來了解有那些埠號會被木馬程式使用 <uri xlink:href=\"http://www." -"sans.org/security-resources/idfaq/oddports.php\">http://www.sans.org/" -"security-resources/idfaq/oddports.php</uri>。" +"查看這個連結來了解有 <uri xlink:href=\"http://web.archive.org/" +"web/20150803024617/http://www.sans.org/security-resources/idfaq/oddports.php" +"\">那些埠號會被木馬程式使用</uri>。" #. (itstool) path: sect1/para -#: book.translate.xml:57107 +#: book.translate.xml:57634 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 " @@ -83679,7 +84604,7 @@ msgstr "" "com/other/ftp.html\">http://www.slacksite.com/other/ftp.html</uri>。" #. (itstool) path: sect1/para -#: book.translate.xml:57113 +#: book.translate.xml:57640 msgid "" "A firewall ruleset can be either <quote>exclusive</quote> or " "<quote>inclusive</quote>. An exclusive firewall allows all traffic through " @@ -83693,7 +84618,7 @@ msgstr "" "線。" #. (itstool) path: sect1/para -#: book.translate.xml:57120 +#: book.translate.xml:57647 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. " @@ -83709,14 +84634,14 @@ msgstr "" "火牆可以明顯的減少不必要連線所造成風險。" #. (itstool) path: note/para -#: book.translate.xml:57131 +#: book.translate.xml:57658 msgid "" "Unless noted otherwise, all configuration and example rulesets in this " "chapter create inclusive firewall rulesets." msgstr "除非另有說明,否則所有在此章節的範例規則集均為內含式防火牆規則集。" #. (itstool) path: sect1/para -#: book.translate.xml:57136 +#: book.translate.xml:57663 msgid "" "Security can be tightened further using a <quote>stateful firewall</quote>. " "This type of firewall keeps track of open connections and only allows " @@ -83728,7 +84653,7 @@ msgstr "" "連線通過。" #. (itstool) path: sect1/para -#: book.translate.xml:57141 +#: book.translate.xml:57668 msgid "" "Stateful filtering treats traffic as a bi-directional exchange of packets " "comprising a session. When state is specified on a matching rule the " @@ -83743,12 +84668,12 @@ msgstr "" "同一個連線階段的封包,任何不符合連線階段樣板的封包都會被自動拒絕。" #. (itstool) path: sect1/para -#: book.translate.xml:57150 +#: book.translate.xml:57677 msgid "When the session completes, it is removed from the dynamic state table." msgstr "當連線階段結束時,該規則將會動態狀態表 (Dynamic state table) 中移除。" #. (itstool) path: sect1/para -#: book.translate.xml:57153 +#: book.translate.xml:57680 msgid "" "Stateful filtering allows one to focus on blocking/passing new sessions. If " "the new session is passed, all its subsequent packets are allowed " @@ -83763,7 +84688,7 @@ msgstr "" "的比對能力,能夠抵禦不同種類由攻擊者發動的 flood 攻擊。" #. (itstool) path: sect1/para -#: book.translate.xml:57161 +#: book.translate.xml:57688 msgid "" "<acronym>NAT</acronym> stands for <emphasis>Network Address Translation</" "emphasis>. <acronym>NAT</acronym> function enables the private LAN behind " @@ -83778,7 +84703,7 @@ msgstr "" "線網際網路,而不需要支付 ISP 多個網路帳號或 IP 位址的額外費用。" #. (itstool) path: sect1/para -#: book.translate.xml:57169 +#: book.translate.xml:57696 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 " @@ -83790,7 +84715,7 @@ msgstr "" "轉譯。" #. (itstool) path: sect1/para -#: book.translate.xml:57175 +#: book.translate.xml:57702 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, " @@ -83800,22 +84725,22 @@ msgstr "" "網路,因此可供 NAT 使用:" #. (itstool) path: listitem/para -#: book.translate.xml:57182 +#: book.translate.xml:57709 msgid "<literal>10.0.0.0/8</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57186 +#: book.translate.xml:57713 msgid "<literal>172.16.0.0/12</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57190 +#: book.translate.xml:57717 msgid "<literal>192.168.0.0/16</literal>." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:57195 +#: book.translate.xml:57722 msgid "" "When working with the firewall rules, be <emphasis>very careful</emphasis>. " "Some configurations <emphasis>can lock the administrator out</emphasis> of " @@ -83828,24 +84753,24 @@ msgstr "" "牆設定,不要直接由遠端透過 <application>ssh</application> 來設定防火牆。" #. (itstool) path: info/title -#: book.translate.xml:57206 +#: book.translate.xml:57733 msgid "PF" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:57209 +#: book.translate.xml:57736 msgid "" "<personname> <firstname>John</firstname> <surname>Ferrell</surname> </" "personname> <contrib>Revised and updated by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57219 +#: book.translate.xml:57746 msgid "<primary>firewall</primary> <secondary>PF</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57225 +#: book.translate.xml:57752 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 " @@ -83859,7 +84784,7 @@ msgstr "" "的支援來提供 Quality of Service (<acronym>QoS</acronym>) 機制。" #. (itstool) path: sect1/para -#: book.translate.xml:57233 +#: book.translate.xml:57760 msgid "" "The OpenBSD Project maintains the definitive reference for <application>PF</" "application> in the <link xlink:href=\"http://www.openbsd.org/faq/pf/\">PF " @@ -83873,17 +84798,20 @@ msgstr "" "\">http://home.nuug.no/~peter/pf/</link>。" #. (itstool) path: warning/para -#: book.translate.xml:57239 +#: book.translate.xml:57766 +#, fuzzy 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</" -"application> as OpenBSD 4.5." +"link>, keep in mind that FreeBSD's version of <application>PF</application> " +"has diverged substantially from the upstream OpenBSD version over the years. " +"Not all features work the same way on FreeBSD as they do in OpenBSD and vice " +"versa." msgstr "" "在閱讀 <link xlink:href=\"http://www.openbsd.org/faq/pf/\">PF FAQ</link> 時," "要注意 FreeBSD 採用與 OpenBSD 4.5 相同版本的 <application>PF</application>。" #. (itstool) path: sect1/para -#: book.translate.xml:57244 +#: book.translate.xml:57774 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 " @@ -83897,22 +84825,12 @@ msgstr "" "您的問題可能已有解答。" #. (itstool) path: sect1/para -#: book.translate.xml:57249 -msgid "" -"More information about porting <application>PF</application> to FreeBSD can " -"be found at <uri xlink:href=\"http://pf4freebsd.love2party.net/\">http://" -"pf4freebsd.love2party.net/</uri>." -msgstr "" -"更多有關移植 <application>PF</application> 到 FreeBSD 的資訊可至 <uri xlink:" -"href=\"http://pf4freebsd.love2party.net/\">http://pf4freebsd.love2party.net/" -"</uri> 取得。" - -#. (itstool) path: sect1/para -#: book.translate.xml:57252 +#: book.translate.xml:57779 +#, fuzzy msgid "" "This section of the Handbook focuses on <application>PF</application> as it " "pertains to FreeBSD. It demonstrates how to enable <application>PF</" -"application> and <application>ALTQ</application>. It then provides several " +"application> and <application>ALTQ</application>. It also provides several " "examples for creating rulesets on a FreeBSD system." msgstr "" "由於 FreeBSD 也支援 <application>PF</application> 因此操作手冊特別在此章節對" @@ -83921,89 +84839,99 @@ msgstr "" "子。" #. (itstool) path: sect2/title -#: book.translate.xml:57259 +#: book.translate.xml:57786 msgid "Enabling <application>PF</application>" msgstr "開啟 <application>PF</application>" #. (itstool) path: sect2/para -#: book.translate.xml:57261 +#: book.translate.xml:57788 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 " -"<filename>/etc/rc.conf</filename> in order to enable <application>PF</" -"application>." +"To use <application>PF</application>, its kernel module must be first " +"loaded. This section describes the entries that can be added to <filename>/" +"etc/rc.conf</filename> to enable <application>PF</application>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57266 +#: book.translate.xml:57793 msgid "" -"Start by adding the following line to <filename>/etc/rc.conf</filename>:" +"Start by adding <literal>pf_enable=yes</literal> to <filename>/etc/rc.conf</" +"filename>:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:57269 +#. (itstool) path: sect2/screen +#: book.translate.xml:57796 #, no-wrap -msgid "pf_enable=\"YES\"" +msgid "<prompt>#</prompt> <userinput>sysrc pf_enable=yes</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57271 +#: book.translate.xml:57798 +#, fuzzy msgid "" "Additional options, described in <citerefentry><refentrytitle>pfctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, can be passed to " -"<application>PF</application> when it is started. Add this entry to " -"<filename>/etc/rc.conf</filename> and specify any required flags between the " -"two quotes (<literal>\"\"</literal>):" +"<application>PF</application> when it is started. Add or change this entry " +"in <filename>/etc/rc.conf</filename> and specify any required flags between " +"the two quotes (<literal>\"\"</literal>):" msgstr "" +"當 <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> Daemon 啟動後,它會讀取 <filename>/etc/ctl.conf</" +"filename>,若這個檔案在 Daemon 啟動之後才做修改,要重新載入變更的內容才能立即" +"生效:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57277 +#: book.translate.xml:57804 #, no-wrap msgid "pf_flags=\"\" # additional flags for pfctl startup" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57279 +#: book.translate.xml:57806 msgid "" "<application>PF</application> will not start if it cannot find its ruleset " -"configuration file. The default ruleset is already created and is named " -"<filename>/etc/pf.conf</filename>. If a custom ruleset has been saved " -"somewhere else, add a line to <filename>/etc/rc.conf</filename> which " -"specifies the full path to the file:" +"configuration file. By default, FreeBSD does not ship with a ruleset and " +"there is no <filename>/etc/pf.conf</filename>. Example rulesets can be found " +"in <filename>/usr/share/examples/pf/</filename>. If a custom ruleset has " +"been saved somewhere else, add a line to <filename>/etc/rc.conf</filename> " +"which specifies the full path to the file:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57287 +#: book.translate.xml:57815 #, no-wrap msgid "pf_rules=\"<replaceable>/path/to/pf.conf</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57289 +#: book.translate.xml:57817 msgid "" "Logging support for <application>PF</application> is provided by " "<citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></" -"citerefentry>. To enable logging support, add this line to <filename>/etc/rc." -"conf</filename>:" +"citerefentry>. To enable logging support, add <literal>pflog_enable=yes</" +"literal> to <filename>/etc/rc.conf</filename>:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:57293 +#. (itstool) path: sect2/screen +#: book.translate.xml:57822 #, no-wrap -msgid "pflog_enable=\"YES\"" +msgid "<prompt>#</prompt> <userinput>sysrc pflog_enable=yes</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57295 +#: book.translate.xml:57824 +#, fuzzy 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 " +"The following lines can also be added to change the default location of the " +"log file or to specify any additional flags to pass to " "<citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></" "citerefentry> when it is started:" msgstr "" +"以下關鍵字可能會在每個啟動 Script 的上方引用,雖然非必要,但是對於 " +"<citerefentry><refentrytitle>rcorder</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 是非常有用的提示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57300 +#: book.translate.xml:57828 #, no-wrap msgid "" "pflog_logfile=\"/var/log/pflog\" # where pflogd should store the logfile\n" @@ -84011,28 +84939,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57303 +#: book.translate.xml:57831 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</" -"acronym>, or <acronym>NAT</acronym> is required, add the following option:" +"acronym>, or <acronym>NAT</acronym> is required, enable the following option:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57308 +#: book.translate.xml:57836 #, no-wrap msgid "gateway_enable=\"YES\" # Enable as LAN gateway" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57310 +#: book.translate.xml:57838 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:57314 +#: book.translate.xml:57842 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service pf start</userinput>\n" @@ -84040,7 +84968,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57368 +#: book.translate.xml:57896 msgid "" "By default, <application>PF</application> reads its configuration rules from " "<filename>/etc/pf.conf</filename> and modifies, drops, or passes packets " @@ -84052,7 +84980,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57378 +#: book.translate.xml:57906 msgid "" "To control <application>PF</application>, use <command>pfctl</command>. " "<xref linkend=\"pfctl\"/> summarizes some useful options to this command. " @@ -84061,71 +84989,71 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:57384 +#: book.translate.xml:57912 msgid "Useful <command>pfctl</command> Options" msgstr "有用的 <command>pfctl</command> 選項" #. (itstool) path: row/entry -#: book.translate.xml:57390 book.translate.xml:60922 book.translate.xml:65535 +#: book.translate.xml:57918 book.translate.xml:61956 book.translate.xml:65535 msgid "Purpose" msgstr "用途" #. (itstool) path: row/entry -#: book.translate.xml:57396 +#: book.translate.xml:57924 msgid "<command>pfctl -e</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57398 +#: book.translate.xml:57926 msgid "Enable <application>PF</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57402 +#: book.translate.xml:57930 msgid "<command>pfctl -d</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57404 +#: book.translate.xml:57932 msgid "Disable <application>PF</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57408 +#: book.translate.xml:57936 msgid "<command>pfctl -F all -f /etc/pf.conf</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57410 +#: book.translate.xml:57938 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:57416 +#: book.translate.xml:57944 msgid "<command>pfctl -s [ rules | nat | states ]</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57418 +#: book.translate.xml:57946 msgid "" "Report on the filter rules, <acronym>NAT</acronym> rules, or state table." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57424 +#: book.translate.xml:57952 msgid "<command>pfctl -vnf /etc/pf.conf</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:57426 +#: book.translate.xml:57954 msgid "" "Check <filename>/etc/pf.conf</filename> for errors, but do not load ruleset." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:57434 +#: book.translate.xml:57962 msgid "" "<package>security/sudo</package> is useful for running commands like " "<command>pfctl</command> that require elevated privileges. It can be " @@ -84133,7 +85061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57440 +#: book.translate.xml:57968 msgid "" "To keep an eye on the traffic that passes through the <application>PF</" "application> firewall, consider installing the <package>sysutils/pftop</" @@ -84143,145 +85071,20 @@ msgid "" "manvolnum></citerefentry>." msgstr "" -#. (itstool) path: sect2/title -#: book.translate.xml:57449 -msgid "Enabling <application>ALTQ</application>" -msgstr "開啟 <application>ALTQ</application>" - -#. (itstool) path: sect2/para -#: book.translate.xml:57451 -msgid "" -"On FreeBSD, <application>ALTQ</application> can be used with " -"<application>PF</application> to provide Quality of Service (<acronym>QOS</" -"acronym>). Once <application>ALTQ</application> is enabled, queues can be " -"defined in the ruleset which determine the processing priority of outbound " -"packets." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:57458 -msgid "" -"Before enabling <application>ALTQ</application>, refer to " -"<citerefentry><refentrytitle>altq</refentrytitle><manvolnum>4</manvolnum></" -"citerefentry> to determine if the drivers for the network cards installed on " -"the system support it." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:57462 -msgid "" -"<application>ALTQ</application> is not available as a loadable kernel " -"module. If the system's interfaces support <application>ALTQ</application>, " -"create a custom kernel using the instructions in <xref linkend=\"kernelconfig" -"\"/>. The following kernel options are available. The first is needed to " -"enable <application>ALTQ</application>. At least one of the other options is " -"necessary to specify the queueing scheduler algorithm:" -msgstr "" - -#. (itstool) path: sect2/programlisting -#: book.translate.xml:57471 -#, no-wrap -msgid "" -"options ALTQ\n" -"options ALTQ_CBQ # Class Based Queuing (CBQ)\n" -"options ALTQ_RED # Random Early Detection (RED)\n" -"options ALTQ_RIO # RED In/Out\n" -"options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)\n" -"options ALTQ_PRIQ # Priority Queuing (PRIQ)" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:57478 -msgid "The following scheduler algorithms are available:" -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:57482 -msgid "CBQ" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:57484 -msgid "" -"Class Based Queuing (<acronym>CBQ</acronym>) is used to divide a " -"connection's bandwidth into different classes or queues to prioritize " -"traffic based on filter rules." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:57492 -msgid "RED" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:57494 -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 " -"minimum and maximum thresholds for the queue. When the queue is over the " -"maximum, all new packets are randomly dropped." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:57503 -msgid "RIO" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:57505 -msgid "" -"In Random Early Detection In and Out (<acronym>RIO</acronym>) mode, " -"<acronym>RED</acronym> maintains multiple average queue lengths and multiple " -"threshold values, one for each <acronym>QOS</acronym> level." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:57514 -msgid "HFSC" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:57516 -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." -"html\">http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html</uri>." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:57522 -msgid "PRIQ" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:57524 -msgid "" -"Priority Queuing (<acronym>PRIQ</acronym>) always passes traffic that is in " -"a higher queue first." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:57530 -msgid "" -"More information about the scheduling algorithms and example rulesets are " -"available at <uri xlink:href=\"http://www.openbsd.org/faq/pf/queueing.html" -"\">http://www.openbsd.org/faq/pf/queueing.html</uri>." -msgstr "" - #. (itstool) path: info/title -#: book.translate.xml:57536 +#: book.translate.xml:57978 msgid "<application>PF</application> Rulesets" msgstr "<application>PF</application> 規則集" #. (itstool) path: authorgroup/author -#: book.translate.xml:57539 +#: book.translate.xml:57981 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:57550 +#: book.translate.xml:57992 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 " @@ -84290,7 +85093,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57556 +#: book.translate.xml:57998 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. " @@ -84299,7 +85102,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57562 +#: book.translate.xml:58004 #, no-wrap msgid "" "block in all\n" @@ -84307,7 +85110,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57565 +#: book.translate.xml:58007 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 " @@ -84317,13 +85120,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57573 +#: book.translate.xml:58015 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -e ; pfctl -f /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57575 +#: book.translate.xml:58017 msgid "" "In addition to keeping state, <application>PF</application> provides " "<firstterm>lists</firstterm> and <firstterm>macros</firstterm> which can be " @@ -84333,7 +85136,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57583 +#: book.translate.xml:58025 #, no-wrap msgid "" "tcp_services = \"{ ssh, smtp, domain, www, pop3, auth, pop3s }\"\n" @@ -84341,7 +85144,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57586 +#: book.translate.xml:58028 msgid "" "<application>PF</application> understands port names as well as port " "numbers, as long as the names are listed in <filename>/etc/services</" @@ -84354,7 +85157,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57597 +#: book.translate.xml:58039 #, no-wrap msgid "" "tcp_services = \"{ ssh, smtp, domain, www, pop3, auth, pop3s }\"\n" @@ -84365,17 +85168,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57603 +#: book.translate.xml:58045 msgid "" "Even though <acronym>UDP</acronym> is considered to be a stateless protocol, " "<application>PF</application> is able to track some state information. For " "example, when a <acronym>UDP</acronym> request is passed which asks a name " "server about a domain name, <application>PF</application> will watch for the " -"response in order to pass it back." +"response to pass it back." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57610 +#: book.translate.xml:58052 msgid "" "Whenever an edit is made to a ruleset, the new rules must be loaded so they " "can be used:" @@ -84383,13 +85186,13 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:57613 book.translate.xml:57860 +#: book.translate.xml:58055 book.translate.xml:58303 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -f /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57615 +#: book.translate.xml:58057 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 " @@ -84397,13 +85200,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57619 +#: book.translate.xml:58061 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -nf /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57621 +#: book.translate.xml:58063 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 " @@ -84412,7 +85215,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:57629 +#: book.translate.xml:58071 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 " @@ -84420,12 +85223,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57636 +#: book.translate.xml:58078 msgid "A Simple Gateway with NAT" msgstr "使用 NAT 的簡單通訊閘" #. (itstool) path: sect3/para -#: book.translate.xml:57638 +#: book.translate.xml:58080 msgid "" "This section demonstrates how to configure a FreeBSD system running " "<application>PF</application> to act as a gateway for at least one other " @@ -84436,55 +85239,59 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57646 +#: book.translate.xml:58088 msgid "" -"First, enable the gateway in order to let the machine forward the network " -"traffic it receives on one interface to another interface. This " -"<application>sysctl</application> setting will forward <acronym>IPv4</" -"acronym> packets:" +"First, enable the gateway to let the machine forward the network traffic it " +"receives on one interface to another interface. This <application>sysctl</" +"application> setting will forward <acronym>IPv4</acronym> packets:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57651 +#: book.translate.xml:58093 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.inet.ip.forwarding=1</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57653 +#: book.translate.xml:58095 msgid "To forward <acronym>IPv6</acronym> traffic, use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57655 +#: book.translate.xml:58097 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.inet6.ip6.forwarding=1</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57657 +#: book.translate.xml:58099 +#, fuzzy msgid "" -"To enable these settings at system boot, add the following to <filename>/etc/" -"rc.conf</filename>:" +"To enable these settings at system boot, use " +"<citerefentry><refentrytitle>sysrc</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> to add them to <filename>/etc/rc.conf</filename>:" msgstr "" +"開啟 <filename>/etc/rc.conf</filename> 中的 " +"<citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry>:" -#. (itstool) path: sect3/programlisting -#: book.translate.xml:57660 +#. (itstool) path: sect3/screen +#: book.translate.xml:58103 #, no-wrap msgid "" -"gateway_enable=\"YES\"\t\t#for ipv4\n" -"ipv6_gateway_enable=\"YES\"\t#for ipv6" +"<prompt>#</prompt> <userinput>sysrc gateway_enable=yes</userinput>\n" +"<prompt>#</prompt> <userinput>sysrc ipv6_gateway_enable=yes</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57663 +#: book.translate.xml:58106 msgid "" "Verify with <command>ifconfig</command> that both of the interfaces are up " "and running." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57666 +#: book.translate.xml:58109 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 " @@ -84493,26 +85300,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57673 +#: book.translate.xml:58116 #, 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:57675 +#: book.translate.xml:58118 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:57679 +#: book.translate.xml:58122 #, 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:57681 +#: book.translate.xml:58124 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 " @@ -84521,13 +85328,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57688 +#: book.translate.xml:58131 #, no-wrap msgid "pass from xl1:network to any port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57690 +#: book.translate.xml:58133 msgid "" "The <literal>interface:network</literal> notation can be replaced with a " "macro to make the ruleset even more readable. For example, a <literal>" @@ -84539,7 +85346,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57701 +#: book.translate.xml:58144 msgid "" "If required, <literal>$localnet</literal> could even be defined as a list of " "networks. Whatever the specific needs, a sensible <literal>$localnet</" @@ -84547,13 +85354,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57706 +#: book.translate.xml:58149 #, no-wrap msgid "pass from $localnet to any port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57708 +#: book.translate.xml:58151 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 " @@ -84561,7 +85368,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:57714 +#: book.translate.xml:58157 msgid "" "For dialup users, the external interface will use <filename>tun0</filename>. " "For an <acronym>ADSL</acronym> connection, specifically those using " @@ -84571,7 +85378,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57723 +#: book.translate.xml:58166 #, no-wrap msgid "" "ext_if = \"xl0\"\t# macro for external interface - use tun0 for PPPoE\n" @@ -84584,7 +85391,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57731 +#: book.translate.xml:58174 msgid "" "This ruleset introduces the <literal>nat</literal> rule which is used to " "handle the network address translation from the non-routable addresses " @@ -84597,14 +85404,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57742 +#: book.translate.xml:58185 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:57746 +#: book.translate.xml:58189 #, no-wrap msgid "" "client_out = \"{ ftp-data, ftp, ssh, domain, pop3, auth, nntp, http, \\\n" @@ -84612,12 +85419,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57749 +#: book.translate.xml:58192 msgid "to use in the main pass rule:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57751 +#: book.translate.xml:58194 #, no-wrap msgid "" "pass inet proto tcp from $localnet to any port $client_out \\\n" @@ -84625,27 +85432,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57754 +#: book.translate.xml:58197 msgid "" "A few other pass rules may be needed. This one enables <acronym>SSH</" -"acronym> on the external interface::" +"acronym> on the external interface:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57757 +#: book.translate.xml:58200 #, no-wrap msgid "pass in inet proto tcp to $ext_if port ssh" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57759 +#: book.translate.xml:58202 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:57763 +#: book.translate.xml:58206 #, no-wrap msgid "" "udp_services = \"{ domain, ntp }\"\n" @@ -84653,7 +85460,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57766 +#: book.translate.xml:58209 msgid "" "Note the <literal>quick</literal> keyword in this rule. Since the ruleset " "consists of several rules, it is important to understand the relationships " @@ -84667,12 +85474,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57781 +#: book.translate.xml:58224 msgid "Creating an <acronym>FTP</acronym> Proxy" msgstr "建立 <acronym>FTP</acronym> Proxy" #. (itstool) path: sect3/para -#: book.translate.xml:57783 +#: book.translate.xml:58226 msgid "" "Configuring working <acronym>FTP</acronym> rules can be problematic due to " "the nature of the <acronym>FTP</acronym> protocol. <acronym>FTP</acronym> " @@ -84681,26 +85488,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57792 +#: book.translate.xml:58235 msgid "Passwords are transferred in the clear." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57796 +#: book.translate.xml:58239 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:57802 +#: book.translate.xml:58245 msgid "" "When a session is established, data is communicated using randomly selected " "ports." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57807 +#: book.translate.xml:58250 msgid "" "All of these points present security challenges, even before considering any " "potential security weaknesses in client or server software. More secure " @@ -84712,7 +85519,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57814 +#: book.translate.xml:58257 msgid "" "For those situations when <acronym>FTP</acronym> is required, " "<application>PF</application> provides redirection of <acronym>FTP</acronym> " @@ -84720,30 +85527,30 @@ msgid "" "proxy</refentrytitle><manvolnum>8</manvolnum></citerefentry>, which is " "included in the base system of FreeBSD. The role of the proxy is to " "dynamically insert and delete rules in the ruleset, using a set of anchors, " -"in order to correctly handle <acronym>FTP</acronym> traffic." +"to correctly handle <acronym>FTP</acronym> traffic." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57823 +#: book.translate.xml:58266 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:57826 +#: book.translate.xml:58269 #, no-wrap msgid "ftpproxy_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57828 +#: book.translate.xml:58271 msgid "" "Then start the proxy by running <command>service ftp-proxy start</command>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57831 +#: book.translate.xml:58274 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 " @@ -84751,7 +85558,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57836 +#: book.translate.xml:58279 #, no-wrap msgid "" "nat-anchor \"ftp-proxy/*\"\n" @@ -84759,14 +85566,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57839 +#: book.translate.xml:58282 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:57842 +#: book.translate.xml:58285 msgid "" "Third, redirection and <acronym>NAT</acronym> rules need to be defined " "before the filtering rules. Insert this <literal>rdr</literal> rule " @@ -84774,38 +85581,38 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57847 +#: book.translate.xml:58290 #, 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:57849 +#: book.translate.xml:58292 msgid "Finally, allow the redirected traffic to pass:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57851 +#: book.translate.xml:58294 #, no-wrap msgid "pass out proto tcp from $proxy to any port ftp" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57853 +#: book.translate.xml:58296 msgid "" "where <literal>$proxy</literal> expands to the address the proxy daemon is " "bound to." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57856 +#: book.translate.xml:58299 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:57862 +#: book.translate.xml:58305 msgid "" "This example covers a basic setup where the clients in the local network " "need to contact <acronym>FTP</acronym> servers elsewhere. This basic " @@ -84820,7 +85627,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57875 +#: book.translate.xml:58318 msgid "" "For ways to run an <acronym>FTP</acronym> server protected by " "<application>PF</application> and <citerefentry><refentrytitle>ftp-proxy</" @@ -84830,12 +85637,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57884 +#: book.translate.xml:58327 msgid "Managing <acronym>ICMP</acronym>" msgstr "管理 <acronym>ICMP</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:57886 +#: book.translate.xml:58329 msgid "" "Many of the tools used for debugging or troubleshooting a <acronym>TCP/IP</" "acronym> network rely on the Internet Control Message Protocol " @@ -84844,7 +85651,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57891 +#: book.translate.xml:58334 msgid "" "The <acronym>ICMP</acronym> protocol sends and receives <emphasis>control " "messages</emphasis> between hosts and gateways, mainly to provide feedback " @@ -84855,7 +85662,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57900 +#: book.translate.xml:58343 msgid "" "From a firewall perspective, some <acronym>ICMP</acronym> control messages " "are vulnerable to known attack vectors. Also, letting all diagnostic traffic " @@ -84865,20 +85672,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57908 +#: book.translate.xml:58351 #, no-wrap msgid "pass inet proto icmp from any to any" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57910 +#: book.translate.xml:58353 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:57914 +#: book.translate.xml:58357 #, no-wrap msgid "" "pass inet proto icmp from $localnet to any keep state\n" @@ -84886,7 +85693,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57917 +#: book.translate.xml:58360 msgid "" "Additional options are available which demonstrate some of <application>PF</" "application>'s flexibility. For example, rather than allowing all " @@ -84898,30 +85705,30 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57924 +#: book.translate.xml:58367 #, no-wrap msgid "icmp_types = \"echoreq\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57926 +#: book.translate.xml:58369 msgid "and a rule which uses the macro:" msgstr "" #. (itstool) path: sect3/programlisting #. (itstool) path: sect4/programlisting -#: book.translate.xml:57928 book.translate.xml:57988 +#: book.translate.xml:58371 book.translate.xml:58431 #, no-wrap msgid "pass inet proto icmp all icmp-type $icmp_types keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57930 +#: book.translate.xml:58373 msgid "" "If other types of <acronym>ICMP</acronym> packets are needed, expand " "<literal>icmp_types</literal> to a list of those packet types. Type " -"<command>more /usr/src/contrib/pf/pfctl/pfctl_parser.c</command> to see the " -"list of <acronym>ICMP</acronym> message types supported by <application>PF</" +"<command>more /usr/src/sbin/pfctl/pfctl_parser.c</command> to see the list " +"of <acronym>ICMP</acronym> message types supported by <application>PF</" "application>. Refer to <link xlink:href=\"http://www.iana.org/assignments/" "icmp-parameters/icmp-parameters.xhtml\">http://www.iana.org/assignments/icmp-" "parameters/icmp-parameters.xhtml</link> for an explanation of each message " @@ -84929,14 +85736,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57938 +#: book.translate.xml:58381 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:57942 +#: book.translate.xml:58385 #, no-wrap msgid "" "# allow out the default range for traceroute(8):\n" @@ -84944,7 +85751,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57945 +#: book.translate.xml:58388 msgid "" "Since <command>TRACERT.EXE</command> on Microsoft Windows systems uses " "<acronym>ICMP</acronym> echo request messages, only the first rule is needed " @@ -84956,12 +85763,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:57955 +#: book.translate.xml:58398 msgid "Path <acronym>MTU</acronym> Discovery" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:57957 +#: book.translate.xml:58400 msgid "" "Internet protocols are designed to be device independent, and one " "consequence of device independence is that the optimal packet size for a " @@ -84973,7 +85780,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:57968 +#: book.translate.xml:58411 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 " @@ -84988,20 +85795,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:57982 +#: book.translate.xml:58425 #, no-wrap msgid "icmp_types = \"{ echoreq, unreach }\"" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:57984 +#: book.translate.xml:58427 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:" +"to support the new <acronym>ICMP</acronym> type:" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:57990 +#: book.translate.xml:58433 msgid "" "<application>PF</application> allows filtering on all variations of " "<acronym>ICMP</acronym> types and codes. The list of possible types and " @@ -85012,12 +85819,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57998 +#: book.translate.xml:58441 msgid "Using Tables" msgstr "使用 Tables" #. (itstool) path: sect3/para -#: book.translate.xml:58000 +#: book.translate.xml:58443 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. " @@ -85028,13 +85835,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58009 +#: book.translate.xml:58452 #, no-wrap msgid "table <clients> { 192.168.2.0/24, !192.168.2.5 }" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58011 +#: book.translate.xml:58454 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 " @@ -85044,7 +85851,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58019 +#: book.translate.xml:58462 #, no-wrap msgid "" "192.168.2.0/24\n" @@ -85052,42 +85859,42 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58022 +#: book.translate.xml:58465 msgid "To refer to the file, define the table like this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58024 +#: book.translate.xml:58467 #, no-wrap msgid "table <clients> persist file \"/etc/clients\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58026 +#: book.translate.xml:58469 msgid "Once the table is defined, it can be referenced by a rule:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58029 +#: book.translate.xml:58472 #, 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:58031 +#: book.translate.xml:58474 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:58035 +#: book.translate.xml:58478 #, 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:58037 +#: book.translate.xml:58480 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 " @@ -85101,25 +85908,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58049 +#: book.translate.xml:58492 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -t clients -T replace -f /etc/clients</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58053 +#: book.translate.xml:58496 msgid "Using Overload Tables to Protect <acronym>SSH</acronym>" msgstr "使用 Overload Tables 保護 <acronym>SSH</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:58056 +#: book.translate.xml:58499 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:58060 +#: book.translate.xml:58503 #, no-wrap msgid "" "Sep 26 03:12:34 skapet sshd[25771]: Failed password for root from 200.72.41.31 port 40992 ssh2\n" @@ -85131,7 +85938,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58067 +#: book.translate.xml:58510 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 " @@ -85139,7 +85946,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58071 +#: book.translate.xml:58514 msgid "" "If external <acronym>SSH</acronym> access is needed for legitimate users, " "changing the default port used by <acronym>SSH</acronym> can offer some " @@ -85151,26 +85958,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58081 +#: book.translate.xml:58524 msgid "" "To configure this, create this table in the tables section of the ruleset:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58084 +#: book.translate.xml:58527 #, no-wrap msgid "table <bruteforce> persist" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58086 +#: book.translate.xml:58529 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:58089 +#: book.translate.xml:58532 #, no-wrap msgid "" "block quick from <bruteforce>\n" @@ -85181,21 +85988,21 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58095 +#: book.translate.xml:58538 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:58099 +#: book.translate.xml:58542 msgid "" "<literal>max-src-conn</literal> is the number of simultaneous connections " "allowed from one host." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58102 +#: book.translate.xml:58545 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 " @@ -85203,7 +86010,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58107 +#: book.translate.xml:58550 msgid "" "<literal>overload <bruteforce></literal> means that any host which " "exceeds these limits gets its address added to the <literal>bruteforce</" @@ -85212,7 +86019,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58113 +#: book.translate.xml:58556 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 " @@ -85220,7 +86027,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58119 +#: book.translate.xml:58562 msgid "" "These rules will <emphasis>not</emphasis> block slow bruteforcers, as " "described in <link xlink:href=\"http://home.nuug.no/~peter/hailmary2013/" @@ -85228,7 +86035,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58123 +#: book.translate.xml:58566 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 " @@ -85238,7 +86045,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58131 +#: book.translate.xml:58574 #, no-wrap msgid "" "pass quick proto { tcp, udp } from any to any port ssh \\\n" @@ -85248,12 +86055,12 @@ msgid "" msgstr "" #. (itstool) path: note/title -#: book.translate.xml:58137 +#: book.translate.xml:58580 msgid "It May Not be Necessary to Block All Overloaders" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58140 +#: book.translate.xml:58583 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 " @@ -85261,7 +86068,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58145 +#: book.translate.xml:58588 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 " @@ -85270,7 +86077,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58152 +#: book.translate.xml:58595 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> " @@ -85280,7 +86087,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58159 +#: book.translate.xml:58602 msgid "" "For situations like these, <application>pfctl</application> provides the " "ability to expire table entries. For example, this command will remove " @@ -85289,13 +86096,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58166 +#: book.translate.xml:58609 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -t bruteforce -T expire 86400</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58168 +#: book.translate.xml:58611 msgid "" "Similar functionality is provided by <package>security/expiretable</" "package>, which removes table entries which have not been accessed for a " @@ -85303,7 +86110,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58173 +#: book.translate.xml:58616 msgid "" "Once installed, <application>expiretable</application> can be run to remove " "<literal><bruteforce></literal> table entries older than a specified " @@ -85311,18 +86118,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58178 +#: book.translate.xml:58621 #, no-wrap msgid "/usr/local/sbin/expiretable -v -d -t 24h bruteforce" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58182 +#: book.translate.xml:58625 msgid "Protecting Against <acronym>SPAM</acronym>" msgstr "<acronym>SPAM</acronym> 防護" #. (itstool) path: sect3/para -#: book.translate.xml:58184 +#: book.translate.xml:58627 msgid "" "Not to be confused with the <application>spamd</application> daemon which " "comes bundled with <application>spamassassin</application>, <package>mail/" @@ -85333,7 +86140,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58194 +#: book.translate.xml:58637 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 " @@ -85342,7 +86149,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58200 +#: book.translate.xml:58643 msgid "" "When an <acronym>SMTP</acronym> connection from an address in a blacklist is " "received, <application>spamd</application> presents its banner and " @@ -85354,7 +86161,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58212 +#: book.translate.xml:58655 msgid "" "This example demonstrates the basic procedure for setting up " "<application>spamd</application> with automatically updated blacklists. " @@ -85363,44 +86170,48 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:58219 +#: book.translate.xml:58662 msgid "Configuring <application>spamd</application>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58222 +#: book.translate.xml:58665 +#, fuzzy msgid "" -"Install the <package>mail/spamd</package> package or port. In order to use " +"Install the <package>mail/spamd</package> package or port. To use " "<application>spamd</application>'s greylisting features, " "<citerefentry><refentrytitle>fdescfs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> must be mounted at <filename>/dev/fd</filename>. " "Add the following line to <filename>/etc/fstab</filename>:" msgstr "" +"要用電視卡的話,就要載入 <citerefentry><refentrytitle>bktr</" +"refentrytitle><manvolnum>4</manvolnum></citerefentry> 驅動程式,這個可以透過" +"在 <filename>/boot/loader.conf</filename> 檔加上下面這一行就可以了:" #. (itstool) path: step/programlisting -#: book.translate.xml:58229 +#: book.translate.xml:58671 #, no-wrap msgid " fdescfs /dev/fd fdescfs rw 0 0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58231 +#: book.translate.xml:58673 msgid "Then, mount the filesystem:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:58233 +#: book.translate.xml:58675 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount fdescfs</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58237 +#: book.translate.xml:58679 msgid "Next, edit the <application>PF</application> ruleset to include:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:58240 +#: book.translate.xml:58682 #, no-wrap msgid "" "table <spamd> persist\n" @@ -85412,17 +86223,17 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58247 +#: book.translate.xml:58689 msgid "" "The two tables <literal><spamd></literal> and <literal><spamd-" "white></literal> are essential. <acronym>SMTP</acronym> traffic from an " -"address listed in<literal> <spamd></literal> but not in <literal><" +"address listed in <literal><spamd></literal> but not in <literal><" "spamd-white></literal> is redirected to the <application>spamd</" "application> daemon listening at port 8025." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58257 +#: book.translate.xml:58699 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</" @@ -85430,7 +86241,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58262 +#: book.translate.xml:58704 msgid "" "The installation of <package>mail/spamd</package> includes a sample " "configuration file (<filename>/usr/local/etc/spamd.conf.sample</filename>) " @@ -85439,7 +86250,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58269 +#: book.translate.xml:58711 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 " @@ -85447,7 +86258,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:58275 +#: book.translate.xml:58717 #, no-wrap msgid "" "all:\\\n" @@ -85455,7 +86266,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58278 +#: book.translate.xml:58720 msgid "" "This entry adds the desired blacklists, separated by colons (<literal>:</" "literal>). To use a whitelist to subtract addresses from a blacklist, add " @@ -85464,12 +86275,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58285 +#: book.translate.xml:58727 msgid "This is followed by the specified blacklist's definition:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:58288 +#: book.translate.xml:58730 #, no-wrap msgid "" "traplist:\\\n" @@ -85480,7 +86291,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58294 +#: book.translate.xml:58736 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 " @@ -85495,14 +86306,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58309 +#: book.translate.xml:58751 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:58313 +#: book.translate.xml:58755 #, no-wrap msgid "" "whitelist:\\\n" @@ -85512,12 +86323,12 @@ msgid "" msgstr "" #. (itstool) path: tip/title -#: book.translate.xml:58319 +#: book.translate.xml:58761 msgid "Choose Data Sources with Care" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:58321 +#: book.translate.xml:58763 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 " @@ -85526,23 +86337,23 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58329 +#: book.translate.xml:58771 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:58334 +#: book.translate.xml:58776 #, no-wrap msgid "spamd_flags=\"-v\" # use \"\" and see spamd-setup(8) for flags" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58336 +#: book.translate.xml:58778 msgid "" "When finished, reload the ruleset, start <application>spamd</application> by " -"typing <command>service start obspamd</command>, and complete the " +"typing <command>service obspamd start</command>, and complete the " "configuration using <command>spamd-setup</command>. Finally, create a " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> job which calls <command>spamd-setup</command> to update the " @@ -85550,14 +86361,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58346 +#: book.translate.xml:58788 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:58350 +#: book.translate.xml:58792 msgid "" "<application>PF</application> also supports <firstterm>greylisting</" "firstterm>, which temporarily rejects messages from unknown hosts with " @@ -85568,27 +86379,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58359 +#: book.translate.xml:58801 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. " "The most amazing thing about greylisting, apart from its simplicity, is that " -"it still works. Spammers and malware writers have been very slow to adapt in " -"order to bypass this technique." +"it still works. Spammers and malware writers have been very slow to adapt to " +"bypass this technique." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58366 +#: book.translate.xml:58808 msgid "The basic procedure for configuring greylisting is as follows:" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:58370 +#: book.translate.xml:58812 msgid "Configuring Greylisting" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58373 +#: book.translate.xml:58815 msgid "" "Make sure that <citerefentry><refentrytitle>fdescfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry> is mounted as " @@ -85596,40 +86407,40 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58378 +#: book.translate.xml:58820 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:58382 +#: book.translate.xml:58824 #, no-wrap msgid "spamd_grey=\"YES\" # use spamd greylisting if YES" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58384 +#: book.translate.xml:58826 msgid "" "Refer to the <application>spamd</application> man page for descriptions of " "additional related parameters." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:58390 +#: book.translate.xml:58832 msgid "To complete the greylisting setup:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:58392 +#: book.translate.xml:58834 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>service restart obspamd</userinput>\n" -"<prompt>#</prompt> <userinput>service start spamlogd</userinput>" +"<prompt>#</prompt> <userinput>service obspamd restart</userinput>\n" +"<prompt>#</prompt> <userinput>service obspamlogd start</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58397 +#: book.translate.xml:58839 msgid "" "Behind the scenes, the <application>spamdb</application> database tool and " "the <application>spamlogd</application> whitelist updater perform essential " @@ -85639,12 +86450,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58407 +#: book.translate.xml:58849 msgid "Network Hygiene" msgstr "網路保健" #. (itstool) path: sect3/para -#: book.translate.xml:58409 +#: book.translate.xml:58851 msgid "" "This section describes how <literal>block-policy</literal>, <literal>scrub</" "literal>, and <literal>antispoof</literal> can be used to make the ruleset " @@ -85652,7 +86463,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58414 +#: book.translate.xml:58856 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 " @@ -85664,20 +86475,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58425 +#: book.translate.xml:58867 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:58430 +#: book.translate.xml:58872 #, no-wrap msgid "set block-policy return" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58432 +#: book.translate.xml:58874 msgid "" "In <application>PF</application>, <literal>scrub</literal> is a keyword " "which enables network packet normalization. This process reassembles " @@ -85689,13 +86500,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58442 +#: book.translate.xml:58884 #, no-wrap msgid "scrub in all" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58444 +#: book.translate.xml:58886 msgid "" "Some services, such as <acronym>NFS</acronym>, require specific fragment " "handling options. Refer to <link xlink:href=\"https://home.nuug.no/~peter/pf/" @@ -85704,20 +86515,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58448 +#: book.translate.xml:58890 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:58452 +#: book.translate.xml:58894 #, no-wrap msgid "scrub in all fragment reassemble no-df max-mss 1440" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58454 +#: book.translate.xml:58896 msgid "" "The <literal>antispoof</literal> mechanism protects against activity from " "spoofed or forged <acronym>IP</acronym> addresses, mainly by blocking " @@ -85726,14 +86537,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58460 +#: book.translate.xml:58902 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:58464 +#: book.translate.xml:58906 #, no-wrap msgid "" "antispoof for $ext_if\n" @@ -85741,12 +86552,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58469 +#: book.translate.xml:58911 msgid "Handling Non-Routable Addresses" msgstr "處理不可路由 (Non-Routable) 的位址" #. (itstool) path: sect3/para -#: book.translate.xml:58471 +#: book.translate.xml:58913 msgid "" "Even with a properly configured gateway to handle network address " "translation, one may have to compensate for other people's " @@ -85758,7 +86569,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58481 +#: book.translate.xml:58923 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 " @@ -85766,7 +86577,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58487 +#: book.translate.xml:58929 #, no-wrap msgid "" "martians = \"{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, \\\n" @@ -85777,18 +86588,144 @@ msgid "" "block drop out quick on $ext_if from any to $martians" msgstr "" +#. (itstool) path: sect2/title +#: book.translate.xml:58939 +msgid "Enabling <application>ALTQ</application>" +msgstr "開啟 <application>ALTQ</application>" + +#. (itstool) path: sect2/para +#: book.translate.xml:58941 +msgid "" +"On FreeBSD, <application>ALTQ</application> can be used with " +"<application>PF</application> to provide Quality of Service (<acronym>QOS</" +"acronym>). Once <application>ALTQ</application> is enabled, queues can be " +"defined in the ruleset which determine the processing priority of outbound " +"packets." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:58948 +msgid "" +"Before enabling <application>ALTQ</application>, refer to " +"<citerefentry><refentrytitle>altq</refentrytitle><manvolnum>4</manvolnum></" +"citerefentry> to determine if the drivers for the network cards installed on " +"the system support it." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:58952 +msgid "" +"<application>ALTQ</application> is not available as a loadable kernel " +"module. If the system's interfaces support <application>ALTQ</application>, " +"create a custom kernel using the instructions in <xref linkend=\"kernelconfig" +"\"/>. The following kernel options are available. The first is needed to " +"enable <application>ALTQ</application>. At least one of the other options is " +"necessary to specify the queueing scheduler algorithm:" +msgstr "" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:58961 +#, no-wrap +msgid "" +"options ALTQ\n" +"options ALTQ_CBQ # Class Based Queuing (CBQ)\n" +"options ALTQ_RED # Random Early Detection (RED)\n" +"options ALTQ_RIO # RED In/Out\n" +"options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)\n" +"options ALTQ_PRIQ # Priority Queuing (PRIQ)" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:58968 +msgid "The following scheduler algorithms are available:" +msgstr "" + +#. (itstool) path: varlistentry/term +#: book.translate.xml:58972 +msgid "CBQ" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:58974 +msgid "" +"Class Based Queuing (<acronym>CBQ</acronym>) is used to divide a " +"connection's bandwidth into different classes or queues to prioritize " +"traffic based on filter rules." +msgstr "" + +#. (itstool) path: varlistentry/term +#: book.translate.xml:58982 +msgid "RED" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:58984 +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 " +"minimum and maximum thresholds for the queue. When the queue is over the " +"maximum, all new packets are randomly dropped." +msgstr "" + +#. (itstool) path: varlistentry/term +#: book.translate.xml:58993 +msgid "RIO" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:58995 +msgid "" +"In Random Early Detection In and Out (<acronym>RIO</acronym>) mode, " +"<acronym>RED</acronym> maintains multiple average queue lengths and multiple " +"threshold values, one for each <acronym>QOS</acronym> level." +msgstr "" + +#. (itstool) path: varlistentry/term +#: book.translate.xml:59004 +msgid "HFSC" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:59006 +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." +"html\">http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html</uri>." +msgstr "" + +#. (itstool) path: varlistentry/term +#: book.translate.xml:59012 +msgid "PRIQ" +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:59014 +msgid "" +"Priority Queuing (<acronym>PRIQ</acronym>) always passes traffic that is in " +"a higher queue first." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:59020 +msgid "" +"More information about the scheduling algorithms and example rulesets are " +"available at the <uri xlink:href=\"https://web.archive.org/" +"web/20151109213426/http://www.openbsd.org/faq/pf/queueing.html\">OpenBSD's " +"web archive</uri>." +msgstr "" + #. (itstool) path: sect1/title -#: book.translate.xml:58498 +#: book.translate.xml:59026 msgid "<application>IPFW</application>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:58500 +#: book.translate.xml:59028 msgid "<primary>firewall</primary> <secondary>IPFW</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58506 +#: book.translate.xml:59034 msgid "" "<application>IPFW</application> is a stateful firewall written for FreeBSD " "which supports both <acronym>IPv4</acronym> and <acronym>IPv6</acronym>. It " @@ -85806,7 +86743,7 @@ msgstr "" "施、橋接設施以及 ipstealth 設施。" #. (itstool) path: sect1/para -#: book.translate.xml:58515 +#: book.translate.xml:59043 msgid "" "FreeBSD provides a sample ruleset in <filename>/etc/rc.firewall</filename> " "which defines several firewall types for common scenarios to assist novice " @@ -85820,155 +86757,121 @@ msgstr "" "合環境安全性要求的規則集。" #. (itstool) path: sect1/para -#: book.translate.xml:58523 +#: book.translate.xml:59051 msgid "" "This section describes how to enable <application>IPFW</application>, " "provides an overview of its rule syntax, and demonstrates several rulesets " "for common configuration scenarios." msgstr "" "本節將介紹如何開啟 <application>IPFW</application>、規則語法的概要以及示範幾" -"種常見情境所使用的規則集:" +"種常見情境所使用的規則集。" #. (itstool) path: sect2/title -#: book.translate.xml:58529 +#: book.translate.xml:59057 msgid "Enabling <application>IPFW</application>" msgstr "開啟 <application>IPFW</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:58531 +#: book.translate.xml:59059 msgid "" "<primary><application>IPFW</application></primary> <secondary>enabling</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58537 +#: book.translate.xml:59065 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 " "order to enable <application>IPFW</application>." msgstr "" -#. (itstool) path: sect2/indexterm -#: book.translate.xml:58542 -msgid "<primary>kernel options</primary> <secondary>IPFIREWALL</secondary>" -msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL</secondary>" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:58548 -msgid "" -"<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" -msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:58554 -msgid "" -"<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</" -"secondary>" -msgstr "" -"<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</secondary>" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:58560 -msgid "" -"<primary><application>IPFW</application></primary> <secondary>kernel " -"options</secondary>" -msgstr "" - #. (itstool) path: sect2/para -#: book.translate.xml:58566 +#: book.translate.xml:59070 msgid "" "For those users who wish to statically compile <application>IPFW</" -"application> support into a custom kernel, refer to the instructions in " -"<xref linkend=\"kernelconfig\"/>. The following options are available for " -"the custom kernel configuration file:" -msgstr "" - -#. (itstool) path: sect2/programlisting -#: book.translate.xml:58572 -#, no-wrap -msgid "" -"options IPFIREWALL\t\t\t# enables IPFW\n" -"options IPFIREWALL_VERBOSE\t\t# enables logging for rules with log keyword\n" -"options IPFIREWALL_VERBOSE_LIMIT=5\t# limits number of logged packets per-entry\n" -"options IPFIREWALL_DEFAULT_TO_ACCEPT # sets default policy to pass what is not explicitly denied\n" -"options IPDIVERT\t\t\t# enables NAT" +"application> support into a custom kernel, see <xref linkend=\"firewalls-" +"ipfw-kernelconfig\"/>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58578 +#: book.translate.xml:59074 +#, fuzzy msgid "" "To configure the system to enable <application>IPFW</application> at boot " -"time, add the following entry to <filename>/etc/rc.conf</filename>:" +"time, add <literal>firewall_enable=\"YES\"</literal> to <filename>/etc/rc." +"conf</filename>:" msgstr "" +"要在開機時啟動 <application>Samba</application>,可加入下行到 <filename>/etc/" +"rc.conf</filename>:" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:58582 +#. (itstool) path: sect2/screen +#: book.translate.xml:59079 #, no-wrap -msgid "firewall_enable=\"YES\"" +msgid "<prompt>#</prompt> <userinput>sysrc firewall_enable=\"YES\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58584 +#: book.translate.xml:59081 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:58587 +#. (itstool) path: sect2/screen +#: book.translate.xml:59084 #, no-wrap -msgid "firewall_type=\"open\"" +msgid "<prompt>#</prompt> <userinput>sysrc firewall_type=\"open\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58589 +#: book.translate.xml:59086 msgid "The available types are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58593 +#: book.translate.xml:59090 msgid "<literal>open</literal>: passes all traffic." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58596 +#: book.translate.xml:59093 msgid "<literal>client</literal>: protects only this machine." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58600 +#: book.translate.xml:59097 msgid "<literal>simple</literal>: protects the whole network." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58604 +#: book.translate.xml:59101 msgid "" "<literal>closed</literal>: entirely disables IP traffic except for the " "loopback interface." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58608 +#: book.translate.xml:59105 msgid "" "<literal>workstation</literal>: protects only this machine using stateful " "rules." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58612 +#: book.translate.xml:59109 msgid "<literal>UNKNOWN</literal>: disables the loading of firewall rules." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58616 +#: book.translate.xml:59113 msgid "" "<filename><replaceable>filename</replaceable></filename>: full path of the " "file containing the firewall ruleset." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58622 +#: book.translate.xml:59119 msgid "" "If <literal>firewall_type</literal> is set to either <literal>client</" "literal> or <literal>simple</literal>, modify the default rules found in " @@ -85976,14 +86879,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58628 +#: book.translate.xml:59125 msgid "" "Note that the <literal>filename</literal> type is used to load a custom " "ruleset." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58631 +#: book.translate.xml:59128 msgid "" "An alternate way to load a custom ruleset is to set the " "<literal>firewall_script</literal> variable to the absolute path of an " @@ -85993,25 +86896,37 @@ msgid "" "filename>:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:58639 +#. (itstool) path: sect2/screen +#: book.translate.xml:59136 #, no-wrap -msgid "firewall_script=\"/etc/ipfw.rules\"" +msgid "<prompt>#</prompt> <userinput>sysrc firewall_script=\"/etc/ipfw.rules\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58641 -msgid "To enable logging, include this line:" +#: book.translate.xml:59138 +msgid "" +"To enable logging through <citerefentry><refentrytitle>syslogd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>, include this line:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:58643 +#. (itstool) path: sect2/screen +#: book.translate.xml:59141 #, no-wrap -msgid "firewall_logging=\"YES\"" +msgid "<prompt>#</prompt> <userinput>sysrc firewall_logging=\"YES\"</userinput>" +msgstr "" + +#. (itstool) path: warning/para +#: book.translate.xml:59144 +msgid "" +"Only firewall rules with the <option>log</option> option will be logged. The " +"default rules do not include this option and it must be manually added. " +"Therefore it is advisable that the default ruleset is edited for logging. In " +"addition, log rotation may be desired if the logs are stored in a separate " +"file." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58645 +#: book.translate.xml:59151 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 " @@ -86019,21 +86934,56 @@ msgid "" "filename>:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:58650 +#. (itstool) path: sect2/screen +#: book.translate.xml:59156 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>echo \"net.inet.ip.fw.verbose_limit=<replaceable>5</replaceable>\" >> /etc/sysctl.conf</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:59158 +#, fuzzy +msgid "" +"To enable logging through a dedicated interface named <literal>ipfw0</" +"literal>, add this line to <filename>/etc/rc.conf</filename> instead:" +msgstr "" +"要開啟 <application>Unbound</application> 可加入下行到 <filename>/etc/rc." +"conf</filename>:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:59162 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>sysrc firewall_logif=\"YES\"</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:59164 +msgid "" +"Then use <application>tcpdump</application> to see what is being logged:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:59167 #, no-wrap -msgid "net.inet.ip.fw.verbose_limit=<replaceable>5</replaceable>" +msgid "<prompt>#</prompt> <userinput>tcpdump -t -n -i ipfw0</userinput>" +msgstr "" + +#. (itstool) path: tip/para +#: book.translate.xml:59170 +msgid "" +"There is no overhead due to logging unless <application>tcpdump</" +"application> is attached." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58652 +#: book.translate.xml:59174 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:58656 +#: book.translate.xml:59178 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service ipfw start</userinput>\n" @@ -86041,19 +86991,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:58661 +#: book.translate.xml:59183 msgid "<application>IPFW</application> Rule Syntax" msgstr "<application>IPFW</application> 規則語法" #. (itstool) path: sect2/indexterm -#: book.translate.xml:58663 +#: book.translate.xml:59185 msgid "" "<primary><application>IPFW</application></primary> <secondary>rule " "processing order</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58669 +#: book.translate.xml:59191 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 " @@ -86071,14 +87021,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:58685 +#: book.translate.xml:59207 msgid "" "<primary><application>IPFW</application></primary> <secondary>rule syntax</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58691 +#: book.translate.xml:59213 msgid "" "When creating an <application>IPFW</application> rule, keywords must be " "written in the following order. Some keywords are mandatory while other " @@ -86089,14 +87039,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58701 +#: book.translate.xml:59223 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:58705 +#: book.translate.xml:59227 msgid "" "This section provides an overview of these keywords and their options. It is " "not an exhaustive list of every possible option. Refer to " @@ -86106,22 +87056,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58713 +#: book.translate.xml:59235 msgid "CMD" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58715 +#: book.translate.xml:59237 msgid "Every rule must start with <parameter>ipfw add</parameter>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58721 +#: book.translate.xml:59243 msgid "RULE_NUMBER" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58723 +#: book.translate.xml:59245 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 " @@ -86130,12 +87080,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58734 +#: book.translate.xml:59256 msgid "SET_NUMBER" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58736 +#: book.translate.xml:59258 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 " @@ -86144,12 +87094,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58746 book.translate.xml:59724 +#: book.translate.xml:59268 book.translate.xml:60433 msgid "ACTION" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58748 +#: book.translate.xml:59270 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 " @@ -86157,14 +87107,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58753 +#: book.translate.xml:59275 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:58757 +#: book.translate.xml:59279 msgid "" "<parameter>check-state</parameter>: checks the packet against the dynamic " "state table. If a match is found, execute the action associated with the " @@ -86176,21 +87126,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58768 +#: book.translate.xml:59290 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:58772 +#: book.translate.xml:59294 msgid "" "<parameter>deny | drop</parameter>: either word silently discards packets " "that match this rule." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58775 +#: book.translate.xml:59297 msgid "" "Additional actions are available. Refer to " "<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" @@ -86198,12 +87148,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58781 +#: book.translate.xml:59303 msgid "LOG_AMOUNT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58783 +#: book.translate.xml:59305 msgid "" "When a packet matches a rule with the <literal>log</literal> keyword, a " "message will be logged to <citerefentry><refentrytitle>syslogd</" @@ -86218,7 +87168,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58798 +#: book.translate.xml:59320 msgid "" "Logging is done after all other packet matching conditions have been met, " "and before performing the final action on the packet. The administrator " @@ -86226,24 +87176,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58807 +#: book.translate.xml:59329 msgid "PROTO" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58809 +#: book.translate.xml:59331 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:58816 +#: book.translate.xml:59338 msgid "SRC" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58818 +#: book.translate.xml:59340 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 " @@ -86258,24 +87208,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58836 book.translate.xml:59860 +#: book.translate.xml:59358 book.translate.xml:60569 msgid "SRC_PORT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58838 +#: book.translate.xml:59360 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:58845 +#: book.translate.xml:59367 msgid "DST" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58847 +#: book.translate.xml:59369 msgid "" "The <literal>to</literal> keyword must be followed by the destination " "address or a keyword that represents the destination address. The same " @@ -86284,24 +87234,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58856 book.translate.xml:59897 +#: book.translate.xml:59378 book.translate.xml:60606 msgid "DST_PORT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58858 +#: book.translate.xml:59380 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:58865 book.translate.xml:59776 +#: book.translate.xml:59387 book.translate.xml:60485 msgid "OPTIONS" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58867 +#: book.translate.xml:59389 msgid "" "Several keywords can follow the source and destination. As the name " "suggests, OPTIONS are optional. Commonly used options include <literal>in</" @@ -86311,7 +87261,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58876 +#: book.translate.xml:59398 msgid "" "When a <parameter>keep-state</parameter> rule is matched, the firewall will " "create a dynamic rule which matches bidirectional traffic between the source " @@ -86319,7 +87269,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58882 +#: book.translate.xml:59404 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 " @@ -86332,7 +87282,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58894 +#: book.translate.xml:59416 msgid "" "Dozens of OPTIONS are available. Refer to <citerefentry><refentrytitle>ipfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> for a description of " @@ -86340,12 +87290,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:58903 book.translate.xml:59976 +#: book.translate.xml:59425 book.translate.xml:60685 msgid "Example Ruleset" msgstr "範例規則集" #. (itstool) path: sect2/para -#: book.translate.xml:58905 +#: book.translate.xml:59427 msgid "" "This section demonstrates how to create an example stateful firewall ruleset " "script named <filename>/etc/ipfw.rules</filename>. In this example, all " @@ -86356,20 +87306,20 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58915 +#: book.translate.xml:59437 msgid "" "When first creating or testing a firewall ruleset, consider temporarily " "setting this tunable:" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:58918 +#: book.translate.xml:59440 #, no-wrap msgid "net.inet.ip.fw.default_to_accept=\"1\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58920 +#: book.translate.xml:59442 msgid "" "This sets the default policy of <citerefentry><refentrytitle>ipfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to be more permissive " @@ -86378,7 +87328,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58926 +#: book.translate.xml:59448 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> " @@ -86389,7 +87339,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58934 +#: book.translate.xml:59456 #, no-wrap msgid "" "#!/bin/sh\n" @@ -86402,14 +87352,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58942 +#: book.translate.xml:59464 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:58945 +#: book.translate.xml:59467 #, no-wrap msgid "" "# Change xl0 to LAN NIC interface name\n" @@ -86420,27 +87370,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58951 +#: book.translate.xml:59473 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:58954 +#: book.translate.xml:59476 #, no-wrap msgid "$cmd 00101 check-state" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58956 +#: book.translate.xml:59478 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:58959 +#: book.translate.xml:59481 #, no-wrap msgid "" "# Allow access to public DNS\n" @@ -86477,7 +87427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58991 +#: book.translate.xml:59513 msgid "" "The next set of rules controls connections from Internet hosts to the " "internal network. It starts by denying packets typically associated with " @@ -86487,7 +87437,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58998 +#: book.translate.xml:59520 #, no-wrap msgid "" "# Deny all inbound traffic from non-routable reserved address spaces\n" @@ -86534,14 +87484,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59040 +#: book.translate.xml:59562 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:59043 +#: book.translate.xml:59565 #, no-wrap msgid "" "# Everything else is denied and logged\n" @@ -86549,177 +87499,239 @@ msgid "" msgstr "" #. (itstool) path: info/title -#. (itstool) path: sect2/title -#: book.translate.xml:59049 book.translate.xml:60130 -msgid "Configuring <acronym>NAT</acronym>" -msgstr "設定 <acronym>NAT</acronym>" +#: book.translate.xml:59571 +msgid "In-kernel <acronym>NAT</acronym>" +msgstr "核心內 <acronym>NAT</acronym>" + +#. (itstool) path: authorgroup/author +#: book.translate.xml:59584 +msgid "" +"<personname> <firstname>Dries</firstname> <surname>Michiels</surname> </" +"personname> <contrib>Rewritten and updated by </contrib>" +msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59061 +#: book.translate.xml:59594 msgid "" "<primary>NAT</primary> <secondary>and <application>IPFW</application></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59067 +#: book.translate.xml:59600 msgid "" -"FreeBSD's built-in <acronym>NAT</acronym> daemon, " +"FreeBSD's <application>IPFW</application> firewall has two implementations " +"of <acronym>NAT</acronym>: one being the userland " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>, works in conjunction with <application>IPFW</application> to " -"provide network address translation. This can be used to provide an Internet " -"Connection Sharing solution so that several internal computers can connect " -"to the Internet using a single <acronym>IP</acronym> address." +"citerefentry> daemon, and the more recent <application>IPFW</application>'s " +"built-in <acronym>NAT</acronym> facility also known as in-kernel " +"<acronym>NAT</acronym>. Both work in conjunction with <application>IPFW</" +"application> to provide network address translation. This can be used to " +"provide an Internet Connection Sharing solution so that several internal " +"computers can connect to the Internet using a single public <acronym>IP</" +"acronym> address." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59075 +#: book.translate.xml:59612 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 " "connected to the Internet and the other is connected to the internal " "<acronym>LAN</acronym>. Each machine connected to the <acronym>LAN</acronym> " "should be assigned an <acronym>IP</acronym> address in the private network " -"space, as defined by <link xlink:href=\"ftp://ftp.isi.edu/in-notes/rfc1918." -"txt\">RFC 1918</link>, and have the default gateway set to the " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> system's internal <acronym>IP</acronym> address." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:59087 -msgid "" -"Some additional configuration is needed in order to activate the " -"<acronym>NAT</acronym> function of <application>IPFW</application>. If the " -"system has a custom kernel, the kernel configuration file needs to include " -"<literal>option IPDIVERT</literal> along with the other <literal>IPFIREWALL</" -"literal> options described in <xref linkend=\"firewalls-ipfw-enable\"/>." +"space, as defined by <link xlink:href=\"https://www.ietf.org/rfc/rfc1918.txt" +"\">RFC 1918</link>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59094 +#: book.translate.xml:59622 msgid "" -"To enable <acronym>NAT</acronym> support at boot time, the following must be " -"in <filename>/etc/rc.conf</filename>:" +"Some additional configuration is needed in order to enable the in-kernel " +"<acronym>NAT</acronym> function of <application>IPFW</application>. To " +"enable in-kernel <acronym>NAT</acronym> support at boot time, the following " +"must be set in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59097 +#: book.translate.xml:59628 #, no-wrap msgid "" -"gateway_enable=\"YES\"\t\t# enables the gateway\n" -"natd_enable=\"YES\"\t\t# enables <acronym>NAT</acronym>\n" -"natd_interface=\"rl0\"\t\t# specify interface name of NIC attached to Internet\n" -"natd_flags=\"-dynamic -m\"\t# -m = preserve port numbers; additional options are listed in <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>" +"gateway_enable=\"YES\"\n" +"firewall_enable=\"YES\"\n" +"firewall_nat_enable=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:59103 +#: book.translate.xml:59633 msgid "" -"It is also possible to specify a configuration file which contains the " -"options to pass to <citerefentry><refentrytitle>natd</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry>:" -msgstr "" - -#. (itstool) path: note/programlisting -#: book.translate.xml:59106 -#, no-wrap -msgid "natd_flags=\"-f /etc/natd.conf\"" +"When <literal>firewall_enable</literal> is not set, but " +"<literal>firewall_nat_enable</literal> is, it will have no effect and do " +"nothing, because the in-kernel <acronym>NAT</acronym> implementation is only " +"compatible with <application>IPFW</application>." msgstr "" -#. (itstool) path: note/para -#: book.translate.xml:59108 +#. (itstool) path: sect2/para +#: book.translate.xml:59639 msgid "" -"The specified file must contain a list of configuration options, one per " -"line. For example:" +"When the ruleset contains stateful rules, the positioning of the " +"<acronym>NAT</acronym> rule is critical and the <literal>skipto</literal> " +"action is used. The <literal>skipto</literal> action requires a rule number " +"so that it knows which rule to jump to. Furthermore, because of the " +"architecture of <citerefentry><refentrytitle>libalias</" +"refentrytitle><manvolnum>3</manvolnum></citerefentry>, a library implemented " +"as a kernel module used for the in-kernel <acronym>NAT</acronym> facility of " +"<application>IPFW</application>, it is necessary to disable TCP segmentation " +"offloading, or in short <acronym>TSO</acronym>. <acronym>TSO</acronym> can " +"be disabled on a per network interface basis by using " +"<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> or on a system wide basis using " +"<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry>. To disable <acronym>TSO</acronym> system wide, the following " +"must be set in <filename>/etc/sysctl.conf</filename>:" msgstr "" -#. (itstool) path: note/programlisting -#: book.translate.xml:59111 +#. (itstool) path: sect2/programlisting +#: book.translate.xml:59656 #, no-wrap -msgid "" -"redirect_port tcp 192.168.0.2:6667 6667\n" -"redirect_port tcp 192.168.0.3:80 80" -msgstr "" - -#. (itstool) path: note/para -#: book.translate.xml:59114 -msgid "" -"For more information about this configuration file, consult " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:59118 -msgid "" -"Next, add the <acronym>NAT</acronym> rules to the firewall ruleset. When the " -"rulest contains stateful rules, the positioning of the <acronym>NAT</" -"acronym> rules is critical and the <literal>skipto</literal> action is used. " -"The <literal>skipto</literal> action requires a rule number so that it knows " -"which rule to jump to." +msgid "net.inet.tcp.tso=\"0\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59125 +#: book.translate.xml:59658 msgid "" -"The following example builds upon the firewall ruleset shown in the previous " +"The example below builds upon the firewall ruleset shown in the previous " "section. It adds some additional entries and modifies some existing rules in " -"order to configure the firewall for <acronym>NAT</acronym>. It starts by " -"adding some additional variables which represent the rule number to skip to, " -"the <literal>keep-state</literal> option, and a list of <acronym>TCP</" -"acronym> ports which will be used to reduce the number of rules:" +"order to configure the firewall for in-kernel <acronym>NAT</acronym>. It " +"starts by adding some additional variables which represent the rule number " +"to skip to, the <literal>keep-state</literal> option, and a list of " +"<acronym>TCP</acronym> ports which will be used to reduce the number of " +"rules." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59134 +#: book.translate.xml:59667 #, no-wrap msgid "" "#!/bin/sh\n" "ipfw -q -f flush\n" "cmd=\"ipfw -q add\"\n" -"skip=\"skipto 500\"\n" +"skip=\"skipto 1000\"\n" "pif=dc0\n" "ks=\"keep-state\"\n" "good_tcpo=\"22,25,37,53,80,443,110\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59142 +#: book.translate.xml:59675 +msgid "" +"A <acronym>NAT</acronym> instance will also be configured. With in-kernel " +"<acronym>NAT</acronym> it is possible to have multiple <acronym>NAT</" +"acronym> instances each with their own configuration. Although, for this " +"example only one <acronym>NAT</acronym> instance is needed; <acronym>NAT</" +"acronym> instance number 1. The configuration takes a few arguments and " +"flags such as: <option>if</option> which indicates the public interface, " +"<option>same_ports</option> which takes care that alliased ports and local " +"port numbers are mapped the same, <option>unreg_only</option> will result in " +"only unregistered (private) address spaces to be processed by the " +"<acronym>NAT</acronym> instance, and <option>reset</option> which will help " +"to keep a functioning <acronym>NAT</acronym> instance even when the public " +"<acronym>IP</acronym> address of the <application>IPFW</application> machine " +"changes. For all possible options that can be passed to a single " +"<acronym>NAT</acronym> instance configuration consult " +"<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry>. Furthermore, because of the nature of a stateful " +"<acronym>NAT</acronym>ing firewall, it is neseccary to allow translated " +"packets to be reinjected in the firewall for further processing, this can be " +"achieved by disabling <option>one_pass</option> behavior at the start of the " +"firewall script." +msgstr "" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:59700 +#, no-wrap +msgid "" +"ipfw disable one_pass\n" +"ipfw -q nat 1 config if $pif same_ports unreg_only reset" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:59703 msgid "" "The inbound <acronym>NAT</acronym> rule is inserted <emphasis>after</" -"emphasis> the two rules which allow all traffic on the trusted internal " -"interface and on the loopback interface and <emphasis>before</emphasis> the " +"emphasis> the two rules which allow all traffic on the trusted and loopback " +"interfaces and after the reassamble rule but <emphasis>before</emphasis> the " "<literal>check-state</literal> rule. It is important that the rule number " "selected for this <acronym>NAT</acronym> rule, in this example <literal>100</" -"literal>, is higher than the first two rules and lower than the " -"<literal>check-state</literal> rule:" +"literal>, is higher than the first three rules and lower than the " +"<literal>check-state</literal> rule. Furthermore, because of the behavior of " +"in-kernel <acronym>NAT</acronym> it is advised to place a reassamble rule " +"just before the first <acronym>NAT</acronym> rule and after the rules that " +"allow traffic on trusted interface. Normally, <acronym>IP</acronym> " +"fragmentation should not happen, but when dealing with <acronym>IPSEC/ESP/" +"GRE</acronym> tunneling traffic it might and the reassmabling of fragments " +"is necessary before handing the complete packet over to the in-kernel " +"<acronym>NAT</acronym> engine." +msgstr "" + +#. (itstool) path: note/para +#: book.translate.xml:59722 +#, fuzzy +msgid "" +"The reassemble rule was not needed with userland " +"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> because the internal workings of the <application>IPFW</" +"application> <literal>divert</literal> action already takes care of this " +"automatically as also stated in <citerefentry><refentrytitle>ipfw</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>." +msgstr "" +"FreeBSD 內含的緩衝程式 (Spooler) 稱作 <citerefentry><refentrytitle>lpd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>,而列印工作會使用 " +"<citerefentry><refentrytitle>lpr</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 來提交。" + +#. (itstool) path: note/para +#: book.translate.xml:59728 +msgid "" +"The current <acronym>NAT</acronym> instance number and <acronym>NAT</" +"acronym> rule number does not match with the default <acronym>NAT</acronym> " +"instance number and rule number created by <filename>rc.firewall</filename> " +"which is a script to set up the baked-in default firewall rulesets present " +"in FreeBSD." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59152 +#: book.translate.xml:59735 #, no-wrap msgid "" "$cmd 005 allow all from any to any via xl0 # exclude LAN traffic\n" "$cmd 010 allow all from any to any via lo0 # exclude loopback traffic\n" -"$cmd 100 divert natd ip from any to any in via $pif # NAT any inbound packets\n" +"$cmd 099 reass all from any to any in # reassamble inbound packets\n" +"$cmd 100 nat 1 ip from any to any in via $pif # NAT any inbound packets\n" "# Allow the packet through if it has an existing entry in the dynamic rules table\n" "$cmd 101 check-state" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59158 +#: book.translate.xml:59742 msgid "" "The outbound rules are modified to replace the <literal>allow</literal> " "action with the <literal>$skip</literal> variable, indicating that rule " -"processing will continue at rule <literal>500</literal>. The seven " +"processing will continue at rule <literal>1000</literal>. The seven " "<literal>tcp</literal> rules have been replaced by rule <literal>125</" "literal> as the <literal>$good_tcpo</literal> variable contains the seven " "allowed outbound ports." msgstr "" +#. (itstool) path: note/para +#: book.translate.xml:59752 +msgid "" +"Remember that <application>IPFW</application>'s firewall performance is " +"largely determined by the number of rules present in the ruleset." +msgstr "" + #. (itstool) path: sect2/programlisting -#: book.translate.xml:59167 +#: book.translate.xml:59756 #, no-wrap msgid "" "# Authorized outbound packets\n" @@ -86730,41 +87742,45 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59173 +#: book.translate.xml:59762 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 " +"removes the <literal>via $pif</literal> in order to catch both inbound and " "outbound rules. The <acronym>NAT</acronym> rule must follow this last " "outbound rule, must have a higher number than that last rule, and the rule " "number must be referenced by the <literal>skipto</literal> action. In this " -"ruleset, rule number <literal>500</literal> diverts all packets which match " -"the outbound rules to <citerefentry><refentrytitle>natd</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> for <acronym>NAT</" -"acronym> processing. The next rule allows any packet which has undergone " -"<acronym>NAT</acronym> processing to pass." +"ruleset, rule number <literal>1000</literal> handles passing all packets to " +"our configured instance for <acronym>NAT</acronym> processing. The next rule " +"allows any packet which has undergone <acronym>NAT</acronym> processing to " +"pass." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59186 +#: book.translate.xml:59774 #, no-wrap msgid "" -"$cmd 499 deny log all from any to any\n" -"$cmd 500 divert natd ip from any to any out via $pif # skipto location for outbound stateful rules\n" -"$cmd 510 allow ip from any to any" +"$cmd 999 deny log all from any to any\n" +"$cmd 1000 nat 1 ip from any to any out via $pif # skipto location for outbound stateful rules\n" +"$cmd 1001 allow ip from any to any" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59190 +#: book.translate.xml:59778 +#, fuzzy msgid "" "In this example, rules <literal>100</literal>, <literal>101</literal>, " -"<literal>125</literal>, <literal>500</literal>, and <literal>510</literal> " +"<literal>125</literal>, <literal>1000</literal>, and <literal>1001</literal> " "control the address translation of the outbound and inbound packets so that " "the entries in the dynamic state table always register the private " "<acronym>LAN</acronym> <acronym>IP</acronym> address." msgstr "" +"這個範例項目會顯示 <literal>dn</literal>, <literal>mail</literal>, " +"<literal>cn</literal>, <literal>uid</literal> 以及 <literal>telephoneNumber</" +"literal> 屬性的數值。而 <acronym>cn</acronym> 屬性則是 <acronym>RDN</" +"acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:59198 +#: book.translate.xml:59786 msgid "" "Consider an internal web browser which initializes a new outbound " "<acronym>HTTP</acronym> session over port 80. When the first outbound packet " @@ -86776,7 +87792,7 @@ msgid "" "address from the internal <acronym>LAN</acronym>. On matching this rule, two " "actions take place. First, the <literal>keep-state</literal> action adds an " "entry to the dynamic state table and the specified action, <literal>skipto " -"rule 500</literal>, is executed. Next, the packet undergoes <acronym>NAT</" +"rule 1000</literal>, is executed. Next, the packet undergoes <acronym>NAT</" "acronym> and is sent out to the Internet. This packet makes its way to the " "destination web server, where a response packet is generated and sent back. " "This new packet enters the top of the ruleset. It matches rule <literal>100</" @@ -86787,38 +87803,62 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59222 +#: book.translate.xml:59810 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 " "dynamic state table and the packet is released to the <acronym>LAN</" "acronym>. The packet generated as a response is recognized by the " "<literal>check-state</literal> rule as belonging to an existing session. It " -"is then sent to rule <literal>500</literal> to undergo <acronym>NAT</" +"is then sent to rule <literal>1000</literal> to undergo <acronym>NAT</" "acronym> before being released to the outbound interface." msgstr "" +#. (itstool) path: note/para +#: book.translate.xml:59822 +msgid "" +"Transition from userland <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> to in-kernel " +"<acronym>NAT</acronym> might seem seamless at first but there is small " +"catch. When using the GENERIC kernel, <application>IPFW</application> will " +"load the <filename>libalias.ko</filename> kernel module, when " +"<literal>firewall_nat_enable</literal> is enabled in <filename>rc.conf</" +"filename>. Although, the loaded module only provides basic <acronym>NAT</" +"acronym> functionality, whereas the userland implementation " +"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> has all functionality available without any extra " +"configuration from its userland library. All functionality refers to the " +"following kernel modules that can additionally be loaded when needed besides " +"the standard <filename>libalias.ko</filename> kernel module: " +"<filename>alias_cuseeme.ko</filename>, <filename>alias_ftp.ko</filename>, " +"<filename>alias_bbt.ko</filename>, <filename>skinny.ko</filename>, " +"<filename>irc.ko</filename>, <filename>alias_pptp.ko</filename> and " +"<filename>alias_smedia.ko</filename> using the <literal>kld_list</literal> " +"directive in <filename>rc.conf</filename> to mimic the full functionality of " +"the userland implementation. If a custom kernel is used, the full " +"functionality of the userland library can be compiled in, in the kernel, " +"using the <option>option LIBALIAS</option>." +msgstr "" + #. (itstool) path: sect3/title -#: book.translate.xml:59234 +#: book.translate.xml:59850 msgid "Port Redirection" msgstr "Port 重新導向" #. (itstool) path: sect3/para -#: book.translate.xml:59236 +#: book.translate.xml:59852 msgid "" -"The drawback with <citerefentry><refentrytitle>natd</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> is that the " +"The drawback with <acronym>NAT</acronym> in general is that the " "<acronym>LAN</acronym> clients are not accessible from the Internet. Clients " "on the <acronym>LAN</acronym> can make outgoing connections to the world but " "cannot receive incoming ones. This presents a problem if trying to run " "Internet services on one of the <acronym>LAN</acronym> client machines. A " "simple way around this is to redirect selected Internet ports on the " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> machine to a <acronym>LAN</acronym> client." +"<acronym>NAT</acronym> providing machine to a <acronym>LAN</acronym> client." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59246 +#: book.translate.xml:59862 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 " @@ -86828,81 +87868,78 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59253 -msgid "The syntax for <option>-redirect_port</option> is as follows:" +#: book.translate.xml:59869 +msgid "" +"With in-kernel <acronym>NAT</acronym> all configuration is done in the " +"<acronym>NAT</acronym> instance configuration. For a full list of options " +"that an in-kernel <acronym>NAT</acronym> instance can use, consult " +"<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry>. The <application>IPFW</application> syntax follows the syntax " +"of <application>natd</application>. The syntax for <option>redirect_port</" +"option> is as follows:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59256 +#: book.translate.xml:59878 #, no-wrap msgid "" -" -redirect_port proto targetIP:targetPORT[-targetPORT]\n" -" [aliasIP:]aliasPORT[-aliasPORT]\n" -" [remoteIP[:remotePORT[-remotePORT]]]" +"redirect_port proto targetIP:targetPORT[-targetPORT]\n" +" [aliasIP:]aliasPORT[-aliasPORT]\n" +" [remoteIP[:remotePORT[-remotePORT]]]" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59260 -msgid "In the above example, the argument should be:" +#: book.translate.xml:59882 +msgid "To configure the above example setup, the arguments should be:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59262 +#: book.translate.xml:59885 #, no-wrap msgid "" -" -redirect_port tcp 192.168.0.2:6667 6667\n" -" -redirect_port tcp 192.168.0.3:80 80" -msgstr "" - -#. (itstool) path: sect3/para -#: book.translate.xml:59265 -msgid "" -"This redirects the proper <acronym>TCP</acronym> ports to the <acronym>LAN</" -"acronym> client machines." +"redirect_port tcp 192.168.0.2:6667 6667\n" +"redirect_port tcp 192.168.0.3:80 80" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59268 +#: book.translate.xml:59888 msgid "" -"Port ranges over individual ports can be indicated with <option>-" -"redirect_port</option>. For example, <replaceable>tcp 192.168.0.2:2000-3000 " -"2000-3000</replaceable> would redirect all connections received on ports " -"2000 to 3000 to ports 2000 to 3000 on client <systemitem>A</systemitem>." +"After adding these arguments to the configuration of <acronym>NAT</acronym> " +"instance 1 in the above ruleset, the <acronym>TCP</acronym> ports will be " +"port forwarded to the <acronym>LAN</acronym> client machines running the " +"<acronym>IRC</acronym> and <acronym>HTTP</acronym> services." msgstr "" -#. (itstool) path: sect3/para -#: book.translate.xml:59275 +#. (itstool) path: sect3/programlisting +#: book.translate.xml:59895 +#, no-wrap msgid "" -"These options can be used when directly running " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>, placed within the <literal>natd_flags=\"\"</literal> option " -"in <filename>/etc/rc.conf</filename>, or passed via a configuration file." +"ipfw -q nat 1 config if $pif same_ports unreg_only reset \\\n" +" redirect_port tcp 192.168.0.2:6667 6667 \\\n" +" redirect_port tcp 192.1683.0.3:80 80" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59281 +#: book.translate.xml:59899 msgid "" -"For further configuration options, consult " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry>" +"Port ranges over individual ports can be indicated with " +"<option>redirect_port</option>. For example, <replaceable>tcp " +"192.168.0.2:2000-3000 2000-3000</replaceable> would redirect all connections " +"received on ports 2000 to 3000 to ports 2000 to 3000 on client " +"<systemitem>A</systemitem>." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59286 +#: book.translate.xml:59908 msgid "Address Redirection" msgstr "位址重新導向" -#. (itstool) path: sect3/indexterm -#: book.translate.xml:59288 -msgid "<primary>address redirection</primary>" -msgstr "" - #. (itstool) path: sect3/para -#: book.translate.xml:59292 +#: book.translate.xml:59910 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 " -"external <acronym>IP</acronym> address by <citerefentry><refentrytitle>natd</" +"external <acronym>IP</acronym> address by <citerefentry><refentrytitle>ipfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, which will then " "rewrite outgoing packets from the <acronym>LAN</acronym> clients with the " "proper external <acronym>IP</acronym> address and redirects all traffic " @@ -86913,7 +87950,7 @@ msgid "" "\"ipaddress\">128.1.1.2</systemitem>, and <systemitem class=\"ipaddress" "\">128.1.1.3</systemitem> are available, <systemitem class=\"ipaddress" "\">128.1.1.1</systemitem> can be used as the " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> machine's external <acronym>IP</acronym> address, while " "<systemitem class=\"ipaddress\">128.1.1.2</systemitem> and <systemitem class=" "\"ipaddress\">128.1.1.3</systemitem> are forwarded back to <acronym>LAN</" @@ -86921,85 +87958,182 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59310 -msgid "The <option>-redirect_address</option> syntax is as follows:" +#: book.translate.xml:59928 +msgid "" +"The <option>redirect_address</option> syntax is as below, where " +"<literal>localIP</literal> is the internal <acronym>IP</acronym> address of " +"the <acronym>LAN</acronym> client, and <literal>publicIP</literal> the " +"external <acronym>IP</acronym> address corresponding to the <acronym>LAN</" +"acronym> client." msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59313 +#: book.translate.xml:59935 #, no-wrap -msgid "-redirect_address localIP publicIP" +msgid "redirect_address localIP publicIP" msgstr "" -#. (itstool) path: row/entry -#: book.translate.xml:59320 -msgid "localIP" +#. (itstool) path: sect3/para +#: book.translate.xml:59937 +#, fuzzy +msgid "In the example, the arguments would read:" +msgstr "在這個例子中列出了以下裝置:" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:59939 +#, no-wrap +msgid "" +"redirect_address 192.168.0.2 128.1.1.2\n" +"redirect_address 192.168.0.3 128.1.1.3" msgstr "" -#. (itstool) path: row/entry -#: book.translate.xml:59321 +#. (itstool) path: sect3/para +#: book.translate.xml:59942 msgid "" -"The internal <acronym>IP</acronym> address of the <acronym>LAN</acronym> " -"client." +"Like <option>redirect_port</option>, these arguments are placed in a " +"<acronym>NAT</acronym> instance configuration. With address redirection, " +"there is no need for port redirection, as all data received on a particular " +"<acronym>IP</acronym> address is redirected." msgstr "" -#. (itstool) path: row/entry -#: book.translate.xml:59326 -msgid "publicIP" +#. (itstool) path: sect3/para +#: book.translate.xml:59949 +#, fuzzy +msgid "" +"The external <acronym>IP</acronym> addresses on the " +"<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> machine must be active and aliased to the external interface. " +"Refer to <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> for details." msgstr "" +"每日、每週、每月透過 <citerefentry><refentrytitle>cron</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>,執行的定期排程 " +"Script,詳情請參閱 <citerefentry><refentrytitle>periodic</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>。" -#. (itstool) path: row/entry -#: book.translate.xml:59327 +#. (itstool) path: sect3/title +#: book.translate.xml:59956 +msgid "Userspace <acronym>NAT</acronym>" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:59958 msgid "" -"The external <acronym>IP</acronym> address corresponding to the " -"<acronym>LAN</acronym> client." +"Let us start with a statement: the userspace <acronym>NAT</acronym> " +"implementation: <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>, has more overhead " +"than in-kernel <acronym>NAT</acronym>. For " +"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> to translate packets, the packets have to be copied from the " +"kernel to userspace and back which brings in extra overhead that is not " +"present with in-kernel <acronym>NAT</acronym>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59335 -msgid "In the example, this argument would read:" +#: book.translate.xml:59966 +msgid "" +"To enable the userpace <acronym>NAT</acronym> daemon " +"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> at boot time, the following is a minimum configuration in " +"<filename>/etc/rc.conf</filename>. Where <option>natd_interface</option> is " +"set to the name of the <acronym>NIC</acronym> attached to the Internet. The " +"<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> script of <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> will automatically " +"check if a dynamic <acronym>IP</acronym> address is used and configure " +"itself to handle that." msgstr "" +"要在開機時啟動 Userspace 的 <acronym>NAT</acronym> daemon " +"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> 需在 <filename>/etc/rc.conf</filename> 中做以下最小設定,其中 " +"<option>natd_interface</option> 要設成連接到網際網路的 <acronym>NIC</" +"acronym> 名稱,<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> script of <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 會自動檢查是否有使用動" +"態 <acronym>IP</acronym> 位址,並且自行設定並處理。" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59337 +#: book.translate.xml:59975 #, no-wrap msgid "" -"-redirect_address 192.168.0.2 128.1.1.2\n" -"-redirect_address 192.168.0.3 128.1.1.3" +"gateway_enable=\"YES\"\n" +"natd_enable=\"YES\"\n" +"natd_interface=\"rl0\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59340 +#: book.translate.xml:59979 msgid "" -"Like <option>-redirect_port</option>, these arguments are placed within the " -"<literal>natd_flags=\"\"</literal> option of <filename>/etc/rc.conf</" -"filename>, or passed via a configuration file. With address redirection, " -"there is no need for port redirection since all data received on a " -"particular <acronym>IP</acronym> address is redirected." +"In general, the above ruleset as explained for in-kernel <acronym>NAT</" +"acronym> can also be used together with <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>. The only exceptions " +"are the configuration of the in-kernel <acronym>NAT</acronym> instance " +"<literal>(ipfw -q nat 1 config ...)</literal> not being applicable any more, " +"rule number 100 and 1000 will have to change sligthly as below, and " +"reassemble rule 99 is not needed anymore as the <option>divert</option> " +"action is used which covers fragmentation." +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:59989 +#, no-wrap +msgid "" +"$cmd 100 divert natd ip from any to any in via $pif\n" +"$cmd 1000 divert natd ip from any to any out via $pif" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59348 +#: book.translate.xml:59992 msgid "" -"The external <acronym>IP</acronym> addresses on the " -"<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> machine must be active and aliased to the external interface. " -"Refer to <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> for details." +"To configure port or address redirection, a similar syntax as with in-kernel " +"<acronym>NAT</acronym> is used. Although, now, instead of specifying the " +"configuration in our ruleset script like with in-kernel <acronym>NAT</" +"acronym>, configuration of <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> is best done in a " +"configuration file. To do this, an extra flag must be passed via <filename>/" +"etc/rc.conf</filename> which specifies the path of the configuration file." +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:60001 +#, no-wrap +msgid "natd_flags=\"-f /etc/natd.conf\"" +msgstr "" + +#. (itstool) path: note/para +#: book.translate.xml:60004 +#, fuzzy +msgid "" +"The specified file must contain a list of configuration options, one per " +"line. For more information about the configuration file and possible " +"variables, consult <citerefentry><refentrytitle>natd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>. Below are two example " +"entries, one per line:" +msgstr "" +"Shell 重新導向是將一個指令的輸出或輸入傳送給另一個指令或檔案。例如,要擷取 " +"<citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 指令的輸出到一個檔案,可以重新導向輸出:" + +#. (itstool) path: note/programlisting +#: book.translate.xml:60010 +#, no-wrap +msgid "" +"redirect_port tcp 192.168.0.2:6667 6667\n" +"redirect_address 192.168.0.3 128.1.1.3" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:59356 +#: book.translate.xml:60016 msgid "The <application>IPFW</application> Command" msgstr "<application>IPFW</application> 指令" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59358 +#: book.translate.xml:60018 msgid "<primary><command>ipfw</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59360 +#: book.translate.xml:60020 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 " @@ -87010,7 +88144,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59369 +#: book.translate.xml:60029 msgid "" "<command>ipfw</command> is a useful way to display the running firewall " "rules to the console screen. The <application>IPFW</application> accounting " @@ -87021,31 +88155,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59377 +#: book.translate.xml:60037 msgid "To list all the running rules in sequence:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59379 +#: book.translate.xml:60039 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59381 +#: book.translate.xml:60041 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:59384 +#: book.translate.xml:60044 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -t list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59386 +#: book.translate.xml:60046 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 " @@ -87054,71 +88188,71 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59392 +#: book.translate.xml:60052 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -a list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59394 +#: book.translate.xml:60054 msgid "To list dynamic rules in addition to static rules:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59396 +#: book.translate.xml:60056 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -d list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59398 +#: book.translate.xml:60058 msgid "To also show the expired dynamic rules:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59400 +#: book.translate.xml:60060 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -d -e list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59402 +#: book.translate.xml:60062 msgid "To zero the counters:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59404 +#: book.translate.xml:60064 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw zero</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59406 +#: book.translate.xml:60066 msgid "" "To zero the counters for just the rule with number <replaceable>NUM</" "replaceable>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59409 +#: book.translate.xml:60069 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw zero <replaceable>NUM</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59412 +#: book.translate.xml:60072 msgid "Logging Firewall Messages" msgstr "記錄防火牆訊息" #. (itstool) path: sect3/indexterm -#: book.translate.xml:59414 +#: book.translate.xml:60074 msgid "" "<primary><application>IPFW</application></primary> <secondary>logging</" "secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59420 +#: book.translate.xml:60080 msgid "" "Even with the logging facility enabled, <application>IPFW</application> will " "not generate any rule logging on its own. The firewall administrator decides " @@ -87131,7 +88265,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59432 +#: book.translate.xml:60092 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 " @@ -87140,7 +88274,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59438 +#: book.translate.xml:60098 msgid "" "The <literal>IPFIREWALL_VERBOSE_LIMIT=5</literal> kernel option limits the " "number of consecutive messages sent to <citerefentry><refentrytitle>syslogd</" @@ -87155,13 +88289,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59452 +#: book.translate.xml:60112 #, no-wrap msgid "last message repeated 45 times" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59454 +#: book.translate.xml:60114 msgid "" "All logged packets messages are written by default to <filename>/var/log/" "security</filename>, which is defined in <filename>/etc/syslog.conf</" @@ -87169,12 +88303,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59460 +#: book.translate.xml:60120 msgid "Building a Rule Script" msgstr "建立規則 Script" #. (itstool) path: sect3/para -#: book.translate.xml:59462 +#: book.translate.xml:60122 msgid "" "Most experienced <application>IPFW</application> users create a file " "containing the rules and code them in a manner compatible with running them " @@ -87186,7 +88320,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59472 +#: book.translate.xml:60132 msgid "" "This example script is compatible with the syntax used by the " "<citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></" @@ -87199,12 +88333,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59479 +#: book.translate.xml:60139 msgid "Start the rules file like this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59481 +#: book.translate.xml:60141 #, no-wrap msgid "" "############### start of example ipfw rules script #############\n" @@ -87225,39 +88359,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59497 +#: book.translate.xml:60157 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:59501 +#: book.translate.xml:60161 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:59505 +#: book.translate.xml:60165 #, no-wrap msgid "<prompt>#</prompt> <userinput>sh /etc/ipfw.rules</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59507 +#: book.translate.xml:60167 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:59510 +#: book.translate.xml:60170 msgid "The same thing could be accomplished by running these commands by hand:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:59513 +#: book.translate.xml:60173 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ipfw -q -f flush</userinput>\n" @@ -87269,20 +88403,86 @@ msgid "" "<prompt>#</prompt> <userinput>ipfw -q add 00611 allow udp from any to 192.0.2.11 53 out via tun0 keep-state</userinput>" msgstr "" +#. (itstool) path: sect2/title +#: book.translate.xml:60184 +msgid "<application>IPFW</application> Kernel Options" +msgstr "<application>IPFW</application> 核心選項" + +#. (itstool) path: sect2/indexterm +#: book.translate.xml:60186 +msgid "<primary>kernel options</primary> <secondary>IPFIREWALL</secondary>" +msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL</secondary>" + +#. (itstool) path: sect2/indexterm +#: book.translate.xml:60192 +msgid "" +"<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" +msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" + +#. (itstool) path: sect2/indexterm +#: book.translate.xml:60198 +msgid "" +"<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</" +"secondary>" +msgstr "" +"<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</secondary>" + +#. (itstool) path: sect2/indexterm +#: book.translate.xml:60204 +msgid "" +"<primary><application>IPFW</application></primary> <secondary>kernel " +"options</secondary>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:60209 +#, fuzzy +msgid "" +"In order to statically compile <application>IPFW</application> support into " +"a custom kernel, refer to the instructions in <xref linkend=\"kernelconfig\"/" +">. The following options are available for the custom kernel configuration " +"file:" +msgstr "" +"或者可以將電視卡支援靜態編譯到自訂的核心當中,若要這麼做則可在自訂核心設定檔" +"加入以下行:" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:60215 +#, no-wrap +msgid "" +"options IPFIREWALL\t\t\t# enables IPFW\n" +"options IPFIREWALL_VERBOSE\t\t# enables logging for rules with log keyword to syslogd(8)\n" +"options IPFIREWALL_VERBOSE_LIMIT=5\t# limits number of logged packets per-entry\n" +"options IPFIREWALL_DEFAULT_TO_ACCEPT # sets default policy to pass what is not explicitly denied\n" +"options IPFIREWALL_NAT\t\t# enables in-kernel NAT support\n" +"options IPFIREWALL_NAT64\t\t# enables in-kernel NAT64 support\n" +"options IPFIREWALL_NPTV6\t\t# enables in-kernel IPv6 NPT support\n" +"options IPFIREWALL_PMOD\t\t# enables protocols modification module support\n" +"options IPDIVERT\t\t\t# enables NAT through natd(8)" +msgstr "" + +#. (itstool) path: note/para +#: book.translate.xml:60226 +msgid "" +"<application>IPFW</application> can be loaded as a kernel module: options " +"above are built by default as modules or can be set at runtime using " +"tunables." +msgstr "" + #. (itstool) path: sect1/title -#: book.translate.xml:59525 +#: book.translate.xml:60234 msgid "IPFILTER (IPF)" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:59527 +#: book.translate.xml:60236 msgid "" "<primary>firewall</primary> <secondary><application>IPFILTER</application></" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:59533 +#: book.translate.xml:60242 msgid "" "<application>IPFILTER</application>, also known as <application>IPF</" "application>, is a cross-platform, open source firewall which has been " @@ -87294,7 +88494,7 @@ msgstr "" "OpenBSD 與 <trademark>Solaris</trademark>。" #. (itstool) path: sect1/para -#: book.translate.xml:59538 +#: book.translate.xml:60247 msgid "" "<application>IPFILTER</application> is a kernel-side firewall and " "<acronym>NAT</acronym> mechanism that can be controlled and monitored by " @@ -87315,7 +88515,7 @@ msgstr "" "application> 來記錄 <application>IPFILTER</application> 動作到系統記錄檔。" #. (itstool) path: sect1/para -#: book.translate.xml:59550 +#: book.translate.xml:60259 msgid "" "<application>IPF</application> was originally written using a rule " "processing logic of <quote>the last matching rule wins</quote> and only used " @@ -87329,7 +88529,7 @@ msgstr "" "保留狀態 (<literal>keep state</literal>) 的選項。" #. (itstool) path: sect1/para -#: book.translate.xml:59557 +#: book.translate.xml:60266 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 " @@ -87342,7 +88542,7 @@ msgstr "" "\">http://marc.info/?l=ipfilter</uri> 取得。" #. (itstool) path: sect1/para -#: book.translate.xml:59561 +#: book.translate.xml:60270 msgid "" "This section of the Handbook focuses on <application>IPF</application> as it " "pertains to FreeBSD. It provides examples of rules that contain the " @@ -87353,19 +88553,19 @@ msgstr "" "(<literal>keep state</literal>) 選項的規則範例。" #. (itstool) path: sect2/title -#: book.translate.xml:59568 +#: book.translate.xml:60277 msgid "Enabling <application>IPF</application>" msgstr "開啟 <application>IPF</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59570 +#: book.translate.xml:60279 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>enabling</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59576 +#: book.translate.xml:60285 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 " @@ -87373,7 +88573,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59581 +#: book.translate.xml:60290 msgid "" "<primary>kernel options</primary> <secondary><application>IPFILTER</" "application></secondary>" @@ -87382,12 +88582,12 @@ msgstr "" "secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59587 +#: book.translate.xml:60296 msgid "<primary>kernel options</primary> <secondary>IPFILTER_LOG</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPFILTER_LOG</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59593 +#: book.translate.xml:60302 msgid "" "<primary>kernel options</primary> <secondary>IPFILTER_DEFAULT_BLOCK</" "secondary>" @@ -87395,14 +88595,14 @@ msgstr "" "<primary>核心選項</primary> <secondary>IPFILTER_DEFAULT_BLOCK</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59599 +#: book.translate.xml:60308 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>kernel " "options</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59605 +#: book.translate.xml:60314 msgid "" "For users who prefer to statically compile <application>IPF</application> " "support into a custom kernel, refer to the instructions in <xref linkend=" @@ -87410,7 +88610,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59610 +#: book.translate.xml:60319 #, no-wrap msgid "" "options IPFILTER\n" @@ -87420,7 +88620,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59615 +#: book.translate.xml:60324 msgid "" "where <literal>options IPFILTER</literal> enables support for " "<application>IPFILTER</application>, <literal>options IPFILTER_LOG</literal> " @@ -87434,7 +88634,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59628 +#: book.translate.xml:60337 msgid "" "To configure the system to enable <application>IPF</application> at boot " "time, add the following entries to <filename>/etc/rc.conf</filename>. These " @@ -87445,7 +88645,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59637 +#: book.translate.xml:60346 #, no-wrap msgid "" "ipfilter_enable=\"YES\" # Start ipf firewall\n" @@ -87458,13 +88658,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59645 +#: book.translate.xml:60354 msgid "" "If <acronym>NAT</acronym> functionality is needed, also add these lines:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59648 +#: book.translate.xml:60357 #, no-wrap msgid "" "gateway_enable=\"YES\" # Enable as LAN gateway\n" @@ -87473,18 +88673,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59652 +#: book.translate.xml:60361 msgid "Then, to start <application>IPF</application> now:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59654 +#: book.translate.xml:60363 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ipfilter start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59656 +#: book.translate.xml:60365 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 " @@ -87492,20 +88692,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59661 +#: book.translate.xml:60370 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipf -Fa -f /etc/ipf.rules</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59663 +#: book.translate.xml:60372 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:59667 +#: book.translate.xml:60376 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 " @@ -87514,7 +88714,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59673 +#: book.translate.xml:60382 msgid "" "Refer to <citerefentry><refentrytitle>ipf</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for details on the other flags available with this " @@ -87522,19 +88722,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:59678 +#: book.translate.xml:60387 msgid "<application>IPF</application> Rule Syntax" msgstr "<application>IPF</application> 規則語法" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59680 +#: book.translate.xml:60389 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>rule " "syntax</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59686 +#: book.translate.xml:60395 msgid "" "This section describes the <application>IPF</application> rule syntax used " "to create stateful rules. When creating rules, keep in mind that unless the " @@ -87547,7 +88747,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59697 +#: book.translate.xml:60406 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 " @@ -87555,7 +88755,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59702 +#: book.translate.xml:60411 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. " @@ -87566,7 +88766,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59711 +#: book.translate.xml:60420 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</" @@ -87574,7 +88774,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59715 +#: book.translate.xml:60424 msgid "" "This section describes each of these keywords and their options. It is not " "an exhaustive list of every possible option. Refer to " @@ -87585,7 +88785,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59726 +#: book.translate.xml:60435 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 " @@ -87593,91 +88793,91 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59731 +#: book.translate.xml:60440 msgid "<literal>block</literal>: drops the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59733 +#: book.translate.xml:60442 msgid "<literal>pass</literal>: allows the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59735 +#: book.translate.xml:60444 msgid "<literal>log</literal>: generates a log record." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59738 +#: book.translate.xml:60447 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:59742 +#: book.translate.xml:60451 msgid "" "<literal>auth</literal>: queues the packet for further processing by another " "program." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59745 +#: book.translate.xml:60454 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:59749 +#: book.translate.xml:60458 msgid "" "<literal>decapsulate</literal>: removes any headers in order to process the " "contents of the packet." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59755 +#: book.translate.xml:60464 msgid "DIRECTION" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59757 +#: book.translate.xml:60466 msgid "" "Next, each rule must explicitly state the direction of traffic using one of " "these keywords:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59760 +#: book.translate.xml:60469 msgid "<literal>in</literal>: the rule is applied against an inbound packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59763 +#: book.translate.xml:60472 msgid "<literal>out</literal>: the rule is applied against an outbound packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59766 +#: book.translate.xml:60475 msgid "<literal>all</literal>: the rule applies to either direction." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59769 +#: book.translate.xml:60478 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:59778 +#: book.translate.xml:60487 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:59782 +#: book.translate.xml:60491 msgid "" "<literal>log</literal>: when performing the specified ACTION, the contents " "of the packet's headers will be written to the " @@ -87686,7 +88886,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59787 +#: book.translate.xml:60496 msgid "" "<literal>quick</literal>: if a packet matches this rule, the ACTION " "specified by the rule occurs and no further processing of any following " @@ -87694,7 +88894,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59792 +#: book.translate.xml:60501 msgid "" "<literal>on</literal>: must be followed by the interface name as displayed " "by <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -87703,21 +88903,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59797 +#: book.translate.xml:60506 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:59801 +#: book.translate.xml:60510 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:59805 +#: book.translate.xml:60514 msgid "" "<literal>first</literal>: if the <literal>log</literal> keyword is being " "used in conjunction with a <literal>keep state</literal> option, this option " @@ -87726,7 +88926,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59812 +#: book.translate.xml:60521 msgid "" "Additional options are available to specify error return messages. Refer to " "<citerefentry><refentrytitle>ipf</refentrytitle><manvolnum>5</manvolnum></" @@ -87734,12 +88934,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59820 +#: book.translate.xml:60529 msgid "PROTO_TYPE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59822 +#: book.translate.xml:60531 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 " @@ -87752,12 +88952,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59838 +#: book.translate.xml:60547 msgid "SRC_ADDR" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59840 +#: book.translate.xml:60549 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 " @@ -87768,7 +88968,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59848 +#: book.translate.xml:60557 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 " @@ -87779,7 +88979,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59862 +#: book.translate.xml:60571 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 " @@ -87787,7 +88987,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59867 +#: book.translate.xml:60576 msgid "" "A number of different comparison operators are supported: <literal>=</" "literal> (equal to), <literal>!=</literal> (not equal to), <literal><</" @@ -87797,7 +88997,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59876 +#: book.translate.xml:60585 msgid "" "To specify port ranges, place the two port numbers between <literal><>" "</literal> (less than and greater than ), <literal>><</literal> " @@ -87806,12 +89006,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59885 +#: book.translate.xml:60594 msgid "DST_ADDR" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59887 +#: book.translate.xml:60596 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 " @@ -87821,7 +89021,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59899 +#: book.translate.xml:60608 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 " @@ -87830,12 +89030,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59908 +#: book.translate.xml:60617 msgid "TCP_FLAG|ICMP_TYPE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59910 +#: book.translate.xml:60619 msgid "" "If <literal>tcp</literal> is specified as the PROTO_TYPE, flags can be " "specified as letters, where each letter represents one of the possible " @@ -87847,7 +89047,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59924 +#: book.translate.xml:60633 msgid "" "If <literal>icmp</literal> is specified as the PROTO_TYPE, the " "<acronym>ICMP</acronym> type to match can be specified. Refer to " @@ -87856,12 +89056,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59932 +#: book.translate.xml:60641 msgid "STATE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59934 +#: book.translate.xml:60643 msgid "" "If a <literal>pass</literal> rule contains <literal>keep state</literal>, " "<application>IPF</application> will add an entry to its dynamic state table " @@ -87873,7 +89073,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59946 +#: book.translate.xml:60655 msgid "" "In <application>IPF</application>, packets destined to go out through the " "interface connected to the public Internet are first checked against the " @@ -87890,7 +89090,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59964 +#: book.translate.xml:60673 msgid "" "Several keywords can be added after <literal>keep state</literal>. If used, " "these keywords set various options that control stateful filtering, such as " @@ -87900,14 +89100,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59978 +#: book.translate.xml:60687 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:59982 +#: book.translate.xml:60691 msgid "" "FreeBSD uses the loopback interface (<filename>lo0</filename>) and the " "<acronym>IP</acronym> address <systemitem class=\"ipaddress\">127.0.0.1</" @@ -87916,7 +89116,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59989 +#: book.translate.xml:60698 #, no-wrap msgid "" "# no restrictions on loopback interface\n" @@ -87925,7 +89125,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59993 +#: book.translate.xml:60702 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 " @@ -87938,14 +89138,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60004 +#: book.translate.xml:60713 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:60008 +#: book.translate.xml:60717 #, no-wrap msgid "" "# no restrictions on inside LAN interface for private network\n" @@ -87954,7 +89154,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60012 +#: book.translate.xml:60721 msgid "" "The rules for the public interface's outbound and inbound sections should " "have the most frequently matched rules placed before less commonly matched " @@ -87963,7 +89163,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60018 +#: book.translate.xml:60727 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 " @@ -87973,7 +89173,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60026 +#: book.translate.xml:60735 #, no-wrap msgid "" "# interface facing Internet (outbound)\n" @@ -88018,7 +89218,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60066 +#: book.translate.xml:60775 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 " @@ -88026,7 +89226,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60071 +#: book.translate.xml:60780 #, no-wrap msgid "" "# interface facing Internet (inbound)\n" @@ -88067,7 +89267,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60107 +#: book.translate.xml:60816 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 " @@ -88076,7 +89276,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60113 +#: book.translate.xml:60822 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 " @@ -88085,7 +89285,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60118 +#: book.translate.xml:60827 #, no-wrap msgid "" "# Allow traffic in from ISP's DHCP server. Replace z.z.z.z with\n" @@ -88099,23 +89299,28 @@ msgid "" "block in log first quick on dc0 all" msgstr "" +#. (itstool) path: sect2/title +#: book.translate.xml:60839 +msgid "Configuring <acronym>NAT</acronym>" +msgstr "設定 <acronym>NAT</acronym>" + #. (itstool) path: sect2/indexterm -#: book.translate.xml:60134 +#: book.translate.xml:60843 msgid "<primary>IP masquerading</primary> <see>NAT</see>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60140 +#: book.translate.xml:60849 msgid "<primary>network address translation</primary> <see>NAT</see>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60146 +#: book.translate.xml:60855 msgid "<primary><command>ipnat</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60148 +#: book.translate.xml:60857 msgid "" "To enable <acronym>NAT</acronym>, add these statements to <filename>/etc/rc." "conf</filename> and specify the name of the file containing the " @@ -88123,7 +89328,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60152 +#: book.translate.xml:60861 #, no-wrap msgid "" "gateway_enable=\"YES\"\n" @@ -88132,7 +89337,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60156 +#: book.translate.xml:60865 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 " @@ -88143,7 +89348,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60162 +#: book.translate.xml:60871 msgid "" "The basic syntax for a <acronym>NAT</acronym> rule is as follows, where " "<literal>map</literal> starts the rule and <replaceable>IF</replaceable> " @@ -88151,13 +89356,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60167 +#: book.translate.xml:60876 #, no-wrap msgid "map <replaceable>IF</replaceable> <replaceable>LAN_IP_RANGE</replaceable> -> <replaceable>PUBLIC_ADDRESS</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60169 +#: book.translate.xml:60878 msgid "" "The <replaceable>LAN_IP_RANGE</replaceable> is the range of <acronym>IP</" "acronym> addresses used by internal clients. Usually, it is a private " @@ -88169,7 +89374,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60178 +#: book.translate.xml:60887 msgid "" "In <application>IPF</application>, when a packet arrives at the firewall " "from the <acronym>LAN</acronym> with a public destination, it first passes " @@ -88191,7 +89396,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60201 +#: book.translate.xml:60910 msgid "" "For networks that have large numbers of internal systems or multiple " "subnets, the process of funneling every private <acronym>IP</acronym> " @@ -88200,7 +89405,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60207 +#: book.translate.xml:60916 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 " @@ -88208,26 +89413,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60212 +#: book.translate.xml:60921 #, 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:60214 +#: book.translate.xml:60923 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:60218 +#: book.translate.xml:60927 #, no-wrap msgid "map dc0 192.168.1.0/24 -> 0/32 portmap tcp/udp auto" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60220 +#: book.translate.xml:60929 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 " @@ -88238,14 +89443,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60229 +#: book.translate.xml:60938 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:60233 +#: book.translate.xml:60942 #, no-wrap msgid "" "map dc0 192.168.1.0/24 -> 204.134.75.0/255.255.255.0\n" @@ -88253,7 +89458,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60236 +#: book.translate.xml:60945 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 " @@ -88265,26 +89470,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60245 +#: book.translate.xml:60954 #, 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:60247 +#: book.translate.xml:60956 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:60251 +#: book.translate.xml:60960 #, 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:60253 +#: book.translate.xml:60962 msgid "" "<application>IPF</application> has a built in <acronym>FTP</acronym> proxy " "which can be used with <acronym>NAT</acronym>. It monitors all outbound " @@ -88295,7 +89500,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60262 +#: book.translate.xml:60971 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 " @@ -88305,7 +89510,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60270 +#: book.translate.xml:60979 #, no-wrap msgid "" "map dc0 10.0.10.0/29 -> 0/32 proxy port 21 ftp/tcp\n" @@ -88314,7 +89519,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60274 +#: book.translate.xml:60983 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</" @@ -88326,7 +89531,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60284 +#: book.translate.xml:60993 msgid "" "Without the <acronym>FTP</acronym> proxy, the following firewall rules would " "instead be needed. Note that without the proxy, all ports above " @@ -88334,7 +89539,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60289 +#: book.translate.xml:60998 #, no-wrap msgid "" "# Allow out LAN PC client FTP to public Internet\n" @@ -88349,7 +89554,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60299 +#: book.translate.xml:61008 msgid "" "Whenever the file containing the <acronym>NAT</acronym> rules is edited, run " "<command>ipnat</command> with <option>-CF</option> to delete the current " @@ -88359,65 +89564,65 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60307 +#: book.translate.xml:61016 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -CF -f /etc/ipnat.rules</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60309 +#: book.translate.xml:61018 msgid "To display the <acronym>NAT</acronym> statistics:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60311 +#: book.translate.xml:61020 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -s</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60313 +#: book.translate.xml:61022 msgid "To list the <acronym>NAT</acronym> table's current mappings:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60316 +#: book.translate.xml:61025 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -l</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60318 +#: book.translate.xml:61027 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:60321 +#: book.translate.xml:61030 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -v</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60437 +#: book.translate.xml:61146 msgid "Viewing <application>IPF</application> Statistics" msgstr "檢視 <application>IPF</application> 統計資訊" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60439 +#: book.translate.xml:61148 msgid "<primary><command>ipfstat</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60441 +#: book.translate.xml:61150 msgid "" "<primary><application>IPFILTER</application></primary> " "<secondary>statistics</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60447 +#: book.translate.xml:61156 msgid "" "<application>IPF</application> includes " "<citerefentry><refentrytitle>ipfstat</refentrytitle><manvolnum>8</" @@ -88428,12 +89633,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60456 +#: book.translate.xml:61165 msgid "The default <command>ipfstat</command> output looks like this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60459 +#: book.translate.xml:61168 #, no-wrap msgid "" "input packets: blocked 99286 passed 1255609 nomatch 14686 counted 0\n" @@ -88456,7 +89661,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60477 +#: book.translate.xml:61186 msgid "" "Several options are available. When supplied with either <option>-i</option> " "for inbound or <option>-o</option> for outbound, the command will retrieve " @@ -88467,7 +89672,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60486 +#: book.translate.xml:61195 #, no-wrap msgid "" "@1 pass out on xl0 from any to any\n" @@ -88476,7 +89681,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60490 +#: book.translate.xml:61199 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> " @@ -88485,7 +89690,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60495 +#: book.translate.xml:61204 #, no-wrap msgid "" "2451423 pass out on xl0 from any to any\n" @@ -88494,7 +89699,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60499 +#: book.translate.xml:61208 msgid "" "To display the state table in a format similar to " "<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></" @@ -88507,24 +89712,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60509 +#: book.translate.xml:61218 msgid "<application>IPF</application> Logging" msgstr "<application>IPF</application> 日誌" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60511 +#: book.translate.xml:61220 msgid "<primary><command>ipmon</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60513 +#: book.translate.xml:61222 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>logging</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60519 +#: book.translate.xml:61228 msgid "" "<application>IPF</application> provides <command>ipmon</command>, which can " "be used to write the firewall's logging information in a human readable " @@ -88534,7 +89739,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60525 +#: book.translate.xml:61234 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. " @@ -88545,7 +89750,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60533 +#: book.translate.xml:61242 #, no-wrap msgid "" "ipmon_flags=\"-Ds\" # D = start as daemon\n" @@ -88555,7 +89760,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60538 +#: book.translate.xml:61247 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 " @@ -88563,7 +89768,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60543 +#: book.translate.xml:61252 msgid "" "Once the logging facility is enabled in <filename>rc.conf</filename> and " "started with <command>service ipmon start</command>, <application>IPF</" @@ -88576,7 +89781,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60554 +#: book.translate.xml:61263 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 " @@ -88584,7 +89789,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60559 +#: book.translate.xml:61268 #, no-wrap msgid "" "LOG_INFO - packets logged using the \"log\" keyword as the action rather than pass or block.\n" @@ -88594,33 +89799,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60564 +#: book.translate.xml:61273 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:60568 +#: book.translate.xml:61277 #, no-wrap msgid "<prompt>#</prompt> <userinput>touch /var/log/ipfilter.log</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60570 +#: book.translate.xml:61279 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:60574 +#: book.translate.xml:61283 #, no-wrap msgid "local0.* /var/log/ipfilter.log" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60576 +#: book.translate.xml:61285 msgid "" "To activate the changes and instruct <citerefentry><refentrytitle>syslogd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to read the modified " @@ -88629,44 +89834,44 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60580 +#: book.translate.xml:61289 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:60584 +#: book.translate.xml:61293 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:60590 +#: book.translate.xml:61299 msgid "The date of packet receipt." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60594 +#: book.translate.xml:61303 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:60600 +#: book.translate.xml:61309 msgid "The name of the interface that processed the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60605 +#: book.translate.xml:61314 msgid "" "The group and rule number of the rule in the format <literal>@0:17</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60610 +#: book.translate.xml:61319 msgid "" "The action: <literal>p</literal> for passed, <literal>b</literal> for " "blocked, <literal>S</literal> for a short packet, <literal>n</literal> did " @@ -88674,7 +89879,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60617 +#: book.translate.xml:61326 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 " @@ -88682,21 +89887,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60625 +#: book.translate.xml:61334 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:60630 +#: book.translate.xml:61339 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:60636 +#: book.translate.xml:61345 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 " @@ -88706,7 +89911,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60641 +#: book.translate.xml:61350 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 " @@ -88715,101 +89920,610 @@ msgid "" "message." msgstr "" +#. (itstool) path: sect1/title +#: book.translate.xml:61361 +msgid "Blacklistd" +msgstr "" + +#. (itstool) path: sect1/para +#: book.translate.xml:61363 +msgid "" +"Blacklistd is a daemon listening to sockets to receive notifications from " +"other daemons about connection attempts that failed or were successful. It " +"is most widely used in blocking too many connection attempts on open ports. " +"A prime example is <application>SSH</application> running on the internet " +"getting a lot of requests from bots or scripts trying to guess passwords and " +"gain access. Using <application>blacklistd</application>, the daemon can " +"notify the firewall to create a filter rule to block excessive connection " +"attempts from a single source after a number of tries. Blacklistd was first " +"developed on NetBSD and appeared there in version 7. FreeBSD 11 imported " +"blacklistd from NetBSD." +msgstr "" + +#. (itstool) path: sect1/para +#: book.translate.xml:61377 +msgid "" +"This chapter describes how to set up blacklistd, configure it, and provides " +"examples on how to use it. Readers should be familiar with basic firewall " +"concepts like rules. For details, refer to the firewall chapter. PF is used " +"in the examples, but other firewalls available on FreeBSD should be able to " +"work with blacklistd, too." +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:61385 +msgid "Enabling Blacklistd" +msgstr "開啟 Blacklistd" + +#. (itstool) path: sect2/para +#: book.translate.xml:61387 +msgid "" +"The main configuration for blacklistd is stored in " +"<citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry>. Various command line options are also available " +"to change blacklistd's run-time behavior. Persistent configuration across " +"reboots should be stored in <filename>/etc/blacklistd.conf</filename>. To " +"enable the daemon during system boot, add a <literal>blacklistd_enable</" +"literal> line to <filename>/etc/rc.conf</filename> like this:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61396 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>sysrc blacklistd_enable=yes</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61398 +#, fuzzy +msgid "To start the service manually, run this command:" +msgstr "要立即啟動服務可:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61400 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>service blacklistd start</userinput>" +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:61404 +msgid "Creating a Blacklistd Ruleset" +msgstr "建立 Blacklistd 規則集" + +#. (itstool) path: sect2/para +#: book.translate.xml:61406 +msgid "" +"Rules for blacklistd are configured in " +"<citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> with one entry per line. Each rule contains a " +"tuple separated by spaces or tabs. Rules either belong to a <literal>local</" +"literal> or a <literal>remote</literal>, which applies to the machine where " +"blacklistd is running or an outside source, respectively." +msgstr "" + +#. (itstool) path: sect3/title +#: book.translate.xml:61415 +msgid "Local Rules" +msgstr "本地規則" + +#. (itstool) path: sect3/para +#: book.translate.xml:61417 +msgid "An example blacklistd.conf entry for a local rule looks like this:" +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61420 +#, no-wrap +msgid "" +"[local]\n" +"ssh stream * * * 3 24h" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61423 +msgid "" +"All rules that follow the <literal>[local]</literal> section are treated as " +"local rules (which is the default), applying to the local machine. When a " +"<literal>[remote]</literal> section is encountered, all rules that follow it " +"are handled as remote machine rules." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61430 +msgid "" +"Seven fields define a rule separated by either tabs or spaces. The first " +"four fields identify the traffic that should be blacklisted. The three " +"fields that follow define backlistd's behavior. Wildcards are denoted as " +"asterisks (<literal>*</literal>), matching anything in this field. The first " +"field defines the location. In local rules, these are the network ports. The " +"syntax for the location field is as follows:" +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61439 +#, no-wrap +msgid "[<replaceable>address</replaceable>|<replaceable>interface</replaceable>][/<replaceable>mask</replaceable>][:<replaceable>port</replaceable>]" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61441 +msgid "" +"Adressses can be specified as IPv4 in numeric format or IPv6 in square " +"brackets. An interface name like <literal><replaceable>em0</replaceable></" +"literal> can also be used." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61446 +msgid "" +"The socket type is defined by the second field. TCP sockets are of type " +"<literal>stream</literal>, whereas UDP is denoted as <literal>dgram</" +"literal>. The example above uses TCP, since SSH is using that protocol." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61451 +msgid "" +"A protocol can be used in the third field of a blacklistd rule. The " +"following protocols can be used: <literal>tcp</literal>, <literal>udp</" +"literal>, <literal>tcp6</literal>, <literal>udp6</literal>, or numeric. A " +"wildcard, like in the example, is typically used to match all protocols " +"unless there is a reason to distinguish traffic by a certain protocol." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61459 +msgid "" +"In the fourth field, the effective user or owner of the daemon process that " +"is reporting the event is defined. The username or <acronym>UID</acronym> " +"can be used here, as well as a wildcard (see example rule above)." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61464 +msgid "" +"The packet filter rule name is declared by the fifth field, which starts the " +"behavior part of the rule. By default, blacklistd puts all blocks under a pf " +"anchor called <literal>blacklistd</literal> in <filename>pf.conf</filename> " +"like this:" +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61470 +#, no-wrap +msgid "" +"anchor \"blacklistd/*\" in on $ext_if\n" +"block in\n" +"pass out" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61474 +msgid "" +"For separate blacklists, an anchor name can be used in this field. In other " +"cases, the wildcard will suffice. When a name starts with a hyphen " +"(<literal>-</literal>) it means that an anchor with the default rule name " +"prepended should be used. A modified example from the above using the hyphen " +"would look like this:" +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61481 +#, no-wrap +msgid "ssh stream * * -ssh 3 24h" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61483 +msgid "" +"With such a rule, any new blacklist rules are added to an anchor called " +"<literal>blacklistd-ssh</literal>." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61486 +msgid "" +"To block whole subnets for a single rule violation, a <literal>/</literal> " +"in the rule name can be used. This causes the remaining portion of the name " +"to be interpreted as the mask to be applied to the address specified in the " +"rule. For example, this rule would block every address adjoining " +"<literal>/24</literal>." +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61493 +#, no-wrap +msgid "22 stream tcp * */24 3 24h" +msgstr "" + +#. (itstool) path: note/para +#: book.translate.xml:61496 +msgid "" +"It is important to specify the proper protocol here. IPv4 and IPv6 treat /24 " +"differently, that is the reason why <literal>*</literal> cannot be used in " +"the third field for this rule." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61502 +msgid "" +"This rule defines that if any one host in that network is misbehaving, " +"everything else on that network will be blocked, too." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61506 +msgid "" +"The sixth field, called <literal>nfail</literal>, sets the number of login " +"failures required to blacklist the remote IP in question. When a wildcard is " +"used at this position, it means that blocks will never happen. In the " +"example rule above, a limit of three is defined meaning that after three " +"attempts to log into <application>SSH</application> on one connection, the " +"IP is blocked." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61515 +msgid "" +"The last field in a blacklistd rule definition specifies how long a host is " +"blacklisted. The default unit is seconds, but suffixes like <literal>m</" +"literal>, <literal>h</literal>, and <literal>d</literal> can also be " +"specified for minutes, hours, and days, respectively." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61522 +msgid "" +"The example rule in its entirety means that after three times authenticating " +"to <application>SSH</application> will result in a new PF block rule for " +"that host. Rule matches are performed by first checking local rules one " +"after another, from most specific to least specific. When a match occurs, " +"the <literal>remote</literal> rules are applied and the name, " +"<literal>nfail</literal>, and disable fields are changed by the " +"<literal>remote</literal> rule that matched." +msgstr "" + +#. (itstool) path: sect3/title +#: book.translate.xml:61534 +msgid "Remote Rules" +msgstr "遠端規則" + +#. (itstool) path: sect3/para +#: book.translate.xml:61536 +msgid "" +"Remote rules are used to specify how blacklistd changes its behavior " +"depending on the remote host currently being evaluated. Each field in a " +"remote rule is the same as in a local rule. The only difference is in the " +"way blacklistd is using them. To explain it, this example rule is used:" +msgstr "" + +#. (itstool) path: sect3/programlisting +#: book.translate.xml:61543 +#, no-wrap +msgid "" +"[remote]\n" +"203.0.113.128/25 * * * =/25 = 48h" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61546 +msgid "" +"The address field can be an IP address (either v4 or v6), a port or both. " +"This allows setting special rules for a specific remote address range like " +"in this example. The fields for type, protocol and owner are identically " +"interpreted as in the local rule." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61552 +msgid "" +"The name fields is different though: the equal sign (<literal>=</literal>) " +"in a remote rule tells blacklistd to use the value from the matching local " +"rule. It means that the firewall rule entry is taken and the <systemitem " +"class=\"netmask\">/25</systemitem> prefix (a netmask of <systemitem class=" +"\"netmask\">255.255.255.128</systemitem>) is added. When a connection from " +"that address range is blacklisted, the entire subnet is affected. A PF " +"anchor name can also be used here, in which case blacklistd will add rules " +"for this address block to the anchor of that name. The default table is used " +"when a wildcard is specified." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61564 +msgid "" +"A custom number of failures in the <literal>nfail</literal> column can be " +"defined for an address. This is useful for exceptions to a specific rule, to " +"maybe allow someone a less strict application of rules or a bit more " +"leniency in login tries. Blocking is disabled when an asterisk is used in " +"this sixth field." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:61572 +msgid "" +"Remote rules allow a stricter enforcement of limits on attempts to log in " +"compared to attempts coming from a local network like an office." +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:61579 +msgid "Blacklistd Client Configuration" +msgstr "Blacklistd 客戶端設定" + +#. (itstool) path: sect2/para +#: book.translate.xml:61581 +#, fuzzy +msgid "" +"There are a few software packages in FreeBSD that can utilize blacklistd's " +"functionality. The two most prominent ones are " +"<citerefentry><refentrytitle>ftpd</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> and <citerefentry><refentrytitle>sshd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> to block excessive " +"connection attempts. To activate blacklistd in the SSH daemon, add the " +"following line to <filename>/etc/ssh/sshd_config</filename>:" +msgstr "" +"這個程序可以用來在執行中的系統上啟動服務,而在 " +"<citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> 中有指定的服務則會在開機時自動啟動。例如,要在系統" +"啟動時開啟 <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry>,可入下行到 <filename>/etc/rc.conf</filename>:" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:61588 +#, no-wrap +msgid "UseBlacklist yes" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61590 +msgid "Restart sshd afterwards to make these changes take effect." +msgstr "接著重新啟動 sshd 來使變更生效。" + +#. (itstool) path: sect2/para +#: book.translate.xml:61593 +#, fuzzy +msgid "" +"Blacklisting for <citerefentry><refentrytitle>ftpd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> is enabled using " +"<literal>-B</literal>, either in <filename>/etc/inetd.conf</filename> or as " +"a flag in <filename>/etc/rc.conf</filename> like this:" +msgstr "" +"要設定讓 <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> 在開機時啟動可以加入此行到 <filename>/etc/rc.conf</" +"filename>:" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:61599 +#, no-wrap +msgid "ftpd_flags=\"-B\"" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61601 +msgid "That is all that is needed to make these programs talk to blacklistd." +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:61606 +msgid "Blacklistd Management" +msgstr "Blacklistd 管理" + +#. (itstool) path: sect2/para +#: book.translate.xml:61608 +#, fuzzy +msgid "" +"Blacklistd provides the user with a management utility called " +"<citerefentry><refentrytitle>blacklistctl</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry>. It displays blocked addresses and networks that " +"are blacklisted by the rules defined in " +"<citerefentry><refentrytitle>blacklistd.conf</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry>. To see the list of currently blocked hosts, use " +"<command>dump</command> combined with <option>-b</option> like this." +msgstr "" +"<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> 的 <literal>@reboot</literal> 功能,可用來替代指定詳細的時間," +"而該工作會在系統初始化時執行 <citerefentry><refentrytitle>cron</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 後執行。" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61616 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>blacklistctl dump -b</userinput>\n" +" address/ma:port id nfail last access\n" +"213.0.123.128/25:22 OK 6/3 2019/06/08 14:30:19" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61620 +msgid "" +"This example shows that there were 6 out of three permitted attempts on port " +"22 coming from the address range <systemitem class=\"netmask" +"\">213.0.123.128/25</systemitem>. There are more attempts listed than are " +"allowed because SSH allows a client to try multiple logins on a single TCP " +"connection. A connection that is currently going on is not stopped by " +"blacklistd. The last connection attempt is listed in the <literal>last " +"access</literal> column of the output." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61630 +msgid "" +"To see the remaining time that this host will be on the blacklist, add " +"<option>-r</option> to the previous command." +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61634 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>blacklistctl dump -br</userinput>\n" +" address/ma:port id nfail remaining time\n" +"213.0.123.128/25:22 OK 6/3 36s" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61638 +msgid "" +"In this example, there are 36s seconds left until this host will not be " +"blocked any more." +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:61643 +msgid "Removing Hosts from the Block List" +msgstr "從封鎖清單移除主機" + +#. (itstool) path: sect2/para +#: book.translate.xml:61645 +msgid "" +"Sometimes it is necessary to remove a host from the block list before the " +"remaining time expires. Unfortunately, there is no functionality in " +"blacklistd to do that. However, it is possible to remove the address from " +"the PF table using pfctl. For each blocked port, there is a child anchor " +"inside the blacklistd anchor defined in <filename>/etc/pf.conf</filename>. " +"For example, if there is a child anchor for blocking port 22 it is called " +"<literal>blacklistd/22</literal>. There is a table inside that child anchor " +"that contains the blocked addresses. This table is called port followed by " +"the port number. In this example, it would be called <literal>port22</" +"literal>. With that information at hand, it is now possible to use " +"<citerefentry><refentrytitle>pfctl</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> to display all addresses listed like this:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61661 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>pfctl -a <replaceable>blacklistd/22</replaceable> -t <replaceable>port22</replaceable> -T show</userinput>\n" +"...\n" +"213.0.123.128/25\n" +"..." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61666 +msgid "" +"After identifying the address to be unblocked from the list, the following " +"command removes it from the list:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:61669 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>pfctl -a <replaceable>blacklistd/22</replaceable> -T delete <replaceable>213.0.123.128/25</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:61671 +msgid "" +"The address is now removed from PF, but will still show up in the " +"blacklistctl list, since it does not know about any changes made in PF. The " +"entry in blacklistd's database will eventually expire and be removed from " +"its output eventually. The entry will be added again if the host is matching " +"one of the block rules in blacklistd again." +msgstr "" + #. (itstool) path: chapter/title -#: book.translate.xml:60659 +#: book.translate.xml:61689 msgid "Advanced Networking" msgstr "進階網路設定" #. (itstool) path: sect1/para -#: book.translate.xml:60664 +#: book.translate.xml:61694 msgid "This chapter covers a number of advanced networking topics." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60671 +#: book.translate.xml:61701 msgid "The basics of gateways and routes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60675 +#: book.translate.xml:61705 msgid "How to set up USB tethering." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60679 +#: book.translate.xml:61709 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:60684 +#: book.translate.xml:61714 msgid "How to make FreeBSD act as a bridge." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60688 +#: book.translate.xml:61718 msgid "How to set up network <acronym>PXE</acronym> booting." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60693 +#: book.translate.xml:61723 msgid "How to set up <acronym>IPv6</acronym> on a FreeBSD machine." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60698 +#: book.translate.xml:61728 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:60704 +#: book.translate.xml:61734 msgid "How to configure multiple <acronym>VLANs</acronym> on FreeBSD." msgstr "如何在 FreeBSD 上設定多個 <acronym>VLAN</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:60713 +#: book.translate.xml:61739 +msgid "Configure bluetooth headset." +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:61747 msgid "Understand the basics of the <filename>/etc/rc</filename> scripts." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60722 +#: book.translate.xml:61756 msgid "" "Know how to configure and install a new FreeBSD kernel (<xref linkend=" "\"kernelconfig\"/>)." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:60736 +#: book.translate.xml:61770 msgid "Gateways and Routes" msgstr "通訊閘與路由" #. (itstool) path: authorgroup/author -#: book.translate.xml:60739 +#: book.translate.xml:61773 msgid "" "<personname> <firstname>Coranth</firstname> <surname>Gryphon</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:60749 +#: book.translate.xml:61783 msgid "<primary>routing</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:60752 +#: book.translate.xml:61786 msgid "<primary>gateway</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:60755 +#: book.translate.xml:61789 msgid "<primary>subnet</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60759 +#: book.translate.xml:61793 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 " @@ -88824,7 +90538,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60773 +#: book.translate.xml:61807 msgid "" "This section provides an overview of routing basics. It then demonstrates " "how to configure a FreeBSD system as a router and offers some " @@ -88832,12 +90546,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60778 +#: book.translate.xml:61812 msgid "Routing Basics" msgstr "路由基礎概念" #. (itstool) path: sect2/para -#: book.translate.xml:60780 +#: book.translate.xml:61814 msgid "" "To view the routing table of a FreeBSD system, use " "<citerefentry><refentrytitle>netstat</refentrytitle><manvolnum>1</" @@ -88845,7 +90559,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60783 +#: book.translate.xml:61817 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>netstat -r</userinput>\n" @@ -88865,17 +90579,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60798 +#: book.translate.xml:61832 msgid "The entries in this example are as follows:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60802 +#: book.translate.xml:61836 msgid "default" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60804 +#: book.translate.xml:61838 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 " @@ -88885,7 +90599,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60812 +#: book.translate.xml:61846 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 " @@ -88896,7 +90610,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60821 +#: book.translate.xml:61855 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 " @@ -88904,12 +90618,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60829 +#: book.translate.xml:61863 msgid "localhost" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60831 +#: book.translate.xml:61865 msgid "" "The second route is the <literal>localhost</literal> route. The interface " "specified in the <literal>Netif</literal> column for <literal>localhost</" @@ -88919,12 +90633,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60843 +#: book.translate.xml:61877 msgid "MAC address" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60845 +#: book.translate.xml:61879 msgid "" "The addresses beginning with <systemitem class=\"etheraddress\">0:e0:</" "systemitem> are <acronym>MAC</acronym> addresses. FreeBSD will automatically " @@ -88939,12 +90653,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60864 +#: book.translate.xml:61898 msgid "subnet" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60866 +#: book.translate.xml:61900 msgid "" "FreeBSD will automatically add subnet routes for the local subnet. In this " "example, <systemitem class=\"ipaddress\">10.20.30.255</systemitem> is the " @@ -88955,7 +90669,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60874 +#: book.translate.xml:61908 msgid "" "Local network hosts and local subnets have their routes automatically " "configured by a daemon called <citerefentry><refentrytitle>routed</" @@ -88964,12 +90678,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60883 +#: book.translate.xml:61917 msgid "host" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60885 +#: book.translate.xml:61919 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 " @@ -88977,7 +90691,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60891 +#: book.translate.xml:61925 msgid "" "The two <literal>host2</literal> lines represent aliases which were created " "using <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -88989,19 +90703,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60903 +#: book.translate.xml:61937 msgid "224" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60905 +#: book.translate.xml:61939 msgid "" "The final line (destination subnet <systemitem class=\"ipaddress\">224</" "systemitem>) deals with multicasting." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60911 +#: book.translate.xml:61945 msgid "" "Various attributes of each route can be seen in the <literal>Flags</literal> " "column. <xref linkend=\"routeflags\"/> summarizes some of these flags and " @@ -89009,40 +90723,40 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:60916 +#: book.translate.xml:61950 msgid "Commonly Seen Routing Table Flags" msgstr "常見路由表標記" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:60928 book.translate.xml:65535 +#: book.translate.xml:61962 book.translate.xml:65535 msgid "U" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60929 +#: book.translate.xml:61963 msgid "The route is active (up)." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:60933 book.translate.xml:65535 +#: book.translate.xml:61967 book.translate.xml:65535 msgid "H" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60934 +#: book.translate.xml:61968 msgid "The route destination is a single host." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:60938 book.translate.xml:65535 +#: book.translate.xml:61972 book.translate.xml:65535 msgid "G" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60939 +#: book.translate.xml:61973 msgid "" "Send anything for this destination on to this gateway, which will figure out " "from there where to send it." @@ -89050,52 +90764,52 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:60945 book.translate.xml:65535 +#: book.translate.xml:61979 book.translate.xml:65535 msgid "S" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60946 +#: book.translate.xml:61980 msgid "This route was statically configured." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:60950 book.translate.xml:65535 +#: book.translate.xml:61984 book.translate.xml:65535 msgid "C" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60951 +#: book.translate.xml:61985 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:60957 +#: book.translate.xml:61991 msgid "W" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60958 +#: book.translate.xml:61992 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:60963 book.translate.xml:65535 +#: book.translate.xml:61997 book.translate.xml:65535 msgid "L" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60964 +#: book.translate.xml:61998 msgid "Route involves references to Ethernet (link) hardware." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60971 +#: book.translate.xml:62005 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 " @@ -89103,25 +90817,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60975 +#: book.translate.xml:62009 #, no-wrap msgid "defaultrouter=\"10.20.30.1\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60977 +#: book.translate.xml:62011 msgid "" "It is also possible to manually add the route using <command>route</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60980 +#: book.translate.xml:62014 #, no-wrap msgid "<prompt>#</prompt> <userinput>route add default 10.20.30.1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60982 +#: book.translate.xml:62016 msgid "" "Note that manually added routes will not survive a reboot. For more " "information on manual manipulation of network routing tables, refer to " @@ -89130,24 +90844,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:60989 +#: book.translate.xml:62023 msgid "Configuring a Router with Static Routes" msgstr "設定路由器使用靜態路由" #. (itstool) path: authorgroup/author -#: book.translate.xml:60992 +#: book.translate.xml:62026 msgid "" "<personname> <firstname>Al</firstname> <surname>Hoang</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61003 +#: book.translate.xml:62037 msgid "<primary>dual homed hosts</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61007 +#: book.translate.xml:62041 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 " @@ -89158,7 +90872,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61019 +#: book.translate.xml:62053 msgid "" "In order for the system to forward packets between interfaces, FreeBSD must " "be configured as a router. Internet standards and good engineering practice " @@ -89168,13 +90882,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61026 +#: book.translate.xml:62060 #, no-wrap msgid "gateway_enable=\"YES\" # Set to YES if this host will be a gateway" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61028 +#: book.translate.xml:62062 msgid "" "To enable routing now, set the <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable <varname>net." @@ -89183,22 +90897,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61033 +#: book.translate.xml:62067 msgid "<primary>BGP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61036 +#: book.translate.xml:62070 msgid "<primary>RIP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61039 +#: book.translate.xml:62073 msgid "<primary>OSPF</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61043 +#: book.translate.xml:62077 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 " @@ -89208,7 +90922,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61051 +#: book.translate.xml:62085 msgid "" "For large networks, static routes quickly become unscalable. FreeBSD comes " "with the standard <acronym>BSD</acronym> routing daemon " @@ -89220,7 +90934,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61061 +#: book.translate.xml:62095 msgid "Consider the following network:" msgstr "" @@ -89229,13 +90943,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:61065 +#: book.translate.xml:62099 msgctxt "_" msgid "external ref='advanced-networking/static-routes' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:61069 +#: book.translate.xml:62103 #, no-wrap msgid "" "\n" @@ -89264,7 +90978,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61095 +#: book.translate.xml:62129 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 " @@ -89275,14 +90989,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61103 +#: book.translate.xml:62137 msgid "" "Before adding any static routes, the routing table on <systemitem>RouterA</" "systemitem> looks like this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61106 +#: book.translate.xml:62140 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>netstat -nr</userinput>\n" @@ -89297,7 +91011,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61116 +#: book.translate.xml:62150 msgid "" "With the current routing table, <systemitem>RouterA</systemitem> does not " "have a route to the <systemitem class=\"ipaddress\">192.168.2.0/24</" @@ -89307,13 +91021,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61124 +#: book.translate.xml:62158 #, 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:61126 +#: book.translate.xml:62160 msgid "" "Now, <systemitem>RouterA</systemitem> can reach any host on the <systemitem " "class=\"ipaddress\">192.168.2.0/24</systemitem> network. However, the " @@ -89323,7 +91037,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61132 +#: book.translate.xml:62166 #, no-wrap msgid "" "# Add Internal Net 2 as a persistent static route\n" @@ -89332,7 +91046,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61136 +#: book.translate.xml:62170 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 " @@ -89341,7 +91055,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61142 +#: book.translate.xml:62176 msgid "" "Using more than one string in <literal>static_routes</literal> creates " "multiple static routes. The following shows an example of adding static " @@ -89350,7 +91064,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61149 +#: book.translate.xml:62183 #, no-wrap msgid "" "static_routes=\"net1 net2\"\n" @@ -89359,7 +91073,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61157 +#: book.translate.xml:62191 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 " @@ -89368,7 +91082,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61163 +#: book.translate.xml:62197 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 " @@ -89380,7 +91094,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61172 +#: book.translate.xml:62206 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. " @@ -89388,14 +91102,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61177 +#: book.translate.xml:62211 msgid "" "<primary><citerefentry><refentrytitle>traceroute</" "refentrytitle><manvolnum>8</manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61181 +#: book.translate.xml:62215 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 " @@ -89404,7 +91118,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61187 +#: book.translate.xml:62221 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 " @@ -89415,22 +91129,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:61196 +#: book.translate.xml:62230 msgid "Multicast Considerations" msgstr "群播 (Multicast) 注意事項" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61198 +#: book.translate.xml:62232 msgid "<primary>multicast routing</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61201 +#: book.translate.xml:62235 msgid "<primary>kernel options</primary> <secondary>MROUTING</secondary>" msgstr "<primary>核心選項</primary> <secondary>MROUTING</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:61206 +#: book.translate.xml:62240 msgid "" "FreeBSD natively supports both multicast applications and multicast routing. " "Multicast applications do not require any special configuration in order to " @@ -89439,13 +91153,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61212 +#: book.translate.xml:62246 #, no-wrap msgid "options MROUTING" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61214 +#: book.translate.xml:62248 msgid "" "The multicast routing daemon, <application>mrouted</application> can be " "installed using the <package>net/mrouted</package> package or port. This " @@ -89459,7 +91173,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61227 +#: book.translate.xml:62261 msgid "" "<acronym>DVMRP</acronym> has largely been replaced by the <acronym>PIM</" "acronym> protocol in many multicast installations. Refer to " @@ -89468,39 +91182,39 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:61237 +#: book.translate.xml:62271 msgid "Wireless Networking" msgstr "無線網路" #. (itstool) path: authorgroup/author -#: book.translate.xml:61240 +#: book.translate.xml:62274 msgid "<personname> <othername>Loader</othername> </personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:61245 +#: book.translate.xml:62279 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:61260 +#: book.translate.xml:62294 msgid "<primary>wireless networking</primary>" msgstr "<primary>無線網路</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:61263 +#: book.translate.xml:62297 msgid "<primary>802.11</primary> <see>wireless networking</see>" msgstr "<primary>802.11</primary> <see>無線網路</see>" #. (itstool) path: sect2/title -#: book.translate.xml:61269 +#: book.translate.xml:62303 msgid "Wireless Networking Basics" msgstr "無線網路基礎" #. (itstool) path: sect2/para -#: book.translate.xml:61271 +#: book.translate.xml:62305 msgid "" "Most wireless networks are based on the <trademark class=\"registered" "\">IEEE</trademark> 802.11 standards. A basic wireless network consists of " @@ -89510,7 +91224,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61278 +#: book.translate.xml:62312 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 " @@ -89525,7 +91239,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61293 +#: book.translate.xml:62327 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 " @@ -89540,7 +91254,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61306 +#: book.translate.xml:62340 msgid "" "Separate from the underlying transmission techniques, 802.11 networks have a " "variety of security mechanisms. The original 802.11 specifications defined a " @@ -89567,7 +91281,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61336 +#: book.translate.xml:62370 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 " @@ -89584,7 +91298,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61353 +#: book.translate.xml:62387 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 " @@ -89595,14 +91309,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61365 +#: book.translate.xml:62399 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:61371 +#: book.translate.xml:62405 msgid "" "Obtain the <acronym>SSID</acronym> (Service Set Identifier) and " "<acronym>PSK</acronym> (Pre-Shared Key) for the wireless network from the " @@ -89610,7 +91324,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61378 +#: book.translate.xml:62412 msgid "" "Identify the wireless adapter. The FreeBSD <filename>GENERIC</filename> " "kernel includes drivers for many common wireless adapters. If the wireless " @@ -89620,37 +91334,37 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:61384 +#: book.translate.xml:62418 #, no-wrap msgid "<prompt>%</prompt> <userinput>ifconfig | grep -B3 -i wireless</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61386 +#: book.translate.xml:62420 msgid "On FreeBSD 11 or higher, use this command instead:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:61389 +#: book.translate.xml:62423 #, no-wrap msgid "<prompt>%</prompt> <userinput>sysctl net.wlan.devices</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61391 +#: book.translate.xml:62425 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:61397 +#: book.translate.xml:62431 msgid "" "This example shows the Atheros <literal>ath0</literal> wireless adapter." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61402 +#: book.translate.xml:62436 msgid "" "Add an entry for this network to <filename>/etc/wpa_supplicant.conf</" "filename>. If the file does not exist, create it. Replace " @@ -89660,7 +91374,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:61410 +#: book.translate.xml:62444 #, no-wrap msgid "" "network={\n" @@ -89670,14 +91384,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61417 +#: book.translate.xml:62451 msgid "" "Add entries to <filename>/etc/rc.conf</filename> to configure the network on " "startup:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:61420 +#: book.translate.xml:62454 #, no-wrap msgid "" "wlans_<replaceable>ath0</replaceable>=\"wlan0\"\n" @@ -89685,19 +91399,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:61425 +#: book.translate.xml:62459 msgid "" "Restart the computer, or restart the network service to connect to the " "network:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:61434 +#: book.translate.xml:62468 msgid "Basic Setup" msgstr "基礎設定" #. (itstool) path: sect3/para -#: book.translate.xml:61439 +#: book.translate.xml:62473 msgid "" "To use wireless networking, a wireless networking card is needed and the " "kernel needs to be configured with the appropriate wireless networking " @@ -89706,7 +91420,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:61445 +#: book.translate.xml:62479 msgid "" "The most commonly used wireless devices are those that use parts made by " "Atheros. These devices are supported by <citerefentry><refentrytitle>ath</" @@ -89715,13 +91429,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:61451 +#: book.translate.xml:62485 #, no-wrap msgid "if_ath_load=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:61453 +#: book.translate.xml:62487 msgid "" "The Atheros driver is split up into three separate pieces: the driver " "(<citerefentry><refentrytitle>ath</refentrytitle><manvolnum>4</manvolnum></" @@ -89736,13 +91450,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:61464 +#: book.translate.xml:62498 #, no-wrap msgid "if_wi_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61467 +#: book.translate.xml:62501 msgid "" "The examples in this section use an <citerefentry><refentrytitle>ath</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> device and the device " @@ -89757,7 +91471,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:61480 +#: book.translate.xml:62514 msgid "" "In addition, the modules that implement cryptographic support for the " "security protocols to use must be loaded. These are intended to be " @@ -89780,7 +91494,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:61493 +#: book.translate.xml:62527 #, no-wrap msgid "" "wlan_wep_load=\"YES\"\n" @@ -89789,7 +91503,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:61497 +#: book.translate.xml:62531 msgid "" "Once this information has been added to <filename>/boot/loader.conf</" "filename>, reboot the FreeBSD box. Alternately, load the modules by hand " @@ -89798,7 +91512,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61503 +#: book.translate.xml:62537 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 " @@ -89806,7 +91520,7 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:61508 +#: book.translate.xml:62542 #, no-wrap msgid "" "device wlan # 802.11 support\n" @@ -89821,21 +91535,21 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61518 +#: book.translate.xml:62552 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:61523 +#: book.translate.xml:62557 msgid "" "Information about the wireless device should appear in the boot messages, " "like this:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:61526 +#: book.translate.xml:62560 #, no-wrap msgid "" "ath0: <Atheros 5212> mem 0x88000000-0x8800ffff irq 11 at device 0.0 on cardbus1\n" @@ -89843,13 +91557,50 @@ msgid "" "ath0: AR2413 mac 7.9 RF2413 phy 4.5" msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:62566 +msgid "Setting the Correct Region" +msgstr "設定正確的區域" + +#. (itstool) path: sect3/para +#: book.translate.xml:62568 +msgid "" +"Since the regulatory situation is different in various parts of the world, " +"it is necessary to correctly set the domains that apply to your location to " +"have the correct information about what channels can be used." +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:62574 +msgid "" +"The available region definitions can be found in <filename>/etc/regdomain." +"xml</filename>. To set the data at runtime, use <command>ifconfig</command>:" +msgstr "" + +#. (itstool) path: sect3/screen +#: book.translate.xml:62578 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> regdomain <replaceable>ETSI</replaceable> country <replaceable>AT</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect3/para +#: book.translate.xml:62580 +msgid "To persist the settings, add it to <filename>/etc/rc.conf</filename>:" +msgstr "" + +#. (itstool) path: sect3/screen +#: book.translate.xml:62583 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>sysrc create_args_wlan0=\"country <replaceable>AT</replaceable> regdomain <replaceable>ETSI</replaceable>\"</userinput>" +msgstr "" + #. (itstool) path: sect2/title -#: book.translate.xml:61533 +#: book.translate.xml:62588 msgid "Infrastructure Mode" msgstr "主從式 (Infrastructure)" #. (itstool) path: sect2/para -#: book.translate.xml:61535 +#: book.translate.xml:62590 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 " @@ -89859,17 +91610,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:61543 +#: book.translate.xml:62598 msgid "FreeBSD Clients" msgstr "FreeBSD 客戶端" #. (itstool) path: sect4/title -#: book.translate.xml:61546 +#: book.translate.xml:62601 msgid "How to Find Access Points" msgstr "如何尋找存取點" #. (itstool) path: sect4/para -#: book.translate.xml:61548 +#: book.translate.xml:62603 msgid "" "To scan for available networks, use <citerefentry><refentrytitle>ifconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This request may take " @@ -89879,7 +91630,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:61554 +#: book.translate.xml:62609 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -89890,14 +91641,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61561 +#: book.translate.xml:62616 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:61566 +#: book.translate.xml:62621 msgid "" "The output of a scan request lists each <acronym>BSS</acronym>/" "<acronym>IBSS</acronym> network found. Besides listing the name of the " @@ -89908,22 +91659,22 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:61577 +#: book.translate.xml:62632 msgid "Station Capability Codes" msgstr "站台功能代號" #. (itstool) path: row/entry -#: book.translate.xml:61582 +#: book.translate.xml:62637 msgid "Capability Code" msgstr "功能代號" #. (itstool) path: row/entry -#: book.translate.xml:61589 +#: book.translate.xml:62644 msgid "<literal>E</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61590 +#: book.translate.xml:62645 msgid "" "Extended Service Set (<acronym>ESS</acronym>). Indicates that the station is " "part of an infrastructure network rather than an <acronym>IBSS</acronym>/ad-" @@ -89931,24 +91682,24 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61598 +#: book.translate.xml:62653 msgid "<literal>I</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61599 +#: book.translate.xml:62654 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:61606 +#: book.translate.xml:62661 msgid "<literal>P</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61607 +#: book.translate.xml:62662 msgid "" "Privacy. Encryption is required for all data frames exchanged within the " "<acronym>BSS</acronym> using cryptographic means such as <acronym>WEP</" @@ -89957,12 +91708,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61616 +#: book.translate.xml:62671 msgid "<literal>S</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61617 +#: book.translate.xml:62672 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 " @@ -89970,30 +91721,30 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61625 +#: book.translate.xml:62680 msgid "<literal>s</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:61626 +#: book.translate.xml:62681 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:61634 +#: book.translate.xml:62689 msgid "One can also display the current list of known networks with:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:61637 +#: book.translate.xml:62692 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> list scan</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:61639 +#: book.translate.xml:62694 msgid "" "This information may be updated automatically by the adapter or manually " "with a <option>scan</option> request. Old data is automatically removed from " @@ -90002,12 +91753,12 @@ msgstr "" #. (itstool) path: sect4/title #. (itstool) path: sect3/title -#: book.translate.xml:61647 book.translate.xml:62475 +#: book.translate.xml:62702 book.translate.xml:63530 msgid "Basic Settings" msgstr "基礎設定" #. (itstool) path: sect4/para -#: book.translate.xml:61649 +#: book.translate.xml:62704 msgid "" "This section provides a simple example of how to make the wireless network " "adapter work in FreeBSD without encryption. Once familiar with these " @@ -90016,7 +91767,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:61655 +#: book.translate.xml:62710 msgid "" "There are three basic steps to configure a wireless network: select an " "access point, authenticate the station, and configure an <acronym>IP</" @@ -90024,12 +91775,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:61661 +#: book.translate.xml:62716 msgid "Selecting an Access Point" msgstr "選擇存取點" #. (itstool) path: sect5/para -#: book.translate.xml:61663 +#: book.translate.xml:62718 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 " @@ -90037,7 +91788,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61669 book.translate.xml:61769 +#: book.translate.xml:62724 book.translate.xml:62824 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90045,14 +91796,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61672 +#: book.translate.xml:62727 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:61676 +#: book.translate.xml:62731 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90060,7 +91811,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61679 +#: book.translate.xml:62734 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 " @@ -90070,7 +91821,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61687 +#: book.translate.xml:62742 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90078,7 +91829,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61690 +#: book.translate.xml:62745 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 " @@ -90088,7 +91839,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61698 +#: book.translate.xml:62753 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90096,7 +91847,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61701 +#: book.translate.xml:62756 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. " @@ -90109,7 +91860,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61715 +#: book.translate.xml:62770 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 " @@ -90125,7 +91876,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61732 +#: book.translate.xml:62787 msgid "" "If using an <trademark class=\"registered\">Apple</trademark> <trademark " "class=\"registered\">AirPort</trademark> Extreme base station for an access " @@ -90138,7 +91889,7 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:61740 +#: book.translate.xml:62795 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90146,7 +91897,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61743 +#: book.translate.xml:62798 msgid "" "In general, shared key authentication should be avoided because it uses the " "<acronym>WEP</acronym> key material in a highly-constrained manner, making " @@ -90158,12 +91909,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:61756 +#: book.translate.xml:62811 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:61759 +#: book.translate.xml:62814 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. " @@ -90174,18 +91925,18 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61772 +#: book.translate.xml:62827 msgid "The wireless interface is now ready to bring up:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:61775 +#: book.translate.xml:62830 #, no-wrap msgid "<prompt>#</prompt> <userinput>service netif start</userinput>" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61777 +#: book.translate.xml:62832 msgid "" "Once the interface is running, use <citerefentry><refentrytitle>ifconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to see the status of " @@ -90193,7 +91944,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:61781 +#: book.translate.xml:62836 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -90209,7 +91960,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61792 +#: book.translate.xml:62847 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 " @@ -90218,12 +91969,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:61801 +#: book.translate.xml:62856 msgid "Static <acronym>IP</acronym> Address" msgstr "靜態 <acronym>IP</acronym> 位址" #. (itstool) path: sect5/para -#: book.translate.xml:61803 +#: book.translate.xml:62858 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 " @@ -90232,7 +91983,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61810 +#: book.translate.xml:62865 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90240,12 +91991,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:61816 +#: book.translate.xml:62871 msgid "<acronym>WPA</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:61818 +#: book.translate.xml:62873 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 " @@ -90266,7 +92017,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:61841 +#: book.translate.xml:62896 msgid "" "<acronym>WPA</acronym> defines authentication and encryption protocols. " "Authentication is most commonly done using one of two techniques: by 802.1X " @@ -90280,7 +92031,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:61855 +#: book.translate.xml:62910 msgid "" "The control of the wireless connection and the key negotiation or " "authentication with a server is done using " @@ -90293,12 +92044,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:61864 +#: book.translate.xml:62919 msgid "<acronym>WPA-PSK</acronym>" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61866 +#: book.translate.xml:62921 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 " @@ -90309,14 +92060,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:61877 +#: book.translate.xml:62932 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:61882 +#: book.translate.xml:62937 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 " @@ -90324,7 +92075,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61887 +#: book.translate.xml:62942 #, no-wrap msgid "" "network={\n" @@ -90334,7 +92085,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61892 +#: book.translate.xml:62947 msgid "" "Then, in <filename>/etc/rc.conf</filename>, indicate that the wireless " "device configuration will be done with <acronym>WPA</acronym> and the " @@ -90342,8 +92093,8 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:61898 book.translate.xml:62098 book.translate.xml:62192 -#: book.translate.xml:62316 +#: book.translate.xml:62953 book.translate.xml:63153 book.translate.xml:63247 +#: book.translate.xml:63371 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90351,12 +92102,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61901 book.translate.xml:62319 +#: book.translate.xml:62956 book.translate.xml:63374 msgid "Then, bring up the interface:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:61903 +#: book.translate.xml:62958 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -90380,14 +92131,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61922 +#: book.translate.xml:62977 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:61926 +#: book.translate.xml:62981 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>wpa_supplicant -i <replaceable>wlan0</replaceable> -c /etc/wpa_supplicant.conf</userinput>\n" @@ -90398,7 +92149,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61932 +#: book.translate.xml:62987 msgid "" "The next operation is to launch <citerefentry><refentrytitle>dhclient</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to get the " @@ -90406,7 +92157,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:61936 +#: book.translate.xml:62991 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dhclient <replaceable>wlan0</replaceable></userinput>\n" @@ -90427,7 +92178,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:61953 +#: book.translate.xml:63008 msgid "" "If <filename>/etc/rc.conf</filename> has an <literal>ifconfig_wlan0=\"DHCP" "\"</literal> entry, <citerefentry><refentrytitle>dhclient</" @@ -90438,7 +92189,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61960 +#: book.translate.xml:63015 msgid "" "If <acronym>DHCP</acronym> is not possible or desired, set a static " "<acronym>IP</acronym> address after " @@ -90447,7 +92198,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:61965 +#: book.translate.xml:63020 #, 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" @@ -90465,14 +92216,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61978 +#: book.translate.xml:63033 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:61982 +#: book.translate.xml:63037 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>route add default <replaceable>your_default_router</replaceable></userinput>\n" @@ -90480,12 +92231,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:61987 +#: book.translate.xml:63042 msgid "<acronym>WPA</acronym> with <acronym>EAP-TLS</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-TLS</acronym>" #. (itstool) path: sect5/para -#: book.translate.xml:61990 +#: book.translate.xml:63045 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 " @@ -90496,7 +92247,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:61999 +#: book.translate.xml:63054 msgid "" "<acronym>EAP</acronym> does not come with an encryption method. Instead, " "<acronym>EAP</acronym> is embedded inside an encrypted tunnel. There are " @@ -90506,7 +92257,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62007 +#: book.translate.xml:63062 msgid "" "EAP with Transport Layer Security (<acronym>EAP-TLS</acronym>) is a well-" "supported wireless authentication protocol since it was the first " @@ -90522,14 +92273,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62024 +#: book.translate.xml:63079 msgid "" "As previously, the configuration is done via <filename>/etc/wpa_supplicant." "conf</filename>:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62027 +#: book.translate.xml:63082 #, no-wrap msgid "" "network={\n" @@ -90546,19 +92297,19 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62041 +#: book.translate.xml:63096 msgid "This field indicates the network name (<acronym>SSID</acronym>)." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62046 +#: book.translate.xml:63101 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:62052 +#: book.translate.xml:63107 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</" @@ -90566,20 +92317,20 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62059 +#: book.translate.xml:63114 msgid "" "This field indicates the <acronym>EAP</acronym> method for the connection." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62064 +#: book.translate.xml:63119 msgid "" "The <literal>identity</literal> field contains the identity string for " "<acronym>EAP</acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62070 book.translate.xml:62173 book.translate.xml:62286 +#: book.translate.xml:63125 book.translate.xml:63228 book.translate.xml:63341 msgid "" "The <literal>ca_cert</literal> field indicates the pathname of the " "<acronym>CA</acronym> certificate file. This file is needed to verify the " @@ -90587,7 +92338,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62077 +#: book.translate.xml:63132 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 " @@ -90595,31 +92346,31 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62084 +#: book.translate.xml:63139 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:62090 +#: book.translate.xml:63145 msgid "" "The <literal>private_key_passwd</literal> field contains the passphrase for " "the private key." msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62095 +#: book.translate.xml:63150 msgid "Then, add the following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62101 book.translate.xml:62195 +#: book.translate.xml:63156 book.translate.xml:63250 msgid "The next step is to bring up the interface:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:62103 +#: book.translate.xml:63158 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -90641,7 +92392,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62120 +#: book.translate.xml:63175 msgid "" "It is also possible to bring up the interface manually using " "<citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" @@ -90650,12 +92401,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62126 +#: book.translate.xml:63181 msgid "<acronym>WPA</acronym> with <acronym>EAP-TTLS</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-TTLS</acronym>" #. (itstool) path: sect5/para -#: book.translate.xml:62129 +#: book.translate.xml:63184 msgid "" "With <acronym>EAP-TLS</acronym>, both the authentication server and the " "client need a certificate. With <acronym>EAP-TTLS</acronym>, a client " @@ -90666,14 +92417,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62139 +#: book.translate.xml:63194 msgid "" "The required configuration can be added to <filename>/etc/wpa_supplicant." "conf</filename>:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62142 +#: book.translate.xml:63197 #, no-wrap msgid "" "network={\n" @@ -90689,13 +92440,13 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62155 book.translate.xml:62268 +#: book.translate.xml:63210 book.translate.xml:63323 msgid "" "This field specifies the <acronym>EAP</acronym> method for the connection." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62160 book.translate.xml:62273 +#: book.translate.xml:63215 book.translate.xml:63328 msgid "" "The <literal>identity</literal> field contains the identity string for " "<acronym>EAP</acronym> authentication inside the encrypted <acronym>TLS</" @@ -90703,14 +92454,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62167 book.translate.xml:62280 +#: book.translate.xml:63222 book.translate.xml:63335 msgid "" "The <literal>password</literal> field contains the passphrase for the " "<acronym>EAP</acronym> authentication." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62180 +#: book.translate.xml:63235 msgid "" "This field specifies the authentication method used in the encrypted " "<acronym>TLS</acronym> tunnel. In this example, <acronym>EAP</acronym> with " @@ -90719,12 +92470,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62189 +#: book.translate.xml:63244 msgid "Next, add the following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:62197 book.translate.xml:62321 +#: book.translate.xml:63252 book.translate.xml:63376 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -90747,12 +92498,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62217 +#: book.translate.xml:63272 msgid "<acronym>WPA</acronym> with <acronym>EAP-PEAP</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-PEAP</acronym>" #. (itstool) path: note/para -#: book.translate.xml:62221 +#: book.translate.xml:63276 msgid "" "<acronym>PEAPv0/EAP-MSCHAPv2</acronym> is the most common <acronym>PEAP</" "acronym> method. In this chapter, the term <acronym>PEAP</acronym> is used " @@ -90760,7 +92511,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62227 +#: book.translate.xml:63282 msgid "" "Protected EAP (<acronym>PEAP</acronym>) is designed as an alternative to " "<acronym>EAP-TTLS</acronym> and is the most used <acronym>EAP</acronym> " @@ -90770,7 +92521,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62235 +#: book.translate.xml:63290 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 " @@ -90784,14 +92535,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62249 +#: book.translate.xml:63304 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:62254 +#: book.translate.xml:63309 #, no-wrap msgid "" "network={\n" @@ -90808,7 +92559,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62293 +#: book.translate.xml:63348 msgid "" "This field contains the parameters for the first phase of authentication, " "the <acronym>TLS</acronym> tunnel. According to the authentication server " @@ -90820,7 +92571,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62305 +#: book.translate.xml:63360 msgid "" "This field specifies the authentication protocol used in the encrypted " "<acronym>TLS</acronym> tunnel. In the case of <acronym>PEAP</acronym>, it is " @@ -90828,12 +92579,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:62342 +#: book.translate.xml:63397 msgid "<acronym>WEP</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62344 +#: book.translate.xml:63399 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 " @@ -90841,7 +92592,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62349 +#: book.translate.xml:63404 msgid "" "<acronym>WEP</acronym> can be set up using " "<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -90849,7 +92600,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62352 +#: book.translate.xml:63407 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -90858,7 +92609,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62359 +#: book.translate.xml:63414 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 " @@ -90867,7 +92618,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62369 +#: book.translate.xml:63424 msgid "" "The <literal>wepkey</literal> selects one of the <acronym>WEP</acronym> " "keys. It should be in the format <replaceable>index:key</replaceable>. Key " @@ -90876,21 +92627,21 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62377 +#: book.translate.xml:63432 msgid "" "Replace the <literal>0x3456789012</literal> with the key configured for use " "on the access point." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62384 +#: book.translate.xml:63439 msgid "" "Refer to <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for further information." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62387 +#: book.translate.xml:63442 msgid "" "The <citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> facility can be used to configure a wireless " @@ -90899,7 +92650,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:62393 +#: book.translate.xml:63448 #, no-wrap msgid "" "network={\n" @@ -90911,12 +92662,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62400 +#: book.translate.xml:63455 msgid "Then:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62402 +#: book.translate.xml:63457 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>wpa_supplicant -i <replaceable>wlan0</replaceable> -c /etc/wpa_supplicant.conf</userinput>\n" @@ -90925,12 +92676,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62410 +#: book.translate.xml:63465 msgid "Ad-hoc Mode" msgstr "對等式 (Ad-hoc)" #. (itstool) path: sect2/para -#: book.translate.xml:62412 +#: book.translate.xml:63467 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 " @@ -90939,12 +92690,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62419 +#: book.translate.xml:63474 msgid "On <systemitem>A</systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62421 +#: book.translate.xml:63476 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode adhoc</userinput>\n" @@ -90961,21 +92712,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62433 +#: book.translate.xml:63488 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:62436 +#: book.translate.xml:63491 msgid "" "<systemitem>B</systemitem> should now be able to detect <systemitem>A</" "systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62439 +#: book.translate.xml:63494 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode adhoc</userinput>\n" @@ -90985,7 +92736,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62444 +#: book.translate.xml:63499 msgid "" "The <literal>I</literal> in the output confirms that <systemitem>A</" "systemitem> is in ad-hoc mode. Now, configure <systemitem>B</systemitem> " @@ -90993,7 +92744,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62449 +#: book.translate.xml:63504 #, 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" @@ -91009,19 +92760,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62460 +#: book.translate.xml:63515 msgid "" "Both <systemitem>A</systemitem> and <systemitem>B</systemitem> are now ready " "to exchange information." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62466 +#: book.translate.xml:63521 msgid "FreeBSD Host Access Points" msgstr "FreeBSD 主機存取點" #. (itstool) path: sect2/para -#: book.translate.xml:62468 +#: book.translate.xml:63523 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. " @@ -91030,7 +92781,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62477 +#: book.translate.xml:63532 msgid "" "Before configuring a FreeBSD machine as an <acronym>AP</acronym>, the kernel " "must be configured with the appropriate networking support for the wireless " @@ -91039,7 +92790,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62484 +#: book.translate.xml:63539 msgid "" "The <acronym>NDIS</acronym> driver wrapper for <trademark class=\"registered" "\">Windows</trademark> drivers does not currently support <acronym>AP</" @@ -91048,14 +92799,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62491 +#: book.translate.xml:63546 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:62495 +#: book.translate.xml:63550 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91065,7 +92816,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62500 +#: book.translate.xml:63555 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>. " @@ -91075,7 +92826,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62508 +#: book.translate.xml:63563 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 " @@ -91083,19 +92834,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62512 +#: book.translate.xml:63567 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> destroy</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62514 +#: book.translate.xml:63569 msgid "" "then regenerated with the correct option before setting the other parameters:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62517 +#: book.translate.xml:63572 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode hostap</userinput>\n" @@ -91103,7 +92854,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62520 +#: book.translate.xml:63575 msgid "" "Use <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> again to see the status of the <filename>wlan0</" @@ -91111,7 +92862,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62523 +#: book.translate.xml:63578 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91126,21 +92877,21 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62533 +#: book.translate.xml:63588 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:62537 +#: book.translate.xml:63592 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:62541 +#: book.translate.xml:63596 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -91149,12 +92900,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:62547 +#: book.translate.xml:63602 msgid "Host-based Access Point Without Authentication or Encryption" msgstr "無認證或加密的 Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:62550 +#: book.translate.xml:63605 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 " @@ -91163,14 +92914,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62556 +#: book.translate.xml:63611 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:62560 +#: book.translate.xml:63615 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91180,14 +92931,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62565 +#: book.translate.xml:63620 msgid "" "The client machine found the <acronym>AP</acronym> and can be associated " "with it:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62568 +#: book.translate.xml:63623 #, 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" @@ -91204,12 +92955,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:62582 +#: book.translate.xml:63637 msgid "<acronym>WPA2</acronym> Host-based Access Point" msgstr "<acronym>WPA2</acronym> Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:62584 +#: book.translate.xml:63639 msgid "" "This section focuses on setting up a FreeBSD access point using the " "<acronym>WPA2</acronym> security protocol. More details regarding " @@ -91218,7 +92969,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62591 +#: book.translate.xml:63646 msgid "" "The <citerefentry><refentrytitle>hostapd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is used to deal with client authentication " @@ -91227,7 +92978,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62596 +#: book.translate.xml:63651 msgid "" "The following configuration operations are performed on the FreeBSD machine " "acting as the <acronym>AP</acronym>. Once the <acronym>AP</acronym> is " @@ -91237,13 +92988,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:62603 +#: book.translate.xml:63658 #, no-wrap msgid "hostapd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62605 +#: book.translate.xml:63660 msgid "" "Before trying to configure <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, first configure the " @@ -91251,24 +93002,24 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:62609 +#: book.translate.xml:63664 msgid "<acronym>WPA2-PSK</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62611 +#: book.translate.xml:63666 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:62615 +#: book.translate.xml:63670 msgid "The configuration is done in <filename>/etc/hostapd.conf</filename>:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:62618 +#: book.translate.xml:63673 #, no-wrap msgid "" "interface=wlan0 <co xml:id=\"co-ap-wpapsk-iface\"/>\n" @@ -91283,12 +93034,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62630 +#: book.translate.xml:63685 msgid "Wireless interface used for the access point." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62635 +#: book.translate.xml:63690 msgid "" "Level of verbosity used during the execution of " "<citerefentry><refentrytitle>hostapd</refentrytitle><manvolnum>8</" @@ -91297,7 +93048,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62642 +#: book.translate.xml:63697 msgid "" "Pathname of the directory used by <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to store domain socket " @@ -91307,19 +93058,19 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62649 +#: book.translate.xml:63704 msgid "The group allowed to access the control interface files." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62654 +#: book.translate.xml:63709 msgid "" "The wireless network name, or <acronym>SSID</acronym>, that will appear in " "wireless scans." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62660 +#: book.translate.xml:63715 msgid "" "Enable <acronym>WPA</acronym> and specify which <acronym>WPA</acronym> " "authentication protocol will be required. A value of <literal>2</literal> " @@ -91329,26 +93080,26 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62671 +#: book.translate.xml:63726 msgid "ASCII passphrase for <acronym>WPA</acronym> authentication." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:62675 +#: book.translate.xml:63730 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:62683 +#: book.translate.xml:63738 msgid "" "The key management protocol to use. This example sets <acronym>WPA-PSK</" "acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:62689 +#: book.translate.xml:63744 msgid "" "Encryption algorithms accepted by the access point. In this example, only " "the <acronym>CCMP</acronym> (<acronym>AES</acronym>) cipher is accepted. " @@ -91358,20 +93109,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62702 +#: book.translate.xml:63757 msgid "" "The next step is to start <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62704 +#: book.translate.xml:63759 #, no-wrap msgid "<prompt>#</prompt> <userinput>service hostapd forcestart</userinput>" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62706 +#: book.translate.xml:63761 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91390,7 +93141,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62720 +#: book.translate.xml:63775 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 " @@ -91399,12 +93150,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:62730 +#: book.translate.xml:63785 msgid "<acronym>WEP</acronym> Host-based Access Point" msgstr "<acronym>WEP</acronym> Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:62732 +#: book.translate.xml:63787 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 " @@ -91414,14 +93165,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62740 +#: book.translate.xml:63795 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:62744 +#: book.translate.xml:63799 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode hostap</userinput>\n" @@ -91430,7 +93181,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62750 +#: book.translate.xml:63805 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 " @@ -91439,7 +93190,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62759 +#: book.translate.xml:63814 msgid "" "The <literal>wepkey</literal> sets the selected <acronym>WEP</acronym> key. " "It should be in the format <replaceable>index:key</replaceable>. If the " @@ -91448,7 +93199,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62768 +#: book.translate.xml:63823 msgid "" "Use <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to see the status of the <filename>wlan0</" @@ -91456,7 +93207,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62771 +#: book.translate.xml:63826 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91471,14 +93222,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62781 +#: book.translate.xml:63836 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:62784 +#: book.translate.xml:63839 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91488,7 +93239,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62789 +#: book.translate.xml:63844 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-" @@ -91496,12 +93247,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62796 +#: book.translate.xml:63851 msgid "Using Both Wired and Wireless Connections" msgstr "同時使用有線及無線連線" #. (itstool) path: sect2/para -#: book.translate.xml:62798 +#: book.translate.xml:63853 msgid "" "A wired connection provides better performance and reliability, while a " "wireless connection provides flexibility and mobility. Laptop users " @@ -91509,7 +93260,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62803 +#: book.translate.xml:63858 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 " @@ -91519,7 +93270,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62810 +#: book.translate.xml:63865 msgid "" "Link aggregation and failover is covered in <xref linkend=\"network-" "aggregation\"/> and an example for using both wired and wireless connections " @@ -91527,14 +93278,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62817 +#: book.translate.xml:63872 msgid "" "This section describes a number of steps to help troubleshoot common " "wireless networking problems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62823 +#: book.translate.xml:63878 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 " @@ -91542,7 +93293,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62829 +#: book.translate.xml:63884 msgid "" "If the device cannot associate with an access point, verify that the " "configuration matches the settings on the access point. This includes the " @@ -91553,7 +93304,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62838 +#: book.translate.xml:63893 msgid "" "Debugging support is provided by " "<citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" @@ -91562,7 +93313,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62845 +#: book.translate.xml:63900 msgid "" "Once the system can associate with the access point, diagnose the network " "configuration using tools like <citerefentry><refentrytitle>ping</" @@ -91570,7 +93321,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62851 +#: book.translate.xml:63906 msgid "" "There are many lower-level debugging tools. Debugging messages can be " "enabled in the 802.11 protocol support layer using " @@ -91581,7 +93332,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:62858 +#: book.translate.xml:63913 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>wlandebug -i <replaceable>wlan0</replaceable> +scan+auth+debug+assoc</userinput>\n" @@ -91589,7 +93340,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62861 +#: book.translate.xml:63916 msgid "" "Many useful statistics are maintained by the 802.11 layer and " "<command>wlanstats</command>, found in <filename>/usr/src/tools/tools/" @@ -91601,24 +93352,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62872 +#: book.translate.xml:63927 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:62880 +#: book.translate.xml:63935 msgid "USB Tethering" msgstr "USB 網路共享" #. (itstool) path: sect1/indexterm -#: book.translate.xml:62883 +#: book.translate.xml:63938 msgid "<primary>tether</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:62887 +#: book.translate.xml:63942 msgid "" "Many cellphones provide the option to share their data connection over USB " "(often called \"tethering\"). This feature uses either the <acronym>RNDIS</" @@ -91628,7 +93379,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62895 +#: book.translate.xml:63950 msgid "" "<trademark>Android</trademark> devices generally use the " "<citerefentry><refentrytitle>urndis</refentrytitle><manvolnum>4</manvolnum></" @@ -91636,7 +93387,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62900 +#: book.translate.xml:63955 msgid "" "<trademark class=\"registered\">Apple</trademark> devices use the " "<citerefentry><refentrytitle>ipheth</refentrytitle><manvolnum>4</manvolnum></" @@ -91644,19 +93395,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62904 +#: book.translate.xml:63959 msgid "" "Older devices will often use the <citerefentry><refentrytitle>cdce</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:62909 +#: book.translate.xml:63964 msgid "Before attaching a device, load the appropriate driver into the kernel:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:62912 +#: book.translate.xml:63967 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload if_urndis\n" @@ -91665,7 +93416,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:62916 +#: book.translate.xml:63971 msgid "" "Once the device is attached <literal>ue</literal><replaceable>0</" "replaceable> will be available for use like a normal network device. Be sure " @@ -91673,24 +93424,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:62925 +#: book.translate.xml:63980 msgid "Bluetooth" msgstr "藍牙" #. (itstool) path: authorgroup/author -#: book.translate.xml:62928 +#: book.translate.xml:63983 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:62939 +#: book.translate.xml:63994 msgid "<primary>Bluetooth</primary>" msgstr "<primary>藍牙</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:62943 +#: book.translate.xml:63998 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 " @@ -91701,7 +93452,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:62952 +#: book.translate.xml:64007 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 " @@ -91709,12 +93460,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62957 +#: book.translate.xml:64012 msgid "Loading Bluetooth Support" msgstr "載入藍牙支援" #. (itstool) path: sect2/para -#: book.translate.xml:62959 +#: book.translate.xml:64014 msgid "" "The Bluetooth stack in FreeBSD is implemented using the " "<citerefentry><refentrytitle>netgraph</refentrytitle><manvolnum>4</" @@ -91736,7 +93487,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62969 +#: book.translate.xml:64024 msgid "" "Before attaching a device, determine which of the above drivers it uses, " "then load the driver. For example, if the device uses the " @@ -91745,13 +93496,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62973 +#: book.translate.xml:64028 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload ng_ubt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62975 +#: book.translate.xml:64030 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 " @@ -91759,13 +93510,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62980 +#: book.translate.xml:64035 #, no-wrap msgid "ng_ubt_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62982 +#: book.translate.xml:64037 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 " @@ -91773,7 +93524,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62988 +#: book.translate.xml:64043 #, no-wrap msgid "" "ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2\n" @@ -91783,15 +93534,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62993 +#: book.translate.xml:64048 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 " -"stack, the output should be similar to the following:" +"idea to stop the stack before unplugging the device. Starting the bluetooth " +"stack might require <citerefentry><refentrytitle>hcsecd</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> to be started. When " +"starting the stack, the output should be similar to the following:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62998 +#: book.translate.xml:64054 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service bluetooth start ubt0</userinput>\n" @@ -91809,17 +93562,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63013 +#: book.translate.xml:64069 msgid "Finding Other Bluetooth Devices" msgstr "尋找其他藍牙裝置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:63015 +#: book.translate.xml:64071 msgid "<primary>HCI</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63019 +#: book.translate.xml:64075 msgid "" "The Host Controller Interface (<acronym>HCI</acronym>) provides a uniform " "method for accessing Bluetooth baseband capabilities. In FreeBSD, a netgraph " @@ -91829,7 +93582,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63025 +#: book.translate.xml:64081 msgid "" "One of the most common tasks is discovery of Bluetooth devices within " "<acronym>RF</acronym> proximity. This operation is called <emphasis>inquiry</" @@ -91843,7 +93596,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63035 +#: book.translate.xml:64091 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci inquiry</userinput>\n" @@ -91859,19 +93612,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63046 +#: book.translate.xml:64102 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 " "address is needed for further communication with a device and it is possible " -"to assign a human readable name to a BD_ADDR. Information regarding the " -"known Bluetooth hosts is contained in <filename>/etc/bluetooth/hosts</" -"filename>. The following example shows how to obtain the human readable name " -"that was assigned to the remote device:" +"to assign a human readable name to a <literal>BD_ADDR</literal>. Information " +"regarding the known Bluetooth hosts is contained in <filename>/etc/bluetooth/" +"hosts</filename>. The following example shows how to obtain the human " +"readable name that was assigned to the remote device:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63056 +#: book.translate.xml:64112 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci remote_name_request 00:80:37:29:19:a4</userinput>\n" @@ -91880,7 +93633,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63060 +#: book.translate.xml:64116 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 " @@ -91888,16 +93641,45 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63065 +#: book.translate.xml:64121 +msgid "" +"Remote devices can be assigned aliases in <filename>/etc/bluetooth/hosts</" +"filename>. More information about <filename>/etc/bluetooth/hosts</filename> " +"file might be found in <citerefentry><refentrytitle>bluetooth.hosts</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry>." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:64126 msgid "" "The Bluetooth system provides a point-to-point connection between two " "Bluetooth units, or a point-to-multipoint connection which is shared among " -"several Bluetooth devices. The following example shows how to obtain the " -"list of active baseband connections for the local device:" +"several Bluetooth devices. The following example shows how to create a " +"connection to a remote device:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:64132 +#, no-wrap +msgid "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci create_connection <replaceable>BT_ADDR</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:64134 +msgid "" +"<literal>create_connection</literal> accepts <literal>BT_ADDR</literal> as " +"well as host aliases in <filename>/etc/bluetooth/hosts</filename>." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:64138 +msgid "" +"The following example shows how to obtain the list of active baseband " +"connections for the local device:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63071 +#: book.translate.xml:64141 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci read_connection_list</userinput>\n" @@ -91906,7 +93688,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63075 +#: book.translate.xml:64145 msgid "" "A <emphasis>connection handle</emphasis> is useful when termination of the " "baseband connection is required, though it is normally not required to do " @@ -91915,7 +93697,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63081 +#: book.translate.xml:64151 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hccontrol -n ubt0hci disconnect 41</userinput>\n" @@ -91924,7 +93706,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63085 +#: book.translate.xml:64155 msgid "" "Type <command>hccontrol help</command> for a complete listing of available " "<acronym>HCI</acronym> commands. Most of the <acronym>HCI</acronym> commands " @@ -91932,12 +93714,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63092 +#: book.translate.xml:64162 msgid "Device Pairing" msgstr "裝置配對" #. (itstool) path: sect2/para -#: book.translate.xml:63094 +#: book.translate.xml:64164 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 " @@ -91954,7 +93736,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63111 +#: book.translate.xml:64181 msgid "" "The <citerefentry><refentrytitle>hcsecd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is responsible for handling Bluetooth " @@ -91965,7 +93747,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63118 +#: book.translate.xml:64188 #, no-wrap msgid "" "device {\n" @@ -91977,7 +93759,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63125 +#: book.translate.xml:64195 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 " @@ -91993,7 +93775,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63139 +#: book.translate.xml:64209 msgid "" "The following line can be added to <filename>/etc/rc.conf</filename> to " "configure <citerefentry><refentrytitle>hcsecd</refentrytitle><manvolnum>8</" @@ -92001,20 +93783,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63143 +#: book.translate.xml:64213 #, no-wrap msgid "hcsecd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63145 +#: book.translate.xml:64215 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:63148 +#: book.translate.xml:64218 #, no-wrap msgid "" "hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4\n" @@ -92026,12 +93808,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63157 +#: book.translate.xml:64227 msgid "Network Access with <acronym>PPP</acronym> Profiles" -msgstr "使用 <acronym>PPP</acronym> Profile 存取網路 " +msgstr "使用 <acronym>PPP</acronym> Profile 存取網路" #. (itstool) path: sect2/para -#: book.translate.xml:63160 +#: book.translate.xml:64230 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 " @@ -92040,7 +93822,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63166 +#: book.translate.xml:64236 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 " @@ -92050,7 +93832,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63173 +#: book.translate.xml:64243 msgid "" "In FreeBSD, these profiles are implemented with " "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -92064,7 +93846,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63181 +#: book.translate.xml:64251 msgid "" "In this example, <citerefentry><refentrytitle>rfcomm_pppd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is used to open a " @@ -92074,13 +93856,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63188 +#: book.translate.xml:64258 #, 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:63190 +#: book.translate.xml:64260 msgid "" "The actual channel number will be obtained from the remote device using the " "<acronym>SDP</acronym> protocol. It is possible to specify the " @@ -92093,7 +93875,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63198 +#: book.translate.xml:64268 msgid "" "In order to provide network access with the <acronym>PPP</acronym> " "<acronym>LAN</acronym> service, <citerefentry><refentrytitle>sdpd</" @@ -92110,35 +93892,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63212 +#: book.translate.xml:64282 #, no-wrap msgid "<prompt>#</prompt> <userinput>rfcomm_pppd -s -C 7 -l rfcomm-server</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63216 +#: book.translate.xml:64286 msgid "Bluetooth Protocols" msgstr "藍牙通訊協定" #. (itstool) path: sect2/para -#: book.translate.xml:63218 +#: book.translate.xml:64288 msgid "" "This section provides an overview of the various Bluetooth protocols, their " "function, and associated utilities." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63222 +#: book.translate.xml:64292 msgid "Logical Link Control and Adaptation Protocol (<acronym>L2CAP</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:63225 +#: book.translate.xml:64295 msgid "<primary>L2CAP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63229 +#: book.translate.xml:64299 msgid "" "The Logical Link Control and Adaptation Protocol (<acronym>L2CAP</acronym>) " "provides connection-oriented and connectionless data services to upper layer " @@ -92148,7 +93930,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63237 +#: book.translate.xml:64307 msgid "" "<acronym>L2CAP</acronym> is based around the concept of <emphasis>channels</" "emphasis>. A channel is a logical connection on top of a baseband " @@ -92160,7 +93942,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63248 +#: book.translate.xml:64318 msgid "" "In FreeBSD, a netgraph <acronym>L2CAP</acronym> node is created for each " "Bluetooth device. This node is normally connected to the downstream " @@ -92172,7 +93954,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63256 +#: book.translate.xml:64326 msgid "" "A useful command is <citerefentry><refentrytitle>l2ping</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, which can be used to " @@ -92182,7 +93964,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63261 +#: book.translate.xml:64331 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>l2ping -a 00:80:37:29:19:a4</userinput>\n" @@ -92193,7 +93975,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63267 +#: book.translate.xml:64337 msgid "" "The <citerefentry><refentrytitle>l2control</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> utility is used to perform various operations on " @@ -92203,7 +93985,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63273 +#: book.translate.xml:64343 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>l2control -a 00:02:72:00:d4:1a read_channel_list</userinput>\n" @@ -92217,7 +93999,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63282 +#: book.translate.xml:64352 msgid "" "Another diagnostic tool is <citerefentry><refentrytitle>btsockstat</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>. It is similar to " @@ -92229,7 +94011,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63288 +#: book.translate.xml:64358 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>btsockstat</userinput>\n" @@ -92245,12 +94027,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63301 +#: book.translate.xml:64371 msgid "Radio Frequency Communication (<acronym>RFCOMM</acronym>)" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63304 +#: book.translate.xml:64374 msgid "" "The <acronym>RFCOMM</acronym> protocol provides emulation of serial ports " "over the <acronym>L2CAP</acronym> protocol. <acronym>RFCOMM</acronym> is a " @@ -92261,7 +94043,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63313 +#: book.translate.xml:64383 msgid "" "For the purposes of <acronym>RFCOMM</acronym>, a complete communication path " "involves two applications running on the communication endpoints with a " @@ -92272,7 +94054,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63322 +#: book.translate.xml:64392 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 " @@ -92282,24 +94064,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63330 +#: book.translate.xml:64400 msgid "" "In FreeBSD, <acronym>RFCOMM</acronym> is implemented at the Bluetooth " "sockets layer." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63335 +#: book.translate.xml:64405 msgid "Service Discovery Protocol (<acronym>SDP</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:63338 +#: book.translate.xml:64408 msgid "<primary>SDP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63342 +#: book.translate.xml:64412 msgid "" "The Service Discovery Protocol (<acronym>SDP</acronym>) provides the means " "for client applications to discover the existence of services provided by " @@ -92309,7 +94091,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63350 +#: book.translate.xml:64420 msgid "" "<acronym>SDP</acronym> involves communication between a <acronym>SDP</" "acronym> server and a <acronym>SDP</acronym> client. The server maintains a " @@ -92325,7 +94107,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63365 +#: book.translate.xml:64435 msgid "" "Normally, a <acronym>SDP</acronym> client searches for services based on " "some desired characteristics of the services. However, there are times when " @@ -92336,7 +94118,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63374 +#: book.translate.xml:64444 msgid "" "The Bluetooth <acronym>SDP</acronym> server, " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92348,7 +94130,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63380 +#: book.translate.xml:64450 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sdpcontrol -a 00:01:03:fc:6e:ec browse</userinput>\n" @@ -92376,7 +94158,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63403 +#: book.translate.xml:64473 msgid "" "Note that each service has a list of attributes, such as the " "<acronym>RFCOMM</acronym> channel. Depending on the service, the user might " @@ -92388,13 +94170,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63413 +#: book.translate.xml:64483 #, 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:63415 +#: book.translate.xml:64485 msgid "" "Offering services on FreeBSD to Bluetooth clients is done with the " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92403,26 +94185,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:63419 +#: book.translate.xml:64489 #, no-wrap msgid "sdpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63421 +#: book.translate.xml:64491 msgid "" "Then the <citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon can be started with:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63423 +#: book.translate.xml:64493 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sdpd start</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63425 +#: book.translate.xml:64495 msgid "" "The local server application that wants to provide a Bluetooth service to " "remote clients will register the service with the local <acronym>SDP</" @@ -92433,7 +94215,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63432 +#: book.translate.xml:64502 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 " @@ -92441,23 +94223,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63437 +#: book.translate.xml:64507 #, no-wrap msgid "<prompt>#</prompt> <userinput>sdpcontrol -l browse</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63441 +#: book.translate.xml:64511 msgid "<acronym>OBEX</acronym> Object Push (<acronym>OPUSH</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:63444 +#: book.translate.xml:64514 msgid "<primary>OBEX</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63448 +#: book.translate.xml:64518 msgid "" "Object Exchange (<acronym>OBEX</acronym>) is a widely used protocol for " "simple file transfers between mobile devices. Its main use is in infrared " @@ -92468,7 +94250,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63457 +#: book.translate.xml:64527 msgid "" "The <acronym>OBEX</acronym> server and client are implemented by " "<application>obexapp</application>, which can be installed using the " @@ -92476,7 +94258,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63462 +#: book.translate.xml:64532 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 " @@ -92493,7 +94275,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63478 +#: book.translate.xml:64548 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>obexapp -a 00:80:37:29:19:a4 -C IrMC</userinput>\n" @@ -92506,7 +94288,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63486 +#: book.translate.xml:64556 msgid "" "In order to provide the <acronym>OPUSH</acronym> service, " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92521,18 +94303,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63498 +#: book.translate.xml:64568 #, no-wrap msgid "<prompt>#</prompt> <userinput>obexapp -s -C 10</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63502 +#: book.translate.xml:64572 msgid "Serial Port Profile (<acronym>SPP</acronym>)" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63504 +#: book.translate.xml:64574 msgid "" "The Serial Port Profile (<acronym>SPP</acronym>) allows Bluetooth devices to " "perform serial cable emulation. This profile allows legacy applications to " @@ -92541,7 +94323,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63510 +#: book.translate.xml:64580 msgid "" "In FreeBSD, <citerefentry><refentrytitle>rfcomm_sppd</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> implements " @@ -92555,7 +94337,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63520 +#: book.translate.xml:64590 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rfcomm_sppd -a 00:07:E0:00:0B:CA -t</userinput>\n" @@ -92564,23 +94346,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63524 +#: book.translate.xml:64594 msgid "Once connected, the pseudo tty can be used as serial port:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63527 +#: book.translate.xml:64597 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l /dev/pts/6</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63529 +#: book.translate.xml:64599 msgid "The pseudo tty is printed on stdout and can be read by wrapper scripts:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:63532 +#: book.translate.xml:64602 #, no-wrap msgid "" "PTS=`rfcomm_sppd -a 00:07:E0:00:0B:CA -t`\n" @@ -92588,7 +94370,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63540 +#: book.translate.xml:64610 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 " @@ -92599,13 +94381,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63549 +#: book.translate.xml:64619 #, no-wrap msgid "<prompt>#</prompt> <userinput>hccontrol -n ubt0hci write_node_role_switch 0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63551 +#: book.translate.xml:64621 msgid "" "To display Bluetooth packets, use the third-party package " "<application>hcidump</application>, which can be installed using the " @@ -92617,29 +94399,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:63562 +#: book.translate.xml:64632 msgid "Bridging" msgstr "橋接" #. (itstool) path: authorgroup/author -#: book.translate.xml:63565 book.translate.xml:64026 +#: book.translate.xml:64635 book.translate.xml:65096 msgid "" "<personname> <firstname>Andrew</firstname> <surname>Thompson</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:63575 +#: book.translate.xml:64645 msgid "<primary><acronym>IP</acronym> subnet</primary>" msgstr "<primary><acronym>IP</acronym> 子網段</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:63578 +#: book.translate.xml:64648 msgid "<primary>bridge</primary>" msgstr "<primary>橋接</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:63582 +#: book.translate.xml:64652 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 " @@ -92648,7 +94430,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:63589 +#: book.translate.xml:64659 msgid "" "A bridge works by learning the <acronym>MAC</acronym> addresses of the " "devices on each of its network interfaces. It forwards traffic between " @@ -92659,17 +94441,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:63597 +#: book.translate.xml:64667 msgid "Bridging can be useful in the following situations:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63601 +#: book.translate.xml:64671 msgid "Connecting Networks" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63603 +#: book.translate.xml:64673 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 " @@ -92679,19 +94461,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63613 +#: book.translate.xml:64683 msgid "Filtering/Traffic Shaping Firewall" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63615 +#: book.translate.xml:64685 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:63619 +#: book.translate.xml:64689 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 " @@ -92702,12 +94484,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63632 +#: book.translate.xml:64702 msgid "Network Tap" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63634 +#: book.translate.xml:64704 msgid "" "A bridge can join two network segments in order to inspect all Ethernet " "frames that pass between them using <citerefentry><refentrytitle>bpf</" @@ -92718,12 +94500,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63643 +#: book.translate.xml:64713 msgid "Layer 2 <acronym>VPN</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63645 +#: book.translate.xml:64715 msgid "" "Two Ethernet networks can be joined across an <acronym>IP</acronym> link by " "bridging the networks to an EtherIP tunnel or a " @@ -92732,19 +94514,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63653 +#: book.translate.xml:64723 msgid "Layer 2 Redundancy" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63655 +#: book.translate.xml:64725 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:63662 +#: book.translate.xml:64732 msgid "" "This section describes how to configure a FreeBSD system as a bridge using " "<citerefentry><refentrytitle>if_bridge</refentrytitle><manvolnum>4</" @@ -92754,7 +94536,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63667 +#: book.translate.xml:64737 msgid "" "Packet filtering can be used with any firewall package that hooks into the " "<citerefentry><refentrytitle>pfil</refentrytitle><manvolnum>9</manvolnum></" @@ -92765,12 +94547,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63674 +#: book.translate.xml:64744 msgid "Enabling the Bridge" msgstr "開啟橋接" #. (itstool) path: sect2/para -#: book.translate.xml:63676 +#: book.translate.xml:64746 msgid "" "In FreeBSD, <citerefentry><refentrytitle>if_bridge</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> is a kernel module " @@ -92782,14 +94564,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63683 +#: book.translate.xml:64753 msgid "" "The bridge is created using interface cloning. To create the bridge " "interface:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63686 +#: book.translate.xml:64756 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge create</userinput>\n" @@ -92803,7 +94585,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63695 +#: book.translate.xml:64765 msgid "" "When a bridge interface is created, it is automatically assigned a randomly " "generated Ethernet address. The <literal>maxaddr</literal> and " @@ -92814,7 +94596,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63704 +#: book.translate.xml:64774 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 " @@ -92822,7 +94604,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63708 +#: book.translate.xml:64778 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm fxp0 addm fxp1 up</userinput>\n" @@ -92831,7 +94613,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63712 +#: book.translate.xml:64782 msgid "" "The bridge can now forward Ethernet frames between <filename>fxp0</filename> " "and <filename>fxp1</filename>. Add the following lines to <filename>/etc/rc." @@ -92839,7 +94621,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63717 +#: book.translate.xml:64787 #, no-wrap msgid "" "cloned_interfaces=\"bridge0\"\n" @@ -92849,7 +94631,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63722 +#: book.translate.xml:64792 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 " @@ -92858,13 +94640,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63728 +#: book.translate.xml:64798 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 inet 192.168.0.1/24</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63730 +#: book.translate.xml:64800 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 " @@ -92872,7 +94654,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63736 +#: book.translate.xml:64806 msgid "" "When packet filtering is enabled, bridged packets will pass through the " "filter inbound on the originating interface on the bridge interface, and " @@ -92882,7 +94664,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63743 +#: book.translate.xml:64813 msgid "" "The bridge has several configurable settings for passing non-<acronym>IP</" "acronym> and <acronym>IP</acronym> packets, and layer2 firewalling with " @@ -92892,12 +94674,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63751 +#: book.translate.xml:64821 msgid "Enabling Spanning Tree" msgstr "開啟 Spanning Tree" #. (itstool) path: sect2/para -#: book.translate.xml:63753 +#: book.translate.xml:64823 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 " @@ -92907,7 +94689,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63761 +#: book.translate.xml:64831 msgid "" "The Rapid Spanning Tree Protocol (<acronym>RSTP</acronym> or 802.1w) " "provides backwards compatibility with legacy <acronym>STP</acronym>. " @@ -92919,7 +94701,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63770 +#: book.translate.xml:64840 msgid "" "<acronym>STP</acronym> can be enabled on member interfaces using " "<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -92929,7 +94711,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63775 +#: book.translate.xml:64845 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 stp fxp0 stp fxp1</userinput>\n" @@ -92947,7 +94729,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63788 +#: book.translate.xml:64858 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</" @@ -92955,12 +94737,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63794 +#: book.translate.xml:64864 msgid "Another bridge on the network also has <acronym>STP</acronym> enabled:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63797 +#: book.translate.xml:64867 #, no-wrap msgid "" "bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500\n" @@ -92977,7 +94759,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63809 +#: book.translate.xml:64879 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</" @@ -92987,12 +94769,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63818 +#: book.translate.xml:64888 msgid "Bridge Interface Parameters" msgstr "橋接介面參數" #. (itstool) path: sect2/para -#: book.translate.xml:63820 +#: book.translate.xml:64890 msgid "" "Several <command>ifconfig</command> parameters are unique to bridge " "interfaces. This section summarizes some common uses for these parameters. " @@ -93002,12 +94784,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63827 +#: book.translate.xml:64897 msgid "private" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63829 +#: book.translate.xml:64899 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 " @@ -93017,12 +94799,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63840 +#: book.translate.xml:64910 msgid "span" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63842 +#: book.translate.xml:64912 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 " @@ -93034,18 +94816,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:63852 +#: book.translate.xml:64922 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 span fxp4</userinput>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:63857 +#: book.translate.xml:64927 msgid "sticky" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63859 +#: book.translate.xml:64929 msgid "" "If a bridge member interface is marked as sticky, dynamically learned " "address entries are treated as static entries in the forwarding cache. " @@ -93057,7 +94839,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63869 +#: book.translate.xml:64939 msgid "" "An example of using sticky addresses is to combine the bridge with " "<acronym>VLAN</acronym>s in order to isolate customer networks without " @@ -93069,7 +94851,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:63878 +#: book.translate.xml:64948 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm vlan100 sticky vlan100 addm vlan101 sticky vlan101</userinput>\n" @@ -93077,7 +94859,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63881 +#: book.translate.xml:64951 msgid "" "In this example, both clients see <systemitem class=\"ipaddress" "\">192.168.0.1</systemitem> as their default gateway. Since the bridge cache " @@ -93086,20 +94868,20 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63887 +#: book.translate.xml:64957 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:63891 +#: book.translate.xml:64961 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 private vlan100 private vlan101</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63893 +#: book.translate.xml:64963 msgid "" "The customers are completely isolated from each other and the full " "<systemitem class=\"netmask\">/24</systemitem> address range can be " @@ -93107,7 +94889,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63897 +#: book.translate.xml:64967 msgid "" "The number of unique source <acronym>MAC</acronym> addresses behind an " "interface can be limited. Once the limit is reached, packets with unknown " @@ -93116,7 +94898,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63903 +#: book.translate.xml:64973 msgid "" "The following example sets the maximum number of Ethernet devices for " "<systemitem class=\"fqdomainname\">CustomerA</systemitem> on " @@ -93124,13 +94906,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:63907 +#: book.translate.xml:64977 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 ifmaxaddr vlan100 10</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63912 +#: book.translate.xml:64982 msgid "" "Bridge interfaces also support monitor mode, where the packets are discarded " "after <citerefentry><refentrytitle>bpf</refentrytitle><manvolnum>4</" @@ -93144,7 +94926,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63921 +#: book.translate.xml:64991 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm fxp0 addm fxp1 addm fxp2 addm fxp3 monitor up</userinput>\n" @@ -93152,12 +94934,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63926 +#: book.translate.xml:64996 msgid "<acronym>SNMP</acronym> Monitoring" msgstr "<acronym>SNMP</acronym> 監視" #. (itstool) path: sect2/para -#: book.translate.xml:63928 +#: book.translate.xml:64998 msgid "" "The bridge interface and <acronym>STP</acronym> parameters can be monitored " "via <citerefentry><refentrytitle>bsnmpd</refentrytitle><manvolnum>1</" @@ -93168,7 +94950,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63935 +#: book.translate.xml:65005 msgid "" "To enable monitoring on the bridge, uncomment this line in <filename>/etc/" "snmpd.config</filename> by removing the beginning <literal>#</literal> " @@ -93176,13 +94958,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63939 +#: book.translate.xml:65009 #, no-wrap msgid "begemotSnmpdModulePath.\"bridge\" = \"/usr/lib/snmp_bridge.so\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63941 +#: book.translate.xml:65011 msgid "" "Other configuration settings, such as community names and access lists, may " "need to be modified in this file. See <citerefentry><refentrytitle>bsnmpd</" @@ -93193,26 +94975,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63947 +#: book.translate.xml:65017 #, no-wrap msgid "bsnmpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63949 +#: book.translate.xml:65019 msgid "" "Then, start <citerefentry><refentrytitle>bsnmpd</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63951 +#: book.translate.xml:65021 #, no-wrap msgid "<prompt>#</prompt> <userinput>service bsnmpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63953 +#: book.translate.xml:65023 msgid "" "The following examples use the <application>Net-SNMP</application> software " "(<package>net-mgmt/net-snmp</package>) to query a bridge from a client " @@ -93224,7 +95006,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:63963 +#: book.translate.xml:65033 #, no-wrap msgid "" "mibdirs +/usr/share/snmp/mibs\n" @@ -93232,12 +95014,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63966 +#: book.translate.xml:65036 msgid "To monitor a single bridge using the IETF BRIDGE-MIB (RFC4188):" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63969 +#: book.translate.xml:65039 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpwalk -v 2c -c public bridge1.example.com mib-2.dot1dBridge</userinput>\n" @@ -93259,7 +95041,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63986 +#: book.translate.xml:65056 msgid "" "The <literal>dot1dStpTopChanges.0</literal> value is two, indicating that " "the <acronym>STP</acronym> bridge topology has changed twice. A topology " @@ -93270,14 +95052,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63994 +#: book.translate.xml:65064 msgid "" "To monitor multiple bridge interfaces, the private BEGEMOT-BRIDGE-MIB can be " "used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63997 +#: book.translate.xml:65067 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpwalk -v 2c -c public bridge1.example.com</userinput>\n" @@ -93298,14 +95080,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64013 +#: book.translate.xml:65083 msgid "" "To change the bridge interface being monitored via the <literal>mib-2." "dot1dBridge</literal> subtree:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64016 +#: book.translate.xml:65086 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpset -v 2c -c private bridge1.example.com</userinput>\n" @@ -93313,42 +95095,42 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64023 +#: book.translate.xml:65093 msgid "Link Aggregation and Failover" msgstr "Link Aggregation 與容錯移轉" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64036 +#: book.translate.xml:65106 msgid "<primary>lagg</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64039 +#: book.translate.xml:65109 msgid "<primary>failover</primary>" msgstr "<primary>容錯移轉</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64042 +#: book.translate.xml:65112 msgid "<primary><acronym>FEC</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64045 +#: book.translate.xml:65115 msgid "<primary><acronym>LACP</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64048 +#: book.translate.xml:65118 msgid "<primary>loadbalance</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64051 +#: book.translate.xml:65121 msgid "<primary>roundrobin</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64055 +#: book.translate.xml:65125 msgid "" "FreeBSD provides the <citerefentry><refentrytitle>lagg</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> interface which can be " @@ -93361,7 +95143,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64065 +#: book.translate.xml:65135 msgid "" "The aggregation protocols supported by the lagg interface determine which " "ports are used for outgoing traffic and whether or not a specific port " @@ -93371,12 +95153,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64072 +#: book.translate.xml:65142 msgid "failover" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64074 +#: book.translate.xml:65144 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 " @@ -93387,12 +95169,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64086 +#: book.translate.xml:65156 msgid "fec / loadbalance" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64088 +#: book.translate.xml:65158 msgid "" "<trademark class=\"registered\">Cisco</trademark> Fast <trademark class=" "\"registered\">EtherChannel</trademark> (<acronym>FEC</acronym>) is found on " @@ -93403,12 +95185,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64098 +#: book.translate.xml:65168 msgid "<acronym>lacp</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64100 +#: book.translate.xml:65170 msgid "" "The <trademark class=\"registered\">IEEE</trademark> 802.3ad Link " "Aggregation Control Protocol (<acronym>LACP</acronym>) negotiates a set of " @@ -93422,7 +95204,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64114 +#: book.translate.xml:65184 msgid "" "<acronym>LACP</acronym> balances outgoing traffic across the active ports " "based on hashed protocol header information and accepts incoming traffic " @@ -93433,12 +95215,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64126 +#: book.translate.xml:65196 msgid "roundrobin" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64128 +#: book.translate.xml:65198 msgid "" "This mode distributes outgoing traffic using a round-robin scheduler through " "all active ports and accepts incoming traffic from any active port. Since " @@ -93446,12 +95228,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64138 +#: book.translate.xml:65208 msgid "Configuration Examples" msgstr "設定範例" #. (itstool) path: sect2/para -#: book.translate.xml:64140 +#: book.translate.xml:65210 msgid "" "This section demonstrates how to configure a <trademark class=\"registered" "\">Cisco</trademark> switch and a FreeBSD system for <acronym>LACP</acronym> " @@ -93461,7 +95243,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:64148 +#: book.translate.xml:65218 msgid "" "<acronym>LACP</acronym> Aggregation with a <trademark class=\"registered" "\">Cisco</trademark> Switch" @@ -93470,7 +95252,7 @@ msgstr "" "<acronym>LACP</acronym> Aggregation" #. (itstool) path: example/para -#: book.translate.xml:64151 +#: book.translate.xml:65221 msgid "" "This example connects two <citerefentry><refentrytitle>fxp</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> Ethernet interfaces on " @@ -93483,7 +95265,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64160 +#: book.translate.xml:65230 msgid "" "Frame ordering is mandatory on Ethernet links and any traffic between two " "stations always flows over the same physical link, limiting the maximum " @@ -93493,7 +95275,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64168 +#: book.translate.xml:65238 msgid "" "On the <trademark class=\"registered\">Cisco</trademark> switch, add the " "<replaceable>FastEthernet0/1</replaceable> and <replaceable>FastEthernet0/2</" @@ -93501,7 +95283,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64173 +#: book.translate.xml:65243 #, no-wrap msgid "" "<userinput>interface <replaceable>FastEthernet0/1</replaceable>\n" @@ -93514,7 +95296,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64181 +#: book.translate.xml:65251 msgid "" "On the FreeBSD system, create the <citerefentry><refentrytitle>lagg</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> interface using the " @@ -93524,7 +95306,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64188 +#: book.translate.xml:65258 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>fxp0</replaceable> up</userinput>\n" @@ -93534,12 +95316,12 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64193 +#: book.translate.xml:65263 msgid "Next, verify the status of the virtual interface:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64195 +#: book.translate.xml:65265 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -93555,7 +95337,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64206 +#: book.translate.xml:65276 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 " @@ -93564,14 +95346,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64214 +#: book.translate.xml:65284 msgid "" "To see the port status on the <trademark class=\"registered\">Cisco</" "trademark> switch:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64216 +#: book.translate.xml:65286 #, no-wrap msgid "" "switch# <userinput>show lacp neighbor</userinput>\n" @@ -93590,19 +95372,19 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64230 +#: book.translate.xml:65300 msgid "For more detail, type <userinput>show lacp neighbor detail</userinput>." msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64233 +#: book.translate.xml:65303 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:64237 +#: book.translate.xml:65307 #, no-wrap msgid "" "ifconfig_<replaceable>fxp0</replaceable>=\"up\"\n" @@ -93612,12 +95394,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:64244 +#: book.translate.xml:65314 msgid "Failover Mode" msgstr "容錯移轉模式" #. (itstool) path: example/para -#: book.translate.xml:64246 +#: book.translate.xml:65316 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 " @@ -93630,7 +95412,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64256 +#: book.translate.xml:65326 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>fxp0</replaceable> up</userinput>\n" @@ -93640,12 +95422,12 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64261 book.translate.xml:64350 +#: book.translate.xml:65331 book.translate.xml:65420 msgid "The virtual interface should look something like this:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64264 +#: book.translate.xml:65334 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -93661,7 +95443,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64275 +#: book.translate.xml:65345 msgid "" "Traffic will be transmitted and received on <replaceable>fxp0</replaceable>. " "If the link is lost on <replaceable>fxp0</replaceable>, <replaceable>fxp1</" @@ -93670,14 +95452,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64282 book.translate.xml:64368 +#: book.translate.xml:65352 book.translate.xml:65438 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:64286 +#: book.translate.xml:65356 #, no-wrap msgid "" "ifconfig_<replaceable>fxp0</replaceable>=\"up\"\n" @@ -93687,12 +95469,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:64293 +#: book.translate.xml:65363 msgid "Failover Mode Between Ethernet and Wireless Interfaces" msgstr "乙太網路與無線介面間的容錯移轉模式" #. (itstool) path: example/para -#: book.translate.xml:64296 +#: book.translate.xml:65366 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 " @@ -93704,14 +95486,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64304 +#: book.translate.xml:65374 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:64308 +#: book.translate.xml:65378 msgid "" "In this example, the Ethernet interface, <replaceable>bge0</replaceable>, is " "the master and the wireless interface, <replaceable>wlan0</replaceable>, is " @@ -93722,7 +95504,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64318 +#: book.translate.xml:65388 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>bge0</replaceable></userinput>\n" @@ -93736,7 +95518,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64327 +#: book.translate.xml:65397 msgid "" "Replace <replaceable>bge0</replaceable> to match the system's Ethernet " "interface name. The <literal>ether</literal> line will contain the " @@ -93745,26 +95527,26 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64334 +#: book.translate.xml:65404 #, 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:64336 +#: book.translate.xml:65406 msgid "" "Bring the wireless interface up, but do not set an <acronym>IP</acronym> " "address:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64339 +#: book.translate.xml:65409 #, 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:64341 +#: book.translate.xml:65411 msgid "" "Make sure the <replaceable>bge0</replaceable> interface is up, then create " "the <citerefentry><refentrytitle>lagg</refentrytitle><manvolnum>4</" @@ -93773,7 +95555,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64346 +#: book.translate.xml:65416 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>bge0</replaceable> up</userinput>\n" @@ -93782,7 +95564,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64353 +#: book.translate.xml:65423 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -93797,20 +95579,20 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:64363 +#: book.translate.xml:65433 msgid "" "Then, start the <acronym>DHCP</acronym> client to obtain an <acronym>IP</" "acronym> address:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:64366 +#: book.translate.xml:65436 #, no-wrap msgid "<prompt>#</prompt> <userinput>dhclient <literal>lagg<replaceable>0</replaceable></literal></userinput>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:64372 +#: book.translate.xml:65442 #, no-wrap msgid "" "ifconfig_bge0=\"up\"\n" @@ -93822,36 +95604,36 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64384 +#: book.translate.xml:65454 msgid "Diskless Operation with <acronym>PXE</acronym>" msgstr "<acronym>PXE</acronym> 無磁碟作業" #. (itstool) path: authorgroup/author -#: book.translate.xml:64387 +#: book.translate.xml:65457 msgid "" "<personname> <firstname>Jean-François</firstname> <surname>Dockès</surname> " "</personname> <contrib>Updated by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:64396 +#: book.translate.xml:65466 msgid "" "<personname> <firstname>Alex</firstname> <surname>Dupre</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64406 +#: book.translate.xml:65476 msgid "<primary>diskless workstation</primary>" msgstr "<primary>無磁碟工作站</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64409 +#: book.translate.xml:65479 msgid "<primary>diskless operation</primary>" msgstr "<primary>無磁碟作業</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:64413 +#: book.translate.xml:65483 msgid "" "The <trademark class=\"registered\">Intel</trademark> Preboot eXecution " "Environment (<acronym>PXE</acronym>) allows an operating system to boot over " @@ -93865,7 +95647,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64424 +#: book.translate.xml:65494 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 " @@ -93874,7 +95656,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64432 +#: book.translate.xml:65502 msgid "" "Initial parameters, such as an <acronym>IP</acronym> address, executable " "boot filename and location, server name, and root path are obtained from the " @@ -93882,18 +95664,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64439 +#: book.translate.xml:65509 msgid "" "The operating system loader file is booted using <acronym>TFTP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64444 +#: book.translate.xml:65514 msgid "The file systems are loaded using <acronym>NFS</acronym>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64449 +#: book.translate.xml:65519 msgid "" "When a computer <acronym>PXE</acronym> boots, it receives information over " "<acronym>DHCP</acronym> about where to obtain the initial boot loader file. " @@ -93906,7 +95688,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64460 +#: book.translate.xml:65530 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 " @@ -93915,25 +95697,25 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:64466 +#: book.translate.xml:65535 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:64473 +#: book.translate.xml:65535 msgid "Setting Up the <acronym>PXE</acronym> Environment" msgstr "設定 <acronym>PXE</acronym> 環境" #. (itstool) path: affiliation/address -#: book.translate.xml:64483 +#: book.translate.xml:65535 #, no-wrap msgid "rodrigc@FreeBSD.org" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:64477 +#: book.translate.xml:65535 msgid "" "<personname> <firstname>Craig</firstname> <surname>Rodrigues</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -93941,7 +95723,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64490 +#: book.translate.xml:65535 msgid "" "The steps shown in this section configure the built-in <acronym>NFS</" "acronym> and <acronym>TFTP</acronym> servers. The next section demonstrates " @@ -93954,14 +95736,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64504 +#: book.translate.xml:65535 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:64507 +#: book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>export NFSROOTDIR=/b/tftpboot/FreeBSD/install</userinput>\n" @@ -93969,38 +95751,38 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64512 +#: book.translate.xml:65535 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:64515 +#: book.translate.xml:65535 #, no-wrap msgid "nfs_server_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64519 +#: book.translate.xml:65535 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:64523 +#: book.translate.xml:65535 #, no-wrap msgid "/b -ro -alldirs -maproot=root" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64527 +#: book.translate.xml:65535 msgid "Start the <acronym>NFS</acronym> server:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64533 +#: book.translate.xml:65535 msgid "" "Enable <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> by adding the following line to <filename>/etc/rc." @@ -94008,20 +95790,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64540 +#: book.translate.xml:65535 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:64544 +#: book.translate.xml:65535 #, no-wrap msgid "tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /b/tftpboot" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:64547 +#: book.translate.xml:65535 msgid "" "Some <acronym>PXE</acronym> versions require the <acronym>TCP</acronym> " "version of <acronym>TFTP</acronym>. In this case, uncomment the second " @@ -94029,14 +95811,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64556 +#: book.translate.xml:65535 msgid "" "Start <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64562 +#: book.translate.xml:65535 msgid "" "Install the base system into <filename>${NFSROOTDIR}</filename>, either by " "decompressing the official archives or by rebuilding the FreeBSD kernel and " @@ -94047,14 +95829,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64575 +#: book.translate.xml:65535 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:64579 +#: book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>tftp localhost</userinput>\n" @@ -94063,14 +95845,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64585 +#: book.translate.xml:65535 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:64589 +#: book.translate.xml:65535 #, no-wrap msgid "" "# Device Mountpoint FSType Options Dump Pass\n" @@ -94078,7 +95860,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64592 +#: book.translate.xml:65535 msgid "" "Replace <replaceable>myhost.example.com</replaceable> with the hostname or " "<acronym>IP</acronym> address of the <acronym>NFS</acronym> server. In this " @@ -94088,14 +95870,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64601 +#: book.translate.xml:65535 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:64605 +#: book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chroot ${NFSROOTDIR}</userinput>\n" @@ -94103,7 +95885,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64610 +#: book.translate.xml:65535 msgid "" "If needed, enable <citerefentry><refentrytitle>ssh</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> root logins for client " @@ -94115,7 +95897,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64619 +#: book.translate.xml:65535 msgid "" "Perform any other needed customizations of the <acronym>PXE</acronym> " "environment in <filename>${NFSROOTDIR}</filename>. These customizations " @@ -94125,7 +95907,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64627 +#: book.translate.xml:65535 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." @@ -94136,7 +95918,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64636 +#: book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chroot ${NFSROOTDIR}</userinput>\n" @@ -94146,7 +95928,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64641 +#: book.translate.xml:65535 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 " @@ -94161,17 +95943,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64658 +#: book.translate.xml:65535 msgid "Configuring the <acronym>DHCP</acronym> Server" msgstr "設定 <acronym>DHCP</acronym> 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:64660 +#: book.translate.xml:65535 msgid "<primary>DHCP</primary> <secondary>diskless operation</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64665 +#: book.translate.xml:65535 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 " @@ -94179,14 +95961,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64670 +#: book.translate.xml:65535 msgid "" "<acronym>DHCP</acronym> is not part of the FreeBSD base system but can be " "installed using the <package>net/isc-dhcp43-server</package> port or package." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64675 +#: book.translate.xml:65535 msgid "" "Once installed, edit the configuration file, <filename>/usr/local/etc/dhcpd." "conf</filename>. Configure the <literal>next-server</literal>, " @@ -94195,7 +95977,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64682 +#: book.translate.xml:65535 #, no-wrap msgid "" "subnet 192.168.0.0 netmask 255.255.255.0 {\n" @@ -94219,14 +96001,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64712 +#: book.translate.xml:65535 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:64716 +#: book.translate.xml:65535 msgid "" "The <literal>filename</literal> directive defines the path to <filename>/" "boot/pxeboot</filename>. A relative filename is used, meaning that " @@ -94234,37 +96016,37 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64721 +#: book.translate.xml:65535 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:64724 +#: book.translate.xml:65535 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:64728 +#: book.translate.xml:65535 #, no-wrap msgid "dhcpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64730 +#: book.translate.xml:65535 msgid "Then start the <acronym>DHCP</acronym> service:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64854 +#: book.translate.xml:65535 msgid "Debugging <acronym>PXE</acronym> Problems" msgstr "<acronym>PXE</acronym> 問題除錯" #. (itstool) path: sect2/para -#: book.translate.xml:64856 +#: book.translate.xml:65535 msgid "" "Once all of the services are configured and started, <acronym>PXE</acronym> " "clients should be able to automatically load FreeBSD over the network. If a " @@ -94274,7 +96056,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64863 +#: book.translate.xml:65535 msgid "" "This section describes some troubleshooting tips for isolating the source of " "the configuration problem should no clients be able to <acronym>PXE</" @@ -94282,7 +96064,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64869 +#: book.translate.xml:65535 msgid "" "Use the <package>net/wireshark</package> package or port to debug the " "network traffic involved during the <acronym>PXE</acronym> booting process, " @@ -94290,7 +96072,7 @@ msgid "" msgstr "" #. (itstool) path: figure/title -#: book.translate.xml:64875 +#: book.translate.xml:65535 msgid "" "<acronym>PXE</acronym> Booting Process with <acronym>NFS</acronym> Root Mount" msgstr "" @@ -94301,18 +96083,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:64888 +#: book.translate.xml:65535 msgctxt "_" msgid "external ref='advanced-networking/pxe-nfs' md5='__failed__'" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:64892 +#: book.translate.xml:65535 msgid "Client broadcasts a <literal>DHCPDISCOVER</literal> message." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:64896 +#: book.translate.xml:65535 msgid "" "The <acronym>DHCP</acronym> server responds with the <acronym>IP</acronym> " "address, <literal>next-server</literal>, <literal>filename</literal>, and " @@ -94320,21 +96102,21 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:64903 +#: book.translate.xml:65535 msgid "" "The client sends a <acronym>TFTP</acronym> request to <literal>next-server</" "literal>, asking to retrieve <literal>filename</literal>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:64909 +#: book.translate.xml:65535 msgid "" "The <acronym>TFTP</acronym> server responds and sends <literal>filename</" "literal> to client." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:64914 +#: book.translate.xml:65535 msgid "" "The client executes <literal>filename</literal>, which is " "<citerefentry><refentrytitle>pxeboot</refentrytitle><manvolnum>8</" @@ -94344,7 +96126,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64928 +#: book.translate.xml:65535 msgid "" "On the <acronym>TFTP</acronym> server, read <filename>/var/log/xferlog</" "filename> to ensure that <filename>pxeboot</filename> is being retrieved " @@ -94352,7 +96134,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:64935 +#: book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>tftp 192.168.0.1</userinput>\n" @@ -94361,7 +96143,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64939 +#: book.translate.xml:65535 msgid "" "The <literal>BUGS</literal> sections in <citerefentry><refentrytitle>tftpd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> and " @@ -94370,46 +96152,46 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:64945 +#: book.translate.xml:65535 msgid "" "Make sure that the root file system can be mounted via <acronym>NFS</" "acronym>. To test this example configuration:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:64949 +#: book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t nfs 192.168.0.1:/b/tftpboot/FreeBSD/install /mnt</userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64957 +#: book.translate.xml:65535 msgid "<acronym>IPv6</acronym>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:64960 +#: book.translate.xml:65535 msgid "" "<personname> <firstname>Aaron</firstname> <surname>Kaplan</surname> </" "personname> <contrib>Originally Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:64969 +#: book.translate.xml:65535 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Restructured and Added by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:64978 +#: book.translate.xml:65535 msgid "" "<personname> <firstname>Brad</firstname> <surname>Davis</surname> </" "personname> <contrib>Extended by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64988 +#: book.translate.xml:65535 msgid "" "<acronym>IPv6</acronym> is the new version of the well known <acronym>IP</" "acronym> protocol, also known as <acronym>IPv4</acronym>. <acronym>IPv6</" @@ -94418,7 +96200,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64996 +#: book.translate.xml:65535 msgid "" "Its 128-bit address space allows for " "340,282,366,920,938,463,463,374,607,431,768,211,456 addresses. This " @@ -94427,7 +96209,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65004 +#: book.translate.xml:65535 msgid "" "Routers only store network aggregation addresses in their routing tables, " "thus reducing the average space of a routing table to 8192 entries. This " @@ -94438,40 +96220,40 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65017 +#: book.translate.xml:65535 msgid "" "Address autoconfiguration (<link xlink:href=\"http://www.ietf.org/rfc/" "rfc2462.txt\">RFC2462</link>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65021 +#: book.translate.xml:65535 msgid "Mandatory multicast addresses." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65025 +#: book.translate.xml:65535 msgid "Built-in <acronym>IPsec</acronym> (<acronym>IP</acronym> security)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65030 +#: book.translate.xml:65535 msgid "Simplified header structure." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65034 +#: book.translate.xml:65535 msgid "Support for mobile <acronym>IP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65038 +#: book.translate.xml:65535 msgid "" "<acronym>IPv6</acronym>-to-<acronym>IPv4</acronym> transition mechanisms." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65043 +#: book.translate.xml:65535 msgid "" "FreeBSD includes the <link xlink:href=\"http://www.kame.net/\">http://www." "kame.net/</link> <acronym>IPv6</acronym> reference implementation and comes " @@ -94480,34 +96262,34 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65050 +#: book.translate.xml:65535 msgid "Background on <acronym>IPv6</acronym> Addresses" msgstr "<acronym>IPv6</acronym> 位址的背景知識" #. (itstool) path: sect2/para -#: book.translate.xml:65052 +#: book.translate.xml:65535 msgid "There are three different types of <acronym>IPv6</acronym> addresses:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65057 +#: book.translate.xml:65535 msgid "Unicast" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65059 +#: book.translate.xml:65535 msgid "" "A packet sent to a unicast address arrives at the interface belonging to the " "address." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65065 +#: book.translate.xml:65535 msgid "Anycast" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65067 +#: book.translate.xml:65535 msgid "" "These addresses are syntactically indistinguishable from unicast addresses " "but they address a group of interfaces. The packet destined for an anycast " @@ -94516,12 +96298,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65076 +#: book.translate.xml:65535 msgid "Multicast" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65078 +#: book.translate.xml:65535 msgid "" "These addresses identify a group of interfaces. A packet destined for a " "multicast address will arrive at all interfaces belonging to the multicast " @@ -94531,7 +96313,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65089 +#: book.translate.xml:65535 msgid "" "When reading an <acronym>IPv6</acronym> address, the canonical form is " "represented as <systemitem>x:x:x:x:x:x:x:x</systemitem>, where each " @@ -94540,7 +96322,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65096 +#: book.translate.xml:65535 msgid "" "Often, an address will have long substrings of all zeros. A <literal>::</" "literal> (double colon) can be used to replace one substring per address. " @@ -94551,7 +96333,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65104 +#: book.translate.xml:65535 msgid "" "A third form is to write the last 32 bits using the well known " "<acronym>IPv4</acronym> notation. For example, <systemitem>2002::10.0.0.1</" @@ -94561,7 +96343,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65112 +#: book.translate.xml:65535 msgid "" "To view a FreeBSD system's <acronym>IPv6 </acronym> address, use " "<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -94569,13 +96351,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65115 +#: book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig</userinput>" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65117 +#: book.translate.xml:65535 #, no-wrap msgid "" "rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500\n" @@ -94587,7 +96369,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65124 +#: book.translate.xml:65535 msgid "" "In this example, the <filename>rl0</filename> interface is using " "<systemitem>fe80::200:21ff:fe03:8e1%rl0</systemitem>, an auto-configured " @@ -94596,184 +96378,184 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65129 +#: book.translate.xml:65535 msgid "" "Some <acronym>IPv6</acronym> addresses are reserved. A summary of these " "reserved addresses is seen in <xref linkend=\"reservedip6\"/>:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:65133 +#: book.translate.xml:65535 msgid "Reserved <acronym>IPv6</acronym> Addresses" msgstr "已保留的 <acronym>IPv6</acronym> 位址" #. (itstool) path: row/entry -#: book.translate.xml:65138 +#: book.translate.xml:65535 msgid "<acronym>IPv6</acronym> address" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65139 +#: book.translate.xml:65535 msgid "Prefixlength (Bits)" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65147 +#: book.translate.xml:65535 msgid "<systemitem>::</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65148 book.translate.xml:65156 +#: book.translate.xml:65535 msgid "128 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65149 +#: book.translate.xml:65535 msgid "unspecified" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65150 +#: book.translate.xml:65535 msgid "" "Equivalent to <systemitem class=\"ipaddress\">0.0.0.0</systemitem> in " "<acronym>IPv4</acronym>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65155 +#: book.translate.xml:65535 msgid "<systemitem>::1</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65157 +#: book.translate.xml:65535 msgid "loopback address" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65158 +#: book.translate.xml:65535 msgid "" "Equivalent to <systemitem class=\"ipaddress\">127.0.0.1</systemitem> in " "<acronym>IPv4</acronym>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65163 +#: book.translate.xml:65535 msgid "<systemitem>::00:xx:xx:xx:xx</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65164 book.translate.xml:65172 +#: book.translate.xml:65535 msgid "96 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65165 +#: book.translate.xml:65535 msgid "embedded <acronym>IPv4</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65166 +#: book.translate.xml:65535 msgid "The lower 32 bits are the compatible <acronym>IPv4</acronym> address." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65171 +#: book.translate.xml:65535 msgid "<systemitem>::ff:xx:xx:xx:xx</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65173 +#: book.translate.xml:65535 msgid "<acronym>IPv4</acronym> mapped <acronym>IPv6</acronym> address" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65175 +#: book.translate.xml:65535 msgid "" "The lower 32 bits are the <acronym>IPv4</acronym> address for hosts which do " "not support <acronym>IPv6</acronym>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65181 +#: book.translate.xml:65535 msgid "<systemitem>fe80::/10</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65182 +#: book.translate.xml:65535 msgid "10 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65183 +#: book.translate.xml:65535 msgid "link-local" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65184 +#: book.translate.xml:65535 msgid "Equivalent to 169.254.0.0/16 in <acronym>IPv4</acronym>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65189 +#: book.translate.xml:65535 msgid "<systemitem>fc00::/7</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65190 +#: book.translate.xml:65535 msgid "7 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65191 +#: book.translate.xml:65535 msgid "unique-local" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65192 +#: book.translate.xml:65535 msgid "" "Unique local addresses are intended for local communication and are only " "routable within a set of cooperating sites." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65198 +#: book.translate.xml:65535 msgid "<systemitem>ff00::</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65199 +#: book.translate.xml:65535 msgid "8 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65200 +#: book.translate.xml:65535 msgid "multicast" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65205 +#: book.translate.xml:65535 msgid "<systemitem>2000::-3fff:: </systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65206 +#: book.translate.xml:65535 msgid "3 bits" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65207 +#: book.translate.xml:65535 msgid "global unicast" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:65208 +#: book.translate.xml:65535 msgid "" "All global unicast addresses are assigned from this pool. The first 3 bits " "are <literal>001</literal>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65216 +#: book.translate.xml:65535 msgid "" "For further information on the structure of <acronym>IPv6</acronym> " "addresses, refer to <link xlink:href=\"http://www.ietf.org/rfc/rfc3513.txt" @@ -94781,19 +96563,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65221 +#: book.translate.xml:65535 msgid "Configuring <acronym>IPv6</acronym>" msgstr "設定 <acronym>IPv6</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:65223 +#: book.translate.xml:65535 msgid "" "To configure a FreeBSD system as an <acronym>IPv6</acronym> client, add " "these two lines to <filename>rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65227 +#: book.translate.xml:65535 #, no-wrap msgid "" "ifconfig_<replaceable>rl0</replaceable>_ipv6=\"inet6 accept_rtadv\"\n" @@ -94801,20 +96583,16 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65230 -#, fuzzy +#: book.translate.xml:65535 msgid "" "The first line enables the specified interface to receive router " "advertisement messages. The second line enables the router solicitation " "daemon, <citerefentry><refentrytitle>rtsol</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>." msgstr "" -"此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使" -"用 <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> 來更新:" #. (itstool) path: sect2/para -#: book.translate.xml:65234 +#: book.translate.xml:65535 msgid "" "If the interface needs a statically assigned <acronym>IPv6</acronym> " "address, add an entry to specify the static address and associated prefix " @@ -94822,57 +96600,57 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65238 +#: book.translate.xml:65535 #, no-wrap msgid "ifconfig_<replaceable>rl0</replaceable>_ipv6=\"inet6 <replaceable>2001:db8:4672:6565:2026:5043:2d42:5344</replaceable> prefixlen <replaceable>64</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65240 +#: book.translate.xml:65535 msgid "To assign a default router, specify its address:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65242 +#: book.translate.xml:65535 #, no-wrap msgid "ipv6_defaultrouter=\"<replaceable>2001:db8:4672:6565::1</replaceable>\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65246 +#: book.translate.xml:65535 msgid "Connecting to a Provider" msgstr "連線到 Provider" #. (itstool) path: sect2/para -#: book.translate.xml:65248 +#: book.translate.xml:65535 msgid "" "In order to connect to other <acronym>IPv6</acronym> networks, one must have " "a provider or a tunnel that supports <acronym>IPv6</acronym>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65254 +#: book.translate.xml:65535 msgid "" "Contact an Internet Service Provider to see if they offer <acronym>IPv6</" "acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65259 +#: 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 "" #. (itstool) path: note/para -#: book.translate.xml:65266 +#: book.translate.xml:65535 msgid "" "Install the <package>net/freenet6</package> package or port for a dial-up " "connection." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65270 +#: book.translate.xml:65535 msgid "" "This section demonstrates how to take the directions from a tunnel provider " "and convert them into <filename>/etc/rc.conf</filename> settings that will " @@ -94880,20 +96658,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65275 +#: book.translate.xml:65535 msgid "" "The first <filename>/etc/rc.conf</filename> entry creates the generic " "tunneling interface <filename><replaceable>gif0</replaceable></filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65279 +#: book.translate.xml:65535 #, no-wrap msgid "cloned_interfaces=\"gif<replaceable>0</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65281 +#: book.translate.xml:65535 msgid "" "Next, configure that interface with the <acronym>IPv4</acronym> addresses of " "the local and remote endpoints. Replace <replaceable>MY_IPv4_ADDR</" @@ -94902,13 +96680,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65287 +#: book.translate.xml:65535 #, no-wrap msgid "create_args_gif0=\"tunnel <replaceable>MY_IPv4_ADDR REMOTE_IPv4_ADDR</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65289 +#: book.translate.xml:65535 msgid "" "To apply the <acronym>IPv6</acronym> address that has been assigned for use " "as the <acronym>IPv6</acronym> tunnel endpoint, add this line, replacing " @@ -94917,13 +96695,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65295 +#: book.translate.xml:65535 #, no-wrap msgid "ifconfig_gif0_ipv6=\"inet6 <replaceable>MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65297 +#: book.translate.xml:65535 msgid "" "Then, set the default route for the other side of the <acronym>IPv6</" "acronym> tunnel. Replace <replaceable>MY_IPv6_REMOTE_TUNNEL_ENDPOINT_ADDR</" @@ -94931,31 +96709,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65303 +#: book.translate.xml:65535 #, no-wrap msgid "ipv6_defaultrouter=\"<replaceable>MY_IPv6_REMOTE_TUNNEL_ENDPOINT_ADDR</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65305 +#: book.translate.xml:65535 msgid "" "If the FreeBSD system will route <acronym>IPv6</acronym> packets between the " "rest of the network and the world, enable the gateway using this line:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65309 +#: book.translate.xml:65535 #, no-wrap msgid "ipv6_gateway_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65313 +#: book.translate.xml:65535 msgid "Router Advertisement and Host Auto Configuration" msgstr "Router Advertisement 與 Host Auto Configuration" #. (itstool) path: sect2/para -#: book.translate.xml:65315 +#: book.translate.xml:65535 msgid "" "This section demonstrates how to setup <citerefentry><refentrytitle>rtadvd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to advertise the " @@ -94963,7 +96741,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65318 +#: book.translate.xml:65535 msgid "" "To enable <citerefentry><refentrytitle>rtadvd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>, add the following to <filename>/etc/rc.conf</" @@ -94971,38 +96749,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65321 +#: book.translate.xml:65535 #, no-wrap msgid "rtadvd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65323 -#, fuzzy +#: book.translate.xml:65535 msgid "" "It is important to specify the interface on which to do <acronym>IPv6</" "acronym> router advertisement. For example, to tell " "<citerefentry><refentrytitle>rtadvd</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> to use <filename>rl0</filename>:" msgstr "" -"要在開機時啟動的 Jail 應加入到 <citerefentry><refentrytitle>rc.conf</" -"refentrytitle><manvolnum>5</manvolnum></citerefentry> 檔案中:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65328 +#: book.translate.xml:65535 #, no-wrap msgid "rtadvd_interfaces=\"rl0\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65330 +#: book.translate.xml:65535 msgid "" "Next, create the configuration file, <filename>/etc/rtadvd.conf</filename> " "as seen in this example:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65334 +#: book.translate.xml:65535 #, no-wrap msgid "" "rl0:\\\n" @@ -95010,7 +96785,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65337 +#: book.translate.xml:65535 msgid "" "Replace <filename>rl0</filename> with the interface to be used and " "<systemitem>2001:db8:1f11:246::</systemitem> with the prefix of the " @@ -95018,7 +96793,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65341 +#: book.translate.xml:65535 msgid "" "For a dedicated <systemitem class=\"netmask\">/64</systemitem> subnet, " "nothing else needs to be changed. Otherwise, change the <literal>prefixlen#</" @@ -95026,12 +96801,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65347 +#: book.translate.xml:65535 msgid "<acronym>IPv6</acronym> and <acronym>IPv6</acronym> Address Mapping" msgstr "<acronym>IPv6</acronym> 與 <acronym>IPv6</acronym> 位址對應表" #. (itstool) path: sect2/para -#: book.translate.xml:65350 +#: book.translate.xml:65535 msgid "" "When <acronym>IPv6</acronym> is enabled on a server, there may be a need to " "enable <acronym>IPv4</acronym> mapped <acronym>IPv6</acronym> address " @@ -95042,7 +96817,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65359 +#: book.translate.xml:65535 msgid "" "This option may not be required in most cases and is available only for " "compatibility. This option will allow <acronym>IPv6</acronym>-only " @@ -95053,13 +96828,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65368 +#: book.translate.xml:65535 #, no-wrap msgid "ipv6_ipv4mapping=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65370 +#: book.translate.xml:65535 msgid "" "Reviewing the information in <acronym>RFC</acronym> 3493, section 3.6 and " "3.7 as well as <acronym>RFC</acronym> 4038 section 4.2 may be useful to some " @@ -95539,9 +97314,8 @@ msgstr "" #. (itstool) path: sect1/para #: book.translate.xml:65535 -#, fuzzy msgid "For an interface named <literal>video</literal>, use the following:" -msgstr "驅動程式名稱:<literal>radeon</literal>" +msgstr "" #. (itstool) path: sect1/screen #: book.translate.xml:65535 @@ -95551,13 +97325,10 @@ msgstr "" #. (itstool) path: sect1/para #: book.translate.xml:65535 -#, fuzzy msgid "" "To apply the changes at boot time, add the following lines to <filename>/etc/" "rc.conf</filename>:" msgstr "" -"要在開機時啟動 <application>Samba</application>,可加入下行到 <filename>/etc/" -"rc.conf</filename>:" #. (itstool) path: sect1/programlisting #: book.translate.xml:65535 @@ -95703,54 +97474,53 @@ msgid "" "\"mirrors-primary-ftp\">Primary Mirror Sites</link>, <link linkend=\"mirrors-" "am-ftp\">Armenia</link>, <link linkend=\"mirrors-au-ftp\">Australia</link>, " "<link linkend=\"mirrors-at-ftp\">Austria</link>, <link linkend=\"mirrors-br-" -"ftp\">Brazil</link>, <link linkend=\"mirrors-cn-ftp\">China</link>, <link " -"linkend=\"mirrors-cz-ftp\">Czech Republic</link>, <link linkend=\"mirrors-dk-" -"ftp\">Denmark</link>, <link linkend=\"mirrors-ee-ftp\">Estonia</link>, <link " -"linkend=\"mirrors-fi-ftp\">Finland</link>, <link linkend=\"mirrors-fr-ftp" -"\">France</link>, <link linkend=\"mirrors-de-ftp\">Germany</link>, <link " -"linkend=\"mirrors-gr-ftp\">Greece</link>, <link linkend=\"mirrors-hk-ftp" -"\">Hong Kong</link>, <link linkend=\"mirrors-ie-ftp\">Ireland</link>, <link " -"linkend=\"mirrors-jp-ftp\">Japan</link>, <link linkend=\"mirrors-kr-ftp" -"\">Korea</link>, <link linkend=\"mirrors-lv-ftp\">Latvia</link>, <link " -"linkend=\"mirrors-lt-ftp\">Lithuania</link>, <link linkend=\"mirrors-nl-ftp" -"\">Netherlands</link>, <link linkend=\"mirrors-nz-ftp\">New Zealand</link>, " -"<link linkend=\"mirrors-no-ftp\">Norway</link>, <link linkend=\"mirrors-pl-" -"ftp\">Poland</link>, <link linkend=\"mirrors-ru-ftp\">Russia</link>, <link " -"linkend=\"mirrors-sa-ftp\">Saudi Arabia</link>, <link linkend=\"mirrors-si-" -"ftp\">Slovenia</link>, <link linkend=\"mirrors-za-ftp\">South Africa</link>, " -"<link linkend=\"mirrors-es-ftp\">Spain</link>, <link linkend=\"mirrors-se-ftp" -"\">Sweden</link>, <link linkend=\"mirrors-ch-ftp\">Switzerland</link>, <link " -"linkend=\"mirrors-tw-ftp\">Taiwan</link>, <link linkend=\"mirrors-ua-ftp" -"\">Ukraine</link>, <link linkend=\"mirrors-uk-ftp\">United Kingdom</link>, " -"<link linkend=\"mirrors-us-ftp\">USA</link>." +"ftp\">Brazil</link>, <link linkend=\"mirrors-cz-ftp\">Czech Republic</link>, " +"<link linkend=\"mirrors-dk-ftp\">Denmark</link>, <link linkend=\"mirrors-ee-" +"ftp\">Estonia</link>, <link linkend=\"mirrors-fi-ftp\">Finland</link>, <link " +"linkend=\"mirrors-fr-ftp\">France</link>, <link linkend=\"mirrors-de-ftp" +"\">Germany</link>, <link linkend=\"mirrors-gr-ftp\">Greece</link>, <link " +"linkend=\"mirrors-hk-ftp\">Hong Kong</link>, <link linkend=\"mirrors-ie-ftp" +"\">Ireland</link>, <link linkend=\"mirrors-jp-ftp\">Japan</link>, <link " +"linkend=\"mirrors-kr-ftp\">Korea</link>, <link linkend=\"mirrors-lv-ftp" +"\">Latvia</link>, <link linkend=\"mirrors-lt-ftp\">Lithuania</link>, <link " +"linkend=\"mirrors-nl-ftp\">Netherlands</link>, <link linkend=\"mirrors-nz-ftp" +"\">New Zealand</link>, <link linkend=\"mirrors-no-ftp\">Norway</link>, <link " +"linkend=\"mirrors-pl-ftp\">Poland</link>, <link linkend=\"mirrors-ru-ftp" +"\">Russia</link>, <link linkend=\"mirrors-sa-ftp\">Saudi Arabia</link>, " +"<link linkend=\"mirrors-si-ftp\">Slovenia</link>, <link linkend=\"mirrors-za-" +"ftp\">South Africa</link>, <link linkend=\"mirrors-es-ftp\">Spain</link>, " +"<link linkend=\"mirrors-se-ftp\">Sweden</link>, <link linkend=\"mirrors-ch-" +"ftp\">Switzerland</link>, <link linkend=\"mirrors-tw-ftp\">Taiwan</link>, " +"<link linkend=\"mirrors-ua-ftp\">Ukraine</link>, <link linkend=\"mirrors-uk-" +"ftp\">United Kingdom</link>, <link linkend=\"mirrors-us-ftp\">USA</link>." msgstr "" "<link linkend=\"central-ftp\">中央伺服器</link>、<link linkend=\"mirrors-" "primary-ftp\">主要鏡像站</link>、<link linkend=\"mirrors-am-ftp\">亞美尼亞 " "(Armenia)</link>、<link linkend=\"mirrors-au-ftp\">澳洲 (Australia)</link>、" "<link linkend=\"mirrors-at-ftp\">奧地利 (Austria)</link>、<link linkend=" -"\"mirrors-br-ftp\">巴西 (Brazil)</link>、<link linkend=\"mirrors-cn-ftp\">中" -"國 (China)</link>、<link linkend=\"mirrors-cz-ftp\">捷克 (Czech Republic)</" -"link>、<link linkend=\"mirrors-dk-ftp\">丹麥 (Denmark)</link>、<link linkend=" -"\"mirrors-ee-ftp\">愛沙尼亞 (Estonia)</link>、<link linkend=\"mirrors-fi-ftp" -"\">芬蘭 (Finland)</link>、<link linkend=\"mirrors-fr-ftp\">法國 (France)</" -"link>、<link linkend=\"mirrors-de-ftp\">德國 (Germany)</link>、<link linkend=" -"\"mirrors-gr-ftp\">希臘 (Greece)</link>、<link linkend=\"mirrors-hk-ftp\">香" -"港 (Hong Kong)</link>、<link linkend=\"mirrors-ie-ftp\">愛爾蘭 (Ireland)</" -"link>、<link linkend=\"mirrors-jp-ftp\">日本 (Japan)</link>、<link linkend=" -"\"mirrors-kr-ftp\">韓國 (Korea)</link>、<link linkend=\"mirrors-lv-ftp\">拉脫" -"維亞 (Latvia)</link>、<link linkend=\"mirrors-lt-ftp\">立陶宛 (Lithuania)</" -"link>、<link linkend=\"mirrors-nl-ftp\">荷蘭 (Netherlands)</link>、<link " -"linkend=\"mirrors-nz-ftp\">紐西蘭 (New Zealand)</link>、<link linkend=" -"\"mirrors-no-ftp\">挪威 (Norway)</link>、<link linkend=\"mirrors-pl-ftp\">波" -"蘭 (Poland)</link>、<link linkend=\"mirrors-ru-ftp\">俄羅斯 (Russia)</link>、" -"<link linkend=\"mirrors-sa-ftp\">沙烏地阿拉伯 (Saudi Arabia)</link>、<link " -"linkend=\"mirrors-si-ftp\">斯洛維尼亞 (Slovenia)</link>、<link linkend=" -"\"mirrors-za-ftp\">南非 (South Africa)</link>、<link linkend=\"mirrors-es-ftp" -"\">西班牙 (Spain)</link>、<link linkend=\"mirrors-se-ftp\">瑞典 (Sweden)</" -"link>、<link linkend=\"mirrors-ch-ftp\">瑞士 (Switzerland)</link>、<link " -"linkend=\"mirrors-tw-ftp\">台灣 (Taiwan)</link>、<link linkend=\"mirrors-ua-" -"ftp\">烏克蘭 (Ukraine)</link>、<link linkend=\"mirrors-uk-ftp\">英國 (United " -"Kingdom)</link>、<link linkend=\"mirrors-us-ftp\">美國 (USA)</link>。" +"\"mirrors-br-ftp\">巴西 (Brazil)</link>、<link linkend=\"mirrors-cz-ftp\">捷" +"克 (Czech Republic)</link>、<link linkend=\"mirrors-dk-ftp\">丹麥 (Denmark)</" +"link>、<link linkend=\"mirrors-ee-ftp\">愛沙尼亞 (Estonia)</link>、<link " +"linkend=\"mirrors-fi-ftp\">芬蘭 (Finland)</link>、<link linkend=\"mirrors-fr-" +"ftp\">法國 (France)</link>、<link linkend=\"mirrors-de-ftp\">德國 (Germany)</" +"link>、<link linkend=\"mirrors-gr-ftp\">希臘 (Greece)</link>、<link linkend=" +"\"mirrors-hk-ftp\">香港 (Hong Kong)</link>、<link linkend=\"mirrors-ie-ftp\">" +"愛爾蘭 (Ireland)</link>、<link linkend=\"mirrors-jp-ftp\">日本 (Japan)</" +"link>、<link linkend=\"mirrors-kr-ftp\">韓國 (Korea)</link>、<link linkend=" +"\"mirrors-lv-ftp\">拉脫維亞 (Latvia)</link>、<link linkend=\"mirrors-lt-ftp" +"\">立陶宛 (Lithuania)</link>、<link linkend=\"mirrors-nl-ftp\">荷蘭 " +"(Netherlands)</link>、<link linkend=\"mirrors-nz-ftp\">紐西蘭 (New Zealand)</" +"link>、<link linkend=\"mirrors-no-ftp\">挪威 (Norway)</link>、<link linkend=" +"\"mirrors-pl-ftp\">波蘭 (Poland)</link>、<link linkend=\"mirrors-ru-ftp\">俄" +"羅斯 (Russia)</link>、<link linkend=\"mirrors-sa-ftp\">沙烏地阿拉伯 (Saudi " +"Arabia)</link>、<link linkend=\"mirrors-si-ftp\">斯洛維尼亞 (Slovenia)</" +"link>、<link linkend=\"mirrors-za-ftp\">南非 (South Africa)</link>、<link " +"linkend=\"mirrors-es-ftp\">西班牙 (Spain)</link>、<link linkend=\"mirrors-se-" +"ftp\">瑞典 (Sweden)</link>、<link linkend=\"mirrors-ch-ftp\">瑞士 " +"(Switzerland)</link>、<link linkend=\"mirrors-tw-ftp\">台灣 (Taiwan)</link>、" +"<link linkend=\"mirrors-ua-ftp\">烏克蘭 (Ukraine)</link>、<link linkend=" +"\"mirrors-uk-ftp\">英國 (United Kingdom)</link>、<link linkend=\"mirrors-us-" +"ftp\">美國 (USA)</link>。" #. (itstool) path: sect1/para #: book.translate.xml:65535 @@ -95990,27 +97760,6 @@ msgstr "" #. (itstool) path: varlistentry/term #: book.translate.xml:65535 -msgid "<anchor xml:id=\"mirrors-cn-ftp\"/>China" -msgstr "<anchor xml:id=\"mirrors-cn-ftp\"/>中國 (China)" - -#. (itstool) path: listitem/para -#: book.translate.xml:65535 -msgid "" -"In case of problems, please contact the hostmaster <email>hostmaster@cn." -"FreeBSD.org</email> for this domain." -msgstr "" -"若有任何問題,請聯絡此區域的主機管理者 <email>hostmaster@cn.FreeBSD.org</" -"email>。" - -#. (itstool) path: listitem/para -#: book.translate.xml:65535 -msgid "" -"<link xlink:href=\"ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/\">ftp://ftp.cn." -"FreeBSD.org/pub/FreeBSD/</link> (ftp)" -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:65535 msgid "<anchor xml:id=\"mirrors-cz-ftp\"/>Czech Republic" msgstr "<anchor xml:id=\"mirrors-cz-ftp\"/>捷克 (Czech Republic)" @@ -97165,10 +98914,10 @@ msgid "" "Python or Perl <acronym>API</acronym> is needed, or if a later version of " "Subversion is desired." msgstr "" -"<command>svnlite</command> 為輕量化版的 <application>Subversion</" -"application>,會隨 FreeBSD 安裝。<application>Subversion</application> 的 " -"Port 或套件版本僅在要使用其 Python 或 Perl <acronym>API</acronym> 或想要使用" -"最新版本 Subversion 時才需安裝," +"輕量化版的 <application>Subversion</application> <command>svnlite</command> " +"已會隨 FreeBSD 安裝。Port 或套件版的 <application>Subversion</application> 僅" +"在要使用其 Python 或 Perl <acronym>API</acronym> 時需要,或是新想要使用最新版" +"本 Subversion 時才需要。" #. (itstool) path: sect2/para #: book.translate.xml:65535 @@ -97452,7 +99201,6 @@ msgstr "使用 <application>rsync</application>" #. (itstool) path: sect1/para #: book.translate.xml:65535 -#, fuzzy msgid "" "These sites make FreeBSD available through the rsync protocol. The " "<application>rsync</application> utility transfers only the differences " @@ -97462,12 +99210,10 @@ msgid "" "rsync</package> port or use the package." msgstr "" "這些站台讓 FreeBSD 可透過 rsync 通訊協定取得。<application>rsync</" -"application> 工具運作的方式類似 <citerefentry><refentrytitle>rcp</" -"refentrytitle><manvolnum>1</manvolnum></citerefentry> 指令,但有更多的選項可" -"用,且使用 rsync 遠端更新協定,該協定只會傳輸兩個檔案集之間的差異,所以能夠大" -"大的加快在網路上同步的速度,這對大多數 FreeBSD <acronym>FTP</acronym> 伺服器" -"的鏡像站非常有用。<application>rsync</application> 在許多作業系統上也可以使" -"用,在 FreeBSD 上請參考 <package>net/rsync</package> Port 或使用套件。" +"application> 工具只會傳輸兩個檔案集之間的差異,所以能夠大大的加快在網路上同步" +"的速度,這對大多數 FreeBSD <acronym>FTP</acronym> 伺服器的鏡像站非常有用。" +"<application>rsync</application> 在許多作業系統上也可以使用,在 FreeBSD 上請" +"參考 <package>net/rsync</package> Port 或使用套件。" #. (itstool) path: varlistentry/term #. (itstool) path: listitem/para @@ -98335,15 +100081,6 @@ msgstr "" #. (itstool) path: listitem/para #: book.translate.xml:65535 msgid "" -"<link xlink:href=\"https://planet.freebsd.org/\">Planet FreeBSD</link> " -"offers an aggregation feed of dozens of blogs written by FreeBSD developers. " -"Many developers use this to post quick notes about what they are working on, " -"new patches, and other works in progress." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:65535 -msgid "" "The <link xlink:href=\"http://www.youtube.com/bsdconferences" "\">BSDConferences YouTube Channel</link> provides a collection of high " "quality videos from BSD conferences around the world. This is a great way to " @@ -98618,18 +100355,15 @@ msgstr "" #. (itstool) path: row/entry #: book.translate.xml:65535 -#, fuzzy msgid "" "<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-women" "\">freebsd-women</link>" msgstr "" -"<link xlink:href=\"https://www.FreeBSD.org/\">https://www.FreeBSD.org/</link>" #. (itstool) path: row/entry #: book.translate.xml:65535 -#, fuzzy msgid "FreeBSD advocacy for women" -msgstr "FreeBSD 開機選單" +msgstr "" #. (itstool) path: sect2/para #: book.translate.xml:65535 @@ -98782,12 +100516,10 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: varlistentry/term #: book.translate.xml:65535 -#, fuzzy msgid "" "<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/dev-ci\">dev-" "ci</link>" msgstr "" -"<link xlink:href=\"https://www.FreeBSD.org/\">https://www.FreeBSD.org/</link>" #. (itstool) path: row/entry #: book.translate.xml:65535 @@ -98806,9 +100538,8 @@ msgstr "" #. (itstool) path: row/entry #: book.translate.xml:65535 -#, fuzzy msgid "Notifications of the FreeBSD review system" -msgstr "展示給您看如何在您的 FreeBSD 系統中執行 Linux 應用軟體。" +msgstr "" #. (itstool) path: row/entry #. (itstool) path: varlistentry/term @@ -99203,6 +100934,23 @@ msgid "" msgstr "" #. (itstool) path: row/entry +#. (itstool) path: varlistentry/term +#: book.translate.xml:65535 +msgid "" +"<link xlink:href=\"https://mail.kde.org/mailman/listinfo/kde-freebsd" +"\">freebsd-kde</link>" +msgstr "" + +#. (itstool) path: row/entry +#: book.translate.xml:65535 +#, fuzzy +msgid "" +"Porting <application>KDE</application> and <application>KDE</application> " +"applications" +msgstr "" +"<application>MPlayer</application> 與 <application>MEncoder</application>" + +#. (itstool) path: row/entry #: book.translate.xml:65535 msgid "" "<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-lfs" @@ -99302,6 +101050,21 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: varlistentry/term #: book.translate.xml:65535 +#, fuzzy +msgid "" +"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-ocaml" +"\">freebsd-ocaml</link>" +msgstr "" +"<link xlink:href=\"https://www.FreeBSD.org/\">https://www.FreeBSD.org/</link>" + +#. (itstool) path: row/entry +#: book.translate.xml:65535 +msgid "FreeBSD-specific OCaml discussions" +msgstr "" + +#. (itstool) path: row/entry +#. (itstool) path: varlistentry/term +#: book.translate.xml:65535 msgid "" "<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-office" "\">freebsd-office</link>" @@ -100951,13 +102714,6 @@ msgid "" "be rejected by the mailing list server." msgstr "" -#. (itstool) path: varlistentry/term -#: book.translate.xml:65535 -msgid "" -"<link xlink:href=\"https://mail.kde.org/mailman/listinfo/kde-freebsd" -"\">freebsd-kde</link>" -msgstr "" - #. (itstool) path: listitem/para #: book.translate.xml:65535 msgid "<emphasis>KDE</emphasis>" @@ -101038,6 +102794,21 @@ msgstr "" #. (itstool) path: listitem/para #: book.translate.xml:65535 +#, fuzzy +msgid "<emphasis>FreeBSD-specific OCaml discussions</emphasis>" +msgstr "<emphasis>斜體字</emphasis>" + +#. (itstool) path: listitem/para +#: book.translate.xml:65535 +msgid "" +"This is a list for discussions related to the OCaml support on FreeBSD. This " +"is a technical mailing list. It is for individuals working on OCaml ports, " +"3rd party libraries and frameworks. Individuals interested in the technical " +"discussion are also welcome." +msgstr "" + +#. (itstool) path: listitem/para +#: book.translate.xml:65535 msgid "<emphasis>Office applications on FreeBSD</emphasis>" msgstr "" @@ -104210,3 +105981,312 @@ msgstr "" "Leslie Lamport 的 <application>LaTeX</application> 或 Sebastian Rahtz 的 " "<application>JadeTeX</application> 巨集套件的重要貢獻,本文件的印刷版本將無以" "完成。" + +#, fuzzy +#~ msgid "" +#~ "Wikipedia also maintains a <link xlink:href=\"https://en.wikipedia.org/" +#~ "wiki/List_of_products_based_on_FreeBSD\">list of products based on " +#~ "FreeBSD</link>." +#~ msgstr "" +#~ "還有許多的應用。維基百科也維護了一份 <link xlink:href=\"http://en." +#~ "wikipedia.org/wiki/List_of_products_based_on_FreeBSD\">以 FreeBSD 為基礎的" +#~ "產品</link>。" + +#~ msgid "Partitioning Choices on FreeBSD 9.x" +#~ msgstr "FreeBSD 9.x 的磁碟分割選項" + +#~ msgid "" +#~ "The installation of <application>KDE</application> includes the KDE " +#~ "Display Manager, <application>KDM</application>. To enable this display " +#~ "manager, add this line to <filename>/etc/rc.conf</filename>:" +#~ msgstr "" +#~ "<application>KDE</application> 的安裝包含了 KDE Display Manager, " +#~ "<application>KDM</application>,要開啟這個顯示管理程式,需加入下行到 " +#~ "<filename>/etc/rc.conf</filename>:" + +#~ 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</link>. By installing the <package>sysutils/bsd-splash-" +#~ "changer</package> package or port, a random splash image from a " +#~ "collection will display at boot." +#~ msgstr "" +#~ "範例啟動畫面檔可到位於 <link xlink:href=\"http://artwork.freebsdgr.org/" +#~ "node/3/\">http://artwork.freebsdgr.org</link> 的圖庫下載。安裝 " +#~ "<package>sysutils/bsd-splash-changer</package> 套件或 Port,可以在開機時隨" +#~ "機顯示圖片集中的啟動畫面。" + +#~ msgid "FreeBSD as a Host with <application>VirtualBox</application>" +#~ msgstr "以 FreeBSD 作為主端安裝 <application>VirtualBox</application> " + +#~ msgid "" +#~ "FreeBSD does not provide a built-in <acronym>LDAP</acronym> server. Begin " +#~ "the configuration by installing the <package role=\"port\">net/openldap24-" +#~ "server</package> package or port. Since the port has many configurable " +#~ "options, it is recommended that the default options are reviewed to see " +#~ "if the package is sufficient, and to instead compile the port if any " +#~ "options should be changed. In most cases, the defaults are fine. However, " +#~ "if SQL support is needed, this option must be enabled and the port " +#~ "compiled using the instructions in <xref linkend=\"ports-using\"/>." +#~ msgstr "" +#~ "FreeBSD 並未提供內建的 <acronym>LDAP</acronym> 伺服器,因此要從安裝 " +#~ "<package role=\"port\">net/openldap24-server</package> 套件或 Port 開始設" +#~ "置。由於 Port 有許多可以設定的選項,建議安裝套件使用預設的選項,若選項必須" +#~ "做修改才改用編譯 Port 的方式安裝,大多數的案例皆可使用預設值。然而,若需要" +#~ "支援 SQL,則必須開啟選項並依 <xref linkend=\"ports-using\"/> 的指示編譯 " +#~ "Port。" + +#~ msgid "" +#~ "Then, edit <filename>/usr/local/etc/openldap/ldap.conf</filename> and add " +#~ "the following lines:" +#~ msgstr "" +#~ "接著編輯 <filename>/usr/local/etc/openldap/ldap.conf</filename> 然後加入下" +#~ "行:" + +#~ msgid "" +#~ "While editing this file, uncomment the following entries and set them to " +#~ "the desired values: <option>BASE</option>, <option>URI</option>, " +#~ "<option>SIZELIMIT</option> and <option>TIMELIMIT</option>. Set the " +#~ "<option>URI</option> to contain <option>ldap://</option> and " +#~ "<option>ldaps://</option>. Then, add two entries pointing to the " +#~ "certificate authority. When finished, the entries should look similar to " +#~ "the following:" +#~ msgstr "" +#~ "在編輯這個檔案的時候,取消註解以下項目然後設定這些項目使用實際要使用的數" +#~ "值:<option>BASE</option>, <option>URI</option>, <option>SIZELIMIT</" +#~ "option> 以 <option>TIMELIMIT</option>。設定 <option>URI</option> 要包含 " +#~ "<option>ldap://</option> 及 <option>ldaps://</option>。然後加入兩個項目指" +#~ "向憑証機構。完成之後,所有的設定項目會如下:" + +#~ msgid "The default password for the server should then be changed:" +#~ msgstr "給伺服器用的預設密碼應該要更換:" + +#~ 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>. Several hashing formats are supported. Refer to the manual " +#~ "page for <command>slappasswd</command> for more information." +#~ msgstr "" +#~ "這個指令會提示輸入密碼,若程序沒有失敗,便會將編碼過的密碼加到 " +#~ "<filename>slapd.conf</filename> 的最後。支援的編碼格式有許多種,請參考 " +#~ "<command>slappasswd</command> 的操作手冊以取得更多資訊。" + +#~ msgid "" +#~ "Next, edit <filename>/usr/local/etc/openldap/slapd.conf</filename> and " +#~ "add the following lines:" +#~ msgstr "" +#~ "接著編輯 <filename>/usr/local/etc/openldap/slapd.conf</filename> 並加入下" +#~ "行:" + +#~ 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</filename> and <option>rootdn</option> should also be set. A " +#~ "recommended value for <option>rootdn</option> is something like " +#~ "<option>cn=Manager</option>. Before saving this file, place the " +#~ "<option>rootpw</option> in front of the password output from " +#~ "<command>slappasswd</command> and delete the old <option>rootpw</option>. " +#~ "The end result should look similar to this:" +#~ msgstr "" +#~ "在這個設定檔的 <option>suffix</option> 必須更新為與在 <filename>/usr/" +#~ "local/etc/openldap/ldap.conf</filename> 及 <option>rootdn</option> 使用的 " +#~ "<option>BASE</option> 相同。<option>rootdn</option> 建議的值為 " +#~ "<option>cn=Manager</option>。在儲存這個檔案之前,將 <option>rootpw</" +#~ "option> 放到由 <command>slappasswd</command> 產生的密碼之前,然後刪除原有" +#~ "的 <option>rootpw</option>。最後的結果應該如下:" + +#~ msgid "" +#~ "Finally, enable the <application>OpenLDAP</application> service in " +#~ "<filename>/etc/rc.conf</filename> and set the <acronym>URI</acronym>:" +#~ msgstr "" +#~ "最後,在 <filename>/etc/rc.conf</filename> 開啟 <application>OpenLDAP</" +#~ "application> 服務並設定 <acronym>URI</acronym>:" + +#~ msgid "At this point the server can be started and tested:" +#~ msgstr "此時便可啟動並測試伺服器:" + +#~ 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 "若所有的設定均正確,搜尋目錄應會如此範例顯示成功連線並有一筆回應:" + +#~ msgid "" +#~ "If the command fails and the configuration looks correct, stop the " +#~ "<command>slapd</command> service and restart it with debugging options:" +#~ msgstr "" +#~ "若指令失敗且設定看起來沒有問題,可先停止 <command>slapd</command> 服務並開" +#~ "啟除錯選項並重新啟動:" + +#~ msgid "" +#~ "Once the service is responding, the directory can be populated using " +#~ "<command>ldapadd</command>. In this example, a file containing this list " +#~ "of users is first created. Each user should use the following format:" +#~ msgstr "" +#~ "服務有回應之後,便可使用 <command>ldapadd</command> 匯入資料到目錄。在此例" +#~ "中,會先建立一個含有使用者清單的檔案,每位使用者應使用以下格式定義:" + +#~ msgid "" +#~ "To import this file, specify the file name. The following command will " +#~ "prompt for the password specified earlier and the output should look " +#~ "something like this:" +#~ msgstr "" +#~ "要匯入這個檔案,可指定檔案名稱。以下指令會提示輸入先前設定過的密碼然後輸入" +#~ "如下的結果:" + +#~ msgid "" +#~ "Verify the data was added by issuing a search on the server using " +#~ "<command>ldapsearch</command>:" +#~ msgstr "" +#~ "使用 <command>ldapsearch</command> 發出一個查詢到伺服器來確認資料已新增:" + +#~ msgid "" +#~ "At this point, the server should be configured and functioning properly." +#~ msgstr "此時,伺服器應已設定完成並可正常運作。" + +#~ msgid "" +#~ "FreeBSD includes <citerefentry><refentrytitle>ntpd</" +#~ "refentrytitle><manvolnum>8</manvolnum></citerefentry> which can be " +#~ "configured to query other <acronym>NTP</acronym> servers in order to " +#~ "synchronize the clock on that machine or to provide time services to " +#~ "other computers in the network. The servers which are queried can be " +#~ "local to the network or provided by an <acronym>ISP</acronym>. In " +#~ "addition, an <link xlink:href=\"http://support.ntp.org/bin/view/Servers/" +#~ "WebHome\">online list of publicly accessible <acronym>NTP</acronym> " +#~ "servers</link> is available. When choosing a public <acronym>NTP</" +#~ "acronym> server, select one that is geographically close and review its " +#~ "usage policy." +#~ msgstr "" +#~ "FreeBSD 內建 <citerefentry><refentrytitle>ntpd</" +#~ "refentrytitle><manvolnum>8</manvolnum></citerefentry> 可以設定來查詢其他 " +#~ "<acronym>NTP</acronym> 伺服器來同步在該主機的時間或者提供時間服務給其他在" +#~ "網路上的電腦,查詢的伺服器可以為在網路上的本地主機或者由 <acronym>ISP</" +#~ "acronym> 提供。除此之外也有 <link xlink:href=\"http://support.ntp.org/bin/" +#~ "view/Servers/WebHome\">開放存取的 <acronym>NTP</acronym> 伺服器線上清單</" +#~ "link>,當要使用開放的 <acronym>NTP</acronym> 伺服器,請選擇地理位置較近的" +#~ "並檢查該服務的使用方針。" + +#~ msgid "" +#~ "Choosing several <acronym>NTP</acronym> servers is recommended in case " +#~ "one of the servers becomes unreachable or its clock proves unreliable. As " +#~ "<application>ntpd</application> receives responses, it favors reliable " +#~ "servers over the less reliable ones." +#~ msgstr "" +#~ "建議選擇多個 <acronym>NTP</acronym> 伺服器,以避免萬一某一台伺服器無法連" +#~ "線,或者該伺服器的時間變的不可靠,當 <application>ntpd</application> 收到" +#~ "回應,會自動先選擇可靠的伺服器。" + +#~ 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 <filename>/etc/ntp.conf</filename>:" +#~ msgstr "" +#~ "該應用程式會讀取 <filename>/etc/ntp.conf</filename> 來得知要查詢那一個 " +#~ "<acronym>NTP</acronym> 伺服器,這裡有一個簡單的 <filename>/etc/ntp.conf</" +#~ "filename> 範例:" + +#~ msgid "" +#~ "The format of this file is described in <citerefentry><refentrytitle>ntp." +#~ "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The " +#~ "<literal>server</literal> option specifies which servers to query, with " +#~ "one server listed on each line. If a server entry includes " +#~ "<literal>prefer</literal>, that server is preferred over other servers. A " +#~ "response from a preferred server will be discarded if it differs " +#~ "significantly from other servers' responses; otherwise it will be used. " +#~ "The <literal>prefer</literal> argument should only be used for " +#~ "<acronym>NTP</acronym> servers that are known to be highly accurate, such " +#~ "as those with special time monitoring hardware." +#~ msgstr "" +#~ "這個檔案的格式在 <citerefentry><refentrytitle>ntp.conf</" +#~ "refentrytitle><manvolnum>5</manvolnum></citerefentry> 有說明," +#~ "<literal>server</literal> 選項設定了要查詢那一些伺服器,每一行列一個伺服" +#~ "器。若伺服項目中含有 <literal>prefer</literal>,則會較偏好使用該伺服器。從" +#~ "偏好伺服器收到的回應若明顯與他伺服器的回應差異過大則會被放棄,否則都會以偏" +#~ "好的伺服器為主。<literal>prefer</literal> 參數只應用在已知高度準確的 " +#~ "<acronym>NTP</acronym> 伺服器上,例如那些有特別在監控時間的硬體。" + +#~ msgid "" +#~ "The <literal>driftfile</literal> entry specifies which file is used to " +#~ "store the system clock's frequency offset. <application>ntpd</" +#~ "application> uses this to automatically compensate for the clock's " +#~ "natural drift, allowing it to maintain a reasonably correct setting even " +#~ "if it is cut off from all external time sources for a period of time. " +#~ "This file also stores information about previous responses from " +#~ "<acronym>NTP</acronym> servers. Since this file contains internal " +#~ "information for <acronym>NTP</acronym>, it should not be modified." +#~ msgstr "" +#~ "<literal>driftfile</literal> 項目用來指定要使用那一個檔案儲存系統時間的頻" +#~ "率偏移量,<application>ntpd</application> 會使用這個檔來自動補償時間的自然" +#~ "偏移,讓時間即始在切斷所有外部時間來源一段時間時仍能夠保持合理的設定值。這" +#~ "個檔案也會儲存有關前次由 <acronym>NTP</acronym> 伺服器收到的回應,由於這個" +#~ "檔案包含供 <acronym>NTP</acronym> 使用的內部資訊,所以不應手動修改。" + +#~ msgid "" +#~ "By default, an <acronym>NTP</acronym> server is accessible to any network " +#~ "host. The <literal>restrict</literal> option in <filename>/etc/ntp.conf</" +#~ "filename> can be used to control which systems can access the server. For " +#~ "example, to deny all machines from accessing the <acronym>NTP</acronym> " +#~ "server, add the following line to <filename>/etc/ntp.conf</filename>:" +#~ msgstr "" +#~ "預設,<acronym>NTP</acronym> 伺服器是開放給任何網路主機存取的,在 " +#~ "<filename>/etc/ntp.conf</filename> 中的 <literal>restrict</literal> 選項可" +#~ "以用來控制那些系統可以存取該伺服器。例如,要拒絕所有主機的存取,可加入下行" +#~ "到 <filename>/etc/ntp.conf</filename>:" + +#~ 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> " +#~ "server, allow only that specific server. Refer to " +#~ "<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry> for more information." +#~ msgstr "" +#~ "這將會避免其他 <acronym>NTP</acronym> 伺服器的存取,若有需要與一個外部 " +#~ "<acronym>NTP</acronym> 伺服器同步,則可以只允許該伺服器。請參考 " +#~ "<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry> 來取得更多資訊。" + +#~ 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 as peers to synchronize against, instead use:" +#~ msgstr "" +#~ "要允許在網路內的主機與伺服器同步時間,但要確保這些主機不允許設定伺服器或者" +#~ "被這些主機當作同輩的主機相互同步,可改使用:" + +#~ msgid "" +#~ "where <systemitem class=\"ipaddress\">192.168.1.0</systemitem> is the " +#~ "local network address and <systemitem class=\"netmask\">255.255.255.0</" +#~ "systemitem> is the network's subnet mask." +#~ msgstr "" +#~ "其中 <systemitem class=\"ipaddress\">192.168.1.0</systemitem> 是本地網路的" +#~ "位址,而 <systemitem class=\"netmask\">255.255.255.0</systemitem> 是網路的" +#~ "子遮罩。" + +#~ msgid "" +#~ "Multiple <literal>restrict</literal> entries are supported. For more " +#~ "details, refer to the <literal>Access Control Support</literal> " +#~ "subsection of <citerefentry><refentrytitle>ntp.conf</" +#~ "refentrytitle><manvolnum>5</manvolnum></citerefentry>." +#~ msgstr "" +#~ "也支援多個 <literal>restrict</literal> 項目,要取得詳細的資料,請參考 " +#~ "<citerefentry><refentrytitle>ntp.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry> 的 <literal>Access Control Support</literal> 子" +#~ "章節。" + +#~ msgid "" +#~ "More information about porting <application>PF</application> to FreeBSD " +#~ "can be found at <uri xlink:href=\"http://pf4freebsd.love2party.net/" +#~ "\">http://pf4freebsd.love2party.net/</uri>." +#~ msgstr "" +#~ "更多有關移植 <application>PF</application> 到 FreeBSD 的資訊可至 <uri " +#~ "xlink:href=\"http://pf4freebsd.love2party.net/\">http://pf4freebsd." +#~ "love2party.net/</uri> 取得。" + +#~ msgid "<anchor xml:id=\"mirrors-cn-ftp\"/>China" +#~ msgstr "<anchor xml:id=\"mirrors-cn-ftp\"/>中國 (China)" + +#~ msgid "" +#~ "In case of problems, please contact the hostmaster <email>hostmaster@cn." +#~ "FreeBSD.org</email> for this domain." +#~ msgstr "" +#~ "若有任何問題,請聯絡此區域的主機管理者 <email>hostmaster@cn.FreeBSD.org</" +#~ "email>。" |