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 |