aboutsummaryrefslogtreecommitdiff
path: root/zh_TW.Big5/books/faq/book.xml
diff options
context:
space:
mode:
authorGabor Kovesdan <gabor@FreeBSD.org>2012-10-01 09:53:01 +0000
committerGabor Kovesdan <gabor@FreeBSD.org>2012-10-01 09:53:01 +0000
commitb4346b9b2dfe86a97907573086dff096850dcb1d (patch)
tree9b951977cbd22dada9b868ac83b1d56791ea3859 /zh_TW.Big5/books/faq/book.xml
parentbee5d224febbeba11356aa848006a4f5f9e24b30 (diff)
downloaddoc-b4346b9b2dfe86a97907573086dff096850dcb1d.tar.gz
doc-b4346b9b2dfe86a97907573086dff096850dcb1d.zip
- Rename .sgml files to .xml
- Reflect the rename in referencing files Approved by: doceng (implicit)
Notes
Notes: svn path=/head/; revision=39631
Diffstat (limited to 'zh_TW.Big5/books/faq/book.xml')
-rw-r--r--zh_TW.Big5/books/faq/book.xml11878
1 files changed, 11878 insertions, 0 deletions
diff --git a/zh_TW.Big5/books/faq/book.xml b/zh_TW.Big5/books/faq/book.xml
new file mode 100644
index 0000000000..7d5c12af8e
--- /dev/null
+++ b/zh_TW.Big5/books/faq/book.xml
@@ -0,0 +1,11878 @@
+<?xml version="1.0" encoding="big5" standalone="no"?>
+<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
+ "../../../share/sgml/freebsd42.dtd" [
+<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//TW" "../../share/sgml/entities.ent">
+%entities;
+<!ENTITY bibliography SYSTEM "../../../share/sgml/bibliography.xml">
+]>
+
+<!-- The FreeBSD Traditional Chinese Documentation Project -->
+<!-- Original Revision: 1.772 -->
+
+<book lang='zh_tw'>
+ <bookinfo>
+ <title>FreeBSD 5.X¡B6.X ±`¨£°Ýµª¶°</title>
+
+ <corpauthor>FreeBSD ¤å¥ó­pµe</corpauthor>
+
+ <copyright>
+ <year>1995</year>
+ <year>1996</year>
+ <year>1997</year>
+ <year>1998</year>
+ <year>1999</year>
+ <year>2000</year>
+ <year>2001</year>
+ <year>2002</year>
+ <year>2003</year>
+ <year>2004</year>
+ <year>2005</year>
+ <year>2006</year>
+ <year>2007</year>
+ <year>2008</year>
+ <holder>FreeBSD ¤å¥ó­pµe</holder>
+ </copyright>
+
+ &legalnotice;
+
+ <legalnotice id="trademarks" role="trademarks">
+ &tm-attrib.freebsd;
+ &tm-attrib.3com;
+ &tm-attrib.adobe;
+ &tm-attrib.creative;
+ &tm-attrib.cvsup;
+ &tm-attrib.ibm;
+ &tm-attrib.ieee;
+ &tm-attrib.intel;
+ &tm-attrib.iomega;
+ &tm-attrib.linux;
+ &tm-attrib.microsoft;
+ &tm-attrib.mips;
+ &tm-attrib.netscape;
+ &tm-attrib.opengroup;
+ &tm-attrib.oracle;
+ &tm-attrib.sgi;
+ &tm-attrib.sparc;
+ &tm-attrib.sun;
+ &tm-attrib.usrobotics;
+ &tm-attrib.xfree86;
+ &tm-attrib.general;
+ </legalnotice>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>³o¥÷¤å¥ó¬O FreeBSD 5.X ¤Î 6.X ªº±`¨£°Ýµª¶°¡C
+ °£«D¦³¯S§O¥[µù¡A§_«h³o¨Ç¶µ¥Ø³£¾A¥Î©ó FreeBSD 5.0 ¤Î¥H«áªºª©¥»¡C
+ (¦pªG±ø¥Ø¤º®e¤¤¦³ &lt;XXX&gt; «h¬O©|¥¼§¹¦¨¤¤Ä¶ªº³¡¥÷¡C)
+ ¦pªG±z¹ï¨ó§U¥»¤å¥ó/½Ķ­pµeªº¶i¦æ¦³¿³½ìªº¸Ü¡A½Ð±H e-mail ¨ì
+ &a.doc;¡C¦¹¥~¡AÀH®É¥i±q <ulink
+ url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/faq/index.html">
+ FreeBSD ºô¯¸</ulink> ®³¨ì³o¥÷¤å¥óªº³Ì·sª©¥»¡C
+ ¤]¥i¥H§Q¥Î HTTP ¨Ó¤U¸ü¤@¥÷Ãe¤jªº <ulink url="book.html">HTML</ulink>
+ ¤å¥ó¡A©Î¬O¸g¥Ñ <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">
+ FreeBSD FTP ¯¸</ulink> ¤U¸ü¯Â¤å¦r¡B&postscript;¡B©Î PDF ª©¥»ªºÀɮסC
+ ±z¤]¥i¥H¦b³o¸Ì¨Ï¥Î <ulink
+ url="&url.base;/search/search.html">·j´M¸ê®Æ</ulink> ªº¥\¯à¡C</para>
+ </abstract>
+ </bookinfo>
+
+ <chapter id="introduction">
+ <chapterinfo>
+ <author>
+ <firstname>Ying-Chieh</firstname>
+ <surname>Liao</surname>
+ <affiliation>
+ <address><email>ijliao@FreeBSD.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>«e¨¥¡B¤@¯ë°ÝÃD</title>
+
+ <para>Åwªï¨Ï¥Î FreeBSD 4.X-6.X FAQ!</para>
+
+ <para>¸ò¨ä¥L Usenet ¤Wªº FAQ ¤@¼Ë¡A³o¥÷¤å¥ó²[»\¤F¦³Ãö FreeBSD
+ ³o®M§@·~¨t²Î³Ì±`³Q°Ý¨ìªº°ÝÃD (·íµM¥]¬A¤F¦^µª¡I)¡C
+ ÁöµM»¡§Ú­Ì¥»¨Óªº¥Øªº¬O¬°¤F´î¤Öºô¸ôÀW¼eªº®ö¶O¡A
+ ¥H¤ÎÁקK¦P¼Ëªº°ÝÃD¤@¦A¥X²{¡A¦ý¨Æ¹ê¤W FAQ
+ ¤w³Q¤½»{¬°¬O­È±o¾\Ūªº¤å¥ó¸ê·½¡C</para>
+
+ <para>§Ú­Ì¤w¸g¾¨¥i¯à¦a¨Ï³o¥÷ FAQ §óÂ×´I¤F¡C¦pªG±z¹ï¦p¦ó§ïµ½¡B
+ ¶i¨B¤è­±¦³¥ô¦ó«Øij¡A½ÐÀH®É±H¹q¤l¶l¥óµ¹ &a.doc;¡C</para>
+
+ <qandaset>
+ <qandaentry>
+ <question id="what-is-FreeBSD">
+ <para>¤°»ò¬O FreeBSD¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æ¦a¨Ó»¡¡AFreeBSD ¬O¤@®M¥i¥H¦b Alpha/AXP, AMD64 ¤Î
+ &intel; EM64T, &i386; IA-64, PC-98, &ultrasparc; ¤W°õ¦æªº
+ UN*X-like §@·~¨t²Î¡A¥¦¬O®Ú¾Ú U.C. Berkeley ©Ò¶}µo¥X¨Óªº
+ <quote>4.4BSD-Lite</quote>¡A¨Ã¥[¤W¤F³\¦h <quote>4.4BSD-Lite2</quote>
+ ªº¼W±j¥\¯à¡C¥¦¦P®É¤]¶¡±µ¨Ï¥Î¤F U.C. Berkeley ©Ò¶}µo¥X¨Ó¨Ã¥Ñ
+ William Jolitz ²¾´Ó¨ì i386 ªº <quote>Net/2</quote>¡A¤]´N¬O
+ <quote>386BSD</quote>¡A
+ ¤£¹L²{¦b 386BSD ªºµ{¦¡½X¥u³Ñ¤U·¥¤Ö¼ÆÁÙ¯d¦s¦b FreeBSD ¤¤¡C
+ ±z¥i¥H¦b <ulink url="&url.base;/index.html">FreeBSD ­º­¶
+ </ulink> §ä¨ì FreeBSD ¥H¤Î¥¦¥i¥HÀ°±z°µ¨Ç¤°»òªº¬ÛÃö¸ê°T¡C</para>
+
+ <para>FreeBSD ¤w³Q¼sªx¦a³Q¥@¬É¦U¦aªº¤½¥q¦æ¸¹¡BISP¡B¬ã¨s¤H­û¡B
+ ¹q¸£±M®a¡B¾Ç¥Í¡A¥H¤Î®a®x¥Î¤á©Ò¨Ï¥Î¡A¥Î¦b¤u§@¡B±Ð¨|¥H¤Î®T¼Ö¤W¡C</para>
+
+ <para>¦pªG·Q¬ÝÃö©ó FreeBSD §ó²`¤Jªº¸ê®Æ¡A½Ð¬Ý
+ <ulink url="&url.books.handbook;/index.html">FreeBSD ¨Ï¥Î¤â¥U
+ </ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="FreeBSD-goals">
+ <para>µo®i FreeBSD ªº¥Øªº¬O¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ­pµeªº¥Øªº¬O´£¨Ñ¥i¥H¥ô·N¨Ï¥Î¥B¨S¦³­­¨îªº³nÅé¡C
+ §Ú­Ì¦bµ{¦¡½X (¥H¤Î­p±Þ¥»¨­) ¤W¥I¥X¤F¤j¶q¤ß¦å¡A
+ ·íµM¤£·|¤¶·N¨ÓÂIª÷¿ú¤Wªº¦^õX¡A¤£¹L§Ú­Ìµ´¹ï¤£·|¦p¦¹°í«ù¡C
+ §Ú­Ì¬Û«H§Ú­Ì­º­nªº<quote>¥ô°È</quote>
+ ´N¬O´£¨Ñµ{¦¡½Xµ¹¨C¤@­Ó¨Ï¥ÎªÌ¡A
+ ¤£ºÞ¥L­Ì¥´ºâ¥Î¨Ó·F¹À¡F³o»ò¤@¨Ó¡A
+ ³o¨Çµ{¦¡½X¤~¯à³Q¥Î¦b³Ì¦h¦a¤è¡A¤]¤~¯àµo´§¥¦­Ì³Ì¤jªº®Ä¯q¡C
+ §Ú­Ì¬Û«H³o´N¬O¦Û¥Ñ³nÅé³Ì°ò¥»ªº¥Ø¼Ð¤§¤@¡A
+ ¦Ó¥B§Ú­Ì·|ºÉ¥þ¤O¥h¤ä«ù¥¦¡C</para>
+
+ <para>¦b§Ú­Ì source tree ¤¤¦³³¡¥÷ªºµ{¦¡½X¬O±Ä¥Î©Ò¿×ªº <ulink
+ url="http://www.FreeBSD.org/copyright/COPYING">GPL</ulink> ©Î¬O
+ <ulink url="http://www.FreeBSD.org/copyright/COPYING.LIB">LGPL
+ </ulink> ª©Åv«Å§i¡A
+ ÁöµM³o¨Çª©Åv«Å§i¬O¥Î¨Ó«O»Ù¦Ó«D­­¨î¨Ï¥ÎªÌªºÅv§Q¡A
+ ²¦³º¬O¤£¨º»ò¦Û¥Ñ¤F¨Ç¡C
+ ¥Ñ©ó³o¨Ç GPL ªº³nÅé¦b°Ó·~¨Ï¥Î¤W·|¤Þ°_«D±`½ÆÂøªºª©Åv°ÝÃD¡A
+ ¦]¦¹¥u­n¦³¾÷·|¡A§Ú­Ì·|ºÉ¶q¥H±Ä¥Î¤ñ¸û¼eÃPªº
+ <ulink url="http://www.FreeBSD.org/copyright/freebsd-license.html">
+ FreeBSD ª©Åv</ulink>ªº³nÅé¨Ó¨ú¥N³o¨Ç GPL ª©Åv«Å§iªº³nÅé¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bsd-license-restrictions">
+ <para>FreeBSD ª©Åv¦³¥ô¦ó­­¨î¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³ªº¡C¦ý¬O³o¨Ã¤£¬O­­¨î§A«ç»ò¥h¨Ï¥Î³o¨Çµ{¦¡½X¡A¦Ó¬O§A«ç»ò¬Ý«Ý
+ FreeBSD ³o­Ó­pµe¡C¦pªG§A¦³ª©ÅvµJ¼{¯gªº¸Ü¡A½Ð¾\Ū<ulink
+ url="http://www.FreeBSD.org/copyright/freebsd-license.html">
+ ª©Åv¥»¤å</ulink>¡C²³æ¦a¨Ó»¡¡A³o¥÷ª©Åvªº­«ÂI¥i¥H±ø¦C¦p¤U¡C</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>½Ð¤Å«ÅºÙ¬O±z¼g¤F³o­Óµ{¦¡¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦pªG¥¦¥X°ÝÃD¤F¡A¤£­n±±§i§Ú­Ì¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="replace-current-OS">
+ <para>FreeBSD ¥i¥H¨ú¥N§Ú²{¦b¦b¥Îªº§@·~¨t²Î¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¹ï¤j³¡¥÷ªº¤H¨Ó»¡¬O³o¼Ë¨S¿ù¡A
+ ¦ý¨Æ¹ê¤W³o°ÝÃD¨Ã¨S¦³³o»ò¦n¦^µª¡C</para>
+
+ <para>¤j³¡¥÷ªº¤H¨Ã¤£¬O¯u¥¿¦b¨Ï¥Î¤@­Ó§@·~¨t²Î¡C
+ ¥L­Ì¨Ï¥Îªº¬OÀ³¥Îµ{¦¡¡F¦Ó¨º¨ÇÀ³¥Îµ{¦¡¤~¬O¯u¥¿¥Î¨ì§@·~¨t²ÎªºªF¦è¡C
+ FreeBSD ¬O³]­p¥Î¨Ó´£¨Ñ¤@­Ó±j¶´¥B¥\¯à§¹¾ãªº§@·~Àô¹Òµ¹À³¥Îµ{¦¡¨Ó°õ¦æ¡C
+ ¥¦¤ä´©¤F¦hºØÂsÄý¾¹¡A¿ì¤½«Ç®M¥ó³nÅé¡A¹q¤l¶l¥ó¾\Ū³nÅé¡Aø¹Ïµ{¦¡¡A
+ µ{¦¡³]­pÀô¹Ò¡Aºô¸ô¦øªA¾¹³nÅé¡A¥H¤Î´X¥G©Ò¦³§A·Q­nªºªF¦è¡C
+ ¤j³¡¥÷ªºµ{¦¡³£¥i¥H¾a <ulink
+ url="http://www.freebsd.org/ports/">Ports Collection</ulink>
+ ¨ÓºÞ²z¡C</para>
+
+ <para>¦ý¬O¦pªG§A·Q­n¨Ï¥ÎªºÀ³¥Îµ{¦¡¥u¯à¦b¬Y­Ó¯S©wªº§@·~¨t²Î¤W­±°õ¦æ
+ ªº¸Ü¡A§A´N¤£¯à»´©ö¦a§â¥¦´«±¼¡A©ÎªÌ«ü±æ¦b FreeBSD ¤W¦³«Ü¬Û¦üªºÀ³¥Î
+ µ{¦¡¤~¦³¾÷·|¡C¦pªG§A·Q­nªº¬O¤@­Ó±j°·ªº¿ì¤½«Ç©Î¬Oºô¸ô¦øªA¾¹¡A©Î¬O
+ ¤@³¡Ã­©wªº¤u§@¯¸¡A©Î¬O·Q¦b¤£³Q¤¤Â_ªºÀô¹Ò¤U¤u§@ªº¸Ü¡AFreeBSD µLºÃ
+ ¬O±zªº³Ì¨Î¿ï¾Ü¡C¥@¬É¦U¦a¦³«Ü¦h¨Ï¥ÎªÌ¡A¥]¬Aªì¾Ç©Î¸ê²`ªº &unix; ºÞ²z
+ ¤H­û³£¿ï¥Î FreeBSD ·í¥L­Ì°ß¤@ªº®à¤W§@·~¨t²Î¡C</para>
+
+ <para>¦pªG§A¬O±q¨ä¥Lªº &unix; Àô¹ÒÂà´«¨ì FreeBSD ªº¸Ü¡A
+ °ò¥»¤W¬O¤j¦P¤p²§ªº¡C¦ý¬O¦pªG§A¤§«e¥Îªº¬O¹Ï§Î¬É­±ªº§@·~¨t²Î¡A
+ ¨Ò¦p»¡¬O &windows; ©Î¬O¤ñ¸û¥j¦Ñªº &macos; ªº¸Ü¡A
+ ¥i¯à´N­n¦hªá¤@ÂI®É¶¡¨Ó¾Ç²ß«ç»ò¥Î &unix; ªº¤è¦¡¨Ó°µ¡C
+ §A¥i¥H±q³o¥÷ FAQ ©M <ulink
+ url="&url.books.handbook;/index.html">
+ FreeBSD ¨Ï¥Î¤â¥U</ulink> ¨Ó¤Jªù¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="why-called-FreeBSD">
+ <para>¬°¤°»ò­n¥s°µ FreeBSD¡H</para>
+ </question>
+
+ <answer>
+ <itemizedlist>
+ <listitem>
+ <para>±z¥i¥H§K¶O¨Ï¥Î¥¦¡A§Y¨Ï¬O¥Î©ó°Ó·~¥Î³~¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¾ã­Ó FreeBSD §@·~¨t²Î§¹¾ãªº­ì©lµ{¦¡³£¥i¥H§K¶O¨ú±o¡A¦Ó¥B¤£
+ ºÞ¬O¦b¨Ï¥Î¡A´²§G©Î¬O¾ã¦X¶i¨ä¥Lµ{¦¡µ¥¦U¤è­±¤]¥u¨ü¨ì³Ì¤pªº­­
+ ¨î (¤£½×¬O§_¥Î©ó°Ó·~¥Î³~)¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¥ô¦ó¤H³£¥i¥H¦Û¥Ñ¦a§â¥L¹ï¨t²Îªº§ï¨}©Î¿ù»~­×¥¿ªºµ{¦¡½X¥[¤J
+ source tree ¤§¤¤ (·íµM­n²Å¦X´X­Ó¥ý¨M±ø¥ó)¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¯S§O­È±oª`·Nªº¬O³o¸Ìªº <quote>free</quote> ¥X²{¤F¨â¦¸¡A¦Ó¥B¥¦­Ì
+ ªº·N«ä¬O¤£¤@¼Ëªº¡G¤@ºØ¥Nªí <quote>§K¶O</quote>¡A¥t¤@ºØ¥Nªí
+ <quote>¦Û¥Ñ</quote>¡C±z¥i¥H®³ FreeBSD ¥h°µ¥ô¦ó±z·Q­n°µªº¨Æ¡A°£¤F¤@¨Ç
+ <emphasis>¨Ò¥~</emphasis>¡A¨Ò¦p±z«ÅºÙ FreeBSD ¬O±z¼gªº¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="differences-to-other-bsds">
+ <para>FreeBSD ¤Î NetBSD, OpenBSD ¥H¤Î¨ä¥L
+ open source BSD §@·~¨t²Î¤§¶¡¦³¦ó¤£¦P¤§³B©O¡H</para>
+ </question>
+
+ <answer>
+ <para>James Howard ¦b <ulink url="http://www.daemonnews.org/">
+ DaemonNews</ulink> ¤W­±¼g¤F <ulink
+ url="http://ezine.daemonnews.org/200104/bsd_family.html">
+ The BSD Family Tree</ulink> ªº¤å¥ó¡A¸Ì­±»¡©ú¤F³o¨Ç¾ú¥v²W·½¤Î³o¨Ç
+ *BSD ®a±Ú­pµe¤§¶¡ªº®t²§¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="latest-version">
+ <para>³Ì·sª©ªº FreeBSD ¬O¨º¤@ª©¡H</para>
+ </question>
+
+<!--
+ This answer is a hack to deal with the fact that for now there are
+ multiple "latest" versions of FreeBSD.
+ ³o­Ó¦³ÂIÃø¥H¦^µª¡A¨Æ¹ê¤W FreeBSD ¦³³\¦hºØÃþªº¡y³Ì·sª©¡z¡C
+-->
+
+ <answer>
+ <para>´N FreeBSD ¥Ø«eªºµo®i¦Ó¨¥¡A¦³¨â­Ó¥D­nµo®i¤À¤ä¡G
+ ¥Ñ <emphasis>5-STABLE</emphasis> ©Òµo¦æ(release)ªº 5.X ¨t¦C¡B
+ ¥Ñ <emphasis>6-STABLE</emphasis> ©Òµo¦æ(release)ªº 6.X
+ ¨t¦C³o¨â­Ó¤À¤ä¡C</para>
+
+ <para>¦b 5.3 release ¤§«e¡A4.X ¨t¦C¤´ÄÝ
+ <emphasis>-STABLE</emphasis> ¤À¤ä¡C
+ ¦Û±q 5.3 ¶}©l¡A5.X ¨t¦C¶}©l³W¹º·sªº
+ <emphasis>-STABLE</emphasis> ¤À¤äµo®i­«ÂI¡A
+ ¦Ó 4.X ±N¥uµÛ­«¦b­«¤j°ÝÃD¤W(¤ñ¦p¡Gº|¬}­×¸É¡B¦w¥þºûÅ@)
+ ¥H¤Î©Ò¿×ªº &quot;extended support&quot;
+ ¡A¤£¦A·|¦³·sªº¬ð¯}©Êµo®i¡C¥t¤@¤è­±¡A5-STABLE
+ ¤À¤äÁöµM¤´±NÄ~Äòµo¦æ¡A¦ý¬O¥Ñ©ó¥¦¥u¬O ¡§legacy¡¨ ¹L´ç´Á¤À¤ä¡A
+ ©Ò¥H¤j¦h¼Æ¥D¤O³£¤wÂಾ¨ì 6-STABLE Ä~Äò¶}µo¡C</para>
+
+<!-- note: the entity definitions are out of date -->
+ <para>©ó &rel.current.date; ©Òµo¦æªº <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE">&rel.current;</ulink>
+ ª©¬O¥Ø«e³Ì·sªº <emphasis>6-STABLE</emphasis> ¤À¤ä¡F
+ ¦Ó©ó &rel2.current.date; ©Òµo¦æªº <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;</ulink>
+ ª©«h¬O¥Ø«e³Ì·sªº <emphasis>5-STABLE</emphasis> ¤À¤ä¡C</para>
+
+ <para>²³æ¦a¨Ó»¡¡A<emphasis>-STABLE</emphasis> ªº¥D­n¶D¨D¹ï¶H¬O¹ï©ó
+ í©w©Ê¤Î§CÅܲ§©Êªº»Ý¨D»·³Ó¹L¹ï³Ì·s <emphasis>-CURRENT</emphasis>
+ snapshot ¤¤¯S§O·s¥\¯àªº»Ý¨D¡A¨Ò¦p ISP ©Î¤½¥q¦æ¸¹ªº¨Ï¥ÎªÌ¡C³o¨â­Ó
+ branch ³£¦³¥i¯à·|²£¥Í release ª©¡A¦ý¥u¦³·í§A¯à±µ¨ü
+ <emphasis>-CURRENT</emphasis> »·¤ñ <emphasis>-STABLE</emphasis>
+ ®e©ö§ó°Ê³o¤@ÂI¡A¤~À³¸Ó¥Î <emphasis>-CURRENT</emphasis>¡C</para>
+
+ <para>Release ª©<link linkend="release-freq">¨C´X­Ó¤ë</link>¤~·|µo
+ ¦æ¤@¦¸¡CÁöµM¦p¦¹¡A¦³«Ü¦h¤H©M FreeBSD ­ì©l½X¦P¨B§ó·s¡]¸Ô¨£
+ <link linkend="current">&os.current;</link> ©M <link
+ linkend="stable">&os.stable;</link> ªº¬ÛÃö°ÝÃD)¡A¦ý¦]¬°­ì©l½X
+ ¬O¤@ª½¤£Â_¦a¦bÅܰʪº¡A©Ò¥H¦pªG­n³o»ò°µªº¸Ü±o­nªá¤W§ó¦hªººë
+ ¤O¡C</para>
+
+ <para>¨ä¥L§ó¦h¬ÛÃö FreeBSD µo¦æ±¡³ø¡A¥i¥Ñ FreeBSD ºô¯¸¤Wªº <ulink
+ url="http://www.FreeBSD.org/releng/index.html">
+ Release Engineering</ulink> ±oª¾¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="current">
+ <para>¤°»ò¬O &os.current;¡H</para>
+ </question>
+
+ <answer>
+ <para><ulink
+ url="&url.books.handbook;/cutting-edge.html#CURRENT">
+ &os.current;</ulink> «üªº¬O¥¿¦bµo®i¤¤ªº§@·~¨t²Îª©¥»¡A
+ ¥¦²×±N¦b¾A·íªº®É¾÷¦¨¬° &os.stable; ¤À¤ä¡C
+ ¥¦¹ê¦b¬O¥u¾A¦Xµ¹¨t²Îµo®iªÌ¥H¤Î¦³¼Ý¤Oªº·~¾l·R¦nªÌ¨Ï¥Î¡C
+ ¦pªG·Q­n±o¨ì¦³Ãö¦p¦ó¨Ï¥Î -CURRENT ªº²`¤J¸ê°T¡A½Ð°Ñ¦Ò <ulink
+ url="&url.books.handbook;/index.html">¨Ï¥Î¤â¥U</ulink> ªº <ulink
+ url="&url.books.handbook;/cutting-edge.html#CURRENT">¬ÛÃö³¡¥÷
+ </ulink>¡C</para>
+
+ <para>¦pªG±z¹ï§@·~¨t²Î¥»¨­¨Ã¤£¬O«Ü¼ô±x¡A©Î¬O±z¨S¿ìªk¤À¿ë±z¹J¨ìªº°Ý
+ ÃD¬O¯uªºµo¥Í¤F°ÝÃD¥ç©Î¬O¼È®É©Êªº¤pª¬ªp¡A¨º»ò±z´N¤£À³¸Ó¨Ï¥Î
+ &os.current;¡C³o­Ó¤À¤äªºµ{¦¡½X¦³®É­ÔÅܰʱo«Ü§Ö¡A¦Ó¥B¥i¯à·|¦]¦¹
+ ¦Ó¨Ï±z¦³¦n´X¤Ñªº®É¶¡µLªk§ó·s±zªº¨t²Î¡C§Ú­Ì°²³]¨Ï¥Î
+ &os.current; ªº¨Ï¥ÎªÌ³£¦³¯à¤O¥h¤ÀªR¥L­Ì©Ò¹J¨ìªº°ÝÃD¨Ã¥B¥u¦^³ø
+ ¯u¥¿ªº°ÝÃD¦Ó«D<quote>¤pª¬ªp</quote>¡C¦pªG±z¦b -CURRENT mailing
+ list ¤¤´£¨ìÃþ¦ü<quote>make world ³y¦¨¤@¨Ç¦³Ãö groups ªº¿ù
+ »~</quote>¤§Ãþªº°ÝÃDªº¸Ü¡A¤]³\·|³Q¨ä¥L¤H»´µø¡C</para>
+
+ <para>§Ú­Ì¨C¤Ñ³£·|®Ú¾Ú¥Ø«e -CURRENT ©M -STABLE ªºª¬ªp¹ï³o¨â­Ó¤À¤ä¦U
+ µo¦æ¤@­Ó <ulink url="&url.base;/snapshots/">snapshot
+ </ulink> ª©¡C¦³ªº®É­Ô¬Æ¦ÜÁÙ·|µo¦æ¥i¨Ñ¨ú±oªºª©¥»¡Cµoªí³o¨Ç snapshot
+ ªº¥Øªº¦b©ó¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>´ú¸Õ³Ì·sª©ªº¦w¸Ëµ{¦¡¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>´£¨Ñ¤@­Ó²³æªº¤èªkµ¹¨º¨Ç³ßÅw¨Ï¥Î -CURRENT ©Î¬O -STABLE¡A
+ ¦ý¬O¨S¦³®É¶¡©MÀW¼e¥h¨C¤Ñª@¯Åªº¨Ï¥ÎªÌ¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¬°¤F´À§Ú­Ìµo®i¤¤ªºµ{¦¡«O¯d¤@­Ó©T©wªº°Ñ¦ÒÂI¡A¥H¨¾¤î§Ú­Ì¥¼
+ ¨Ó³y¦¨¤£©¯¡C(ÁöµM¤@¯ë¦Ó¨¥ CVS ¥i¥H¨¾¤îÃþ¦ü³oºØªº¥i©È¨Æ¥ó :)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>¬°¤F½T«O©Ò¦³»Ý­n´ú¸Õªº·s¥\¯à³£¥i¥H±o¨ì³Ì¦hªº´ú¸Õ¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>§Ú­Ì¤£¹ï -CURRENT snapshot °µ¥ô¦ó§Î¦¡ªº<quote>«~½è«O
+ ÃÒ</quote>¡C¦pªG§A·Q­nªº¬O¤@­Óí©w¥B¸g¹L¥R¤À´ú¸Õ¹Lªº¨t²Îªº¸Ü¡A
+ ³Ì¦n¿ï¾Ü¨Ï¥Î§¹¾ã release ªºª©¥»¡A©Î¬O¨Ï¥Î -STABLE snapshots¡C</para>
+
+ <para>±z¥i¥Hª½±µ±q <ulink
+ url="&url.base;/snapshots/">
+ snapshots</ulink> ³B¨ú±o -CURRENT ªº
+ snapshot release¡C</para>
+
+ <para>¹ï¨C­Ó¦³¦b¬¡°Êªº¤À¤ä¦Ó¨¥¡A¥­§¡¨C¤Ñ³£·|²£¥Í¤@¦¸ snapshots¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="stable">
+ <para>¤°»ò¬O &os.stable;¡H</para>
+ </question>
+
+ <answer>
+ <para>¦^·¹¨ì FreeBSD 2.0.5 ­èµoªíªº®É­Ô¡A§Ú­Ì¨M©w§â FreeBSD ªºµo®i
+ ¤À¦¨¨â¤ä¡C¤@¤ä¥s°µ <ulink
+ url="&url.books.handbook;/current-stable.html#STABLE">-STABLE
+ </ulink>¡A§Ú­Ì¥u¹ï¥¦°µ¿ù»~­×¥¿¤Î¤p´T«×ªº­×§ï (³o¬Oµ¹ ISP
+ ©M°Ó·~¤½¥qµ¥¡A¹ï¹êÅ礤¥\¯à¤£·P¿³½ìªº³æ¦ì©Ò¨Ï¥Îªº)¡C
+ ¥t¥~¤@¤ä¥s°µ <ulink
+ url="&url.books.handbook;/current-stable.html#CURRENT">-CURRENT
+ </ulink>¡A±q 2.0 ª©µo¦æ¥H«á¡A´N¤£Â_¦a´ÂµÛ 6.2-RELEASE
+ (§t«áÄòªºª©¥»)«e¶iµÛ¡C</para>
+
+ <para>6-STABLE ¤À¤ä¬O±q 6.0-RELEASE ¶}©l (5-STABLE ¤À¤äºâ¬O
+ 5.3-RELEASE ¤§«á¤~¶}©lªº)¡AµM«á­ì¥»ªº &os.current;
+ ´N·|¦¨¬° 7-CURRENT¡C</para>
+
+
+ <para>2.2-STABLE ³o­Ó¤À¤äÀHµÛ 2.2.8 ªºµoªí¦Ó¥\¦¨¨­°h¡C3-STABLE ³o­Ó
+ ¤À¤ä«h¬Oµ²§ô¦b 3.5.1 µoªí¤§«á¡A¥¦¤]¬O 3.X ªº³Ì«á¤@¦¸µoªí¡C¤§«á°£¤F
+ ¦w¥þº|¬}ªº«áÄò­×¥¿¤§¥~¡A³o¨Ç¤À¤ä´N´X¥G¨S¦³¦A§ó°Ê¹L¡C ¦Ó
+ 5-STABLE ¤À¤äªº¤ä´©±N¤´«ùÄò¤@¬q®É¶¡¡A
+ ¦ý¥D­nµJÂI¶È¦b©ó¦w¥þ¤è­±ªºº|¬}¡B¯äÂΤΨä¥LÄY­«°ÝÃDªº­×¸É¡C</para>
+
+ <para>6-STABLE ¬O¥Ø«e¥¿¦bµo®i¤¤ªº -STABLE ¤À¤ä¡C 6-STABLE
+ ªº³Ì·sªº¤@¦¸µoªí¬O¦b &rel.current.date; µo¦æªº
+ &rel.current;-RELEASE¡C</para>
+
+ <para>7-CURRENT ³o­Ó¤À¤ä¬O &os; ªº -CURRENT ¤À¤ä¡A
+ ¤´µM¤£Â_¦a¦bµo®i·í¤¤¡C ¦pªG·Q­nª¾¹D§ó¦hÃö©ó³o­Ó¤À¤äªº¸ê°Tªº¸Ü¡A
+ ½Ð°Ñ¦Ò <link
+ linkend="current">¤°»ò¬O &os;-CURRENT¡H</link>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="naming">
+ <para>FreeBSD ª©¥»©R¦W­ì«h¬O¤°»ò©O¡H</para>
+ </question>
+
+ <answer>
+ <para>±z¥i¯à·|¬Ý¨ì¥H¤U´XºØ FreeBSD ªºª©¥»¦WºÙ¡G</para>
+ <itemizedlist>
+ <listitem>
+ <para>1) 4.4.2-RELEASE¡B4.4-BETA¡G³Ì«e­±ªº¼Æ¦r A.B.C ¸Ì¡A
+ A ªí¥Ü¥D­nªº§@·~¨t²Îª©¥»(Major)¡A
+ B ªí¥Ü¦¸­nªº§@·~¨t²Îª©¥»(Minor)¡A
+ C ªí¥Ü¨Ç·L­×¥¿ª©¥»(Patch)¡C «á­±ªº­^¤åªí¥Ü¬O§_¬°¥¿¦¡ª©¡A
+ ³q±`¬O´ú¸Õª©(ALPHA¡BBETA¡BGAMMA)¡B¥¿¦¡ª©(RELEASE)¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>2) 6.0-STABLE¡B7.0-CURRENT¡G
+ ³q±` FreeBSD ·|¦³¤@­Ó¥Hµo®i·s¥\¯à¬°¥Dªºª©¥»¡AºÙ¬° -CURRENT
+ ¡A¥Ø«e CURRENT ª©¥»¬O 7.0¡F FreeBSD
+ ¤]·|¦³¤@­Ó¥HºûÅ@í©w©Ê¤Î¨t²Î¦w¥þ¬°¥Dªºª©¥»¡AºÙ¬° -STABLE¡A
+ ¥Ø«e STABLE ªºª©¥»¬O 6.0¡C ÁöµM¦p¦¹¡A¨Ã¤£¥Nªí -STABLE
+ ´N¨S¦³·s¥\¯à¡A¤]¤£¥Nªí _CURRENT ´N¤£Ã­©w¤£¦w¥þ¡A
+ ³o¨â­Óª©¥»¬O¬Û»²¬Û¦¨ªº¡A¦Ó¥B²×¦³¤@¤Ñ 7.0-CURRENT
+ ·|Åܦ¨ 7.0-STABLE¡A¦Ó¶}©l 8.0-CURRENT ªºµo®i¡C ¤£¹L¤@¯ë¨Ó»¡¡A
+ ¥Ñ©ó -CURRENT ¨t²Î¶}µoªº³t«×¬Û·í§Ö¡A¸ò -STABLE
+ ¬Û¤ñ¸û¤£Ã­©w¡A¦Ó¥B³Ì¦n¬O¦³¬Û·í¸gÅ窺¨Ï¥ÎªÌ¤~¨Ó¨Ï¥Î¡C
+ ¦pªG¬O°Ó·~Àô¹Ò©Î¬O¦øªA¾¹¯¸¥x¡A³Ì¦nÁÙ¬O¶] -STABLE »P
+ -RELEASE ¤ñ¸û¦n¡C ¥Ñ©ó -STABLE »P -CURRENT
+ ³£¬O¤@ª½¦b¶}µoºûÅ@¤¤ªºª©¥»¡A
+ ¦]¦¹¨S¦³¤@­Ó¯S©wªº¼Æ¦rª©¥»¥i¥HºÙ©I¡A
+ ¦]¦¹³q±`§Ú­Ì·|¥H½sĶ¤é´Á¨Ó¥Nªí¬O­þ­Ó®É­Ôªº -STABLE ©Î -CURRENT
+ ¡A¨Ò¦p¡u4.4-STABLE¡B½sĶ¤é´Á 2001/10/08¡v¡C</para>
+ </listitem>
+
+ <listitem><para>
+3) 5.0-011025-SNAP¡B4.2-010816-RELENG¡G
+ SNAP »P RELENG ¨Ã¤£¬O¥¿¦¡µo¦æªºª©¥»¡A¨ä¤¤ 3.0-970625-SNAP ªí¥Ü¬O
+ ¦b 2001 ¦~ 10 ¤ë 25 ¤éµo¦æªº 5.0 ´ú¸Õª©(SNAPshot)¡A³q±`¬O«ü CURRENT
+ ªºª©¥»¡C¦Ó 4.2-010816-RELENG ªí¥Ü¬O¦b 2001 ¦~ 8 ¤ë 16 ¤éµo¦æªº
+ 4.2 «D¥¿¦¡ªºÃ­©wª©¡A³q±`¬O«ü STABLE ªºª©¥»¡C
+ ³q±` FreeBSD ®Ö¤ß¤p²Õ·|¤£©w®ÉÄÀ¥X SNAP ¥H¨Ñ´ú¸Õ¡AµM«á¦³¤@¤Ñ SNAP
+ ·|Åܦ¨ ALPHA->BETA->GAMMA¡A¦A¨Ó¬O RELEASE¡A¦Ó«á¥i¯à·|¦³¤£©w®Éªº
+ RELENG ¥H¨Ñ´ú¸Õ¨Ï¥Î¡A¦ý¬O RELENG ªºÃ­©w©Ê³q±`¤S¤ñ«e´Áªº RELEASE
+ ¨Óªº¦n¡C</para>
+ </listitem>
+ </itemizedlist>
+
+<para>
+±z­n¬O²ßºD·L³nªº³N»y¡A³o¼Ë»¡¦n¤F¡ASNAP ¬O¶}µo´Á¶¡ªº¤º³¡¬y¥Xª©¡A
+¨º­Ó¤é´Á(011025)´N¬OBuild Number¡A¦Ó ALPHA »P BETA ¬O·mÂAª©¡A
+RELEASE(RELENG «j±j¤]ºâ)¬O¥¿¦¡ª©¡A³o¼ËÀ³¸Ó¤F¸Ñ¤F§a¡C
+</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="release-freq">
+ <para>¨C¦¸·sªº FreeBSD ±N©ó¤°»ò®É­Ô±À¥X¡H</para>
+ </question>
+
+ <answer>
+ <para>¤@¯ë¦Ó¨¥¡A&a.re; ¥­§¡¨C¥|­Ó¤ëµo¦æ¤@¦¸ release¡A¨C¦¸·sª©¥»ªºµoªí®Éµ{³£·|¨Æ¥ý¤½§i¡A
+ ¬ÛÃöªº¶}µo¤H­û´N·|ª¾¹D¡A¤°»ò®É­Ô¸Ó¥ý§â¤âÃ䪺­p¹º§¹¦¨¨Ã¥B´ú¸Õ¹L¡A
+ ¦¹¥~¡A³o¨Ç§ó°Ê³£¤w¸g§¹¾ã¦a´ú¸Õ¹L¡A¥B¤£·|¼vÅT¨t²Îí©w«×¡C
+ ÁöµM¡Aµ¥³o¨Ç¦nªF¦è¶i¤J -STABLE ªº®É¶¡¥O¤Hµ¥±o¦³¨Ç¤£­@·Ð¡A
+ ¦ý¬O¤j¦h¼Æªº¨Ï¥ÎªÌ³£»{¬°³oºØÂÔ·VªººA«×¬O FreeBSD ³Ì¦nªºÀuÂI¤§¤@¡C</para>
+
+ <para>¦³Ãöµo¦æ±¡³øªº§ó¦h²Ó¸`³¡¤À(¥]¬A release ªº¦æµ{ªí¡B¶i«×)¡A³£¥i¦b FreeBSD ºô¯¸¤Wªº
+ <ulink url="http://www.FreeBSD.org/releng/index.html">µo¦æ±¡³ø</ulink> ¤W­±Àò±o¡C</para>
+
+ <para>¬°¤Fº¡¨¬¨º¨Ç»Ý­n (©Î·Q­n) ·sÂA¨ë¿E·Pªº¨Ï¥ÎªÌ¡A
+ ¤W­±(-CURRENTªº³¡¤À)¤w¸g´£¨ì§Ú­Ì¨C¤Ñ³£·|µo¦æ snapshots ª©¥i¨Ñ¨Ï¥Î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="responsible">
+ <para>½Ö­t³d FreeBSD ªºµo®i¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG¬O¤@¨Ç¦³Ãö FreeBSD ­pµeªºÃöÁä©Ê¨M©w¡A¹³¬O¾ã­Ó­pµeªº¨«¦V
+ ©Î¬O¨M©w½Ö¥i¥H§ï source tree ¸Ìªºµ{¦¡½X³oÃþªº¨Æ¡A¬O¥Ñ¤@­Ó¥Ñ 9 ­Ó
+ ¤H©Ò²Õ¦¨ªº <ulink
+ url="&url.articles.contributors;/article.html#STAFF-CORE">core
+ team</ulink> ¨Ó¨M©w¡C¦Ó¦³¥t¤@¸s¶W¹L 300 ­Ó¤Hªº <ulink
+ url="&url.articles.contributors;/article.html#STAFF-COMMITTERS">
+ commiters</ulink> ¦³Åv§Q¥i¥Hª½±µ­×§ï FreeBSD ªº source tree¡C
+ </para>
+
+ <para>µL½×¦p¦ó¡A¤j¦h¼Æªº§ïÅܳ£·|¨Æ«e¦b <link linkend="mailing">
+ mailing lists</link> ¥ý°Q½×¹L¡A¦Ó¥B¤£¤À¨¤¦â¡A¨C­Ó¤H³£¥i¥H°Ñ»P°Q½×¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="where-get">
+ <para>§Ú­n¦p¦ó¨ú±o FreeBSD¡H</para>
+ </question>
+
+ <answer>
+ <para>¨C­Ó FreeBSD ªº­«­nª©¥»³£¥i¥H¸g¥Ñ°Î¦W ftp ±q <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/">FreeBSD FTP ¯¸</ulink>¨ú±o¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>¦pªG»Ý­n 6-STABLE ªº³Ì·sª©¡A¤]´N¬O &rel.current;-RELEASE¡A½Ð¨ì <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">&rel.current;-RELEASE </ulink>³o­Ó¥Ø¿ý</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="ftp://current.FreeBSD.org/pub/FreeBSD/">7-CURRENT Snapshot</ulink>
+ ³q±`¤]¬O¨C¤Ñ³£·|°µ¤@¥÷¡A³o¬O±q <link linkend="current">-CURRENT</link> ¤À¤ä°µ¥X¨Óªº¡A
+ ¥D­n¬O¬°¤F´£¨Ñµ¹¨º¨Ç¼ö¤ßªº´ú¸ÕªÌ©M¶}µo¤H­û¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦pªG»Ý­n 5-STABLE ªº³Ì·sª©¡A¤]´N¬O &rel2.current;-RELEASE¡A½Ð¨ì <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;-RELEASE </ulink>³o­Ó¥Ø¿ý</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="ftp://current.FreeBSD.org/pub/FreeBSD/snapshots/">5.X¡B6X snapshots</ulink>
+ ³q±`¨C¤Ñ³£·|°µ¤@¥÷¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>FreeBSD ªº CD¡BDVD¡AÁÙ¦³¨ä¥L¨ú±o¤è¦¡¥i¥H¦b <ulink url="&url.books.handbook;/mirrors.html">¨Ï¥Î¤â¥U</ulink> ¤¤§ä¨ì¸Ñµª¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="access-pr">
+ <para>§Ú­n¦p¦ó¥h¬d¸ß¡B´£¥æ°ÝÃD¦^³ø(Problem Report¡A²ºÙPR)¸ê®Æ®w©O¡H</para>
+ </question>
+
+ <answer>
+ <para>©Ò¦³¨Ï¥ÎªÌªºÅܧó­n¨D³£¥i¥H¸g¥Ñºô­¶¤¶­±ªº
+ <ulink url="http://www.FreeBSD.org/cgi/query-pr-summary.cgi?query">
+ PR¬d¸ß¤¶­±</ulink> ¨Ó¹î¬Ý (©Î¬O¦^³ø) §Ú­Ìªº¿ù»~¦^³ø¸ê®Æ®w¡C</para>
+
+ <para>¤]¥i¥H¨Ï¥Î &man.send-pr.1; ³o­Ó«ü¥O³z¹L¹q¤l¶l¥ó¨Ó¦^³ø°ÝÃD¡B­n¨DÅܧó¡C
+ ©ÎªÌ¬O¸g¥Ñ <ulink url="http://www.FreeBSD.org/send-pr.html">ºô­¶¤¶­±ªº PR</ulink> ¨Ó°e¥X°ÝÃD¦^³ø¡C</para>
+
+ <para>µM¦Ó¡A¦b±z¦^³ø°ÝÃD¤§«e¡A½Ð¥ý¾\Ū <ulink
+ url="&url.articles.problem-reports;/article.html">¦p¦ó¼¶¼g
+ FreeBSD ªº°ÝÃD¦^³ø³æ</ulink>¡A³o¬O¤@½g§i¶D§A«ç¼Ë¤~¯à¼g¥X¤@½g¯u¥¿¦³¥Îªº
+ °ÝÃD¦^³ø³æ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="other-info-sources">
+ <para>ÁÙ¦³¨ä¥L¦³Ãö FreeBSD ªº¸ê°T¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¸Ô¨£ <ulink
+ url="http://www.FreeBSD.org">FreeBSD</ulink> ºô¯¸¤Wªº <ulink
+ url="http://www.FreeBSD.org/docs.html">¤å¥ó</ulink> ¦Cªí¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="support">
+ <chapterinfo>
+ <author>
+ <firstname>Chin-San</firstname>
+ <surname>Huang</surname>
+ <affiliation>
+ <address><email>chinsan.tw@gmail.com</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¤å¥ó»P§Þ³N¤ä´©</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="books">
+ <para>Ãö©ó FreeBSD ¦³­þ¨Ç¦n®Ñ¥i¥H±ÀÂ˾\Ūªº¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¤å¥ó­pµe¤w³°Äòµoªí¤F¬Û·í¼sªx½d³òªº¤å¥ó¡A¥i¦b <ulink
+ url="http://www.FreeBSD.org/docs.html"></ulink> ¨ú±o¡C¥t¥~¡A
+ FreeBSD ¥»¨­ªº manual(¤@¯ë³qºÙªºman)¡Bdoc¤]¦p¦P®M¥ó³nÅé¤@¼Ë¡A¥i¥H»´ÃP¦a¸Ë¦b±z¨t²Î¤W¡C
+ </para>
+
+ <para>¦¹¥~¡A¤]«Øij°Ñ¾\¥»¥÷ FAQ ³Ì«á©Ò¦Cªº°Ñ¦Ò®Ñ¥Øªí(Bibliography)»P FreeBSD ¨Ï¥Î¤â¥U¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="doc-formats">
+ <para>³o¨Ç¤å¥ó¦³¨ä¥L®æ¦¡ªº¶Ü¡H¹³¬O¡G¯Â¤å¦r(ASCII)©Î &postscript; ¤§Ãþªº®æ¦¡¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³ªº¡C³o¨Ç¤å¥ó³£¤À§O¥H¤£¦P®æ¦¡Àx¦s¥H¤ÎÀ£ÁY³B²z¡A©ñ¦b
+ FTP ¤W­±¡A¥i¥H±q¦U FreeBSD FTP ¯¸ªº <ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">/pub/FreeBSD/doc/</ulink>
+ ¥Ø¿ý¤º§ä¨ì§A­nªº¡C</para>
+
+ <para>¤å¥óªº¤ÀÃþ¤è­±¥D­n¬O¤@¨Ç¤£¦P©Ê½è©Ò²Õ¦¨¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>¤å¥ó¦WºÙ¡A¤ñ¦p¡G<literal>faq(±`¨£°Ýµª¶°)</literal>©Î¬O
+ <literal>handbook(FreeBSD ¨Ï¥Î¤â¥U)</literal>µ¥µ¥¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦U°ê½Ķªºªº¤å¥ó¡G³o¥D­n¬O¥Ñ locale ¦WºÙ¨Ó¨M©wªº
+ (¤£²M·¡ªº¸Ü¡A¥i°Ñ¦Ò±zªº FreeBSD §@·~¨t²Î¤Wªº <filename>/usr/share/locale</filename>)
+ ¥Ø«e¤å¥óÁ`¦@¦³¤U¦C´XºØ»y¨¥(¤Î½s½X)¦³Â½Ä¶¡G</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Locale ¦WºÙ</entry>
+
+ <entry>»¡©ú(©Ò¥Nªíªº»y¨t¡B½s½X)</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><literal>en_US.ISO8859-1</literal></entry>
+
+ <entry>¬ü¦¡­^¤å(US English)</entry>
+ </row>
+
+ <row>
+ <entry><literal>de_DE.ISO8859-1</literal></entry>
+
+ <entry>¼w¤å(German)</entry>
+ </row>
+
+ <row>
+ <entry><literal>es_ES.ISO8859-1</literal></entry>
+
+ <entry>¦è¯Z¤ú¤å(Spanish)</entry>
+ </row>
+
+ <row>
+ <entry><literal>fr_FR.ISO8859-1</literal></entry>
+
+ <entry>ªk¤å(French)</entry>
+ </row>
+
+ <row>
+ <entry><literal>it_IT.ISO8859-15</literal></entry>
+
+ <entry>¸q¤j§Q¤å(Italian)</entry>
+ </row>
+
+ <row>
+ <entry><literal>ja_JP.eucJP</literal></entry>
+
+ <entry>¤é¤å(Japanese¡A½s½X¤è¦¡¡GEUC)</entry>
+ </row>
+
+ <row>
+ <entry><literal>ru_RU.KOI8-R</literal></entry>
+
+ <entry>«X¤å(Russian¡A½s½X¤è¦¡¡GKOI8-R)</entry>
+ </row>
+
+ <row>
+ <entry><literal>zh_CN.GB2312</literal></entry>
+
+ <entry>²Å餤¤å(Simplified Chinese¡A½s½X¤è¦¡¡GGB2312)</entry>
+ </row>
+
+ <row>
+ <entry><literal>zh_TW.Big5</literal></entry>
+
+ <entry>¥¿Å餤¤å(Traditional Chinese¡A½s½X¤è¦¡¡GBig5)</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <note>
+ <para>¤W¦Cªº¦U°ê½Ķ»y¨t¤å¥ó¤¤¡A¨Ã«D©Ò¦³¤å¥ó³£¦³Â½Ä¶¡C</para>
+ </note>
+ </listitem>
+
+ <listitem>
+ <para>¤å¥óªº®æ¦¡¡G¨C¥÷¤å¥ó³£¥H¦UºØ¤£¦P®æ¦¡Àx¦s¡A¨CºØ®æ¦¡³£¦U¦³¦nÃa¡A
+ ¦³¨Ç®æ¦¡¾A¦X½u¤W¾\Ū¡A¦Ó¦³¨Ç«h¾A¦X¦C¦L¥X¬üÆ[ªº¤å¥ó¡C
+ §Ú­Ì³£´£¨Ñ³o¨Ç¤£¦P®æ¦¡ªº¤å¥ó¡A¨Ó½T«OµL½×¬O¿Ã¹õ¤W¡B¦C¦L¯È¥»¡A¨C­Ó¤H³£¥i¥H¥¿±`¦a¾\Ū¤º®e¡A
+ ¥Ø«e¥i¨Ñ¨Ï¥Îªº®æ¦¡¦p¤U:</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>®æ¦¡</entry>
+
+ <entry>»¡©ú</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><literal>html-split</literal></entry>
+
+ <entry>³¹¸`¼Ò¦¡</entry>
+ </row>
+
+ <row>
+ <entry><literal>html</literal></entry>
+
+ <entry>§¹¾ã¼Ò¦¡</entry>
+ </row>
+
+ <row>
+ <entry><literal>pdb</literal></entry>
+
+ <entry>Palm Pilot ¸ê®Æ®æ¦¡¡A¨Ï¥Î
+ <ulink url="http://www.iSilo.com/">iSilo</ulink>
+ µ{¦¡¨Ó¾\Ū</entry>
+ </row>
+
+ <row>
+ <entry><literal>pdf</literal></entry>
+
+ <entry>Adobe's PDF ®æ¦¡</entry>
+ </row>
+
+ <row>
+ <entry><literal>ps</literal></entry>
+
+ <entry>&postscript; ®æ¦¡</entry>
+ </row>
+
+ <row>
+ <entry><literal>rtf</literal></entry>
+
+ <entry>Microsoft's RTF®æ¦¡<footnote>
+ <para>·í¨Ï¥Î MS Word ¨Ó¶}±Ò RTF ®æ¦¡ªº¸Ü¡A­¶¼ÆÅã¥Ü¨Ã¤£·|¦Û°Ê§ó·s¡C
+ (¦b¶}±Ò¤å¥ó«á¡A­n«ö <keycombo
+ action="simul"><keycap>CTRL</keycap><keycap>A</keycap></keycombo>,
+ <keycombo
+ action="simul"><keycap>CTRL</keycap><keycap>END</keycap></keycombo>,
+ <keycap>F9</keycap>¡A³o¼Ë¤l¤~·|§ó·s­¶¼ÆªºÅã¥Ü¡C)</para>
+ </footnote>
+ </entry>
+ </row>
+
+ <row>
+ <entry><literal>txt</literal></entry>
+
+ <entry>¯Â¤å¦r(ASCII)</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </listitem>
+
+ <listitem>
+ <para>¤å¥óªºÀ£ÁY¡B¥´¥]¤è¦¡¡G¥Ø«e¦³¤TºØ¤è¦¡¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>·í±Ä¥Î
+ <literal>³¹¸`¼Ò¦¡(html-split)</literal>¡A³¹¸`¼Ò¦¡©Ò²£¥Íªº¦UÀÉ®×·|¥ý¨Ï¥Î
+ &man.tar.1; ¨ÓÀ£ÁY¡CÀɦWµ²§À¦³ <filename>.tar</filename> ªºÀÉ®×´N¬O tar ®æ¦¡¡C
+ ±µµÛ¡A·|¦A¥H¤U¦C¤è¦¡¦AÀ£ÁY¡C
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>¨ä¥L®æ¦¡ªºÀɮ׳£·|¬O³æ¤@ÀɮסAÀɦW³q±`·|¬O¡G
+ <filename>book.<replaceable>®æ¦¡</replaceable></filename>
+ (Á|¨Ò¡G <filename>book.pdb</filename>¡A
+ <filename>book.html</filename> µ¥µ¥..«á­±³q±`¥[¤W¡y.®æ¦¡¡z).</para>
+ <para>¦Ó³o¨ÇÀÉ®×·|¤À§O¥H¨âºØÀ£ÁY«¬ºA¶i¦æÀ£ÁY¡A¦Ó¦s¦¨¨âºØÀ£ÁY«¬ºA¡C</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>®æ¦¡</entry>
+
+ <entry>»¡©ú</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><literal>zip</literal></entry>
+
+ <entry>Zip ®æ¦¡¡A­Y­n¦b FreeBSD ¤W¸ÑÀ£ zip ÀÉ¡A«h¥²¶·¥ý¦w¸Ë
+ <filename role="package">chinese/unzip</filename> ©Î
+ <filename role="package">archivers/unzip</filename>¡C
+ </entry>
+ </row>
+
+ <row>
+ <entry><literal>bz2</literal></entry>
+
+ <entry>BZip2 ®æ¦¡¡AÁöµM¤£¦p zip ®æ¦¡ªº¼sªx¨Ï¥Î¡A¦ý¬O¦n³B¦b©ó¥iÀ£ÁY¦¨§ó¤pªºÀɮסC
+ ­n¸ÑÀ£ bz2 ®æ¦¡ªº¸Ü¡A»Ý¥ý¦w¸Ë <filename role="package">archivers/bzip2
+ </filename>¡C</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>©Ò¥H¹³¬O Handbook ªº &postscript; ª©®æ¦¡¡A·|¥H BZip2 ®æ¦¡À£ÁY¡A
+ ¦s©ñ¦b <filename>handbook/</filename> ¥Ø¿ý¤º¡A
+ ÀɦW´N¬O<filename>book.ps.bz2</filename>¡C</para>
+ </listitem>
+ </orderedlist>
+ </listitem>
+ </itemizedlist>
+
+ <para>¿ï¾Ü·Q­n¤U¸üªº¤å¥ó®æ¦¡»PÀ£ÁY«¬ºA¤§«á¡A«h­n¨M©w¬O§_¥H FreeBSD <emphasis>®M¥ó(package)</emphasis>
+ «¬ºA¨Ó¤U¸ü¡C</para>
+
+ <para>¤U¸ü¡B¦w¸Ë¡ypackage¡zªº¦n³B¦b©ó¡G¥i¥H³z¹L¤@¯ë FreeBSD
+ ®M¥óºÞ²z¤è¦¡¨Ó¶i¦æºÞ²z¡A¤ñ¦p &man.pkg.add.1; ¤Î
+ &man.pkg.delete.1;¡C</para>
+
+
+ <para>­Y¨M©w¦n­n¤U¸ü¡B¦w¸Ë¡ypackage¡zªº¸Ü¡A¥²¶·­n½T»{©Ò­n¤U¸üªºÀɦW¡C
+ ¤å¥ó­pµeªº®M¥ó(package)³q±`¬O©ñ¦b¬O <filename>packages</filename> ªº¥Ø¿ý¤º¡A
+ ¨C­Ó¤å¥ó­pµeªº®M¥óÀɦW³q±`¬O¡G
+ <filename><replaceable>¤å¥ó¦WºÙ</replaceable>.<replaceable>»y¨t</replaceable>.<replaceable>½s½X</replaceable>.<replaceable>®æ¦¡</replaceable>.tgz</filename>
+ ¡C</para>
+
+ <para>Á|­Ó¨Ò¤l¡A­^¤åª©ªº FAQ (®æ¦¡¿ï¾Ü PDF)¦b package ´N¥s°µ
+ <filename>faq.en_US.ISO8859-1.pdf.tgz</filename>¡C</para>
+
+ <para>¦AÁ|­Ó¨Ò¤l¡A¤¤¤åª©ªº FAQ (®æ¦¡¿ï¾Ü PDF)¦b package ´N¥s°µ
+ <filename>faq.zh_TW.Big5.pdf.tgz</filename>¡C</para>
+
+ <para>ª¾¹D³oÂI¤§«á¡A´N¥i¥H¥Î¤U­±«ü¥O¨Ó¦w¸Ë¤¤¤åª© FAQ ®M¥ó¡G</para>
+
+ <screen>&prompt.root; <userinput>pkg_add ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/packages/faq.zh_TW.Big5.pdf.tgz</userinput></screen>
+
+ <para>§¹¦¨¤§«á¡A¥i¥H¥Î &man.pkg.info.1; ¨Ó§ä¥XÀɮ׸˦b­þÃä¡G</para>
+
+ <screen>&prompt.root; <userinput>pkg_info -f faq.zh_TW.Big5.pdf</userinput>
+Information for faq.zh_TW.Big5.pdf:
+
+Packing list:
+ Package name: faq.zh_TW.Big5.pdf
+ CWD to /usr/share/doc/zh_TW.Big5/books/faq
+File: book.pdf
+ CWD to .
+File: +COMMENT (ignored)
+File: +DESC (ignored)</screen>
+
+ <para>¦p¦P±z©Ò¬Ý¨ìªº <filename>book.pdf</filename> ·|³Q¦w¸Ë¨ì
+ <filename>/usr/share/doc/zh_TW.Big5/books/faq</filename> ¤º¡C</para>
+
+ <para>­Y¤£·Q¥Î package ¤è¦¡¦w¸Ë¡A¨º»ò´N»Ý¤â°Ê¤U¸ü¡B¸ÑÀ£ÁY¡B½Æ»s¨ì§A·Q­nÂ\©ñªº¦ì¸m¥h¡C</para>
+
+ <para>Á|¨Ò¡A³¹¸`¼Ò¦¡(split HTML)ª©ªº­^¤å FAQ (À£ÁY¬° &man.bzip2.1;)·|©ñ¦b
+ <filename>doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</filename>
+ ­n¤U¸ü¡B¸ÑÀ£ªº¸Ü¡A«h­n¥´¡G</para>
+
+ <screen>&prompt.root; <userinput>fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</userinput>
+&prompt.root; <userinput>bzip2 -d book.html-split.tar.bz2</userinput>
+&prompt.root; <userinput>tar xvf book.html-split.tar</userinput></screen>
+
+ <para>³o®É§A·|¬Ý¨ì¤@°ï <filename>.html</filename> ªºÀɮסA
+ ¥D­nªº¥Ø¿ýÀɬ° <filename>index.html</filename>
+ ¤º§t¥D¥Ø¿ý¤Î³sµ²¨ì¨ä¥L¤å¥ó¡C(­Y¦³»Ý­nªº¸Ü¡A¤]¥i¥H½Æ»s©Î·h²¾³o¨ÇÀɮרì¦P¤@¥Ø¿ý¤U)</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mailing">
+ <para>­þ¸Ì¦³Ãö©ó FreeBSD ªº¶l»¼½×¾Â(mailing lists)©O¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD¡A¥i¥H±q FreeBSD ¨Ï¥Î¤â¥U¤W­±ªº <ulink
+ url="&url.books.handbook;/eresources.html#ERESOURCES-MAIL">¶l»¼½×¾Â(mailing-lists)</ulink>
+ ³¡¤ÀÀò±oµª®×¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="newsgroups">
+ <para>¦³­þ¨Ç¥i¥H¨Ï¥Îªº FreeBSD ·s»D¸s²Õ(news groups)©O?</para>
+ </question>
+
+ <answer>
+ <para>³oµª®×¥i¥H±q FreeBSD ¨Ï¥Î¤â¥U¤W­±ªº <ulink
+ url="&url.books.handbook;/eresources-news.html">·s»D¸s²Õ(newsgroups)</ulink>
+ ³¡¤ÀÀò±oµª®×¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="man">
+ <para>¦b¤å¥ó¤¤±`¬Ý¨ìÃþ¦ü "pf(4)"¡B"pfctl(8)" µ¥³o¨Ç¦r¼Ë¥Nªí¤°»ò·N«ä©O¡H</para>
+ </question>
+
+ <answer>
+ <para>³oªí¥Ü man ªº³¹¸`¡A¨t²Î¤W¤@¯ë¦³¤K­Ó³¹¸`¡G</para>
+ <itemizedlist>
+ <listitem>
+ <para>1->generl commands</para>
+ </listitem>
+
+ <listitem>
+ <para>2->system calls and error numbers </para>
+ </listitem>
+
+ <listitem>
+ <para>3->C libraries</para>
+ </listitem>
+
+ <listitem>
+ <para>4->devices and device drivers</para>
+ </listitem>
+
+ <listitem>
+ <para>5->file formats</para>
+ </listitem>
+
+ <listitem>
+ <para>6->games</para>
+ </listitem>
+
+ <listitem>
+ <para>7->miscellaneous information pages</para>
+ </listitem>
+
+ <listitem>
+ <para>8->system maintenance and operation commands</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¤ñ¦p¡Gpf(4) ´N¬O«ü <command>man 4 pf</command>¡C</para>
+ </answer>
+ </qandaentry>
+ <qandaentry>
+ <question id="irc">
+ <para>¦³­þ¨Ç FreeBSD IRC (Internet Relay Chat)ÀW¹D©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³ªº¡A¤j³¡¤Àªº IRC ¥D¾÷³£¦³ FreeBSD ²á¤ÑÀW¹D¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink url="http://www.efnet.org/index.php">EFNet</ulink> ªº
+ <literal>#FreeBSD</literal> ÀW¹D¬O­Ó FreeBSD ½×¾Â¡A
+ ¦ý¥i¤£¾A¦X¨º¨Ç·Q¤£³Ò¦ÓÀò©ÎªÌ·h±Ï§L¥Îªº¡C
+ ³o¸Ì¬O²á¤Ñ¥ÎªºÀW¹D¡A¸ÜÃD½d³ò¬Æ¦Ü¯A¤Î¡y©Ê¡B¹B°Ê¡B®ÖªZ¡zµ¥¡A
+ ½Ðª`·N¡G§Ú­Ì¤w¸gĵ§i¹L§A¤F¡I¥»ÀW¹D¥i¸g¥Ñ
+ <hostid>irc.chat.org</hostid> ¶i¤J¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.efnet.org/index.php">EFNet</ulink> ªº
+ <literal>#FreeBSDhelp</literal> ÀW¹D¤D¬Oµ¹ FreeBSD
+ ¨Ï¥ÎªÌ¤§¶¡¥æ¬yªº¡A¨Ó³o¸Ì´£°Ý·|¤ñ <literal>#FreeBSD</literal>
+ ¦n¤@¨Ç¡A·íµM½Ð¤£­n¤@ªÑ¸£ÀH«K¶Ã°Ý¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.dal.net/">DALNET</ulink> ªº
+ <literal>#FreeBSD</literal> ÀW¹D¡A¥i¥Ñ
+ <hostid>irc.dal.net</hostid>(¦ì©ó¬ü°ê)¤Î
+ <hostid>irc.eu.dal.net</hostid>(¦ì©ó¼Ú¬w)¶i¤J¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.dal.net/">DALNET</ulink> ªº
+ <literal>#FreeBSDHelp</literal> ÀW¹D¡A¥i¥Ñ
+ <hostid>irc.dal.net</hostid>(¦ì©ó¬ü°ê)¤Î
+ <hostid>irc.eu.dal.net</hostid>(¦ì©ó¼Ú¬w)¶i¤J¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.undernet.org/">UNDERNET</ulink> ªº
+ <literal>#FreeBSD</literal> ÀW¹D¡A¥i¥Ñ
+ <hostid>us.undernet.org</hostid>(¦ì©ó¬ü°ê)¤Î
+ <hostid>eu.undernet.org</hostid>(¦ì©ó¼Ú¬w)¶i¤J¡C
+ ¥Ñ©ó³o¬O­Ó»²§U·s¤â¥ÎªºÀW¹D¡A
+ ½Ð°O±o¾\Ū§O¤H¦V§A´£¤Îªº³sµ²©ÎÀɮסC</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.rusnet.org.ru/">RUSNET</ulink> ªº
+ <literal>#FreeBSD</literal> ÀW¹D¬O«X»y°ê®aªº &os; ¨Ï¥ÎªÌÀW¹D¡C
+ ³o¸Ì¦P®É¤]¬O¤@¯ë¥æ¬yªº°Q½×¦n¥h³B¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="http://freenode.net/irc_servers.shtml">freebsd-gnome
+ </ulink> ªº <literal>#FreeBSD</literal> ÀW¹D¡A¥i¥Ñ
+ <hostid>irc.freenode.net</hostid> ¶i¤J¡A
+ ³o¬O Gnome ªº &os; ¨Ï¥ÎªÌÀW¹D¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://freenode.net/irc_servers.shtml">freenode</ulink>
+ ªº <literal>#bsdchat</literal> ÀW¹D¡A¥i¥Ñ
+ <hostid>irc.freenode.net</hostid> ¶i¤J¡A
+ ³o¬O¥xÆWªº &os; ¨Ï¥ÎªÌÀW¹D¡C(UTF-8 ½s½X)</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¤W­z¨C­ÓÀW¹D³£¤£¤@¼Ë¡A­·®æ­~²§¦Ó¦U¨ã¯S¦â¡A¥B¨Ã¨S¦³¬Û³s¡A
+ ¦]¦¹¡A§A±o¦h¤è¹Á¸Õ¤~¯à§ä¨ì¾A¦X¦Û¤vªºÀW¹D¡C
+ ¦Ó¦³¨Ç¦a¤è»P©Ò¦³ªº IRC ¤å¤ÆÃþ¦ü¡A´N¬O½Ðª`·N¦Û¤v¨¥¦æ¬O§_«ê·í¡A
+ ¥t¥~¥i¯à¸òÀW¹D¤º¤@¨Ç¦~»´/¦Ñ¤@½úªº·|¦³¨Ç¥N·¾»Ý­n¾AÀ³¡A
+ Á`¤§½Ð¦h«O«ù§»ª¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="training">
+ <para>¥i¥H±q­þÃäÀò±o FreeBSD ªº±Ð¨|½Òµ{°V½m¤Î§Þ³N¤ä´©©O¡H</para>
+ </question>
+
+ <answer>
+ <para>DaemonNews ¦³±Mªù´£¨Ñ FreeBSD ªº±Ð¨|½Òµ{°V½m¤Î§Þ³N¤ä´©¡C
+ ¸Ô±¡½Ð¨ì <ulink url="http://www.bsdmall.com/">BSD Mall</ulink>
+ ¹î¬Ý¡AÁÂÁ¡C</para>
+
+ <para>FreeBSD Mall ¦³´£¨Ñ BSD §Þ³N¤ä´©¥I¶OªA°È¡A
+ ¸Ô±¡½Ð¨ì <ulink
+ url="http://www.freebsdmall.com/">FreeBSD Mall</ulink> ¹î¬Ý¡AÁÂÁ¡C</para>
+
+
+ <para>¨ä¥L¥ô¦ó¦³´£¨Ñ±Ð¨|½Òµ{°V½m¤Î§Þ³N¤ä´©ªº²Õ´¡B³æ¦ì¡A­Y¤]·Q¦Cªí©ó¦¹ªº¸Ü¡A
+ ½Ð»P &a.doc; Ápµ¸¡AÁÂÁ¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter
+ id="install">
+ <chapterinfo>
+ <author>
+ <firstname>Nik</firstname>
+ <surname>Clayton</surname>
+ <affiliation>
+ <address><email>nik@FreeBSD.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¦w¸Ë</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="floppy-download">
+ <para>­Y­n¥Î³nºÐ¤ù¶}¾÷¨Ó¦w¸Ë FreeBSD ªº¸Ü¡A­n¤U¸ü­þ¨ÇÀɮשO¡H</para>
+ </question>
+
+ <answer>
+ <para>&os; 4.X ªº¸Ü¡A»Ý­n¨â­Ó image ÀÉ¡G
+ <filename>floppies/kernel.flp</filename> ¤Î
+ <filename>floppies/mfsroot.flp</filename>¡Cimage ÀÉ¥²¶·¥Î¤u¨ã¹³¬O
+ <command>fdimage</command> ©Î &man.dd.1; ¨Ó¶Ç°e¨ìºÏ¤ù¤W¡C
+ ­Y¬O¦b &os; 5.3 (¤Î¤§«áª©¥»)¦³­«·s³W¹º¶}¾÷¤ù¬[ºc¡A©Ò¥H­n§ìªº¬O
+ <filename>floppies/boot.flp</filename> ¥H¤Î <filename>floppies/kern<replaceable>X</replaceable></filename>
+ ÀÉ®×(¥Ø«e X ¬° 1 ¸ò 2 ¨â­Ó¡A¥[¤W <filename>floppies/boot.flp</filename>¡AÁ`¦@¬O 3 ­ÓÀÉ®×)¡C</para>
+
+ <para>­Y·Q¦Û¤v¤U¸ü distributions ªº¸Ü(¤ñ¦p¥H &ms-dos; Àɮרt²Î®æ¦¡¦w¸Ë)¡A
+ ¥H¤U¬O«Øij­n§ìªº distributions ¡G</para>
+
+
+ <itemizedlist>
+ <listitem>
+ <para>base/ (4.X ª©¥»«h¬° bin/)</para>
+ </listitem>
+
+ <listitem>
+ <para>manpages/</para>
+ </listitem>
+
+ <listitem>
+ <para>compat*/</para>
+ </listitem>
+
+ <listitem>
+ <para>doc/</para>
+ </listitem>
+
+ <listitem>
+ <para>src/ssys.*</para>
+ </listitem>
+ </itemizedlist>
+
+
+ <para>§¹¾ã¦w¸Ë¨BÆJ¥H¤Î¤j³¡¤Àªº¦w¸Ë°ÝÃD¡A½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥Uªº
+ <ulink url="&url.books.handbook;/install.html">¦w¸Ë FreeBSD</ulink> ³¹¸`</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="floppy-image-too-large">
+ <para>­YºÏ¤ù¸Ë¤£¤U image Àɪº¸Ü¡A¸Ó«ç»ò¿ì©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¤@±i 3.5 ­^¦T(1.44MB) ªººÏºÐ¤ù¬O¥i¥H¸Ë¤W 1474560 bytes ªº¸ê®Æ
+ ¡A¦Ó¶}¾÷¤ùªº image Àɮפj¤p¹ê»Ú¤W¤]¬O 1474560 bytes¡C</para>
+
+ <para>¦b»s§@¶}¾÷¤ù®É¡A±`¨£¿ù»~¦³¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>¨Ï¥Î <acronym>FTP</acronym> ¨Ó¤U¸üÀɮ׮ɡA
+ ¥¼¿ï¾Ü <emphasis>binary</emphasis> ¶Ç¿é¼Ò¦¡¨Ó¤U¸ü¡C</para>
+
+
+ <para>¦³¨Ç FTP clientºÝµ{¦¡¡A¬O¹w³]±N¶Ç¿é¼Ò¦¡³]©w¬°
+ <emphasis>ascii</emphasis> ¼Ò¦¡¡A¦Ó¥B·|­×§ï±µ¦¬¨ìªºÀɮצæ§À¦r¦ê¬° client ºÝªº§@·~¨t²Î¤è¦¡
+ ¡A¤ñ¦p newline(&unix;®æ¦¡) ¨ì¤F§@·~¨t²Î¬° &windows; ªº client ºÝ·|³Q§ï¬° CR-LF(&ms-dos;®æ¦¡)¡A
+ ³o·|¨Ï±o image ÀÉ¥»¨­¾D¨ì­×§ï¦ÓµLªk¥¿±`¨Ï¥Î¡C¦]¦¹¡A¦pªG¤U¸üªº image
+ Àɮפj¤p­Y»P FTP ¥D¾÷¤W­±ªºÀɮסy<emphasis>¤£¤@­P</emphasis>¡z
+ ªº¸Ü¡A½Ð­«·s¨Ï¥Î binary ¶Ç¿é¼Ò¦¡¤U¸ü§Y¥i¡C</para>
+
+ <para>FTP «ü¥O: ¶i¤J FTP ¤§«á¡A¥´ <emphasis>binary</emphasis>
+ «ü¥O¡A§Y¥i¤Á´«¨ì binary ¶Ç¿é¼Ò¦¡¡AµM«á¦A¤U¸ü¬ÛÃö image ÀɮסC</para>
+ </listitem>
+
+ <listitem>
+ <para>ª½±µ¥Î &ms-dos; ªº <command>copy</command> «ü¥O(©ÎÃþ¦ü
+ ªº GUI µ{¦¡¡B©Î¬Oµøµ¡¤Wª½±µ½Æ»s)¨Ó½Æ»s¶}¾÷¥Îªº image ÀɨìºÏ¤ù¤W¡C
+ </para>
+
+ <para>¤£¥i¥H¥Î¹³¬O <command>copy</command> ³oÃþµ{¦¡ª½±µ±N image
+ Àɽƻs¨ìºÏ¤ù¤W¡A¦]¬° image ÀÉ¥»¨­¥]§t¤F§¹¾ãªººÏ­y¸ê®Æ¡A©Ò¥H¤£¯à³æ¯Â¥Î½Æ»s¤è¦¡¡A
+ ¦Ó¥²¶·¨Ï¥Î§C¶¥¤u¨ãµ{¦¡(¹³¬O <command>fdimage</command> ©Î <command>rawrite</command>)¡A
+ ¥H <quote>raw</quote> ¤è¦¡¶Ç°e¨ìºÏ¤ù¤W¡C(³o³¡¤À¥i°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥U¤Wªº <ulink
+ url="&url.books.handbook;/install.html">¦w¸Ë FreeBSD</ulink>)</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="install-instructions-location">
+ <para>¥i¥H¦b­þÃä§ä¨ì¦w¸Ë FreeBSD ªº¸Ñ»¡¨BÆJ©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¦w¸Ë¨BÆJªº¸Ñ»¡¡A½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥U¤Wªº
+ <ulink url="&url.books.handbook;/install.html">¦w¸Ë FreeBSD</ulink> ³¹¸`³¡¤À¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="need-to-run">
+ <para>­n¶] FreeBSD »Ý­n¤°»òªº°t³Æ©O¡H</para>
+ </question>
+
+ <answer>
+ <para>&os; 4.X ¤§«eªºª©¥»¡AµwÅé»Ý¨D¬° 386 ©Î§ó°ª¯Åªº PC
+ ¡A°O¾ÐÅé(RAM)¦Ü¤Ö­n 5 MB ©Î§ó¦h¡AµwºÐªÅ¶¡¦Ü¤Ö­n 60 MB ©Î§ó¦h¡C
+ ¤£¹L¡A&os; ¡y¨t²Î¦w¸Ëµ{¦¡¡zªº°O¾ÐÅé(RAM)»Ý¨D¬°¦Ü¤Ö 16 MB¡C</para>
+
+ <para>±q &os; 5.X °_¡AµwÅé»Ý¨D¬° 486 ©Î§ó°ª¯Åªº PC
+ ¡A°O¾ÐÅé(RAM)¦Ü¤Ö­n 24 MB ©Î§ó¦h¡AµwºÐªÅ¶¡¦Ü¤Ö­n 150 MB ©Î§ó¦h¡C
+ </para>
+
+ <para>&os; ªº©Ò¦³ª©¥»³£¥i¥H¥u¥Î§C¶¥ªº MDA ³W®æÅã¥Ü¥d¡A¤£¹L...­n¶] X11R6 µøµ¡ªº¸Ü¡A
+ ÁÙ¬O¦Ü¤Ö¥Î VGA ©Î§ó¦n³W®æªºÅã¥Ü¥d¨Ó¥Î§a¡C</para>
+
+ <para>³o³¡¤À¤]¥i°Ñ¾\ <xref linkend="hardware"/>¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="four-meg-ram-install">
+ <para>§Ú¹q¸£ RAM ¥u¦³ 4MB ¦Ó¤w¡A¥i¥H¸Ë FreeBSD ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦w¸Ë &os; 4.X ªº°O¾ÐÅé»Ý¨D¬°¦Ü¤Ö 5 MB ¡A¦Ó
+ ¦w¸Ë &os; 5.X (§t¤§«áª©¥») «h¬O¦Ü¤Ö­n 8 MB ¡C</para>
+
+ <para>¦b 5.X ¤§«eªº©Ò¦³ &os; ª©¥»¡A³£¥i¥H¥u¥Î 4 MB ªº°O¾ÐÅé¨Ó
+ <emphasis>¡y¹B§@¡z</emphasis>¡A¤£¹L¡A«e­±¨º¸`§Ú­Ì»¡¹L¤F¡y¨t²Î¦w¸Ëµ{¦¡¡zªº¸Ü¡A
+ «hµLªk¥u¥Î 4 MB ªº°O¾ÐÅé¨Ó°õ¦æ¡C¦]¦¹¡A§A¥i¥H¥ý¦b¡y¨t²Î¦w¸Ëµ{¦¡¡z³o¨BÆJ¤§«e¡A
+ ¥ý±N°O¾ÐÅé¥[¨ì 16 MB ¥H¤W¡A¦w¸Ë§¹ FreeBSD ¤§«á¡A´N¥i¥H§â¦h¾lªº°O¾ÐÅ鮳¤U¨Ó¡C
+ ©ÎªÌ¬O¡A¥ý§â­n¦w¸ËªºµwºÐ®³¨ì¦³¨¬°÷°O¾ÐÅ骺¾÷¾¹¤W¥ý¸Ë¦n¡A
+ µM«á¦A§âµwºÐ©ñ¦^­ì¾÷¾¹¡C</para>
+
+ <para>¦¹¥~¡A¥u¥Î 4 MB ªº°O¾ÐÅé¨Ó¹B§@ªº¸Ü¡A¥²¶·­n¦Û»s kernel(®³±¼¤£¥²­nªº¥H¤ÎÄ묹¤@¨ÇªF¦è)¡C
+ ¤]¦³¤H¦¨¥\¥u¥Î 2 MB ªº°O¾ÐÅé¥H &os; ¶}¾÷(ÁöµM³o¼Ëªº¨t²Î´X¥Gµ¥©ó¼o¤F..)</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="custom-boot-floppy">
+ <para>­n«ç¼Ë¤~¯à¦Û¦æ¥´³y±M¥Îªº¶}¾÷¡B¦w¸ËºÏ¤ù©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ø«e¡AÁÙ¨S¦³¿ìªk<emphasis>¡y¥u¡z</emphasis>¦Û»s±M¥Îªº¶}¾÷¡B¦w¸ËºÏ¤ù¡C
+ ¥²¶·³z¹L¦Û¦æ¥´³y§¹¾ã§@·~¨t²Îªº release(µo¦æ)¡A³o¼Ë¸Ì­±¤~·|¥]¬A¦Û¤vªº¶}¾÷¡B¦w¸ËºÏ¤ù¡C</para>
+
+ <para>­Y·Q¦Û¦æ¥´³y¡Bµo¦æ(release)¤@­Ó§¹¾ãªº§@·~¨t²Î¡A½Ð°Ñ¾\³o½g
+ <ulink url="&url.articles.releng;/article.html">Release Engineering</ulink> ¤å³¹¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="windows-coexist">
+ <para>&windows; ¥i¥H»P FreeBSD ¦@¦s©ó¹q¸£¤W¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥ý¸Ë &windows; ¦A¸Ë FreeBSD¡C
+ ¨º»ò FreeBSD ¦h­«¶}¾÷ºÞ²z­û(boot manager)´N·|¥X²{¿ï³æÅý§A¿ï¾Ü­n¥H &windows; ©Î
+ FreeBSD ¨Ó¶}¾÷¡C¤£¹L¡A­Y§A¬O¥ý¸Ë FreeBSD ¦A¸Ë &windows; ªº¸Ü¡A
+ ¨º»ò &windows; ±N·|¤£°Ý¥ý®_¡A§â FreeBSD ªº¦h­«¶}¾÷ºÞ²z­û(boot manager)»\±¼¡A
+ ·í§A¹J¤W³oºØ±¡ªp®É¡A½Ð°Ñ¦Ò¤U¤@¸`»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="win95-damaged-boot-manager">
+ <para>¶ã.. &windows; §â§Úªº¦h­«¶}¾÷ºÞ²z­û(boot manager)®³±¼¤F¡I­n«ç»ò±Ï¦^¨Ó©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¥Î¥H¤U¤TºØ¤è¦¡¤§¤@¡A¨Ó±Ï¦^§Aªº FreeBSD ¦h­«¶}¾÷ºÞ²z­û(boot manager)¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>¥i¥H±q¦U FreeBSD FTP ¯¸ªº <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">/pub/FreeBSD/tools/</ulink>
+ §ä¨ì <filename>bootinst.exe</filename> ¤Î <filename>boot.bin</filename> ³o¨â­ÓÀÉ¡A
+ ¥H binary ¶Ç¿é¼Ò¦¡¤U¸ü«á¡A½Æ»s¨ìºÏ¤ù¤W¡A¦A¥Î DOS ¶}¾÷¤ù¶}¾÷¡A
+ ±µµÛ¥´Ãþ¦ü¤U­±ªº«ü¥O¡G</para>
+
+ <screen><prompt>&gt;</prompt> <userinput>bootinst.exe boot.bin</userinput></screen>
+
+ <para>³o¼Ë¡A¦h­«¶}¾÷ºÞ²z­û(boot manager)´N·|­«¸Ë§¹²¦¤F¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¥Î FreeBSD ¶}¾÷¤ù¶}¾÷¡AµM«á¿ï³æ¨ºÃä¿ï Custom installation(¦Û­q¦w¸Ë)¡A
+ ¦A¿ï Partition¡A±µµÛ¿ï¾Ü§A­n¸Ë¦h­«¶}¾÷ºÞ²z­û(boot manager)ªºµwºÐ(³q±`¬O²Ä¤@Áû)¡A
+ µM«á·|¥X²{ partition editor ªºµe­±¡A³o®É½Ð¤£­n°µ¥ô¦ó­×§ï¡Aª½±µ«ö W Àx¦s¡A
+ ³o®Éµ{¦¡´N·|°Ý¬O§_­n½T©w Write ¡A³Ì«á¥X²{ Boot Manager ¿ï¾Üµe­±¡A
+ °O±o­n¿ï <quote>Boot Manager</quote> ¡A³o¼Ë´N·|­«·s±N¦h­«¶}¾÷ºÞ²z­û(boot manager)
+ ¦w¸Ë¨ìµwºÐ¤W¡C²{¦b¡A´N¤j¥\§i¦¨¥i¥HÂ÷¶}¦w¸Ë¿ï³æ¨Ã­«¶}¾÷¤F¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¥Î FreeBSD ¶}¾÷¤ù©Î¬O¶}¾÷¥úºÐ¶}¾÷¡AµM«á¿ï³æ¨ºÃä¿ï <quote>Fixit</quote>
+ ¡A©Î¬O¥H Fixit ¶}¾÷¤ù©Î¬O¥úºÐ¦w¸Ëªº²Ä¤G¤ù(¿ï¾Ü <quote>live</quote> filesystem
+ ¿ï¶µ)µM«á´N·|¶i¤J fixit shell ¤F¡A±µµÛ¥´¤U¦C«ü¥O¡G</para>
+
+ <screen><prompt>Fixit#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>bootdevice</replaceable></userinput></screen>
+
+ <para>½Ð±N¤W­±ªº <replaceable>bootdevice</replaceable> ­×§ï¬°±z¹ê»Úªº¶}¾÷µwºÐ¥N¸¹
+ ¤ñ¦p <devicename>ad0</devicename> (²Ä¤@Áû IDE µwºÐ)
+ ¡A©Î¬O<devicename>ad4</devicename> (first IDE disk on
+ auxiliary controller), <devicename>da0</devicename> (²Ä¤@Áû
+ SCSI µwºÐ)µ¥µ¥¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="boot-on-thinkpad">
+ <para>IBM Thinkpad A¨t¦C¡BT¨t¦C©Î X¨t¦Cªºµ§°O«¬¹q¸£¸Ë§¹ FreeBSD ¤§«á­«¶}¾÷¡A´N·í¤F¡A¸Ó«ç»ò¿ì©O¡H</para>
+ </question>
+
+ <answer>
+ <para>(¥»°ÝÃD¥D­n¬Oµo¥Í¦b 2000 ~ 2001 ¥|¤ë¶¡®É)³o¨Ç IBM ¾÷¾¹¤Wªº BIOS ¦­´Áª©¥»¦³­Ó¯äÂÎ(bug)·|§â
+ FreeBSD ¤À³Î°Ï»~»{¬°¬O FAT ®æ¦¡¤À³Î°Ï¡AµM«á·í BIOS ¸ÕµÛ°»´ú FreeBSD ¤À³Î°Ï®É¡A´N·|·í¤F¡C</para>
+
+ <para>®Ú¾Ú IBM ¤è­±ªº»¡ªk<footnote><para>¤@«Ê¨Ó¦Û Keith
+ Frechette ªº e-mail <email>kfrechet@us.ibm.com</email>¡C</para></footnote>
+ ¡A¥H¤U«¬¸¹/BIOSª©¥»ªº¾÷ºØ¡A¤w¸g³£¦³­×¥¿¡G</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>«¬¸¹</entry>
+ <entry>BIOS ª©¥»</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>T20</entry>
+ <entry>IYET49WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>T21</entry>
+ <entry>KZET22WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>A20p</entry>
+ <entry>IVET62WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>A20m</entry>
+ <entry>IWET54WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>A21p</entry>
+ <entry>KYET27WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>A21m</entry>
+ <entry>KXET24WW(§t¤§«á)</entry>
+ </row>
+
+ <row>
+ <entry>A21e</entry>
+ <entry>KUET30WW</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>³o¨Ç«á´Áªº IBM BIOS ­×­qª©¤j¦h¤w¸g­×¥¿¦¹¤@¯äÂΡCJacques Vidrine ¼gµ¹ &a.mobile; ªº
+ <ulink url="http://docs.FreeBSD.org/cgi/mid.cgi?20010427133759.A71732">³o«Ê«H
+ </ulink> ¤W­±»¡©ú¤F­Y§A·sªº IBM µ§°O«¬¹q¸£µLªk¶¶§Q¥H FreeBSD ¶}¾÷ªº¸Ñªk¨BÆJ
+ (°²³]¥i¥H¤É¯Å©Î­°¯Å BIOS ª©¥»ªº¸Ü)¡C</para>
+
+ <para>¦pªG¾÷¾¹¥Îªº¬O¸û¥j¦­ª©¥»ªº BIOS¡A¦Ó¥B¤£¾A¦X§ó·s BIOS ªº¸Ü¡A¨º»ò¥H¤U§Ú­Ì·|¤¶²Ð¼È®É¸Ñªk¡A
+ ±Ð§A¦p¦ó­×§ï FreeBSD ¤À³Î°Ï©Ò¨Ï¥Îªº ID ¡A¨Ã¦w¸Ë¬ÛÃö­×¸Éµ{¦¡¡C</para>
+
+ <para>First, you will need to restore the machine to a state where
+ it can get through its self-test screen. Doing this requires
+ powering up the machine without letting it find a FreeBSD
+ partition on its primary disk. One way is to remove the hard disk
+ and temporarily move it to an older ThinkPad (such as a ThinkPad
+ 600) or a desktop PC with an appropriate conversion cable. Once
+ it is there, you can delete the FreeBSD partition and move the hard
+ disk back. The ThinkPad should now be in a bootable state
+ again.</para>
+
+ <para>With the machine functional again, you can use the workaround
+ procedure described here to get a working FreeBSD
+ installation.</para>
+
+ <procedure>
+ <step>
+ <para>±q <ulink url="http://people.FreeBSD.org/~bmah/ThinkPad/"></ulink>
+ ¨Ó¤U¸ü <filename>boot1</filename> ¤Î <filename>boot2</filename> ³o¨â­ÓÀÉ¡C
+ §â³o¨â­ÓÀɮשñ¦bºÏ¤ù¡B¥úºÐ©Î¨ä¥LµwºÐ¤W¡C</para>
+ </step>
+
+ <step>
+ <para>¥H¤@¯ë¦w¸Ë FreeBSD ¸Ë¨ì ThinkPad ¤W¡A°O±o
+ <emphasis>¡y¤£­n¥Î¡z</emphasis> <literal>Dangerously
+ Dedicated</literal> ¼Ò¦¡¡C ¦¹¥~¡A<emphasis>¡y¤£­n¡z</emphasis>
+ ¦b§¹¦¨¦w¸Ë¤§«á´N­«¶}¾÷¡C</para>
+ </step>
+
+ <step>
+ <para>¶i¤J shell¡G(«ö <keycombo action="simul"><keycap>ALT</keycap><keycap>F4</keycap></keycombo>)
+ ¤Á´«¨ì<quote>Emergency Holographic Shell</quote> ©Î¬O¿ï³æ¤W­±¿ï¾Ü
+ <quote>fixit</quote> shell¡C</para>
+ </step>
+
+ <step>
+ <para>¥Î &man.fdisk.8; §â FreeBSD ¤À³Î°Ï ID ¥Ñ <literal>165</literal> §ï¬°
+ <literal>166</literal>(OpenBSD©Ò¨Ï¥ÎªºID)¡C</para>
+ </step>
+
+ <step>
+ <para>§â­è­è´£ªº <filename>boot1</filename> ¸ò
+ <filename>boot2</filename> ³o¨â­ÓÀɮשñ¨ì¥Ø«eªºµwºÐÀɮרt²Î¤W¡C</para>
+ </step>
+
+ <step>
+ <para>¥H &man.disklabel.8; §â <filename>boot1</filename> ¤Î
+ <filename>boot2</filename> ¦s¨ì§Aªº FreeBSD slice ¤W­±¡C</para>
+
+ <screen>&prompt.root; <userinput>disklabel -B -b boot1 -s boot2 ad0s<replaceable>n</replaceable></userinput></screen>
+
+ <para><replaceable>¡un¡v</replaceable> ¬O§A¸Ë FreeBSD ªº slice¡A
+ ½Ð±N <replaceable>¡un¡v</replaceable> §ï¬°²Å¦X§A¨t²Î²{ªpªº slice¡C</para>
+ </step>
+
+ <step>
+ <para>­«¶}¾÷¡A¦b boot prompt ·|¬Ý¨ì¦³ <literal>OpenBSD</literal> ªº¿ï¶µ¡A
+ ¿ï¥¦¡A³o¼Ë´N·|¥H FreeBSD ¶}¾÷¡C</para>
+ </step>
+ </procedure>
+
+ <para>¥t¥~¡A¦Ü©ó¦p¦óÅý OpenBSD ¤Î FreeBSD ¨Ã¦s¦b¦P¤@¥x IBM ThinkPad ¤W...
+ ³o­Ó°ÝÃD´N¥æµ¹¦U¦ì¬Ý­¾­Ì¥h¹Á¸Õ¤F :p</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="install-bad-blocks">
+ <para>¦³Ãa­yªºµwºÐ¥i¥H®³¨Ó¸Ë FreeBSD ¹À¡H</para>
+ </question>
+
+ <answer>
+ <para>(¦pªG«Ü°í«ùªº¸Ü)¤]¬O¥i¥H¡A¤£¹L³o·QªkÅãµM¤£¤Ó©ú´¼¡C:(</para>
+
+ <para>¦pªG¦b¤@¯ë¸û·sªº IDE µwºÐ¤W¬Ý¨ì¦³Ãa­y¡A«Ü¦³¥i¯à¥Nªí¡G³oÁûµwºÐ§Y±N±¾ÂI¤F¡C
+ (¦]¬°¥Ø«e©Ò¦³¸û·sªº IDE µwºÐ¡A¤º³¡³£¦³¦Û°Ê remapping Ãa­yªº¯à¤O¡C
+ ¦pªG¬Ý¨ì¦³Ãa­y¡A«hªí¥Ü¥¦¤º³¡¦Û°Ê remapping ¥\¯à¥¢®Ä¡AµLªk³B²zÃa­y¡A
+ ¤]´N¬O»¡³oÁûµwºÐ¤w¸g¬OÄY­«·lÃaµ{«×¤F¡C)§Ú­Ì«Øij¶RÁû·sµwºÐ¤ñ¸û°®¯Ü¨Ç­ò¡C</para>
+
+ <para>¦pªG¬O SCSI µwºÐ¦³Ãa­yªº¸Ü¡A½Ð¸ÕµÛ°Ñ¦Ò³o­Ó
+ <link linkend="awre">¸Ñªk</link>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="boot-floppy-strangeness">
+ <para>¥Î¦w¸ËºÏ¤ù¶}¾÷®É¡A«o¦³¨Ç©Ç²{¶Hµo¥Í¡I³o¬O¤°»ò±¡ªp©O¡H</para>
+ </question>
+
+ <answer>
+ <para>­Y¬Ý¨ì¤@¨Ç©Ç²§²{¶H¡A¹³¬O¶}¾÷¤ù¶}¾÷¶}¨ì¤@¥b´N·í¤F¡AºÏºÐ¾÷§¹¥þ¨S¥ô¦ó°Ê§@¡B
+ ©Î¬O¤£Â_¤ÏÂЭ«¶}¾÷¡A½Ð¥ýÀˬd¥H¤U´X­Ó½u¯Á¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>½Ð½T©w¬O§_¬°¥þ·s¡B¨S¦³ºÏ­y¿ù»~ªººÏ¤ù¡H
+ (³Ì¦n¨Ï¥Î·s¶Rªº¡A¦Ó«DÂø»x¡B®Ñ¥»ªþÃتº¡A¬Æ¦ÜÁÙ©ñ¦b§É©³¤U¤T¦~¤F...=_="")</para>
+ </listitem>
+
+ <listitem>
+ <para>½Ð½T©w¬O§_¦³¥Î binary(©Îimage)¶Ç¿é¼Ò¦¡¨Ó¤U¸ü image ÀÉ¡H
+ (¤£¥Îı±o¤£¦n·N«ä¡A§Y¨Ï¬O§Ú­Ì¤]´¿·N¥~¥H ASCII ¶Ç¿é¼Ò¦¡¨Ó¤U¸ü binary ÀɮסI)</para>
+ </listitem>
+
+ <listitem>
+ <para>­Y§A¬O &windows; 95/98/ME/NT/2000/XP/2003 ¨Ó¤U¸ü¡B»s§@¶}¾÷ºÏ¤ùªº¸Ü¡A
+ ½Ð½T©w¬O§_¦³¦b DOS ¼Ò¦¡¨Ï¥Î <command>fdimage</command> ©Î
+ <command>rawrite</command> ³o¨â­Ó¤u¨ãµ{¦¡¡H­èÁ¿ªº³o¨Ç§@·~¨t²Î¡A
+ ³£·|¼vÅTµ{¦¡¥hª½±µ¼g¤JµwÅé¡A¹³¬O»s§@¶}¾÷¤ù¤§Ãþªº°Ê§@¡C
+ ¦³®É­Ô¡A¦b GUI ¤¶­±¤Wªº DOS shell ¤]¥i¯à·|µo¥Í³o¼Ëªº°ÝÃD¡C
+ </para>
+ </listitem>
+ </orderedlist>
+
+ <para>¦¹¥~¡Aª½±µ³z¹L &netscape; ÂsÄý¾¹¤U¸ü image Àɪº¸Ü¡A¤]¦³Ãþ¦ü²{¶H¡C
+ ©Ò¥H¡A¦pªG¥i¥Hªº¸Ü¡A½Ð§ï¥Î¨ä¥L¥i¥H½Õ¾ã³]©wªº FTP clientºÝµ{¦¡¨Ó¶i¦æ¤U¸ü¡C
+ (·íµM¡A­n°O±o½Õ binary ¶Ç¿é¼Ò¦¡)</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="no-install-cdrom">
+ <para>¥Î¥úºÐ¶}¾÷¤ù¨Ó¦w¸Ë¡A¦ý¥úºÐ¶}¾÷«á¡A¦w¸Ëµ{¦¡»¡§ä¤£¨ì¥úºÐ...³o¬O«ç»ò¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>³q±`°ÝÃD¦b©ó¥úºÐ¾÷³]©w¿ù»~¡C¥Ø«e«Ü¦h¹q¸£ªº¥X¼t¼Ð·Ç°t³Æ³£¦³¥úºÐ¾÷¡A¨Ã¥B
+ ·|¹w¥ý³]©w¬° IDE ³q¹D¤W­± Secondary ªº Slave ³]³Æ¡A¦Ó Secondary ¤W­±ªº
+ «o¨S¦³ Master ³]³Æ¡C¥H ATAPI ªº³W®æ¦Ó¨¥¡A³o¬O¿ù»~ªº³]©w¡AµM¦Ó &windows; ªº§@ªk
+ ¬O¤£²z·|³o¨Ç³W®æ¤Wªº³]©w°ÝÃD¡A¦Ó¥B¶}¾÷®É BIOS °»´ú¤]·|²¤¹L³oÂI¡C
+ ³o¤]´N¬O¬°¤°»ò BIOS ¥i¥H¬Ý¨ì¥úºÐ¡A¨Ã¥B¥i¥Î¥úºÐ¶}¾÷¡A¦ý FreeBSD
+ µLªk¥¿±`§ì¨ì¥úºÐ¥H¶¶§Q¶i¦æ¦w¸Ë¡C</para>
+
+ <para>¸Ñªk¡G­«·s³]©w¨t²Î¡AÅý¥úºÐ¦¨¬°¥¦©Ò³s±µ¨º±ø IDE ³q¹Dªº Master¡A
+ ©ÎªÌ¥u¦³¤@±ø IDE ³q¹Dªº¸Ü¡A¨º´NÅý¥úºÐ¾÷¦¨¬° Slave
+ ¡A·íµM¸Ó IDE ³q¹D¤W¦Ü¤Ö­n¦³ Master ³]³Æ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="install-PLIP">
+ <para>§Ú¥i¥H¥Î PLIP(Parallel Line IP)¤è¦¡¨Ó¦w¸Ë FreeBSD ¨ìµ§°O«¬¹q¸£¤W¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¡A¥Î¤@±ø´¶³qªº Laplink ½u´N¥i¥HÅo¡C­Y¦³³o¤è­±»Ý¨Dªº¸Ü¡A½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥U¤¤ªº
+ <ulink url="&url.books.handbook;/network-plip.html">PLIP
+ ³¹¸`</ulink> ªº²Ó³¡³]©w</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="geometry">
+ <para>¸Ó¥Î­þ¤@ºØµwºÐ³]©w°Ñ¼Æ(geometry)©O¡H</para>
+ </question>
+
+ <answer>
+ <note>
+ <para>³o¸Ìªº¡yµwºÐ³]©w°Ñ¼Æ(geometry)¡z¡A«üªº¬OµwºÐ¤Wªº
+ ¡ucylinders¡v¡B¡uheads¡v¡B¡usectors/track¡v ³o¤T­Ó³]©w°Ñ¼Æ¡C
+ ±µ¤U¨Óªº¤å³¹¤º¡A¬°¤F¤è«K¤¶²Ð¡A±N²ºÙ¬°¡yC/H/S¡z¡C
+ ³o¨Ç³]©w°Ñ¼Æ¬OÅý PC ¤Wªº BIOS ¯à¶¶§Q¦a¥¿±`§P§OµwºÐ¡A
+ »PµwºÐ¥»¨­Åª¼gªº­«­n¦]¯À¡C</para>
+ </note>
+
+ <para>¹ï­è±µ¤âªº¨t²ÎºÞ²zªÌ·s¤â¦Ó¨¥¡A³o¨Ç³]©w°Ñ¼Æ±`³y¦¨¤@¨Ç§xÂZ¡C
+ ­º¥ý¡ASCSI µwºÐ¤Wªº <emphasis>physical</emphasis> geometry
+ ¸ò FreeBSD ¤Wªº disk blocks ¬O§¹¥þµLÃöªº¡C¨Æ¹ê¤W¡A
+ ´NµwºÐ¤WºÏ°Ï±K«×ªºÅܤƦӨ¥¡A¨Ã¨S¦³©Ò¿×¡yphysical geometry¡z³oºØªF¦è¡C
+ µwºÐ»s³y°Ó©Ò»¡ªº¡yphysical geometry¡z³q±`¬O«ü¡G
+ µwºÐ¤W©Ò¨Ï¥Î³Ì¤pªÅ¶¡¨Ó¦s©ñ¸ê®Æªº³]©w°Ñ¼Æ(geometry)¡C
+ ¥H IDE µwºÐ¦Ó¨¥¡AFreeBSD ¥Î¥H¦s¨úµwºÐ³]©wªº¤è¦¡¬O C/H/S ¡A
+ µM¦Ó¡A¥Ø«e¥«­±¤WªºµwºÐ¦­´N¦b¤º³¡¹B§@®É¡A´N¦Û°ÊÂà´«¬° block ¤è¦¡
+ ¤F¡C</para>
+
+ <para>¯u¥¿ÃöÁ䪺¦a¤è¡A¨ä¹ê¬O¦b©ó ¡y<emphasis>logical</emphasis>
+ geometry¡z¡X ³o¬O BIOS °»´úµwºÐ®É©Ò±o¨ìªº³]©w¡A¨Ã¥B¥Î¨Ó¨M©wµwºÐ¦s¨ú¤è¦¡¡C
+ ¥Ñ©ó FreeBSD ¬O±Ä¥Î BIOS ªº°»´ú³]©w­È¡A©Ò¥H¦p¦ó¨ÓÅý BIOS °»´ú¨ìªº³]©w­È«O«ù¥¿½T¡A
+ ¬O¤Q¤À­«­n¡C¤×¨ä¬O¦P¤@ÁûµwºÐ¤W¦³¦h­Ó§@·~¨t²Îªº±¡ªp¡A
+ ¥¦­Ì³£¥²¶·±Ä¥Î¤@­PªºµwºÐ³]©w°Ñ¼Æ(geometry)¡A
+ §_«h´N·|¦³¶}¾÷¶i¤£¥h§@·~¨t²ÎªºÄY­«°ÝÃD¤F¡C</para>
+
+ <para>¥H SCSI µwºÐ¦Ó¨¥¡AµwºÐ³]©w°Ñ¼Æ(geometry)¬O¥Ñ SCSI ¥d¤Wªº
+ extended translation(³q±`«üªº¬O¦³¼Ð¥Ü <quote>support &gt;1GB</quote>(¤ä´© 1GB ¥H¤W®e¶q¡A©ÎÃþ¦ü¦Wµü)
+ ¤ä´©»P§_¨Ó§@¨M©w¡C
+ ¦pªG¤£¤ä´©¡A¨º»ò´N·|±Ä¥Î <replaceable>N</replaceable> cylinders¡B
+ 64 heads¡B 32 sectors/track §@¬°µwºÐ³]©w°Ñ¼Æ(geometry)¡A³o¸ÌÁ¿ªº¡y<replaceable>N</replaceable>¡z
+ ¬O«üµwºÐªº®e¶q(³æ¦ì¡GMB)¡CÁ|­Ó¨Ò¤l¨Ó»¡¡A¤@Áû 2GB µwºÐÀ³¸Ó¬O
+ 2048 cylinders¡B64 heads¡B32 sectors/track¡C</para>
+
+ <para>¦pªG¸Ó SCSI ¦³¤ä´©¨Ï¥Î extended translation ªº¸Ü¡A
+ (³q±`³o­Ó¤è¦¡¦b &ms-dos; ¨Ï¥Î¤W¦³¬Y¨Ç­­¨î)¡A¨Ã¥BµwºÐ®e¶q¤j©ó 1GB¡A
+ ¨º»òµwºÐ³]©w°Ñ¼Æ(geometry)´N·|¨Ï¥Î¹³¬O¡G
+ M cylinders¡B255 heads¡B¨CºÏ­y 63 sectors(½Ðª`·N¡G¤£¬O¡y64¡z®@)¡A
+ ³o¸ÌÁ¿ªº¡y<literal>M</literal>¡z¬O«üµwºÐªº®e¶q(³æ¦ì¡GMB)¦A°£¥H
+ 7.844238 ©Ò±o¥Xªº¼Æ­È³á¡I©Ò¥H¡A³o­Ó¨Ò¤lªº¸Ü¡A¦P¼Ë¬O 2GB µwºÐÀ³¸Ó¬O
+ 261 cylinders¡B255 heads¡B¨CºÏ­y 63 sectors¡C</para>
+
+ <para>­Y¹ï¤W­±Á¿ªº¤£ÁA¸Ñ¡A©Î¬O FreeBSD ¦b¦w¸Ë®É©Ò°»´ú¨ìªºµwºÐ³]©w°Ñ¼Æ(geometry)
+ ¦³°ÝÃDªº¸Ü¡A³Ì²³æªº¸Ñªk³q±`¬O¦bµwºÐ¤W«Ø¥ß¤@¶ô¤p¤pªº DOS ¤À³Î°Ï(partition)¡C
+ ³o¼Ë¤@¨Ó¡A´N¥i¥H°»´ú¨ì¥¿½TªºµwºÐ³]©w°Ñ¼Æ¤F¡A¦Ó¥B¡A
+ ¦pªG¤£·QÄ~Äò¯dµÛ¨º¤p¶ô DOS ¤À³Î°Ïªº¸Ü¡A¥i¥HÀH®É¥Î partition editor
+ ¨Ó®³±¼¥¦¡C©ÎªÌ§â¥¦¯dµÛ·í§@ºô¸ô¥dÅX°Êµ{¦¡¨Ï¥Î¡A©ÎÀH§A°ª¿³«ç»ò¥Î¥¦¡C</para>
+
+ <para>¦¹¥~©O¡A¦³­Ó§K¶O¦n¥Îªº¤u¨ãµ{¦¡¥s°µ¡y<filename>pfdisk.exe</filename>¡z¡A
+ ³o­Óµ{¦¡©ñ¦b¦U FreeBSD FTP ¯¸©Î¥úºÐªº <filename>tools</filename> ¥Ø¿ý¤U¡A
+ ¥¦¥i¥H¥Î¨Ó§ä¥XµwºÐ¤W¨ä¥L§@·~¨t²Î©Ò¨Ï¥ÎªºµwºÐ³]©w°Ñ¼Æ¡A
+ µM«á´N¥i¥H¦b partition editor ¤º¿é¤J­è­è§ä¨ìªº¨º¨Ç³]©w°Ñ¼Æ´N¥i¥H¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="disk-divide-restrictions">
+ <para>¤À³ÎºÏºÐ¾÷®É¦³¥ô¦ó­­¨î¶Ü¡S</para>
+ </question>
+
+ <answer>
+ <para>¦³¡A§A¥²¶·½T»{§Aªº root ¤À³Î°Ï¬O¦b 1024 cylinders ¤§¤º¡AÅý
+ BIOS ¥i¥H±q¨ä¤¤±Ò°Ê®Ö¤ß¡C(ª`·N¡G³o¬O PC ªº BIOS ¥\¯à­­¨î¡A¦Ó¤£
+ ¬O FreeBSD ªº)</para>
+
+ <para>¥H SCSI µwºÐ¦Ó¨¥¡A³q±`¬O§â <literal>root</literal> (<filename>/</filename>)
+ ¤À³Î°Ï©ñ¨ìµwºÐ³Ì«e­±ªº 1024MB (¦pªG¦³¤ä´© extended translation ªº¸Ü¡A
+ ¨º»ò¬O³Ì«e­±ªº 4096MB ¡X ³oÂI½Ð°Ñ¦Ò¤W¤@¤p¸`)¡C¦Ó IDE µwºÐªº¸Ü¡A¬Û¹ïÀ³ªº«h¬O 504MB¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="disk-manager">
+ <para>¥i¥H¨Ï¥Î­þ¨ÇºÏºÐºÞ²zµ{¦¡(disk managers)©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¥i¥H¥Î Ontrack Disk Manager ¨Ã¥B¹B§@¥¿±`¡A
+ ¦Ü©ó¨ä¥Lªº disk manager «h¤£¦b¥¿¦¡¤ä´©¤§¦C¡C</para>
+
+ <para>­Y¾ãÁûµwºÐ¥u¸Ë FreeBSD ¡A¨º»ò´N¤£¥Î¦A¸Ë disk manager ¤F¡C
+ ¥u­n§âµwºÐ³]©w¬° BIOS ©Ò¯à§ì¨ìªº³Ì¤jªÅ¶¡¡A¨º»ò FreeBSD ´N¥iºâ¥X¹ê»Ú¤W¥i¨Ï¥ÎªºªÅ¶¡¤F¡C
+ ¦pªG¡A¥¿¦b¨Ï¥Îªº¬O¥j¦­ MFM ±±¨î¥dªºÂ¦¡µwºÐ¡A
+ ¨º»ò´N»Ý­n¦b FreeBSD¤º§@ cylinders ¬ÛÃö³]©w¤F¡C</para>
+
+ <para>¦pªG·Q¦bºÏºÐ¤W¨Ï¥Î FreeBSD ©M¥t¥~ªº§@·~¨t²Î¡A¤]¥i¥H¤£¸Ë disk manager¡A
+ ¥u­n½T©w FreeBSD ªº±Ò°Ê¤À³Î°Ï¸ò¨ä¥L§@·~¨t²Îªº slice ³£¦ì©ó¶}©lªº 1024 cylinders
+ ¤º´N¥i¥H¤F¡C¦pªG§A¬Û·í¦a°ª©úªº¸Ü¡A¤@­Ó 20MB ªº±Ò°Ê¤À³Î°ÏÀ³¸Ó´N°÷¥Î¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="missing-os">
+ <para>FreeBSD ¦w¸Ë§¹²¦«á­«¶}¾÷¡A¦ý¬O¹q¸£«o»¡ <errorname>Missing Operating
+ System</errorname>³o¬O«ç»ò¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>³q±`­ì¦]¥X¦b FreeBSD ¤Î DOS ©Î¨ä¥L§@·~¨t²Î¦bµwºÐªº <link
+ linkend="geometry">³]©w°Ñ¼Æ(geometry)</link>¤Wªº³W¹º¦³¬Û½Ä¡C¸Ñªk¬O­«¸Ë¡A¦ý¬O½Ð·Ó
+ ¤W­zªº¬ÛÃö³¹¸`¨BÆJ¨Ó°µ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="stop-at-boot-manager">
+ <para>¬°¤°»ò¾÷¾¹¤W¦h­«¶}¾÷ºÞ²z­û(boot manager)¥X²{¤F <prompt>F?</prompt> ³o­Ó¿ï³æµe­±¡A
+ ¦ý«o¤£·|¦Û°Ê¸õ¹L¦ÓÄ~Äò¶}¾÷©O¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó¯gª¬¬O¥»¤å¤W­±©Ò´£ªº¥t¥~¤@­Ó°ÝÃD¤F¡A­ì¦]¦b©ó BIOS ¤W¸ò FreeBSD
+ ¤W­±¨âÃ䪺µwºÐªº <link linkend="geometry">³]©w°Ñ¼Æ(geometry)</link> ¨Ã¤£¤@­P¡C
+ ­Y§AµwºÐ©Î BIOS ¤ä´© cylinder translation
+ (³q±`·|³Q¼Ð¬° <quote>support &gt;1GB(¤ä´© 1 GB¥H¤W®e¶q)</quote>ªº¸Ü¡A
+ ¸Õ¸Õ¬Ý§ó§ï¬ÛÃö³]©w¡A¨Ã­«¸Ë FreeBSD¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="need-complete-sources">
+ <para>¦w¸Ë FreeBSD ®É¡A»Ý­n¦w¸Ë§¹¾ãªº sources ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¤@¯ë¨Ó»¡¡A³o¬O¥Î¤£µÛªº¡CµM¦Ó¡A§Ú­Ì±j¯P«Øij±zªº source ¦Ü¤Ö­n¸Ë
+ <literal>base</literal>(¥]§t¤F¥»¤å¤¤©Ò´£ªº¤@¨ÇÀÉ®×)¡B¥H¤Î
+ <literal>sys</literal> (kernel ªº source ÀÉ)¡C
+ ÁöµM¡A§@·~¨t²Î¥»¨­¹B¬O¤£»Ý­n¸Ë source ÀÉ¡A¦ý¬O &man.config.8; ³o­Ó kernel³]©wµ{¦¡«h»Ý­n src ¡C
+ ­Y¨S¸Ë kernel ªº source ÀÉ¡A¤´µM¥i¥H¥Î¨ä¥L¦a¤è³z¹L NFS ±¾¸üªº°ßŪÀɮרt²Î¡A
+ ¨Ó½sĶµ{¦¡¡C
+ ¦ý¥Ñ©ó kernel-source ¥»¨­ªº­­¨î¡A§Ú­Ì«Øij¤£­nª½±µ mount ¦b <filename>/usr/src</filename>¡A
+ ³Ì¦n¬O¥Î symbolic link(°Ñ¾\ &man.ln.1;) ±N±¾¸üªº¸ô®|¡A³]©w³sµ²¨ì<filename>/usr/src</filename>
+ ¥Ø¿ý¡C</para>
+
+ <para>¦b¾÷¾¹¤Wª½±µ¸Ë¦³ source ¨Ã¥BÁA¸Ñ¬ÛÃö½sĶ¹Lµ{¡A³o¼Ë¤l¤é«á¤É¯Å
+ FreeBSD ·|¨Ó±o¤è«K¦h¡C</para>
+
+ <para>­Y§Ñ¤F¸Ë¬ÛÃö source ªº¸Ü¡A¥i¥H¨Æ«á¥Î <command>sysinstalll</command>
+ (&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>) ¨Ó¸É¸Ë¡A¿ï³æ¡GConfigure ¡÷ Distributions ¡÷ src¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="need-kernel">
+ <para>»Ý­n­«·s build kernel ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b«Ü¤[«Ü¤[¥H«e¡A­ì¥»­«·s build kernel ¦b FreeBSD ¦w¸Ë¹Lµ{¤¤¡A
+ ¬Oµ´¹ï¥²»Ýªº¨BÆJ¤§¤@¡C¦ý¥Ø«e¦­´N¤£¥Î³o»ò³Â·Ð¤F¡A
+ ¥Ø«e¥D­n±`¨£ªºª©¥»³£¨Ï¥Î§ó¤Íµ½ªº kernel ³]©w«ü¥O¡C
+ &os; 4.X(§t¤§«eª©¥»)¡A¦b FreeBSD ±Ò°Ê´£¥Ü¸¹(boot:)®É¡A¨Ï¥Î <option>"-c"</option> flag
+ ´N·|¶i¤J³]©wµe­±¡A¨Ó¹ï kernel §@±`¨£ªº ISA ¥d²Ó¸`³]©w¡C
+ ¦Ó &os; 5.X(§t¤§«áª©¥»)ªº¸Ü¡A«h¬O¥H§ó¨ã¼u©Êªº "hints" ³]©w¤è¦¡¡C</para>
+
+ <para>¦pªG·Q§ó¸`¬Ù RAM ªº¨Ï¥Î¡BÁYµu¶}¾÷¬yµ{¡A¨º»ò«Øij¡G·sªº kernel ³]©wÀÉ¥u­n¥]§t§A»Ý­nªºÅX°Êµ{¦¡¡A
+ µM«á­«·s½sĶ¡B¦w¸Ë kernel ¨Ã­«¶}¾÷¡CµM¦Ó©O¡A³oÂI¹ï¤j¦h¼Æªº¨t²Î¨Ó»¡¡A
+ ³o¤£¤@©w¬O¥²­nªº¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="password-encryption">
+ <para>±K½X½s½X¸Ó±Ä¥Î DES¡BBlowfish ©Î MD5 ªº­þ¤@ºØ¡H¸Ó«ç»ò³]©w©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¹w³]ªº±K½X½s½X¤è¦¡¬O±Ä <emphasis>MD5</emphasis>¡C
+ ´N±K½X½s½X¤è¦¡¦Ó¨¥¡AMD5 ¤è¦¡¤@¯ë³Qµø¬°¤ñ¶Ç²Î &unix; ªº <emphasis>DES</emphasis> ¤è¦¡¸û¬°¦w¥þ¡C
+ µM¦Ó¡A­Y¦³»Ý­n¦b¨Ï¥ÎÂÂÀô¹Ò(¸û¤£¦w¥þªº±K½X½s½X¤è¦¡ªº)¡ADES ±K½X½s½X¤è¦¡¤@¼Ë¥i¥H¨Ï¥Î¡C
+ (­Y¨Ï¥Î sysinstall ®É¦³¿ï¾Ü <quote>crypto</quote> ®M¥ó¡A©Î¬O±q source ¤º½sĶ¦w¸Ë)
+ ¦³¸Ë crypto ªº¸Ü¡Acrypto libraries ¤]¤ä´©§ó¦w¥þªº Blowfish ½s½X¤è¦¡¡C</para>
+
+ <para>±K½X½s½Xªº¤è¦¡¬O¥Ñ <filename>/etc/login.conf</filename> ¤ºªº
+ <quote>passwd_format</quote> Äæ¦ì¨Ó¨M©wªº¡C¸ÓÄæ³]©w­È¡A(­Y¦³¸Ë crypto ªº¸Ü)¥i¥H¬O
+ <quote>des</quote> ©Î <quote>blf</quote> ©Î¬O­ì¥»ªº <quote>md5</quote>¡C
+ ¸Ô±¡½Ð°Ñ¾\ &man.login.conf.5; »¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="boot-floppy-hangs">
+ <para>¬°¤°»ò¶}¾÷ºÏ¤ù¶}¨ì¤@¥b¡A´N¥X²{
+ <literal>Probing Devices...</literal> ªºµe­±°T®§¡AµM«á´N°±¦í¤F¡H</para>
+ </question>
+
+ <answer>
+
+ <para>­Y¾÷¾¹¤W¦³¸Ë IDE ¤¶­±ªº Iomega &iomegazip; ©Î¬O &jaz; ªº¸Ü¡A
+ ¦]¬°³o¨Ç³]³Æ¥i¯à¸ò¶}¾÷¤ù¦³¬Û½Ä¡A½Ð¥ý®³±¼³o¨Ç³]³Æ¦A­«¸Õ¡C
+ ·í¾ã­Ó§@·~¨t²Î¸Ë¦n«á¡A´N¥i¥H§â³o¨Ç³]³Æ±µ¦^¥h¨Ï¥Î¤F¡C
+ §Æ±æ³oÂI¦b¤é«á release ªº FreeBSD ¥i¥HÀò±o¹ý©³¸Ñ¨M¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="panic-on-install-reboot">
+ <para>¨t²Î¸Ë§¹¨Ã­«¶}¾÷«á¡A¬°¤°»ò«o¥X²{ <errorname>panic: can't mount root</errorname>¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó¿ù»~¬O¦]¬°±Ò°ÊºÏ°Ï¸ò kernel ¨âªÌ¹ïºÏºÐ¸Ë¸mªº»{ª¾¤£¬Û¦P¡C
+ ³q±`³o°ÝÃD·|µo¥Í¦b¦³¨âÁû IDE µwºÐªº¨t²Î¡A¤ñ¦p¡GµwºÐ Jumper ³]©w¬° Master¡B
+ ©Î¬O¨â±ø IDE ±Æ½u¦U¥u³s±µ¤@ÁûµwºÐ¡A¦ý¬O¸Ë FreeBSD ¨ºÁû¶}¾÷µwºÐ¡A
+ «o±µ¦b Secondary IDE ±Æ½u¤W¡C
+ ¦p¦¹¤@¨Ó¡A¦b¶}¾÷®É·í kernel «ü©w²Ä¤G­Ó IDE ±±¨î¾¹ªº²Ä¤@­ÓºÏºÐ¾÷ ad2¡A
+ ±Ò°ÊºÏ°Ï«o»{¬°¨t²Î¬O¸Ë¦b ad0(BIOS°»´úªº²Ä¤GÁûµwºÐ)¡I
+ °»´ú§¹¸Ë¸m«á¡Akernel ¸ÕµÛ§â±Ò°ÊºÏ°Ï©Ò»{¬°ªº¶}¾÷µwºÐ(ad0) mount
+ °_¨Ó¡A¨Æ¹ê¤WÀ³¸Ó¬O ad2 ¤~¹ï¡A©Ò¥H´N·|¥X²{¤W­±ªº¿ù»~°T®§¤F¡C</para>
+
+ <para>¸Ñªk¦p¤U¡A½Ð¿ï¾Ü¨ä¤¤¤@ºØ¤è¦¡´N¦n¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>­«¶}¾÷¨Ã¦b¥X²{¡y<literal>Booting kernel in 10 seconds; hit [Enter] to interrupt</literal>¡z
+ ´£¥Üªº®É­Ô¡A«ö¤U <keycap>Enter</keycap>Áä¡C
+ ³o¼Ë¤l´N·|¶i¤J boot loader µe­±¡G</para>
+
+ <para>½Ð¿é¤J
+ <literal>
+ set
+ root_disk_unit="<replaceable>disk_number</replaceable>"
+ </literal> ³o¸Ìªº¡y<replaceable>disk_number</replaceable>¡z½Ð¨Ì¾Ú±¡ªp´«¦¨¬ÛÃö¥N¸¹¡G
+ ­Y FreeBSD µwºÐ¬O³]©w¸Ë¦b Primary IDE ±µ½uªº Master¡A´N³]¬° 0 ¡F
+ ­Y¬O Primary IDE ±µ½uªº Slave¡A´N³]¬° 1¡F
+ ­Y¬O Secondary IDE ±µ½uªº Master¡A´N³]¬° 2¡F
+ ­Y¬O Secondary IDE ±µ½uªº Slave¡A´N³]¬° 3¡C</para>
+
+ <para>±µµÛ½Ð¦A¿é¤J <literal>boot</literal>¡AµM«á¨t²ÎÀ³¸Ó´N¥i¥H¥¿±`¶}¾÷¤F¡C</para>
+
+ <para>­Y­n¨C¦¸¶}¾÷³£¦Û°Ê³]©w¡A¦Ó¤£¥²¨C¦¸³£¥´¤@¦¸¡A¨º»ò´N¦b <filename>/boot/loader.conf.local</filename>
+ Àɮפº¥[¤W <literal>root_disk_unit="<replaceable>disk_number</replaceable>"</literal>
+ ³o¦æ
+ (·íµM¡A¡y<replaceable>disk_number</replaceable>¡z­n§ï¦¨¬ÛÃö¥N¸¹)</para>
+ </listitem>
+
+ <listitem>
+ <para>§â FreeBSD µwºÐ§ï±µ¨ì Primary IDE ±µ½u¤W¡A¦p¦¹¤@¨Ó´N¥i¶¶§Q¨Ï¥Î¡C</para>
+ </listitem>
+ </orderedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="memory-limits">
+ <para>°O¾ÐÅé³Ì¤j­­¨î¬°¦h¤Ö¡H</para>
+ </question>
+
+ <answer>
+ <para>¤@¯ë &i386; ¾÷¾¹¤W³Ì¦h¥i¤ä´©¨ì 4 GB(gigabytes)¡C
+ ¦Ó¦Û &os; 4.9 ¤Î 5.1 ¥i¥H¶}©l¨Ï¥Î &man.pae.4; ¨Ó¤ä´©§ó¦hªº°O¾ÐÅé¡C
+ ¦³Ãö³oÂI¡A»Ý­n¦b kernel ³]©wÀɤº¥[¤J¤U¦C¤º®e¨Ã­«·s½sĶ kernel¡A¤~¯à¨Ï¥Î PAE¡C</para>
+
+ <programlisting>options PAE</programlisting>
+
+ <para>&os; ¦b pc98 ¾÷¾¹¤W³Ì¦h«h¥u¤ä´© 4 GB ¡A¦Ó¥B¤£¯à¨Ï¥Î PAE¡C
+ ¦b Alpha ¾÷¾¹¤W¡A°O¾ÐÅé­­¨î¤è­±­nµø©Ò¨Ï¥Îªº«¬¸¹¤ä´©µ{«×¦Ó©w¡A³oÂI½Ð°Ñ¾\
+ ©Ò¨Ï¥Îªº Alpha µwÅé³W®æªí¡C¦Ü©ó¨ä¥L¬[ºcªº &os; ²z½×¤W³Ì¦h¥i¨Ï¥Îªº°O¾ÐÅé¡A¦³¸û¦hªº­­¨î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ffs-limits">
+ <para>Àɮרt²Î³Ì¤j­­¨î¬°¦h¤Ö¡H</para>
+ </question>
+
+ <answer>
+ <para>´NÀɮרt²Î¤è­±¡A²z½×¤Wªº­­¨î¬O³Ì¦h¨ì 8TB(2G blocks)¡A
+ ©Î¬O¨Ï¥Î¤º©w 8K block ¤j¤p®É¡A­­¨î¬O 16TB¡C
+ ¹ê»Ú¤W¡A¥Ø«e³nÅé¨Ï¥Î¤W­­¨î¥u¯à¥Î¨ì 1 TB¡A
+ µM¦Ó¦pªG¬O¦³¥t¦æ§ï³y¹LÀɮרt²Î¡A¨º»ò¹F¨ì 4TB ªº¥Ø¼Ð¬O¥i¦æªº
+ (¤]¦³¤H¦¨¥\¹L)¡C</para>
+
+ <para>³æ¤@Àɮתº¤j¤p¤è­±¡A°²¦p block ¥H 4K §@³W¹ºªº¸Ü¡A
+ «h³Ì¤j¬OÁͪñ 1G blocks(4TB)¡C</para>
+
+ <table>
+ <title>Àɮפj¤pªº³Ì¤j­­¨î</title>
+
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>Àɮרt²Î block ¤j¤p</entry>
+
+ <entry>works</entry>
+
+ <entry>should work</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>4K</entry>
+
+ <entry>4T-1</entry>
+
+ <entry>&gt;4T</entry>
+ </row>
+
+ <row>
+ <entry>8K</entry>
+
+ <entry>&gt;32G</entry>
+
+ <entry>32T-1</entry>
+ </row>
+
+ <row>
+ <entry>16K</entry>
+
+ <entry>&gt;128G</entry>
+
+ <entry>32T-1</entry>
+ </row>
+
+ <row>
+ <entry>32K</entry>
+
+ <entry>&gt;512G</entry>
+
+ <entry>64T-1</entry>
+ </row>
+
+ <row>
+ <entry>64K</entry>
+
+ <entry>&gt;2048G</entry>
+
+ <entry>128T-1</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>When the fs block size is 4K, triple indirect blocks work
+ and everything should be limited by the maximum fs block number
+ that can be represented using triple indirect blocks (approx.
+ 1K^3 + 1K^2 + 1K), but everything is limited by a (wrong) limit
+ of 1G-1 on fs block numbers. The limit on fs block numbers
+ should be 2G-1. There are some bugs for fs block numbers near
+ 2G-1, but such block numbers are unreachable when the fs block
+ size is 4K.</para>
+
+ <para>block ¤j¤p¦pªG¬O 8K ©Î§ó¤j¡AÀɮרt²Î block ¼Æ¥Ø·|³Q­­¨î¦b 2G-1
+ ¡A¦ý¹ê»Ú¤WÀ³¸Ó»¡­­¨î¬O 1G-1 ¤~¹ï¡A¦]¬°±Ä¥Î 2G-1 block ªºÀɮרt²Î·|¾É­P¤@¨Ç°ÝÃD¡C
+ </para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="archsw-readin-failed-error">
+ <para>¬°¦ó¦b±Ò°Ê·sªº kernel ®É¡A¬Ý¨ì
+ <errorname>archsw.readin.failed</errorname> ¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>­ì¦]¥X¦b§Aªº world ¥H¤Î kernel ¨Ã¤£¦P¨B¡AÁ|¨Ò¡Gkernel ¥Î 4.11¡A
+ ¦Ó world «o¬O 4.8¡A³o¼Ë¬O·|¦³°ÝÃDªº¡C
+ ½Ð¦A¦¸½T»{¡A¬O§_¦³¥H <command>make buildworld</command> ¤Î
+ <command>make buildkernel</command> ¨Ó¥¿±`§ó·s kernel¡C</para>
+
+ <para>¦b±Ò°Ê loader ¤§«e¡A·|¬Ý¨ì "|" ³o­Ó²Å¸¹¦bÂà°Ê¡A³o®É¥i¥H«ö¥ô¦óÁ䤤Â_¡A
+ µM«á¦A«ü©w­n¸ü¤J­þ­Ó kernel ¨Ó¶}¾÷¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="security-profiles">
+ <para><quote>security profiles</quote> ¬O«ü¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>A <quote>security profile</quote> is a set of configuration
+ options that attempts to achieve the desired ratio of security
+ to convenience by enabling and disabling certain programs and
+ other settings. For full details, see the <ulink
+ url="&url.books.handbook;/install-post.html#SECURITYPROFILE">Security
+ Profile</ulink> section of the Handbook's <ulink
+ url="&url.books.handbook;/install-post.html">post-install
+ chapter</ulink>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="boot-acpi">
+ <para>¦b¶}¾÷®É¡A¿ï¾Ü¨Ï¥Î ACPI «h¦b¦w¸Ë¹Lµ{´N±¾¤F¡A¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>¸Õ¸Õ¬ÝÃö³¬ ACPI support¡C ·í¦b¸ü¤J bootloader®É¡A«ö¤UªÅ¥ÕÁä¡C
+ ¨t²Î·|Åã¥Ü <screen>OK</screen> ³o®É¿é¤J
+ <screen><userinput>unset acpi_load</userinput></screen> ±µµÛ¥´
+ <screen><userinput>boot</userinput></screen>
+ ¥HÄ~Äò¶}¾÷¡A³o¼Ë¤lÀ³¸Ó´N¥i¥H¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+ </chapter>
+
+ <chapter
+ id="hardware">
+ <title>µwÅé¤ä´©¤è­±</title>
+
+ <sect1 id="compatibility-general">
+ <title>¤@¯ë°ÝÃD</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="which-hardware-to-get">
+ <para>§Ú·Q²Õ¸Ë¦Û¤vªº FreeBSD ¾÷¾¹¡A¦³­þ¨Ç«¬¸¹¡B«~µP¡B³W®æ¬O¤ä´©µ{«×³Ì¦nªº©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³Ãö³oÂI¡A¦b FreeBSD °Q½×°Ï¤W®É±`¦³¤H°Q½×¡CÁöµMµwÅé¨O´«³t«×«Ü§Ö¡A
+ ¥i¯àÀH®É¦³·s³W®æ¡B·s²£«~¥X²{¡AµM¦Ó³o¨Ç³£¦b§Ú­Ì·N®Æ¤§¤¤¡A
+ §Ú­Ì <emphasis>¤´µM</emphasis> ±j¯P«Øij¡G¦b¸ß°Ý¦³Ãö³Ì·s³W®æµwÅ骺¤ä´©°ÝÃD¤§«e¡A
+ ½Ð¥ý°Ñ¾\ &os
+ <ulink url="&rel.current.hardware;">&rel.current;</ulink>
+ ©Î
+ <ulink url="&rel2.current.hardware;">&rel2.current;</ulink>ªº¤ä´©µwÅé¦Cªí¡A
+ ©Î¬O·j´M<ulink url="http://www.FreeBSD.org/search/#mailinglists">°Q½×°ÏªºÂ¤峹</ulink>¡A
+ ¤]³\¡A¤W¶g¤~­è«ê¥©¦³¤H°Q½×¹L§A©Ò­n°ÝªºµwÅé¡C</para>
+
+ <para>¦pªG­n§ä¦³Ãöµ§°O«¬¹q¸£¤è­±¡A½Ð¨ì FreeBSD-mobile µ§°O«¬¹q¸£°Q½×°Ï¡C
+ ¤£µM¡A´N¨ì FreeBSD-questions °Q½×°Ï¡A©Î¬O¯S©wµwÅé³W®æ(¤ñ¦p pc98, Alpha)ªº±MÄÝ°Q½×°Ï§a¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+ </sect1>
+
+ <sect1 id="compatibility-processors">
+ <title>µwÅé¬[ºc¤Î CPU</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="architectures">
+ <para>FreeBSD ¦³¤ä´© x86 ¤§¥~ªºµwÅé¬[ºc¥­¥x¶Ü¡H</para>
+ </question>
+
+ <answer>
+
+ <para>¦³ªº¡AFreeBSD ¥Ø«e¥i¥H¦b Intel x86 and DEC
+ (²{¦bªº HP-Compaq) Alpha ¬[ºc¤W­±¹B§@¡C¦Û FreeBSD 5.0 ¤§«áªºª©¥»¡A«h
+ ¥i¤ä´© AMD64 ¤Î Intel EM64T, IA-64 ¥H¤Î &sparc64; ¬[ºc¡C
+ ¥¼¨Ó¥­¥x¤ä´©¤WÁÙ·|¦³ &mips; ¤Î
+ &powerpc;¡A²Ó¸`½Ð¤À§O°Ñ¾\ &a.mips; ©Î &a.ppc;¡C
+ ¤@¯ë¦Ó¨¥¡A·sªºµwÅé¬[ºc¥­¥x¤è­±¡A³£¬O¨ì &a.platforms; °Q½×¡C</para>
+
+ <para>­Y§A¾÷¾¹¤£¬O¥H¤W¬[ºc©Î¬O¤ñ¸û©_¯Sªº¡A¦Ó·Q¥ß¨è¸Õ¸Õ¬Ý BSD ªºÅ]¤O¡A
+ §Ú­Ì«Øij§A¥i¥H¦Ò¼{¨Ï¥Î <ulink
+ url="http://www.netbsd.org/">NetBSD</ulink> ©Î <ulink
+ url="http://www.openbsd.org/">OpenBSD</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="smp-support">
+ <para>FreeBSD ¤ä´© CPU ¹ïºÙ¦h¤u³B²z(SMP, Symmetric Multiprocessing)¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³ªº¡C SMP ¦b &os; 5.2 ¹w³]ªº kernel(<emphasis>GENERIC</emphasis>)¤w¦³±Ò°Ê¡C
+ </para>
+
+ <para>¦b &os; 5.3 ­n release ®É¡ASMP¬ÛÃö³]©w¤]¬O¹w³]´N¦³±Ò°Ê¡C
+ µM¦Ó¡A¦b¤@¨Ç¸û·s«¬ªº¾÷¾¹(¹³¬O emt64)¤W«o¤S¦³¨Ç°ÝÃD¡A
+ ©Ò¥HÁÙ¬O¨M©w¦b¬ÛÃö°ÝÃD¡B¦w¥þijÃD¥¼Àò¸Ñ¨M«e¡A¥ýÃö³¬ SMP ªº¬ÛÃö±Ò°Ê¡C
+ ³oÂI¡A¥¿¬O &os; 5.4 ©ÒÀu¥ý¦Ò¼{ªº¤è¦V¡C</para>
+
+ <para>&os; 4.X ªº¸Ü¡A¹w³]ªº kernel ¨Ã¨S¦³±Ò°Ê SMP¡A
+ ¦]¦¹¡A¥²¶·­n§â options SMP ¥[¤J kernel ³]©wÀɨí«·s½sĶ¤~¯à±Ò°Ê¡C
+ ¦Ü©óÁÙ¦³­þ¨Ç¬ÛÃö³]©w­n©ñ¤J kernel ³]©wÀÉ¡A½Ð°Ñ¾\<filename>/sys/i386/conf/LINT</filename>¡C
+ </para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </sect1>
+
+ <sect1 id="compatibility-drives">
+ <title>µwºÐ¡BºÏ±a¾÷¥H¤Î¥úºÐ¡BDVD¡B¿N¿ý¾÷</title>
+
+ <qandaset>
+
+ <qandaentry>
+ <question id="supported-hard-drives">
+ <para>FreeBSD ¥i¤ä´©­þ¨ÇºØÃþªºµwºÐ©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ³£¤ä´© EIDE ¤Î SCSI ¤¶­±ªºµwºÐ(¥H¤Î SCSI ¥d¡A½Ð¬Ý¤U¤@¸`»¡©ú)
+ ¥H¤Î <quote>Western Digital</quote> ¤¶­±ªºµwºÐ (MFM¡B RLL¡B
+ ESDI¡A·íµM¥]§t IDE)¡A¤£¹L¦³¤@¨Ç¤Ö¼Æªº ESDI ´¹¤ù²Õªº(«¬¸¹¡GWD1002/3/6/7)
+ ¥i¯àµLªk¥¿±`¹B§@¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="supported-scsi-controllers">
+ <para>¤ä´©­þ¨Ç SCSI ¥d¡B³]³Æ©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¾\ &os; ªºµwÅé¤ä´©ªí(
+ <ulink url="&rel.current.hardware;">&rel.current;</ulink> ©Î
+ <ulink url="&rel2.current.hardware;">&rel2.current;</ulink>)</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="tape-support">
+ <para>¤ä´©­þ¨ÇºÏ±a¾÷©O¡H</para>
+ </question>
+
+ <answer>
+
+ <para>FreeBSD ¤ä´© SCSI ¤Î QIC-36 (QIC-02 ¤¶­±) ³W®æªººÏ±a¾÷¡C
+ ¦P®É¥]§t¤F 8-mm (¤]´N¬O Exabyte) ¤Î DAT ºÏ±a¾÷¡C</para>
+
+ <para>¦³¨Ç¦­´Áª©¥»ªº 8-mm ºÏ±a¾÷¨Ã¤£¬O§¹¥þ¬Û®e©ó SCSI-2 ³W®æ¡A
+ ©Ò¥H¥i¯à¦b FreeBSD ¤Wªí²{¤£¬O«Ü¦n¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="tape-changer-support">
+ <para>FreeBSD ¤ä´©ºÏ±a¦Û°Ê´«±a¾÷¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¥i¥H¥Î &man.ch.4; ¤W­±©Ò¦Cªº¾÷ºØ¡A·f°t &man.chio.1; «ü¥O¡A
+ ¨Ó¨Ï¥Î SCSI ºØÃþªº¦Û°Ê´«±a¾÷¡A²Ó¸`³¡¤À½Ð°Ñ¾\ &man.chio.1; »¡©ú¡C</para>
+
+ <para>If you are not using <application>AMANDA</application>
+ or some other product that already understands changers,
+ remember that they only know how to move a tape from one
+ point to another, so you need to keep track of which slot a
+ tape is in, and which slot the tape currently in the drive
+ needs to go back to.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="supported-cdrom-drives">
+ <para>FreeBSD ¥i¤ä´©­þ¨ÇºØÃþªº¥úºÐ¾÷©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¥u­n¬O¦³¤ä´©ªº SCSI ¥d¤W©Ò±µªº¥ô¤@ SCSI ¥úºÐ¾÷³£¦³¤ä´©¡C</para>
+
+ <para>¦¹¥~¡A¤]¤ä´©¤U¦Cªº¥úºÐ¾÷¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Mitsumi LU002 (8bit), LU005 (16bit) ¤Î FX001D
+ (16bit 2x Speed)</para>
+ </listitem>
+
+ <listitem>
+ <para>Sony CDU 31/33A</para>
+ </listitem>
+
+ <listitem>
+ <para>Sound Blaster «D SCSI ¤¶­±ªº¥úºÐ¾÷</para>
+ </listitem>
+
+ <listitem>
+ <para>Matsushita/Panasonic ¥úºÐ¾÷</para>
+ </listitem>
+
+ <listitem>
+ <para>¬Û®e ATAPI ³W®æªº IDE CDROMs</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¬Û¹ï©ó SCSI ¾÷ºØ¦Ó¨¥¡A¨ä¥L«D SCSI ªº¥úºÐ¾÷³£¬O¤ñ¸ûºC¡A
+ ¦¹¥~¡A¦³¨Ç ATAPI ºØÃþªº¥úºÐ¾÷¥i¯àµLªk¶¶§Q¹B§@</para>
+
+ <para>Daemon News ¥H¤Î FreeBSD Mall ©Òµo¦æªº¥¿¦¡ FreeBSD ¥úºÐ¥H¤Î¿N¿ý¥Îªº¼v¹³ÀÉ(ISO)¡A
+ ³£¥i¥Hª½±µ¥Î©ó¶}¾÷¥úºÐ¨Ï¥Î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="supported-cdrw-drives">
+ <para>FreeBSD ¤ä´©­þ¨Ç¥úºÐ¿N¿ý¾÷ªºÅX°Êµ{¦¡©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¤ä´©¥ô¦ó¬Û®e ATAPI ¼Ð·Çªº IDE CD-R ©Î CD-RW ¥úºÐ¿N¿ý¾÷¡A
+ ²Ó¸`½Ð°Ñ¾\ &man.burncd.8; »¡©ú¡C</para>
+
+ <para>FreeBSD ¤]¤ä´©¥ô¦ó SCSI CD-R ©Î CD-RW ¥úºÐ¿N¿ý¾÷¡C
+ ½Ð¥Î port ©Î packag ¾÷¨î¨Ó¦w¸Ë¡B¨Ï¥Î <command>cdrecord</command> ¡A
+ ¨Ã½T©w±zªº kernel ¤º¦³±N <devicename>pass</devicename>³]³Æ¤@¨Ö½sĶ¦b¤º¡C
+ (¹w³]ªº kernel.GENERIC ³£·|¦³ device pass ³o¬q)</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="zip-support">
+ <para>FreeBSD ¤ä´© Iomega &iomegazip; ¶Ü?</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¤ä´©¥~±µ¦¡ªº SCSI ¤Î ATAPI(IDE) ¤¶­±ªº Iomega &iomegazip;¡C
+ ¤£¹L SCSI ZIP ¥u¯à³Q³]¬° SCSI ID 5 ©Î¬O 6 ¤~¥i¥H¹B§@¡A¦ý¦pªG
+ SCSI ¥d¤Wªº BIOS ¤ä´©¥¦¡A§A¬Æ¦Ü¥i¥H¥Î¥¦¨Ó¶}¾÷¡C
+ §Ú­Ì¤£¾å±o­þ¤@¶ô¥d¥i¥H§â¥dªº ID ³]¦b°£¤F 0 ©Î 1 ¥H¥~ªº¦a¤è¦Ó¶}¾÷¦¨¥\¡A
+ ¦]¦¹¡A¦pªG·Q§ï SCSI ID ªº¸Ü¡A½Ð°È¥²°Ñ¾\¸Ó«¬¸¹ªº»¡©ú¤â¥U¡C</para>
+
+ <para>FreeBSD ¦P®É¤]¤ä´© Parallel Port ZipºÏºÐ¾÷¡C½ÐÀˬd kernel
+ ³]©wÀɬO§_¦³¡G
+ <devicename>scbus0</devicename>¡B
+ <devicename>da0</devicename>¡B
+ <devicename>ppbus0</devicename>¡A¥H¤Î
+ <devicename>vp0</devicename> ³o¨ÇÅX°Êµ{¦¡ (¹w³]ªº GENERIC kernel
+ °£¤F <devicename>vp0</devicename> ¨S¥]¶i¥h¡A¨ä¥L¤TªÌ³£·|¦³)¡C
+ ¥[¤F³o´X­ÓÅX°Êµ{¦¡¤§«á¡AParallel Port Zip ´N·|¦¨¬°
+ <devicename>/dev/da0s4</devicename>¡C</para>
+
+ <para>³o®É¡A´N¥i¥H¥Î¹³¬O <command>mount /dev/da0s4 /mnt</command> ©Î
+ (DOS Àɮרt²Î)<command>mount_msdos /dev/da0s4 /mnt</command>
+ ¤§Ãþªº«ü¥O¨Ó±¾¸ü¡BŪ¼g¡C</para>
+
+ <para>¤]¥i¥H°Ñ¾\¤U­±¦³Ãö<link linkend="media-change">ÀH¨­ºÏ¤ù
+ </link>³¡¤À¡A¥H¤Î<link
+ linkend="removable-drives">©â¨úºÐ¡BÀH¨­ºÐªº¡y®æ¦¡¤Æ¡z°Q½×</link>
+ ªº³¡¤À</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="jaz-zip-removable-support">
+ <para>FreeBSD ¦³¤ä´© &jaz;¡BEZ ¤Î¨ä¥LÃþ¦üªºÀH¨­ºÏ¤ù¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H°Ú¡A°£¤F IDE ªº EZ drive ¥~¡A¨ä¥LªºÀ³¸Ó³£¬O SCSI ¤¶­±¡A
+ ©Ò¥H¦b FreeBSD ¤W³£·|¥H SCSI µwºÐ¨Ó³B²z¡C</para>
+
+ <para>·íµM¡A§A¥²¶·½T©w¦b¶}¾÷®É¡A³o¨Ç³]³Æªº¹q·½¬O¥´¶}ªº¡A
+ ¥H«KÅý FreeBSD ¥i¥H°»´ú¨ì¡C</para>
+
+ <para><anchor id="media-change"/>¦pªG¦bºÏºÐ¹B¤¤ª¬ºA¤¤¡A­n§ó´«ºÏ¤ùªº¸Ü¡A
+ °O±o¥ý¬Ý¤@¤U &man.mount.8;¡B&man.umount.8;¡B
+ ¥H¤Î(SCSIªº¸Ü)&man.camcontrol.8; ©Î &man.atacontrol.8; ÁÙ¦³ FAQ «á­±¦³Ãö
+ <link linkend="removable-drives">¨Ï¥Î©â¨úºÐ¡BÀH¨­ºÐªº°Q½×
+ </link>¡C</para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+
+ </sect1>
+
+ <sect1 id="compatibility-kbd-mice">
+ <title>Áä½L¡B·Æ¹«</title>
+
+ <qandaset>
+
+ <qandaentry>
+ <question id="usbkbd">
+ <para>FreeBSD ¦³¤ä´© USB Áä½L¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD (¤×¨ä¬O¦³¤ä´© USB keyboards¡C Enable USB support in
+ <filename>/etc/rc.conf</filename>.</para>
+
+ <para>­Y¦³¶} USB Áä½L¤ä´©¦Ó¥B¦P®É±µ¤W AT ¸ò USB Áä½Lªº¸Ü¡A¨º»ò AT Áä½L·|Åܦ¨
+ <devicename>/dev/kbd0</devicename>¡A¦Ó USB Áä½L«h¬O
+ <devicename>/dev/kbd1</devicename>¡C¦pªG¥u±µ USB Áä½L¡A¨º»ò¥¦´N¬O
+ <devicename>/dev/ukbd0</devicename> Åo¡C</para>
+
+ <para>¦pªG·Q¦b console ¤W¨Ï¥Î USB Áä½Lªº¸Ü¡A¨º»ò¥²¶·³]©w console «ü©w¥Î USB Áä½L¡C
+ ¥i¥H¦b¨t²Î¶}¾÷µ{§Ç®É¡A¥[¤W¤U¦C«ü¥O¡G</para>
+
+ <screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd1 &lt; /dev/ttyv0 &gt; /dev/null</userinput></screen>
+
+ <para>ª`·N¡G­Y¥u¦³ USB Áä½Lªº¸Ü¡A¤]´N¬O <devicename>/dev/ukbd0</devicename>¡A
+ ¨º»ò½Ð§ï¥Î¤U¦C«ü¥O¡G</para>
+
+ <screen>&prompt.root; <userinput>kbdcontrol -k /dev/ukbd0 &lt; /dev/ttyv0 &gt; /dev/null</userinput></screen>
+
+ <para>«Øij¡G¥i¥H§â¤W­z«ü¥O©ñ¤J <filename>/etc/rc.i386</filename> ¡C</para>
+
+ <para>³]©w¦¨¥\¤§«á¡AUSB Áä½L¤£¥Î§@¥ô¦ó¯S§O³]©w¡A´N¥i¥H¦b X µøµ¡Àô¹Ò¤W¥¿±`¹B§@Åo¡C</para>
+
+ <para>USB Áä½Lªº¼ö´¡©Þ(Hot-plugging and unplugging)¦b &os; ¥i¯àÁÙµLªk§¹¥þ¥¿±`¹B§@¡A
+ «Øij¡G¦b¨t²Î¶}¾÷«e´N¥ý±µ¤WÁä½L¡Aª½¨ìÃö¾÷¬°¤î¡A¥HÁקK¤£¥²­nªº§xÂZ¡C</para>
+
+ <para>¬ÛÃö²Ó¸`½Ð°Ñ¾\ &man.ukbd.4; ªº»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="busmouse">
+ <para>¥j¦­ªº bus ·Æ¹«¡A­n«ç»ò³]©w©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¤ä´©¤@¨Ç¼t°Ó(¹³¬O¡GMicrosoft¡BLogitech¡BATI)©Ò°µªº bus ¤Î InPort bus ¤¶­±ªº·Æ¹«¡C
+ µM¦Ó¡A¹w³]ªº kernel(GENERIC)¤w¸g¤£¤º§t¥¦­ÌªºÅX°Êµ{¦¡¡C
+ ¦]¦¹¡A­n¥[¤J¤U¦C¨ì kernel ³]©wÀɨí«·s½sĶ¡B¦w¸Ë¡A¤~¯à±Ò¥Î¡G</para>
+
+ <programlisting>device mse0 at isa? port 0x23c irq5</programlisting>
+
+ <para>Bus ·Æ¹«³q±`­n·f°t±M¥Îªº¤¶­±¥d¤~¯à¨Ï¥Î¡C
+ ³o¨Ç¥d¥i¥H³]©w port address ¤Î IRQ ­È¡A³o¨Ç²Ó¸`½Ð°Ñ¾\§Aªº·Æ¹«»¡©ú¤â¥U¤Î
+ &man.mse.4; »¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ps2mouse">
+ <para>PS/2 (<quote>mouse port</quote> ©Î
+ <quote>keyboard</quote>)ªº·Æ¹«­n«ç»ò³]©w¤~¦n©O¡H</para>
+ </question>
+
+ <answer>
+ <para>PS/2 ·Æ¹«³£¦³¤ä´©¡A©Ò»Ý­n¥Î¨ìªºÅX°Êµ{¦¡ <devicename>psm</devicename>
+ ¦b¹w³]ªº kernel(GENERIC)¤w¦³¤º§t¤F¡C</para>
+
+ <para>­Y§A¦Û­qªº kernel ¤ºº|¤F psm ªº¸Ü¡A¨º»ò´N¦A§â¤U¦C¤º®e¥[¨ì kernel
+ ³]©wÀɨí«·s½sĶ¡B¦w¸Ë¡G</para>
+
+ <programlisting>device psm0 at atkbdc? irq 12</programlisting>
+
+ <para>·í¶}¾÷®É kernel ¦³¥¿½T°»´ú¨ì <devicename>psm0</devicename>
+ ¡A½Ð°È¥²½T»{¦b <filename>/dev</filename> ¤º¦³
+ <devicename>psm0</devicename> ¡C
+ ¦pªG¨S¦³ªº¸Ü¡A¨º»ò´N¥Î <username>root</username> ¨Ó¥´¤U¦C«ü¥O¨Ó«Ø¥ß§a¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /dev; sh MAKEDEV psm0</userinput></screen>
+
+ <note>
+ <para>¦pªG¬O &os; 5.0-RELEASE(§t¤§«áª©¥»)ªº¸Ü¡A¦]¬°±Ä¥Î &man.devfs.5; ¾÷¨îªº¦]¯À¡A
+ ©Ò¥H·|¦Û°Ê¦b <filename>/dev</filename> ¤U«Ø¥ß¬ÛÃö³]³Æªº¸`ÂI¡A¦]¦¹´N¥i¥H²¤¹L¤W­±³o¤@¨B¡C</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="moused">
+ <para>¦pªG¤£¥Î X Window Àô¹Òªº¸Ü¡A¤]¥i¥H¥Î·Æ¹«¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>­Y¨Ï¥Î console ªº¹w³]ÅX°Êµ{¦¡(¤]´N¬O &man.syscons.4;)¡A
+ ¨º»ò´N¥i¥H¦b¤å¦r¤¶­±ªº console ¤W­±¥Î·Æ¹«¨Ó°Å¶K¤å¦r¤F¡C
+ ¨º»ò­n±Ò°Ê &man.moused.8; ¨Ã¶}±Ò´å¼ÐÅã¥Ü¡A
+ ½Ð¥´¤U¦C«ü¥O¡G</para>
+
+ <screen>&prompt.root; <userinput>moused -p /dev/<replaceable>xxxx</replaceable> -t <replaceable>yyyy</replaceable></userinput>
+&prompt.root; <userinput>vidcontrol -m on</userinput></screen>
+
+ <para>¨ä¤¤¡y<replaceable>xxxx</replaceable>¡z¬O·Æ¹«ªº³]³Æ¦WºÙ¡A¦Ó
+ ¡y<replaceable>yyyy</replaceable>¡z«h¬O·Æ¹«©Ò¨Ï¥Îªº protocol ºØÃþ¡C
+ ¥Ø«eªº moused ¥i¥H¦Û°Ê°»´ú(°£¤F¦¡ªº serial
+ ·Æ¹«¤§¥~)¤j¦h¼Æ·Æ¹«©Ò¨Ï¥Îªº protocol ºØÃþ¡A¦Ó¤£¥Î¨è·N¥h«ü©w¡C
+ ¡yprotocol ºØÃþ¡z³]©w¥Î
+ <literal>auto</literal> ´N·|¦Û°Ê°»´ú¤F¡C­Y¦Û°Ê°»´ú¥¢±Ñªº¸Ü¡A½Ð°Ñ¾\ &man.moused.8;
+ ¸Ì­±ªº type ¨º¬q»¡©ú¡C</para>
+
+ <para>¦pªG¥Îªº¬O PS/2 ·Æ¹«¡A¥u­n§â
+ <literal>moused_enable="YES"</literal> ¥[¨ì
+ <filename>/etc/rc.conf</filename> ¡A³o¼Ë¨C¦¸¶}¾÷´N·|¦Û°Ê±Ò°Ê¤F¡C
+ ¦¹¥~¡A¦pªG­n¦b©Ò¦³ virtual terminals ¤W¤]¯à¨Ï¥Î·Æ¹«¡A
+ ¦Ó¤£­­©w¥u¦³ console ªº¸Ü¡A¨º»ò½Ð¦A§â
+ <literal>allscreens_flags="-m on"</literal> ¥[¨ì <filename>/etc/rc.conf</filename> ¸Ì­±§Y¥i¡C</para>
+
+ <para>moused ¦b°õ¦æ¤¤ªº®É­Ô¡A¦pªG­n¨Ï¥Î·Æ¹«¬ÛÃö¥\¯à¡A³£¥²¶·³z¹L moused
+ ©Î¨ä¥Lµ{¦¡¹³¬O X µøµ¡¨Ó¶i¦æ¡C½Ð°Ñ¾\ FAQ ¤¤¦³Ãö<link
+ linkend="x-and-moused">¡y¬°¤°»ò¤£¯à¦b X µøµ¡¸Ì¨Ï¥Î·Æ¹«¡H¡z</link>¥HÁA¸Ñ¬ÛÃö²Ó¸`¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="text-mode-cut-paste">
+ <para>¦b¤å¦r¼Ò¦¡ªº console Àô¹Ò­n«ç»ò¥Î·Æ¹«¨Ó°Å¶K¤å¦r©O¡H</para>
+ </question>
+
+ <answer>
+ <para>·í°õ¦æ moused «á¡A(°Ñ¾\<link linkend="moused">«e¤@¸`</link>)
+ «ö¦í¥ªÁä¡A±µµÛ²¾°Ê·Æ¹«¨Ó¿ï¾Ü¤@­Ó°Ï°ì¤§«á©ñ¶}¡A³o¼Ë´N§¹¦¨¡y½Æ»s¡z¡C
+ ­n¡y¶K¤W¡zªº¸Ü¡A«ö·Æ¹«¤¤Áä´N¥i¥H¤F¡C
+ ­n¡y©µ¦ù¿ï¨ú°Ï¡zªº¸Ü¡A«ö·Æ¹«¥kÁä</para>
+
+
+ <para>¦pªG§Aªº·Æ¹«¨S¦³¤¤Áä¡A§A¥i¥H¥Î¼ÒÀÀªº¤è¦¡¡A©Î¬O­«·s©w¸q·Æ¹««öÁ䪺¤è¦¡¡A
+ ¨Ó¹F¦¨¡u©µ¦ù¡vªº¥\¯à¡C¸Ô±¡½Ð°Ñ¾\ &man.moused.8; »¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mouse-wheel-buttons">
+ <para>§Ú·Æ¹«¤W­±ªººu½ü¡Bºu½ü«ö¶s¡A¥i¥H¦b console ¤W¨Ï¥Î¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Óµª®×¹À...¡A«Ü¤£©¯¦a¡A¦b¤j¦h¼Æªº±¡ªp¤U¤£¦æ¡C
+ ³o¨Ç¦³ºu½üªº·Æ¹«»Ý­n¥Î¯S®íÅX°Êµ{¦¡¤~¦æ¡A
+ °£«D¡A·Æ¹«ÅX°Êµ{¦¡©Î¨Ï¥ÎªÌ¦Û¤vªºÀ³¥Îµ{¦¡¦³¤ä´©¡A
+ ¤£µM¡A³o¨Ç·Æ¹«¥u¯à°÷·í¦¨¬O´¶³qªº¨âÁä©Î¤TÁ䪺·Æ¹«¨Ó¥Î¦Ó¤w¡C
+ </para>
+
+ <para>¦pªG­n¦b X µøµ¡Àô¹Ò¤W¨Ï¥Îºu½üªº¸Ü¡A½Ð°Ñ¾\
+ <link linkend="x-and-wheel"> X µøµ¡¤Wªººu½ü¨Ï¥Î
+ </link>»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="laptop-mouse-trackball">
+ <para>­n«ç»ò¦bµ§°O«¬¹q¸£¤W¨Ï¥Î·Æ¹«¡B­y¸ñ²y¡BIJ±±ªO©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¾\<link linkend="ps2mouse">«e­±ªº PS/2 ·Æ¹«ªº°Ýµª
+ </link>¡C</para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+
+ </sect1>
+
+ <sect1 id="compatibility-networking">
+ <title>ºô¸ô¸ò serial ³]³Æ</title>
+
+ <qandaset>
+
+ <qandaentry>
+ <question id="network-cards">
+ <para>FreeBSD ¤ä´©­þ¨Çºô¸ô¥d©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò &os; ¦Uª©¥»ªºµwÅé¤ä´©¦Cªí¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="internal-plugnplay-modem">
+ <para>¬°¤°»ò FreeBSD §ä¤£¨ì PnP(ÀH´¡ÀH¥Î¡APlug &amp; Play)³W®æªº modem?</para>
+ </question>
+
+ <answer>
+ <para>­ì¦]¦b©ó¡G»Ý­n§â modem ªº PnP ID ¥[¨ì serial ÅX°Êµ{¦¡ªº PnP ID ªí¡A§@ªk¦p¤U¡G</para>
+ <orderedlist>
+ <listitem>
+ <para>­º¥ý¡A¦b kernel ³]©wÀɤº¥[¤J <literal>controller pnp0</literal>¡A
+ ¨Ã­«·s½sĶ¡B¦w¸Ë kernel¡A³Ì«á­«¶}¾÷´N·|±Ò°Ê PnP ¤ä´©¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>µM«á¡Akernel ·|§â°»´ú¨ì©Ò¦³³]³Æ¤Wªº PnP ID ³£¦C¥X¡C
+ ³o®É¡A­×§ï <filename>/usr/src/sys/isa/sio.c</filename>(¤j¬ù²Ä752¦æ¥ª¥kªº¦a¤è)¡A
+ ¥i¥H·j´M <literal>SUP1310</literal> ·íÃöÁä¦r(¦ì©ó <literal>sio_ids[]</literal> ªí¤º)¡A
+ ½Ð±N­è¤~ kernel Åã¥Üªº modem ªº PnP ID ½Æ»s¨ì¬ÛÃö¦ì¸m¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>³o®É¡A¦A­«·s½sĶ¡B¦w¸Ë kernel¡A³Ì«á­«¶}¾÷À³¸Ó´N·|¥¿½T°»´ú¨ì modem ¤F¡C</para>
+ </listitem>
+ </orderedlist>
+
+ <para>¦¹¥~¡A¤]¥i¥H¦b¶}¾÷®É¥H <literal>pnp</literal> «ü¥O¨Ó¤â°Ê³]©w PnP ³]³Æ¡A
+ ¨ÓÅý kernel ±o¥H¥¿½T°»´ú¡AÁ|¨Ò¡G</para>
+
+ <programlisting>pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8</programlisting>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="support-winmodem">
+ <para>FreeBSD ¤ä´©¹³¬O Winmodems ¤§Ãþªº³nÅé modem ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¥i¥H¦w¸ËÃB¥~ªº³nÅé¨Ó¤ä´©³nÅé modem¡C
+ ¹³¬O <filename role="package">comms/ltmdm</filename> ¥i¤ä´©±`¨£ªº Lucent LT ´¹¤ù¡A
+ <filename role="package">comms/mwavem</filename> «h¥i¤ä´© IBM Thinkpad 600 ¤Î 700
+ µ§°O«¬¹q¸£¤W­±ªº modem¡C</para>
+
+ <para>µM¦Ó¡A¨Ã¤£¯à¥Î³nÅé modem ¨Ó¦w¸Ë FreeBSD¡A
+ ¦]¬°¡G³oÃþ³nÅ饲¶·¦b§@·~¨t²Î¦w¸Ë§¹²¦¤§«á¡A¤~¯à¦w¸Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="support-broadcom">
+ <para>¦³ Broadcom 43xx µL½uºô¥dªº­ì¥ÍÅX°Êµ{¦¡(Native driver)¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¨S¦³¡A¦Ó¥B¤]¤£¤Ó¥i¯à·|¦³¡C</para>
+
+ <para>Broadcom ©Úµ´¤½¶}¦³ÃöµL½uºô¥d´¹¤ùªºÅX°Êµ{¦¡¬ÛÃö»¡©ú¡A
+ ¥D¦]¤j·§¬O¥L­Ì¥Î³nÅé¨Ó±±¨îµL½u¶Ç¿é¤è¦¡¡C
+ ¨Æ¹ê¤W¡A¦]¬°­n¯à³q¹L¬ü°êÁp¨¹¹q«H©e­û·|(FCC)À˺Ϧw³Wªº¸Ü¡A
+ ¥²¶·½T«O²£«~¤£¯àÅý¨Ï¥ÎªÌ¤£¯àÀH·N§ó°Ê¬ÛÃö³]©w¡A¤ñ¦p¡G¹qºÏªiÀW²v¡B¬ÛÃö¼Ò²Õ°Ñ¼Æ¡B¿é¥X¹q·½µ¥¡C
+ ¦ý¬O¡A¦pªG§Ú­Ì¤£ª¾¹D¦p¦ó¥h±±¨î´¹¤ùªº¸Ü¡A¨º»ò¼¶¼gÅX°Êµ{¦¡¤§¸ô®£©È¤£¤Ó¥i¦æ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="multiport-serial-support">
+ <para>FreeBSD ¤ä´©­þ¨Ç multi-port serial¥d©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¾\¨Ï¥Î¤â¥U¤Wªº <ulink
+ url="&url.books.handbook;/install.html#INSTALL-MISC">¦w¸Ë½g¡X¨ä¥LµwÅé
+ </ulink> ¦Cªí¡C</para>
+
+ <para>ÁöµM¦³¨Ç¥d¬O¨SµPªº(¤×¨ä¬O¦³¼Ð©ú¡G¬Û®e AST ³W®æ)¦ý¤]¥i¥H¥¿±`¨Ï¥Î¡C</para>
+
+ <para>¦Ü©ó¥dªº³]©w¤è­±¡A½Ð°Ñ¾\ &man.sio.4; ªº»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="serial-console-prompt">
+ <para>¦b serial console ¤W­n¦p¦ó¤~·|¥X²{ boot: ´£¥Ü©O¡H</para>
+ </question>
+
+ <answer>
+ <orderedlist>
+ <listitem>
+ <para>kernel ³]©wÀÉ¥[¤J
+ <literal>options COMCONSOLE</literal></para>
+ </listitem>
+
+ <listitem>
+ <para>«Ø¥ß /boot.config ÀÉ¡A¨Ã¥B¸ÓÀɸ̭±¤º®e¥u¶ñ¤W <option>-P</option></para>
+ </listitem>
+
+ <listitem>
+ <para>§âÁä½L±q¾÷¾¹¤W©Þ±¼</para>
+ </listitem>
+ </orderedlist>
+
+ <para>²Ó¸`½Ð¬Ý
+ <filename>/usr/src/sys/i386/boot/biosboot/README.serial</filename>
+ </para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+
+ </sect1>
+
+ <sect1 id="compatibility-sound">
+ <title>­µ®Ä¥d</title>
+
+ <qandaset>
+
+ <qandaentry>
+ <question id="sound-card-support">
+ <para>FreeBSD ¤ä´©­þ¨Ç­µ®Ä¥d¡H</para>
+ </question>
+
+ <answer>
+ <para>&os; ¤ä´©¦UºØ­µ®Ä¥d¡A¥]¬A¤F &soundblaster;¡B
+ &soundblaster; Pro¡B&soundblaster; 16¡BPro Audio Spectrum 16¡B
+ AdLib¡B¤Î Gravis UltraSound sound cards (²Ó¸`½Ð°Ñ¾\
+ <ulink url="&url.base;/releases/">&os; µo¦æ±¡³ø</ulink>
+ ¥H¤Î &man.snd.4; ªº»¡©ú)¡C
+ ¦¹¥~¡A¹ï MPU-401 ¤Î MIDI ¬Û®e³W®æªº¤]¦³¤@©wµ{«×ªº¤ä´©¡A¦Ó
+ &microsoft; Sound System ³W®æ¤]¦³¤ä´©¡C</para>
+
+ <note>
+ <para>ÅX°Êµ{¦¡¶È¾A¥Î©ó¡y­µ®Ä¡z³¡¤À¡I °£¤F &soundblaster; ¤§¥~¡A
+ ¥Ø«e­µ®ÄÅX°Êµ{¦¡¨Ã¤£¤ä´©³o¨Ç­µ®Ä¥d¤Wªº¥úºÐ¾÷, SCSI³]³Æ©Î·n±ì¡C
+ &soundblaster; ªº SCSI ¤¶­±¤Î¬Y¨Ç«D SCSI ªº¥úºÐ¾÷¬O¦³¤ä´©¡A¦ýµLªk¥Î¨Ó¶}¾÷¡C
+ </para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="es1370-silent-pcm">
+ <para>&man.pcm.4; ©Ò¤ä´©ªº­µ®Ä¥d¨S¦³Án­µ¡A¦³¤°»ò¼È®É¸Ñ¨M¤è¦¡¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬°¦³¨Ç¹³¬O es1370 ´¹¤ùªº­µ®Ä¥d·|¦b¨C¦¸¶}¾÷®É§â­µ¶q½Õ¬°¹s¡C
+ ¼È®É¸Ñªk¬O¦b¨C¦¸¶}¾÷®É°õ¦æ¤U­±«ü¥O¡A©Î¬O¥[¨ì /etc/rc.local ¤º¡G</para>
+
+ <screen>&prompt.root; <userinput>mixer pcm 100 vol 100 cd 100</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+
+ </sect1>
+
+ <sect1 id="compatibility-other">
+ <title>¨ä¥L©Ç²§°ÝÃD(ACPI¡B­«¶}¾÷«á±¾¤F..µ¥)</title>
+
+ <qandaset>
+
+ <qandaentry>
+ <question id="other-device-support">
+ <para>FreeBSD Á٤䴩¨ä¥L­þ¨ÇµwÅé©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¾\¨Ï¥Î¤â¥U¤Wªº <ulink
+ url="&url.books.handbook;/install.html#INSTALL-MISC">¦w¸Ë½g¡X¨ä¥LµwÅé</ulink>
+ ¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="power-management-support">
+ <para>FreeBSD ¤ä´©µ§°O«¬¹q¸£ªº¬Ù¹qºÞ²z¥\¯à¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD 4.X(§t¤§«áª©¥»)¦b¬Y¨Ç¾÷ºØ¤W³£¦³¤ä´© <acronym>APM</acronym>¡C
+ ²Ó¸`½Ð°Ñ¾\ &man.apm.4; ªº»¡©ú¡C</para>
+
+ <para>FreeBSD 5.X(§t¤§«áª©¥»)¤ä´©¦b¥Ø«e¤j³¡¤À¾÷ºØ¤W³£¦³ªº
+ <acronym>ACPI</acronym> ¥\¯à¡C
+ ²Ó¸`½Ð°Ñ¾\ &man.acpi.4; ªº»¡©ú¡C­Y¾÷¾¹¤W¦P®É³£¦³ <acronym>APM</acronym>
+ ¤Î <acronym>ACPI</acronym> ¥\¯àªº¸Ü¡A§Ú­Ì«Øij§A¥i¥H¨âªÌ³£¸Õ¸Õ¬Ý¡A
+ ¬Ý¬Ý­þ¤@ºØ¤ñ¸û²Å¦X§Aªº»Ý¨D¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="disable-acpi">
+ <para>¸Ó¦p¦óÃö³¬ ACPI¡H</para>
+ </question>
+
+ <answer>
+ <para>§â <screen>hint.acpi.0.disabled="1"</screen>
+ ³o¬q¥[¨ì <filename>/boot/device.hints</filename> §Y¥i¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="micron-hang-boot">
+ <para>Micron ¹q¸£Á`¬O¦b &os; ±Ò°Ê®É´N±¾±¼¡A¸Ó«ç»ò¿ì©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³¨Ç Micron ¥D¾÷ªO¤Wªº BIOS ¦b PCI ¤è­±·|¦³°ÝÃD¡A
+ ³o·|¾É­P PCI ³]³Æ·|³Q BIOS °»´ú¬°¤£¥¿½T³]©w¡A¦Ó¶i¤J FreeBSD ´N±¾±¼¡C</para>
+
+ <para>¼È®É¸Ñ¨M¤è¦¡¡GÃö³¬ BIOS ¤º <quote>Plug and Play Operating System</quote>
+ ªº³]©w¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="micron-3comnic-failure">
+ <para>&tm.3com; PCI ¤¶­±ºô¸ô¥dµLªk¦b Micron ¹q¸£¤W¨Ï¥Î¡A¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>³o°ÝÃD¸ò«e­±ªº°ÝÃD¦]¯À¤@¼Ë¡AÁ`¤§¡A´N¬OÃö³¬ BIOS ¤¤¦³Ãö OS PnP ªº³]©w¡C</para>
+
+ <para>¼È®É¸Ñ¨M¤è¦¡¡GÃö³¬ BIOS ¤º <quote>Plug and Play Operating System</quote>
+ ªº³]©w¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="asusk7v-boot-failure">
+ <para>¥D¾÷ªO¬O¥ÎµØºÓ(ASUS) K7V¡A¥i¬O¥Î¶}¾÷¤ù¶}¨ì¤@¥b´N·í¤F¡A«ç»ò¿ì©O¡H</para>
+ </question>
+
+ <answer>
+ <para>¶i¤J BIOS ³]©w¡A¨ÃÃö³¬ <quote>boot virus protection</quote> ³]©w§Y¥i¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="newcard-does-not-work">
+ <para>PCMCIA ¥dµLªk¨Ï¥Î¡A¨Ã¥X²{¿ù»~°T®§
+ <quote>cbb0: unsupported card type detected.</quote>
+ ¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¸Õ¸Õ¬Ý§ï¥Îªº¤è¦¡¡A½Ð¥ý­×§ï kernel ³]©wÀÉ¡A®³±¼¤U­±³o´X¦æ¡G
+ <programlisting>device cbb
+device pccard
+device cardbus</programlisting>
+ µM«á¥[¤W¡G
+ <programlisting>device pcic
+device card 1</programlisting>
+ ³Ì«á½Ð°Ñ¾\ Handbook ¤¤
+ <ulink url="&url.books.handbook;/kernelconfig.html">½Õ¾ã FreeBSD Kernel</ulink>
+ ³¹¸`¡A¥H­«·s½sĶ¡B¦w¸Ë·sªº kernel¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dell-poweredge-failure">
+ <para>¬°¤°»ò &dell; &poweredge; 2850 ¸Ë§¹ FreeBSD ¤§«á¡A­«¶}¾÷±µµÛÁä½L´N±¾¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>(¥»ÃD¥Ñ cdsheen ´£¨Ñ)À|¸Õ¦b &dell; &poweredge; 2850 ¤W­±¦w¸Ë &os; 6.0¡A
+ ¤£¹L¦w¸Ë§¹¦¨¡B¨Ã­«·s¶}¾÷¤§«á¡Aµo²{ console ªºÁä½L¤£¯à°Ê¤F¡A
+ ¦P¼Ëªº±¡ªp¦ü¥G¤]¦s¦b©ó &os; 5.3 ¤Î &os; 5.4¡A
+ ¸g¹L¤@µf·j´M¡Aµoı¬O¦]¬°³o¥x¾÷¾¹¤W­±¦³¤@­Ó <quote>Dell Remote Access Controller (DRAC)</quote>¡A
+ ³o­Ó¸Ë¸m·|³Q¨t²Î¿ëÃѦ¨¤@­Ó USB Keyboard¡A©Ò¥H¾É­P¶}§¹¾÷¤§«á¡A¥¿±`ªº PS/2 Áä½L¤Ï¦Ó¤£¯à°Ê¤F¡I</para>
+
+ <para>¼È®É¸Ñ¨M¤è¦¡¦p¤U¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>¥ý¥H Single User Mode ¶i¤J¨t²Î</para>
+ </listitem>
+
+ <listitem>
+ <para>¦b©R¥O¦C¼Ò¦¡¤U¡A¥ý°õ¦æ¤U¦C©R¥O¡G</para>
+ <screen>&prompt.root; <userinput>fsck -y <filename>/</filename></userinput></screen>
+ <screen>&prompt.root; <userinput>mount -u <filename>/</filename></userinput></screen>
+ </listitem>
+
+ <listitem>
+ <para>µM«á½s¿è <filename>/etc/devd.conf</filename>¡A§â¹ï©ó USB Keyboard ªº¤ä´©¼È®É®³±¼¡A
+ ¤]´N¬O§â¤U­±´X¦æ¶}ÀY¥[¤W #</para>
+ <programlisting>
+# When a USB keyboard arrives, attach it as the console keyboard.
+#attach 100 {
+# device-name "ukbd0";
+# action "kbdcontrol -k /dev/ukbd0 < /dev/console && /etc/rc.d/syscons restart";
+#};
+#detach 100 {
+# device-name "ukbd0";
+# action "kbdcontrol -k /dev/kbd0 < /dev/console";
+#};
+</programlisting>
+ </listitem>
+
+ <listitem>
+ <para>µM«á¿é¤J <command>exit</command>Â÷¶} Single User Mode ¤§«á¡A
+ ´N¥i¥H¶¶§Q¶i¤J¨t²Î¡B¦Ó¥BÁä½L¤]¥i¥H¥¿±`¹B§@¡A¤U¦¸¶}¾÷¤]¤£·|¦³°ÝÃD¡I</para>
+ </listitem>
+ </orderedlist>
+
+ <para>¥t¥~¡A&dell; ªº DRAC/BMC ¬Ý°_¨Ó¦³ÆZ¦h¤£¿ùªº»·ºÝ¦s¨ú¥\¯à¡A¦³¿³½ìªº¤H¥i¥Hª±ª±¬Ý...</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+
+ </sect1>
+
+ </chapter>
+
+ <chapter id="troubleshoot">
+ <chapterinfo>
+ <author>
+ <firstname>William</firstname>
+ <surname>Liao</surname>
+ <affiliation>
+ <address><email>chliao@tpts4.seed.net.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>±`¨£°ÝÃD¸Ñ¨M</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="pae">
+ <para>¬°¤°»ò &os; §ì¨ì¿ù»~ªº°O¾ÐÅé®e¶q¡H</para>
+ </question>
+
+ <answer>
+ <para>§ì¨ì¿ù»~ªº°O¾ÐÅé®e¶q¬O¦]¬°ª«²z¦ì§}¸òµêÀÀ¦ì§}¨âªÌ¬O¤£¦Pªº¡C</para>
+
+ <para>The convention for most PC hardware is to use the memory area
+ between 3.5G and 4G for a special purpose (usually for PCI). This
+ address space is used to access PCI hardware. As a result real,
+ physical memory can not appear in that address space.</para>
+
+ <para>What happens to the memory that should appear in that location
+ is dependent on your hardware. Unfortunately, some hardware does
+ nothing and the ability to use that last 500M of RAM is entirely
+ lost.</para>
+
+ <para>Luckily, most hardware remaps the memory to a higher location
+ so that it can still be used. However, this can cause some
+ confusion if you watch the boot messages.</para>
+
+ <para>On a 32 bit version of &os;, the memory appears lost, since it
+ will be remapped above 4G, which a 32 bit kernel is unable to
+ access. In this case, the solution is to build a PAE enabled
+ kernel. See <link linkend="memory-limits">this FAQ entry</link>
+ for more information.</para>
+
+ <para>On a 64 bit version of &os;, or when running a PAE-enabled
+ kernel, &os; will correctly detect and remap the memory so it is
+ usable. During boot, however, it may seem as if &os; is detecting
+ more memory than the system really has. This is normal and the
+ available memory will be corrected as the boot process
+ completes.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="awre">
+ <para>µwºÐ¦³Ãa­y®É¸Ó«ç»ò¿ì?</para>
+ </question>
+
+ <answer>
+ <para>­Y¬O SCSI µwºÐªº¸Ü¡A¨º»òºÏºÐ¾÷À³¸Ó¦³¯à¤O¦Û°Ê§@ re-mapping
+ ªº°Ê§@¡CµM¦Ó¡A¦]¬°¤@¨Ç¥¼ª¾ªº¦]¯À¡A¦b¥X¼t®É¡A«Ü¦hµwºÐªº³o¶µ
+ ¥\¯à¬OÃö³¬ªº...</para>
+
+ <para>­n±N¨ä­«·s¶}±Ò¡A±z»Ý­n½s¿è¸Ë¸mªº²Ä¤@­Ó page ¼Ò¦¡
+ ¡]first device page mode¡^¡A¦b FreeBSD ¤W¥i¥H¥Î¤U­±ªº«ü¥O¿ì¨ì
+ ¡]¥H <username>root</username>¨­¤À°õ¦æ¡^</para>
+
+ <screen>&prompt.root; <userinput>scsi -f /dev/rsd0c -m 1 -e -P 3</userinput></screen>
+
+ <para>µM«á±N AWRE ©M ARRE ªº¼Æ­È±q 0 Åܦ¨ 1:-</para>
+
+ <programlisting>AWRE¡]Auto Write Reallocation Enbld¡^¡G 1
+ARRE¡]Auto Read Reallocation Enbld¡^¡G 1</programlisting>
+
+ <para>¥H¤U³o¬q¬O¥Ñ Ted Mittelstaedt
+ <email>tedm@toybox.placo.com</email>©Ò´£¨Ñ¡G</para>
+
+ <para>­Y¬° IDE µwºÐ¡A¥ô¦óªºÃa­y³q±`³£¬O³Â·Ðªº¹w¥ü¡C¥Ø«e©Ò¦³¸û·sªº
+ IDE µwºÐ¡A¤º³¡³£¦³¦Û°Ê remapping Ãa­yªº¯à¤O¡C¥Ø«e©Ò¦³ IDE µwºÐ
+ »s³y°Ó¡A³£´£¨Ñ¤F§ó¤[ªº«OÃÒ¡A¦Ó¥B·|À°±z§ó´«¥X²{Ãa­yªºµwºÐ¡C</para>
+
+ <para>¦pªG±z¤´·Q­n­×´_²£¥ÍÃa­yªº IDE µwºÐ¡A±z¤´¥i¥H¸ÕµÛ¥h¤U¸ü IDE
+ µwºÐ»s³y°Ó©Ò´£¨ÑªºÀË´úµ{¦¡¡A¨Ã¥Î¥¦¨ÓÀˬd±zªºµwºÐ¡C¦³®É³o¨Ç³nÅé¥i
+ ¥H±j­¢­«·sÀˬdµwºÐªºÃa­y¡A¨Ã±N¥¦­Ì¼Ð¥Ü¥X¨Ó¡C</para>
+
+ <para>¹ï ESDI¡ARLL ¤Î MFM ªºµwºÐ¨Ó»¡¡A³q±`Ãa­y¬O¥¿±`²{¶H¡A¤]¤£¬O¤°
+ »ò³Â·Ðªº«e¥ü¡C¦b PC ¤W¡AºÏºÐ±±¨î¥d©M BIOS ­t³d¼Ð¥ÜÃa­yªº¥ô°È¡C³o
+ ¹ï¤@¨Ç¨Ï¥Î BIOS¨Ó¦s¨úºÏºÐªº§@·~Àô¹Ò¡]¦p DOS¡^¬O¨S¦³°ÝÃDªº¡CµM¦Ó¡A
+ FreeBSD ªººÏºÐÅX°Êµ{¦¡¨Ã¤£¸g¹L BIOS ¨Ó¦s¨úºÏºÐ¡A©Ò¥H¡A¦³­Ó bad144
+ ªº¾÷¨î¥Î¨Ó¨ú¥N³o¶µ¥\¯à¡Cbad144 ¥u¯à¥Î¦b wd ³o­ÓºÏºÐÅX°Êµ{¦¡¤W¡]³o
+ ­Ó¥Nªí¤F FreeBSD 4.0 ¨Ã¤£¤ä´©¥¦¡^¡A¥¦¤]µLªk¥Î¦b SCSI µwºÐ¤W¡C
+ bad144ªº¤u§@¤èªk¬O±N©Ò¦³§ä¨ìªºÃa­y¸ê®Æ¦s¨ì¤@­Ó¯S§OªºÀÉ®×ùØ¡C</para>
+
+ <para>¨Ï¥Î bad144 ªºÄµ§i - ¦sµÛÃa­y¸ê®Æªº¯S§OÀɮ׬O©ñ¦bµwºÐªº³Ì«á
+ ¤@­y¤W¡C¦]¬°³o­ÓÀÉ®×Àx¦sªºÃa­y¸ê®Æ¤¤¡A¦³¥i¯à¦³¨Ç¸ê®Æ¬O«ü¦VµwºÐ³Ì
+ «eºÝ©Òµo¥ÍªºÃa­y±¡§Î¡A´N¬O¥i¯àÀx¦s /kernel ³o­ÓÀɪº¦a¤è¡A©Ò¥H¥¦
+ ¤@©w­n¯à³Q¶}¾÷µ{¦¡©ÒŪ¨ú¡A¦Ó¶}¾÷µ{¦¡¬O³z¹L BIOS ¨ÓŪ¨ú kernel
+ ÀÉ¡C³oªí¥Ü¤F¨Ï¥Î bad144 ªºµwºÐµ´¤£¯à¾Ö¦³¶W¹L 1024 ­Ó cylinder¡A
+ 16 ­Ó head ¤Î 63 ­Ó sector¡C¦Ó³o¨Ï±o±ý¨Ï¥Î bad144 ªºµwºÐªº¤j¤p¤£
+ ¯à¤j©ó 500 MB¡C</para>
+
+ <para>­n¨Ï¥Î bad144 «Ü²³æ¡A¥u­n¦b¶}©l¦w¸Ë®É¡A¦b FreeBSD fdisk µe­±
+ §â<quote>Bad Block</quote> ±½ºË³]¬° ON §Y¥i¡C¦b FreeBSD 2.2.7 ¥H
+ «á³£¥i¥H¨Ï¥Î¦¹¤èªk¡C¦ý³o­ÓµwºÐªº cylinder ¤@©w­n¦b 1024 ¥H¤U¡C¨Ï
+ ¥Î«e¡A§Ú­Ì«Øij³o­ÓµwºÐ­n¦Ü¤Ö¥ý¨Ï¥Î¥|­Ó¤p®É¡A¥H«K¼ö¿±µÈ»PºÏ­y°¾²¾
+ ¹F¤@¯ëª¬ºA¡C</para>
+
+ <para>¦pªG³o­ÓµwºÐ¾Ö¦³¶W¹L 1024 ­Ó cylinder¡]¹³¤j®e¶qªº ESDI µwºÐ¡^
+ ¡AESDI ±±¨î¥d§Q¥Î¤@­Ó¯S§OªºÂà´«¼Ò¦¡¨Ï¥¦¯à¦b DOS ¤U¤u§@¡C¦Ó¦pªG±z
+ ¦b fdisk ùتº <quote>set geometry</quote> ¤¤¿é¤J
+ <quote>Âà´«¹L</quote> ªº geometry¡Awd ³o­ÓÅX°Êµ{¦¡¯à¤F¸Ñ³o¨ÇÂà´«
+ ¼Ò¦¡¡C±z¤]µ´¹ï¤£¯à¨Ï¥Î dangerously dedicated ¼Ò¦¡¨Ó«Ø¥ß FreeBSD
+ ªº¤À³Î°Ï¡A¦]¬°¥¦·|©¿²¤ geometry ³o­Ó°Ñ¼Æ¡C¦¹¥~¡A´Nºâ fdisk ¨Ï¥Î
+ ±z©Ò¿é¤Jªº geometry °Ñ¼Æ¡A¥¦¨ÌµM·|¥hŪ¨ú³oµwºÐªº¯u¥¿¸ê®Æ¡A¦Ó·|¹Á
+ ¸Õ¥h«Ø¥ß¤@­Ó¹L¤jªº FreeBSD ¤À³Î°Ï¡C¦pªGºÏºÐªº geometry ¤w¸g³Q
+ <quote>Âà´«</quote> ¹L¤F¡A¨º»ò ³o­Ó¤À³Î°Ï <quote>¥²¶·</quote>
+ ¥H¤â°Ê¿é¤J block ¼Æ¥Øªº¤èªk¨Ó«Ø¥ß¡C</para>
+
+ <para>¤@­Ó§Ö³tªº¤p§Þ¥©¬O§Q¥Î ESDI ±±¨î¥d¨Ó³]©w¤j®e¶qªº ESDI µwºÐ¡A
+ ¥Î DOS ¶}¾÷¤ù¶}¾÷¡A¦A±N¥¦ format ¬° DOS ªº¤À³Î°Ï¡CµM«á­«¶}¾÷¶i¤J
+ FreeBSD ¦w¸Ëµ{§Ç¡A¦b fdisk µe­±¡A§âDOS ¤À³Î°Ïªº blocksize ©M
+ block number §Û¤U¨Ó¡CµM«á­«·s³]©w geometry ¨Ï¨ä¸ò DOS ¨Ï¥Îªº¤@¼Ë¡C
+ §R°£ DOS ¤À³Î°Ï¡AµM«á¨Ï¥Î±z­è­è§Û¤Uªº blocksize ¨Ó«Ø¥ß¤@­Ó
+ <quote>cooperative</quote> FreeBSD ¤À³Î°Ï¡CµM«á³]©w³o­Ó¤À³Î°Ï¬°¥i
+ ¶}¾÷¡A¦A¥´¶}Ãa­y±½ºË¡C¦b¯u¥¿ªº¦w¸Ë¹Lµ{¤¤¡Abad144 ·|¦b¥ô¦óÀɮרt²Î
+ ³Q«Ø¥ß«e¥ý³Q°õ¦æ¡C¡]±z¥i¥H«ö Alt-F2 ¨ÓºÊ¬Ý³o¤@¤Á¡^¦pªG¦b«Ø¥ßÃa­y¸ê
+ ®ÆÀɮɵo¥Í¤F°ÝÃD¡A±z·|»Ý­n³]©w¤@­Ó¸û¤jªººÏºÐ geometry - ³oªí¥Ü±z
+ »Ý­n­«¶}¾÷¡AµM«á¥þ³¡¦A­«·s¶}©l¡]¥]¬A­«·s¤À³Î¥H¤Î¦b DOS ¤U­«·s
+ format¡^¡C</para>
+
+ <para>¦pªG remapping ªº¥\¯à¤w¸g±Ò°Ê¤F¡A¦Ó±z¨ÌµM¤@ª½¬Ý¨ìÃa­y²£¥Í¡A
+ ¨º»ò¦Ò¼{´«¤@¥xµwºÐ§a¡CÃa­yªº±¡§Î¥u·|ÀH®É¶¡¼W¥[¦Ó§ó¬°ÄY­«¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="hpnetserver-scsi-failure">
+ <para>¬°¤°»ò FreeBSD §ì¤£¨ì HP Netserver ªº SCSI ±±¨î¥d¡H</para>
+ </question>
+
+ <answer>
+ <para>°ò¥»¤W³o­Ó¬O¤@­Ó¤wª¾ªº°ÝÃD¡C¦b HP Netserver ¾÷¾¹¤Wªº on-board
+ EISA ¤¶­± SCSI ±±¨î¥d¥e¾Ú¤F©w§}¬°²Ä 11 ªº EISA ¼Ñ¡A¦]¦¹©Ò¦³ªº
+ <quote>¯u¹ê</quote> EISA ¼Ñ³£¦b¥¦¤§«e¡C¥i¬O¡A¦b EISA ©w§}ªÅ¶¡
+ &gt;= 10 ®É¡A·|»P«ü©wµ¹ PCI ¥Îªº©w§}ªÅ¶¡¬Û½Ä¬ð¡A¥B FreeBSD ªº
+ auto-configuration µLªk¥¿½Tªº³B²z³o­Ó±¡§Î¡C</para>
+
+ <para>¦]¦¹¡A²{¦b§A¯à°µªº³Ì¦n¨Æ±¡´N¬O¦b kernel ùس]©w
+ <literal>EISA_SLOTS</literal> ³o­Ó¿ï¶µ¬° 12 ¡AµM«á·í§@¨S¦³³o­Ó
+ °ÝÃD :)¡C½Ð¨Ì·Ó <ulink url="../../handbook/kernelconfig.html">
+ Handbook ¤¤¦³Ãö kernel ªº³]©w</ulink> ùØ©Ò»¡ªº¤èªk¨Ó³]©w»P½sĶ
+ ±zªº kernel¡C</para>
+
+ <para>·íµM¡A¦b¦w¸Ë FreeBSD ¨ì³oºØ¾÷¾¹¤W®É¡A³o¬O¤@­ÓÂû¥Í³J³J¥ÍÂûªº
+ °ÝÃD¡C¬°¤F¸Ñ¨M³o­Ó°ÝÃD¡A¦b <emphasis>UserConfig</emphasis> ¤¤¦³
+ ¤@­Ó¯S§Oªº¤èªk¡A¦w¸Ë®É¤£­n¶i¤J <quote>visual</quote> ¤¶­±¡A¬Û¤Ï
+ ªº¡A¦b©R¥O¦C¼Ò¦¡¤¤¡AÁä¤J</para>
+
+ <programlisting>eisa 12
+quit</programlisting>
+
+ <para>µM«á´N¦p¥H©¹¤@¼Ë¦w¸Ë±zªº¨t²Î¡C¤£¹L§Ú­Ì«Øij±z½sĶ»P¦w¸Ë¤@­Ó
+ ÄÝ©ó¦Û¤vªº kernel¡A¦ý</para>
+
+ <para>§Æ±æ¦b¥¼¨Óªºª©¥»¤¤¯à¹ï³o­Ó°ÝÃD¦³¤@­Ó¦nªº¸Ñ¨M¤èªk¡C</para>
+
+ <note>
+ <para>±zµLªk¦b HP Netserver ¤W¨Ï¥Î
+ <literal>dangerously dedicated</literal> ºÏºÐ¼Ò¦¡¡C±z¥i¥H°Ñ¦Ò
+ <link linkend="dedicate">³o¥÷µù¸Ñ</link> ¥HÀò±o§ó¦h¸ê°T¡C</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ed1-timeout">
+ <para>¤@ª½¬Ý¨ìÃþ¦ü
+ <errorname>ed1: timeout</errorname> ªº°T®§¡C¥¦­Ì¬O¤°»ò·N«ä©O¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>³o­Ó³q±`¬O¥Ñ©ó¤¤Â_½Ä¬ð(interrupt conflict)©Ò³y¦¨ªº
+ (¨Ò¦p¡G¨â¶ô¥d¨Ï¥Î¨ì¤F¬Û¦Pªº IRQ)¡C FreeBSD ¦b 2.0.5 ª©¥H«e³£®e³\³o­Ó±¡§Î¡A
+ ´Nºâ¦³ IRQ ½Ä¬ð±¡§Î¡Aºô¸ô¥d¤]À³¸Ó¤´¥i¥¿±`¹B§@¡CµM¦Ó¡A¦b 2.0.5 ª©¤Î¨ä¥H«á¡A
+ ¤w¤£¦A®e³\¦³ IRQ ½Ä¬ðªº±¡§Î¤F¡C½Ð©ó¶}¾÷®É¨Ï¥Î -c ³o­Ó¿ï¶µ¡A
+ µM«á§ó§ï ed0/de0/..µ¥ªº³]©w¡A¨Ï¨ä©M±zºô¸ô¥d¥»¨­ªº³]©w¤@­P¡C</para>
+
+ <para>¦pªG±z¬O¨Ï¥Î±zºô¸ô¥d¤Wªº BNC ±µÀY¡A±z©Î³\¤]·|¦]¤£¨}ªº²×ºÝ¹qªý³]©w¡A
+ ¦Óµo¥Í¸Ë¸m(device) timeout ªº±¡§Î¡C­nÀˬd¬O§_¦³³oºØ±¡§Î¡A
+ ±z¥i¥H¦bºô¸ô¥d¤Wª½±µ±µ¤W²×ºÝ¹qªý(¤£­n±µºô¸ô½u)¡A
+ µM«á¡A¬Ý¬Ý³o­Ó¿ù»~°T®§¬O¤£¬O´N®ø¥¢¤F¡C</para>
+
+ <para>¦³¨Ç NE2000 ªº¬Û®e¥d¡A¦pªG¥¦ªº UTP °ð¨S¦³±µºô¸ô½u¡A
+ ©Î¬O¸Óºô¸ô½u¨Ã¨S³Q¨Ï¥Îªº¸Ü¡A¤]·|¥X²{³o­Ó¿ù»~°T®§¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bad-3c509">
+ <para>&tm.3com; 3C509 ºô¸ô¥d²ö¦W¨ä§®½}¤u¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¶ô¥d¦³­Ó¤£¦nªº¦a¤è¦b©ó¥¦±`±`·|¿ò¥¢¥»¨­ªº³]©w¸ê®Æ¡C½Ð¨Ï¥Î¸Ó
+ ¥dªº DOS ¤u¨ã <command>3c5x9.exe</command> ¨Ó§ó·s¥d¤W³]©w¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="printer-slow">
+ <para>¥­¦æ°ð¦Lªí³t«×¯}¤Ñ¯îªººC¡A¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG°ß¤@ªº°ÝÃD´N¬O³t«×«ÜºCªº¸Ü¡A¸ÕµÛ§ïÅܱzªº <ulink
+ url="../handbook/printing-intro-setup.html#PRINTING-PARALLEL-PORT-MODE">
+ ¦Lªí¾÷³s±µ°ð³]©w</ulink> ³o­Ó¦b¤â¥U¤¤ªº
+ <ulink url="../handbook/printing-intro-setup.html">¦Lªí¾÷³]©w
+ </ulink> ³o­Ó³¹¸`¦³¥[¥H°Q½×¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="signal11">
+ <para>µ{¦¡¦³®É·|¦] <errorname>Signal 11</errorname> ¿ù»~¦Ó°±¤î¡H</para>
+ </question>
+
+ <answer>
+ <para>Signal 11 ³o­Ó¿ù»~¬O¦]¬°§Aªº process ¹Á¸Õ­n¦s¨ú¤@¶ô°O¾ÐÅé¡A
+ ¦Ó§Aªº§@·~¨t²Î¨Ã¤£¤¹³\¥¦°µ³o­Ó°Ê§@¦Óµo¥Íªº¡C¦pªG³oºØ±¡§Î±`±`¤£
+ ©w®Éµo¥Í¡A¨º»ò§AÀ³¸Ó­n¶}©l¬Ý¬Ý¬O¤£¬O­þ¸Ì¥X°ÝÃD¤F¡C</para>
+
+ <para>³o¨Ç°ÝÃD¥i¯à¬O»P¤U¦C±¡§Î¦³Ãö¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>¦pªG³o­Ó°ÝÃD¥u¦b¬Y¤@­Ó±z¦Û¤v¼gªº¬Y­Ó¯S©wµ{¦¡µo¥Í¡A¨º
+ »ò«Ü¦³¥i¯à¬O±zªºµ{¦¡½X¦³°ÝÃD¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦pªG³o­Ó°ÝÃD¬O¦b FreeBSD ªº¬Y¨Ç¨t²ÎÀÉ®×µo¥Í¡A¦³¥i¯à¬O
+ ¦]¬°µ{¦¡¦³°ÝÃD¡A¦ý³q±`¦b§Ú­Ì³o¸sŪ FAQ ªº¨Ï¥ÎªÌ¥h¶]³o¨Ç¦³
+ °ÝÃDªºµ{¦¡½X«e¡A¥¦­Ì¦­´N´N¤w¸g³Q¸Ñ¨M¤F¡]³o¬O -current ¦b°µ
+ ªº¨Æ¡^¡C</para>
+ </listitem>
+ </orderedlist>
+
+ <para>¤×¨ä¦pªG§A¦b½sĶ¤@­Óµ{¦¡¡A¦ý¬O¨C¦¸½sĶ¾¹¶]¥X¨Óªºµ²ªG³£¤£¤@¼Ë
+ ªº¸Ü¡A³o¬O¤@­ÓµL¸Ñªº°ÝÃD¡A¦Ó<emphasis>¤£¬O</emphasis> FreeBSD ¯äÂΡC</para>
+
+ <para>Á|¨Ò¨Ó»¡¡A°²³]±z¥¿¦b¶] <quote>make buildworld</quote>¡A
+ ¦Ó compiler ¦b±N <filename>ls.c</filename> ½sĶ¦¨
+ <filename>ls.o</filename> ®Éµo¥Í¿ù»~¡A³o®É½Ð¦A¶]¤@¦¸
+ <quote>make buildworld</quote>¡A¦pªG compiler ¨ÌµM¦b¦P¼Ëªº¦a¤èµo
+ ¥Í°ÝÃD¡A¨º»ò´N¬Oµ{¦¡½X¦³°ÝÃD¡Ð¡Ð½Ð§ó·s­ì©l½XµM«á¦A¸Õ¸Õ¬Ý¡C¦Ó¦pªG
+ compiler ¬O¦b¨ä¥Lªº¦a¤èµo¥Í¿ù»~¡A¨º»ò´X¥G¥i¥H½T©w¬OµwÅ骺°ÝÃD¤F¡C
+ </para>
+
+ <para>±z³o®ÉÀ³¸Ó°µ¤°»ò¡G</para>
+
+ <para>¦pªG¬O²Ä¤@ºØ±¡§Î¡A¥i¥H¨Ï¥Î¤@¨Ç debugger¡A¦p¡Ggdb¡A¨Ó§ä¥Xµ{¦¡
+ ¬O¦b¨º¨à·|¥h¹Á¸Õ¦s¨ú¿ù»~ªº°O¾ÐÅé¦ì§}¡AµM«á¦A­×¥¿¥¦¡C</para>
+
+ <para>¦pªG¬O²Ä¤GºØ±¡§Î¡A´N»Ý­nÀˬd¬Ý¬Ý¬O¤£¬OµwÅ骺°ÝÃD¤F¡C</para>
+
+ <para>¤@¨Ç³y¦¨µwÅ餣íªº­ì¦]¥]¬A¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>¥i¯à¬OµwºÐ¹L¼ö¡G½ÐÀˬd¾÷´ß¤ºªº­·®°¬O§_¹B§@¥¿±`¡A¦]¬°±z
+ ªºµwºÐ¡]©ÎªÌÁÙ¦³¨ä¥LªºµwÅé¸Ë¸m¡^¹L¼ö¤F¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>³B²z¾¹¹L¼ö¡G³o­Ó¦³¥i¯à¬O¦]¬°¶WÀW¡A©ÎªÌ¬O³B²z¾¹ªº­·®°±¾¤F¡C
+ ¤£½×¬O­þºØ­ì¦]¡A±z³£»Ý­n±N©Ò¦³ªº¤¸¥ó¦^´_¨ì¥¦­Ì­ì¥ý³]©wªº¤u§@ª¬
+ ºA¡A³o¼Ë¤~¯à¸Ñ¨M³o­Ó°ÝÃD¡CÁ|­Ó¨Ò¤l¨Ó»¡¡G±N³B²z¾¹½Õ¦^­ì¥ýªº¤u§@
+ ÀW²v¡C</para>
+
+ <para>¦pªG±zÁÙ¬O°í«ù­n¶WÀWªº¸Ü¡A½ÐÂÔ°O¡A»P¨ä¿NÃa¦Ó»Ý­n´«·sªº¤@¥x
+ ¥D¾÷¡A¤£¦p±N³t«×½ÕºC¤@ÂI¡I°£¦¹¤§¥~¡A¤£ºÞ§Aı±o¥¦¦w¤£¦w¥þ¡A¤@¯ë
+ ¤H¹ï©ó±z¦]¬°¶WÀW¦Óµo¥Íªº°ÝÃD¡A¬O¤£·|¦³¤°»ò¦P±¡¤ßªº¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¤£Ã­©wªº°O¾ÐÅé¡G¦pªG¥D¾÷¤W¦³¦w¸Ë¼Æ®Ú SIMM/DIMM °O¾ÐÅé¡A
+ ¸ÕµÛ§â¥¦­Ì¥þ©î¤U¨Ó¡AµM«á¤@®Ú¤@®Ú´¡¤W¥h°µ´ú¸Õ¡AÂǦ¹ÁY¤p½d³ò¡A
+ ¥H«K§ä¥X¦³°ÝÃDªº¬Y®Ú°O¾ÐÅé©Î¬O¬YºØ°O¾ÐÅé²Õ¦X¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>³Ì¨Î¤Æ¹LÀYªº¥D¾÷ªO³]©w¡G¦b BIOS ùةάO¦³¨Ç¥D¾÷ªOªº jumper
+ ¤W¡A¦³®É¥i¥H§ó§ï¤@¨Ç timing¡A¦ý¦b¤j¦h¼Æªº±¡§ÎùØ¡A¨Ï¥Î¹w³]­È´N
+ ¤w¸g¨¬°÷¤F¡Cªp¥B¦³®É­Ô§â RAM ªº wait states ³]¤Ó¤p¡A©Î¬O¦b
+ BIOS ùØ¡A§â <quote>RAM Speed: Turbo</quote> ³o­Ó©Î¬O¨ä¥LÃþ¦ü
+ ªº¿ï¶µ¥´¶}³£¦³¥i¯à·|³y¦¨¤@¨Ç¤£¥¿±`ªº²{¶H¡C¤@­Ó¸Ñ¨Mªº¤èªk¬O§â
+ BIOS ³]¦^¹w³]­È¡A¤£¹L¦b³o¤§«e°O±o¥ý°O¤U¥Ø«eªº³]©w¡I</para>
+ </listitem>
+
+ <listitem>
+ <para>¨Ñµ¹¥D¾÷ªOªº¹q¤O¤£°®²b©Î¬O¤£¨¬¡C¸ÕµÛ§â¨t²Î¤º¨S¦³¥Î¨ìªº
+ I/O ¥d¡DµwºÐ©Î¬O CDROM ¼È®É©î±¼©Î¬O©Þ±¼¹q·½½u¡A¬Ý¬Ý§Aªº¹q·½
+ ¨ÑÀ³¾¹¬O¤£¬O¯à°÷¦b¤p¤@ÂIªº­t²ü¤U¥¿±`¤u§@¡C¤£µM´N¬O´«¤W¥t¤@
+ ­Ó·sªº¹q·½¨ÑÀ³¾¹¡A³Ì¦n¬O¥Ë¼Æ°ª¤@ÂIªº¡]¥´­Ó¤ñ¤è¨Ó»¡¡A¦pªG­ì
+ ¥ýªº¹q·½¨ÑÀ³¾¹¬O 250 ¥Ëªº¡A¨º»ò´N´«¤W 300 ¥Ëªº¸Õ¸Õ¡^¡C</para>
+ </listitem>
+
+ </orderedlist>
+
+ <para>½Ð¶¶«K°Ñ¾\ SIG11 FAQ¡]³sµ²¦b¤U­±¡^¡AÁöµM¥¦¬O¯¸¦b Linux ªº¨¤
+ «×¼gªº¡A¥i¬O¸Ì­±¹ï³o¨Ç°ÝÃD¦³³\¦h«Ü´Îªº¸Ñ»¡¡C¥¦¸Ì­±¤]¦³°Q½×¬°¤°»ò
+ ¦³°ÝÃDªº°O¾ÐÅé¯à³q¹L³nÅé©ÎµwÅ骺´ú¸Õªº­ì¦]¡C</para>
+
+ <para>³Ì«á¡A¦pªG¤W­±³o¨Ç­ì¦]³£±Æ°£¤F¡A¨º»ò¦³¥i¯à¬O¹J¨ì¤F FreeBSD
+ ùتº¤@°¦¯äÂΡA½Ð°Ñ¾\«ü¥Ü°µ¤@­Ó°ÝÃD¦^³ø¡C</para>
+
+ <para>³o¨à¦³¤@­Ó§ó¸Ô²Óªº FAQ ¡Ð <ulink
+ url="http://www.bitwizard.nl/sig11/">
+ the SIG11 problem FAQ</ulink></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="trap-12-panic">
+ <para>·í¾÷®É¥X²{¡G<errorname>Fatal trap 12: page fault in kernel mode</errorname>
+ ¡A©Î¬O <errorname>panic:</errorname> ¥H¤Î¤@°ï¿ù»~°T®§¡A¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ªº¶}µoªÌ¹ï©ó³o¨Ç¿ù»~°T®§¬Û·íªº¦³¿³½ì¡A¦ý¬O¥L­Ì»Ý­n
+ §ó¸Ô²Óªº¤@¨Ç²Ó¸`¡C½Ð§â±zªº·í¾÷ªº°T®§¥þ³¡½Æ»s¤U¨Ó¡A±µµÛ¬d¾\ FAQ
+ ùØ <link linkend="kernel-panic-troubleshooting">kernel
+ panics</link> ³o¸`¡A¨Ì»¡©ú½sĶ¤@­Ó§t°£¿ù½Xªº kernel¡A¥H¨ú±o¨ç¦¡
+ ©I¥s¶¶§Ç¡]backtrace¡^¡C³o­ÓÅ¥°_¨Ó«ÜÃø¡A¦ý¹ê»Ú¤W¨Ã¤£»Ý­n¥ô¦óµ{¦¡
+ ³]­pªº¯à¤O¡A±z¥u»Ý­n¨Ì·Ó«ü¥Ü°µ§Y¥i¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="screen-loses-sync">
+ <para>¬°¤°»ò·í§Ú¶}¾÷®É¡A¿Ã¹õÅܶ¡A¥B¤£°±°{°Ê¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD¡A¤wª¾¬O¥Ñ ATI Mach 64 Åã¥Ü¥d©Ò¤Þ°_ªº¡C¦]¬°³o¶ô¥d
+ ¨Ï¥Î¨ì <literal>2e8</literal> ³o­Ó¦ì§}¡A¦Ó³o»P²Ä¥|­Ó§Ç¦C°ð
+ ¡]serial port¡^©Ò¨Ï¥Îªº¦ì§}¬Û¦P¡C¦Ó¦b &man.sio.4; ³o­ÓÅX°Ê
+ µ{¦¡ùØ¡A¤£ª¾¹D¬O bug ©Î¬O¥\¯à¡]feature¡^¡A´Nºâ±z¨S¦³²Ä¥|­Ó§Ç
+ ¦C°ð¡A©Î¬O¤w¸g±N sio3¡]²Ä¥|­Ó§Ç¦C°ð¡^¨ú®ø¤F¡A¥¦
+ <emphasis>¨ÌµM</emphasis>·|¥h¹Á¸ÕÅX°Ê¥¦¡C</para>
+
+ <para>ª½¨ì³o­Ó°ÝÃD³Q¸Ñ¨M¥H«e¡A±z¥i¥H¨Ï¥Î³o­Ó¤èªk¡G</para>
+
+ <orderedlist>
+ <listitem>
+ <para>¦b¬Ý¨ì¶}¾÷´£¥Ü®É¿é¤J <option>-c</option>
+ ¡]³o·|Åý kernel ¶i¤J³]©w¼Ò¦¡¡^¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¨ú®ø <devicename>sio0</devicename> ¡A
+ <devicename>sio1</devicename> ¡A
+ <devicename>sio2</devicename> ©M
+ <devicename>sio3</devicename>¡]¥þ³¡¡^¡C
+ ³o¥i¥HÅý sio ÅX°Êµ{¦¡¤£°Ê§@ -&gt; ©ó¬O°ÝÃD¸Ñ¨M¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¿é¤J exit ¥HÄ~Äò±Ò°Êµ{§Ç¡C</para>
+ </listitem>
+ </orderedlist>
+
+ <para>¦pªG±z·Q­n¨Ï¥Î±zªº§Ç¦C°ð¡A±z»Ý­n­×§ï
+ <filename>/usr/src/sys/i386/isa/sio.c</filename>¡A¦b¸ÓÀɤ¤§ä¥X
+ <literal>0x2e8</literal> ³o­Ó¦r¦ê¡A²¾°£³o­Ó¦r¦ê¤Î¥¦«e­±ªº³r¸¹
+ ¡]«O¯d«á­±ªº¡^¡AµM«á­«·s½sĶ¤@­Ó·sªº kernel¡C</para>
+
+ <para>´Nºâ¨Ï¥Î¤F¤W­±³o¨Ç¤èªk¡AX Window ¤´µM¦³¥i¯àµLªk¶¶§Q°õ¦æ¡C
+ ¦pªGµo¥Í¤F³oºØ±¡§Î¡A½Ð½T©w§A¥Îªº XFree86 ªºª©¥»¬O³Ì·sªº XFree86
+ 3.3.3 ©Î¬O¨ä«áªºª©¥»¡C¥¦­Ì¦³¤º«Ø¤ä´© Mach 64 ³o±i¥d¡A¬Æ¦Ü¬°¤F³o
+ ¨Ç¥dÁÙªþ¦³¤@­Ó¯S§Oªº X Server</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="reallybigram">
+ <para>¬°¤°»ò§Úªº¨t²Î¸Ë¦³ 128 MB ªº RAM¡A¦Ó FreeBSD ¥u¥Î¤F¨ä¤¤ªº
+ 64MB¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬° FreeBSD ¬O¨Ï¥Î©I¥s BIOS ¨Ó¨ú±o°O¾ÐÅé¤j¤pªº¤èªk¡A¦]¦¹¥¦
+ ¥u¯à°»´ú¨ì 16 bits ¦ì¤¸ªø«×ªº KByte ¤j¤p¡]65535 KBytes = 64MB¡^
+ ¡]©ÎªÌ§ó¤Ö..¡C¦³¨Ç BIOS ±N³Ì°ª°O¾ÐÅé¤j¤p­­¬°¥u¦³ 16MB¡^
+ ¦pªG±z¾Ö¦³ 64MB ¥H¤Wªº RAM¡AFreeBSD ·|¹Á¸Õ¥h°»´ú¥X¥¦¡A¦ý¬O¦³¥i¯à
+ ·|¥¢±Ñ¡C</para>
+
+ <para>­n¸Ñ¨M³o­Ó°ÝÃD¡A±z»Ý­n¨Ï¥Î¤U­±©Ò´£ªº kernel ³]©w¿ï¶µ¡CÁöµM¦³
+ ¤èªk¥i¥H±q BIOS ¤¤¨ú±o°O¾ÐÅ骺§¹¾ã¸ê°T¡A¦ý¬O¥Ø«e§Ú­Ì¦b¶}¾÷°Ï¤¤¨Ã
+ ¨S¦³¦h¾lªºªÅ¶¡¨Ó°µ³o¥ó¨Æ¡C·í¬Y¤Ñ¶}¾÷°ÏªÅ¶¡¤£¨¬ªº±¡§ÎÀò±o¸Ñ¨M®É¡A
+ §Ú­Ì±N·|¨Ï¥Î BIOS ªº©µ¦ù¥\¯à¨Ó¨ú±o°O¾ÐÅ骺§¹¾ã¸ê°T...¦ý²{¦b§Ú­Ì
+ ±N¥¦©ñ¦b kernel ³]©w¿ï¶µ¤¤¡C</para>
+
+ <para><literal>options "MAXMEM=<replaceable>n</replaceable>"</literal></para>
+
+ <para><replaceable>n</replaceable> ¬O«ü±zªº°O¾ÐÅé¤j¤p¡A¥H KB
+ ¬°³æ¦ì¡C¥H¤@¥x¦³ 128MB RAM ªº¾÷¾¹¨Ó»¡¡A±z¥i¨Ï¥Î
+ <literal>131072</literal>³o­Ó¼Æ¦r¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="kmem-map-too-small">
+ <para>¾÷¾¹¤Wªº RAM ¦³ 1GB ¥H¤W¡A¥i¬O¬°¦ó«o¦¬¨ì <quote>kmem_map too small</quote>
+ ªº panic ¿ù»~°T®§¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>³q±` FreeBSD ·|¨Ì¾Ú¾÷¾¹ª¬ªp¨Ó¦Û°Ê½Õ¾ã kernel ¬ÛÃö°Ñ¼Æ³]©w¡A¤ñ¦p¡G
+ ®Ú¾Ú¾÷¾¹©Ò¸Ëªº RAM ¤j¤p¨Ó¨M©w¦P®É¥i¶}±ÒªºÀɮ׼ƶq¦h¹è¡C
+ µM¦Ó¡A¦b 1GB RAM(§t¥H¤W) ªº¾÷¾¹¤W¡A³o­Ó¡y¦Û°Ê½Õ¾ã¡zªº¾÷¨î¥i¯à¦³®É·|°ª¦ô¡G
+ ¤ñ¤è»¡..¶}¾÷®É¡Akernel ·|¥ý°t¸m¦UºØ¤£¦P¥Î³~ªºªí®æ¤Î¨ä¥L¬[ºc©ñ¨ì°O¾ÐÅé¤W¡A
+ µM«á¡A·í¾ã­Ó§@·~¨t²Î³£¶}©l¹B§@¤§«á¡Akernel ´N·|¶}©l¤£°÷ªÅ¶¡¨Ó°µ°O¾ÐÅé°t¸mªº°ÊºA½Õ¾ã¡A
+ ©ó¬O´N panic ±¾¤F¡C</para>
+
+ <para>¸Ñªk¬O¡G§â <option>VM_KMEM_SIZE_MAX</option> ¥[¨ì kernel ³]©wÀɤº¡A
+ ¨Ã­«·s½sĶ kernel¡A¤ñ¦p¡G</para>
+
+ <para><literal><option>options VM_KMEM_SIZE_MAX=419430400</option></literal></para>
+
+ <para>
+ ³o¼Ë·|³]©w 400&nbsp;MB ¨Óµ¹ kernel ¨Ï¥Î¡A¦Ó¥B±Ä¥Î 400&nbsp;MB ªº¸Ü¡A
+ ¥Ø«e¦b 6GB RAM ªº¾÷¾¹¤W³£¥i³Q¦³®Ä¹B¥Î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="panic-kmemmap-too-small">
+ <para>¾÷¾¹¤W RAM ¤£¨ì 1GB ¡A¦ý¤´·|¥X²{
+ <errorname>kmem_map too small!</errorname> ªº panic ¿ù»~°T®§
+ </para>
+ </question>
+
+ <answer>
+ <para>¤§©Ò¥H panic ªº­ì¦]¦b©ó¨t²Î¥Î¥ú¤Fµ¹ network buffer ¥Î³~ªº virtual memory
+ (¤×¨ä¬O mbuf clusters)¡C¸Ñªk¬O¼W¥[µ¹ mbuf clusters ¥Îªº virtual memory
+ ¼Æ¶q¡A³o¨BÆJ½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥Uªº
+ <ulink
+ url="&url.books.handbook;/configtuning-kernel-limits.html#NMBCLUSTERS">ºô¸ô­­¨î½g</ulink>
+ ¡C</para>
+ </answer>
+ </qandaentry>
+
+<!--
+¥H¤U¬°Âª© faq ¤º®e
+ <para>³o­Ó panic ªº­ì¦]¬Oªí¥Ü¨t²Î¥Î¥ú¤Fµ¹ºô¸ô½w½Ä°Ïªº©Ò¦³ªºµê
+ ÀÀ°O¾ÐÅé¡]¯S§O¬O mbuf clusters¡^¡C±z¥i¥H¼W¥[µ¹ mbuf clusters
+ ªº VM ªº¼Æ¶q¡A¥u­n¥[¤J:</para>
+
+ <para><literal>options "NMBCLUSTERS=<replaceable>n</replaceable>"</literal></para>
+
+ <para>¦b±zªº kernel ³]©wÀɤ¤¡A<replaceable>n</replaceable>
+ ¬O¤@­Ó¦b 512-4096 ¶¡ªº¼Æ¦r¡A¨Ì±z·Q´£¨Ñ¦h¤Ö¦P®Éªº TCP ³s±µ¼Æ¥Ø
+ ¦h¹è¦Ó©w¡C§Ú·|«Øij¸Õ¸Õ 2048 - ³o¼Æ¦rÀ³¸Ó¥i¥H§¹¥þÁקK³o­Ó panic
+ ¤F¡C±z¥i¥H°õ¦æ: <command>netstat -m</command>
+ ¡]see &man.netstat.1;¡^¨ÓºÊ¬Ý¦³¦h¤Ö mbuf clusters ¦b¨t²Î¤W¥¿³Q
+ °t¸m/¨Ï¥Î¡CNMBCLUSTERS ªº¼Æ­È¤º©w¬° <literal>512 + MAXUSERS * 16
+ </literal>¡C</para>
+-->
+
+ <qandaentry>
+ <question id="proc-table-full">
+ <para>¬°¤°»ò§Ú¤@ª½¬Ý¨ì <errorname>/kernel: proc: table
+ is full</errorname> ³o­Ó¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD kernel ¥u¤¹³\¤@©w¼Æ¶qªº process ¦b¦P¤@®É¶¡¸Ì¦P
+ ®É¹B§@¡C¦Ó³o­Ó¼Æ¥Ø¬O®Ú¾Ú kernel ³]©wÀɸ̭±ªº
+ <literal>MAXUSERS</literal> ­È¨Ó¨M©wªº¡C<literal>MAXUSERS</literal>
+ ³o­Ó­È¤]·|¼vÅT¨ä¥Lªº kernel ¤º©w­È¡A¤ñ¦p»¡ network buffer
+ (½Ð°Ñ¾\<link linkend="panic-kmemmap-too-small">³o­Ó</link>¤§«e°Q
+ ½×¹Lªº°ÝÃD)¡C¦pªG¾÷¾¹­t²ü(load)«Ü­«¡A±z¥i¯à»Ý­n¼W¥[
+ <literal>MAXUSERS</literal> ³o­Ó­È¡C³o»ò§@·|¤@¨Ö´£°ª¨t²Îªº¨ä¥L¤º
+ ©w­È¡A¥]¬A³Ì¤j¥i¾Ö¦³ªº process ¼Æµ¥¡C</para>
+
+ <para>­Y­n½Õ¾ã <literal>MAXUSERS</literal>¡A½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥U¤¤ªº <ulink
+ url="&url.books.handbook;/configtuning-kernel-limits.html#KERN-MAXFILES">
+ ÀÉ®×/Processªº­­¨î</ulink> ³¹¸`¡C
+ (ÁöµM¸Ó³B«üªº¬O¡yÀɮתº¶}±Ò¼Æ¶q­­¨î¡z¡A¦ý¤]¾A¥Î©ó process³¡¤À¡C)</para>
+
+ <para>¦b FreeBSD 4.4 ¤§«á¡A<literal>MAXUSERS</literal> ¤w¸gÅܦ¨¥i
+ ¥H¾aµÛ§ó§ï <filename>/boot/loader.conf</filename> ùتº
+ <varname>kern.maxusers</varname> ³o­Ó­È¦Ó½Õ¾ãªºÅܼƤF¡C¦Ó¦b¤§«e
+ ªº FreeBSD ª©¥»¤¤¡A³o­Ó­È¥u¯à¦b kernel ³]©wÀÉùؽվã¡C</para>
+
+ <para>¦pªG¾÷¾¹­t²ü¨Ã¤£­«¡A¦Ó±z¥u¬O»Ý­n¦P®É¶]«Ü¦h«Ü¦h process¡A
+ ¨º»ò¤]¥i¥Hª½±µ¥Î sysctl ½Õ¾ã <varname>kern.maxproc</varname> ­È¡C
+ °²¦p³o¨Ç process ³£¬OÄÝ©ó¬Y­Ó¨Ï¥ÎªÌªº¡A¨º»ò±zÁٻݭn¥t
+ ¥~½Õ¾ã <varname>kern.maxprocperuid</varname> ³o­Ó­È¡A¨Ï¥¦¤ñ·s
+ ªº <varname>kern.maxproc</varname> ³o­Ó­È¤Ö 1 (¤@©w­n¤Ö 1 ¡A
+ ¦]¬° &man.init.8; ³o­Ó¨t²Îµ{¦¡µ´¹ï­n«O«ù¦b¹B§@ª¬ºA)¡C</para>
+
+ <para>¦pªG·Q¦b¨C¦¸¶}¾÷³£­n§ó§ï sysctl ªº­È¡A¦Ó¥B±zªº FreeBSD ¬O
+ ³Ìªñªºª©¥»ªº¸Ü¡A½Ð¦b <filename>/etc/sysctl.conf</filename> ³o
+ ­ÓÀɤ¤³]©w¡A¦Ó¦pªG¬Oªºª©¥»¡A¥i¥H¦b
+ <filename>/etc/rc.local</filename> ¤¤§@³]©w¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cmap-busy-panic">
+ <para>¬°¤°»ò¥Î·s kernel ¶}¾÷®É¡A¥X²{ <errorname>CMAP
+ busy</errorname> ³o­Ó¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Î¨Ó°»´ú <filename>/var/db/kvm_*.db</filename> ¹L®ÉÀɮתº¾÷¨î°¸º¸·|µo¥Í°ÝÃD¡A¦Ó¨Ï¥Î¨ì¤F¤@­Ó¤£¨ó½Õ
+ (mismatch)ªºÀɮצ³®É´N·|¾É­P panic¡C</para>
+
+ <para>¦pªGµo¥Í¤F³o­Ó°ÝÃD¡A½Ð­«·s¶}¾÷¡A¶i¤J single ¨Ï¥ÎªÌ¼Ò¦¡¡AµM«á°õ¦æ¡G</para>
+
+ <screen>&prompt.root; <userinput>rm /var/db/kvm_*.db</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="brkadrint-illegal-host-access">
+ <para>½Ð°Ý³o­Ó°T®§¡G<errorname>ahc0: brkadrint, Illegal Host Access at seqaddr 0x0</errorname>
+ ¬O¤°»ò·N«ä¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¬O¤@­Ó©M Ultrastor SCSI ±±¨î¥d¦³Ãöªº½Ä¬ð¡]conflict¡^¡C</para>
+
+ <para>¦b¶}¾÷®É¡A¶i¤J kernel ³]©w¿ï³æ¨ú®ø
+ <devicename>uha0</devicename>¡A¥¦¬O³y¦¨³o­Ó°ÝÃDªº­ì¦]¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="aci0-illegal-cable">
+ <para>¶}¾÷®É¡A¬Ý¨ì³o­Ó¿ù»~°T®§ <errorname>ahc0: illegal cable configuration</errorname>¡C
+ §Úªº±Æ½u½T©w¦³±µ¹ï¡C ¬O¥X¤F¤°»ò°ÝÃD©O¡H</para>
+ </question>
+
+ <answer>
+ <para>±zªº¥D¾÷ªO¥i¯à¤£¤ä´©¦Û°Ê²×ºÝ¹qªý³]©w¡C½Ð¶i¨ì SCSI ªº BIOS
+ ¸Ì­±¤â°Ê«ü©w¥¿½Tªº²×ºÝ¹qªý¶¶§Ç¡A¦Ó¤£­n¨Ï¥Î¦Û°Ê³]©w¡C
+ AIC7XXX ªºÅX°Êµ{¦¡¨ÃµLªkª¾¹D¦³¨S¦³³o¨Ç±Æ½u°»´ú(¥H¤Î¦Û°Ê²×ºÝ¹qªý³]©w)ªº¹q¸ô(external logic)
+ ¦s¦b¡C¦pªG EEPROM ¸Ì­±ªº³]©w¬O "automatic termination" ®É¡A¥¦¥u·|³æ¯Â°²©w³o¨Ç¹q¸ô·íµM¬O¦s¦bªº¡C
+ ­Y¯Ê¤Ö¤F³o­Ó¹q¸ô¡AÅX°Êµ{¦¡¦b³]©w²×ºÝ¹qªý®É´N±`±`¥X°ÝÃD¡C
+ ¦Ó³oºØ°ÝÃD±N¾É­P SCSI ¶×¬y±Æªº¥i¾a©Ê­°§C¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mail-loopback">
+ <para>¬°¤°»ò Sendmail ¤@ª½¥X²{
+ <quote><errorname>mail loops back to myself</errorname></quote>
+ ³o­Ó¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD¦b sendmail ªº FAQ ¤¤¬O³o¼Ë¦^µªªº:-</para>
+
+<literallayout> * §Ú¤@ª½¦¬¨ì¦³Ãö "Local configuration error" ªº«H¥ó¡A¨Ò¦p¡G
+
+ 553 relay.domain.net config error: mail loops back to myself
+ 554 &lt;user@domain.net&gt;... Local configuration error
+
+ §Ú­n¦p¦ó¸Ñ¨M³o­Ó°ÝÃD¡H
+
+ ±z§Q¥Î MX ³]©w¡AÅý­n±H¨ì¬Y domain¡]¦p: domain.net¡^ªº«H¥ó¡A
+ ±H¨ì±z©Ò«ü©wªº¾÷¾¹¡]¦b³o­Ó¨Ò¤l¤¤¬° relay.domain.net¡^¡A¦ý¬O³o
+ ³¡¾÷¾¹¨Ã¥¼³Q³]©w±µ¨ü domain.net ªº«H¥ó¡C½Ð§â domain.net ¥[¨ì
+ /etc/sendmail.cw ¤¤¡]¦pªG±z¦³¨Ï¥Î FEATURE(use_cw_file)) ©Î¬O
+ ¦b sendmail.cf ¤¤¥[¤J "Cw domain.net"
+ </literallayout>
+
+ <para>³Ì·sª©¥»ªº <ulink url="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq">sendmail
+ FAQ</ulink> ²{¦b¤w¤£¦AÀHµÛ sendmail <quote>¥X³f</quote>¡C
+ ¥¦¥Ø«e¬O³Q©w´Áªºµoªí¦b <ulink
+ url="news:comp.mail.sendmail">comp.mail.sendmail</ulink>¡A
+ <ulink url="news:comp.mail.misc">comp.mail.misc</ulink>¡A<ulink
+ url="news:comp.mail.smail">comp.mail.smail</ulink>¡A<ulink
+ url="news:comp.answers">comp.answers</ulink>¡A©M <ulink
+ url="news:news.answers">news.answers</ulink>. ±z¤]¥i¥H±H¤@«Ê
+ Email ¨ì <email>mail-server@rtfm.mit.edu</email>¡AµM«á¦b«H¥ó¤º¤å
+ ¤¤¼g¤W
+ <literal>send usenet/news.answers/mail/sendmail-faq</literal>
+ ¥H¨ú±o³o¥÷ FAQ ¤å¥ó¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="remote-fullscreen">
+ <para>¬°¤°»ò°õ¦æ»·ºÝ¾÷¾¹¡]remote machine¡^ªº¥þ¿Ã¹õªº³nÅé®É¡A
+ ¦³¤£¥¿±`ªº±¡§Î¡H</para>
+ </question>
+
+ <answer>
+ <para>©Î³\»·ºÝ¾÷¾¹¨Ã«D±N±zªº²×ºÝ¾÷¼Ò¦¡³]¬° FreeBSD console ©Ò¥Îªº
+ <literal>cons25</literal>¡A¦Ó¬O³]¬°¨ä¥¦¼Ò¦¡¡C</para>
+
+ <para>³o¨à¦³´X­Ó¸Ñ¨M³o­Ó°ÝÃDªº¤èªk¡G</para>
+ <itemizedlist>
+ <listitem>
+ <para>¦b logging ¶i»·ºÝ¾÷¾¹«á¡A§ó§ï±zªº shell ÅÜ¼Æ TERM ¬°
+ <literal>ansi</literal> ©Î¬O <literal>sco</literal>
+ ¡}¦pªG»·ºÝ¾÷¾¹¤ä´©³o¨Ç¼Ò¦¡ªº¸Ü¡^¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¨Ï¥Î¤ä´© VT100 ªº¼ÒÀÀ³nÅé¡A¦p FreeBSD console ¤Uªº
+ <application>screen</application> ³nÅé¡C
+ <application>screen</application> ´£¨Ñ±z¦b¤@­Ó terminal
+ ùئP®É¶]¦n´X­Ó session ªº¯à¤O¡A¦Ó¥B¥¦¥»¨­¤]¬O¤@­Ó¬Û·í¦n
+ ªº³nÅé¡C¨C­Ó <application>screen</application> ³£¹³¬O¤@­Ó
+ VT100 ªº²×ºÝ¾÷¡A©Ò¥H»·ºÝ¾÷¾¹ªº TERM ÅܼÆÀ³¸Ó³]¬°
+ <literal>vt100</literal>¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦b»·ºÝ¾÷¾¹ªº²×ºÝ¾÷¸ê®Æ®w¡]terminal database¡^¤¤¥[¤J
+ <literal>cons25</literal> ªº¸ê®Æ¡C¥[¤Jªº¤èªkµø»·ºÝ¾÷¾¹ªº
+ §@·~¨t²Î¤£¦P¦Ó¦³©Ò®t²§¡C½Ð°Ñ¾\»·ºÝ¾÷¾¹µ¹¨t²ÎºÞ²z­ûªº»¡©ú
+ ®Ñ¡AÀ³¸Ó·|¦³©ÒÀ°§U¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>±Ò°Ê FreeBSD ªº X ¦øªA¾¹¡AµM«á¨Ï¥Î¤@¨Ç X Window ¤Uªº
+ ²×ºÝ¾÷¼ÒÀÀ¾¹¨Óµn¤J»·ºÝ¾÷¾¹¡A¨Ò¦p <command>xterm</command>
+ ©Î <command>rxvt</command>¡C¦Ó»·ºÝ¾÷¾¹ªº TERM ÅܼÆÀ³¸Ó­n
+ ³]¬° <literal>xterm</literal> ©Î <literal>vt100</literal>¡C
+ </para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="calcru-negative">
+ <para>¬°¤°»ò§Úªº¾÷¾¹¤@ª½Åã¥Ü
+ <errorname>calcru: negative time...</errorname>¡H</para>
+ </question>
+
+ <answer>
+ <para>¸ò¤¤Â_¡]interrupt¡^¦³Ãöªº¤£¦PµwÅé »P/©Î ³nÅ骺·f°t³£¦³¥i¯à³y¦¨
+ ³o­Ó°ÝÃD¡C³o¦³¥i¯à¬O bug ©Î¬O¬Y­Ó¸Ë¸m¥»¨­ªº°ÝÃD¡C¦b¥­¦æ°ð¤W¨Ï¥Î
+ ¤jªº MTU ¨Ó§@ TCP/IP ¶Ç¿é¥i¥H­«²{³o­Ó°ÝÃD¡C­Y¬O¹Ï§Î¥[³t¥d³y¦¨³o­Ó
+ °ÝÃDªº¸Ü¡A±zÀ³¸Ó¥ýÀˬd¥dªº¤¤Â_³]©w¡C</para>
+
+ <para>³o­Ó°ÝÃDªºÃä»Ú®ÄÀ³¬O·|³y¦¨¦³¨Ç process ¥X²{
+ <quote>SIGXCPU exceeded cpu time limit</quote> ªº°T®§¡A¦Ó¤£¥¿±`
+ °±¤î¡C</para>
+
+ <para>­Y¬O FreeBSD 3.0 ©Î¬O 1998 ¦~ 11 ¤ë 29 ¤é¥H«á¨ä¥Lª©¥»¡A¸U¤@
+ ³o­Ó°ÝÃD¤@ª½µLªk¥H¨ä¥L¤èªk¸Ñ¨M¡A´N¥u¯à³]©w sysctl ÅܼơG</para>
+
+ <screen>&prompt.root; <userinput>sysctl -w kern.timecounter.method=1</userinput></screen>
+
+ <para>³o¼Ë·|¹ï®Ä¯à¦³¨Ç¼vÅT¡A¦ý¬O­Y¦Ò¼{¨ì³o­Ó°ÝÃD±a¨Óªº«áªG¡A³o¼Ë°µ
+ ¬O­È±oªº¡C¦pªG³o­Ó°ÝÃDÁÙ¬O¦s¦bªº¸Ü¡AÅý sysctl ¨º­Ó­È¨ÌµM³]¬° 1¡A
+ µM«á¼W¥[ kernel ³]©wÀɤ¤ <literal>NTIMECOUNTER</literal> ³o­Ó¿ï
+ ¶µªº¼Æ­È¡C¦pªG±z±N <literal>NTIMECOUNTER</literal> ¼W¥[¨ì 20 ¨Ì
+ µMµLªk¸Ñ¨M³o­Ó°ÝÃD¡A¨º»ò±z¾÷¾¹¤Wªº¤¤Â_¤w¸g¦h¨ìµLªkÅý­p¼Æ¾¹ºû«ù¦b
+ ¥i¾aªºª¬ºA¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pcm0-not-found">
+ <para>¥X²{ <errorname>pcm0 not found</errorname> ³o­Ó°T®§¡A©ÎªÌ¬O
+ §Úªº­µ®Ä¥dÅܦ¨¤F <devicename>pcm1</devicename>¡A¦ý¦b kernel ³]©w
+ ÀÉùاڬO³] <literal>device pcm0</literal> °Ú¡C³o¬O«ç»ò¦^¨Æ©O¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>¦pªG±z¦b FreeBSD 3.x ¤W¨Ï¥Î PCI ­µ®Ä¥d´N·|µo¥Í³oºØ°ÝÃD¡C
+ ¦]¬°<devicename>pcm0</devicename> ³o­Ó device ¬O¤º©w«O¯dµ¹ ISA
+ ªº­µ®Ä¥dªº¡A©Ò¥H¦pªG±z¦³¤@±i PCI ªº­µ®Ä¥d¡A±z´N·|¹J¨ì³o­Ó°ÝÃD¡A
+ ¦Ó±zªº¥d·|Åܦ¨ <devicename>pcm1</devicename>¡C</para>
+
+ <note>
+ <para>¦pªG±z¥u§â kernel ³]©wÀɤ¤ªº³]©w§ï¦¨
+ <literal>device pcm1</literal> ¬OµLªk°£¥h³o­Óĵ§i°T®§ªº¡A
+ ³o¼Ë·|³y¦¨ <devicename>pcm1</devicename> ³Q«O¯dµ¹ ISA ­µ®Ä¥d¡A
+ ¦Ó PCI ­µ®Ä¥d«h·|Åܦ¨ <devicename>pcm2</devicename>
+ ¡]¥~¥[ <errorname>pcm1 not found</errorname> ªºÄµ§i°T®§¡^¡C
+ </para>
+ </note>
+
+ <para>¦pªG±z¦³¤@±i PCI ªº­µ®Ä¥d¡A±z»Ý­n make
+ <devicename>snd1</devicename> ³o­Ó device¡A¦Ó¤£¬O
+ <devicename>snd0</devicename>¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>./MAKEDEV snd1</userinput></screen>
+
+ <para>³o­Ó°ÝÃD¦b FreeBSD 4.x ¤W¨Ã¤£·|µo¥Í¡A¦]¬°«Ü¦h¤H§ë¤U¤F³\¦h¤ß
+ ¤OÅý¥¦§ó<emphasis>PnP ¾É¦V</emphasis>¡A¦Ó¥B
+ <devicename>pcm0</devicename> ³o­Ó device ¤]¤£¦A¬O¥u«O¯dµ¹ ISA
+ ªº­µ®Ä¥d¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pnp-not-found">
+ <para>¬°¤°»ò¦b§ó·s¨ì FreeBSD 4.X «á·|§ì¤£¨ì§Úªº PnP ¥d
+ ¡]©ÎªÌ¬O§ì¦¨ <literal>unknown</literal>¡^¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD 4.X ²{¦b¤w¸g§ó <emphasis>PnP ¾É¦V</emphasis>¤F¡A
+ ¦ÓÃä»Ú®ÄÀ³´N¬O·|µo¥Í¦³¨Ç¦b FreeBSD 3.X ¥i¥H¥Îªº PnP ¸Ë¸m
+ ¡]¦p­µ®Ä¥d©Î¬O¤º´¡¦¡¼Æ¾Ú¾÷¡^Åܦ¨µLªk¨Ï¥Î¡C</para>
+
+ <para>³o­Ó­ì¦]¥i¥H¥Î¤@«Ê¥Ñ Peter Wemm µo¨ì freebsd-questions
+ ³o­Ó mailing list ¤Wªº«H¨Ó¸ÑÄÀ¡A¥¦­ì¥»¬O¸ÑÄÀ¬°¤°»ò¦³¤@­Ó¤º
+ ´¡¦¡¼Æ¾Ú¾÷¡A¦b¨t²Î¤É¯Å¨ì FreeBSD 4.x «á¡A´N¨Sªk³Q§ì¨ì¤F
+ ¡]¦b <literal>[]</literal> ùتº¬O¥t¥~¥[ªºµù¸Ñ¡AÅý¤º®e§ó©öÀ´¡^¡C
+ </para>
+
+ <blockquote>
+ <para>The PNP bios preconfigured it [the modem] and left it
+ laying around in port space¡Aso [in 3.x] the old-style ISA
+ probes <quote>found</quote> it there.</para>
+
+ <para>Under 4.0¡Athe ISA code is much more PnP-centric. It was
+ possible [in 3.x] for an ISA probe to find a
+ <quote>stray</quote> device and then for the PNP device id to
+ match and then fail due to resource conflicts. So¡Ait
+ disables the programmable cards first so this double probing
+ cannot happen. It also means that it needs to know the PnP
+ id's for supported PnP hardware. Making this more user
+ tweakable is on the TODO list.</para>
+ </blockquote>
+
+ <para>¦pªG­nÅý¸Ë¸m¯à¦A«×¹B§@¡A§Ú­Ì»Ý­n§ä¥X¥¦ªº PnP id¡AµM«á¦A±N¥¦
+ ¥[¤J¤@¥÷¦b°»´ú ISA ¸Ë¸m®É·|¨Ï¥Îªºªí¤¤¡C¥i¥H°õ¦æ &man.pnpinfo.8;
+ ¨Ó°»´ú³o­Ó¸Ë¸m¡AÁ|¨Ò¨Ó»¡¡A¤U­±¬O &man.pnpinfo.8; §ì¨ìªº¤@­Ó¤º´¡
+ ¦¡¼Æ¾Ú¾÷ªº¸ê®Æ¡G</para>
+
+ <screen>&prompt.root; <userinput>pnpinfo</userinput>
+Checking for Plug-n-Play devices...
+
+Card assigned CSN #1
+Vendor ID PMC2430 (0x3024a341)¡ASerial Number 0xffffffff
+PnP Version 1.0¡AVendor Version 0
+Device Description: Pace 56 Voice Internal Plug & Play Modem
+
+Logical Device ID: PMC2430 0x3024a341 #0
+ Device supports I/O Range Check
+TAG Start DF
+ I/O Range 0x3f8 .. 0x3f8¡Aalignment 0x8¡Alen 0x8
+ [16-bit addr]
+ IRQ: 4 - only one type (true/edge)</screen>
+
+ <para>[more TAG lines elided]</para>
+
+ <screen>TAG End DF
+End Tag
+
+Successfully got 31 resources¡A1 logical fdevs
+-- card select # 0x0001
+
+CSN PMC2430 (0x3024a341)¡ASerial Number 0xffffffff
+
+Logical device #0
+IO: 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8
+IRQ 5 0
+DMA 4 0
+IO range check 0x00 activate 0x01</screen>
+
+ <para>±z©Ò»Ý­nªº¸ê°T¬O¤@¶}©l¬Ý¨ìªº <quote>Vendor ID</quote>
+ ³o¤@¦æ¡C¬A¸¹¤¤ªº¤Q¤»¦ì¤¸½X¡]³o­Ó¨Ò¤l¤¤¬O 0x3024a341¡^´N¬O
+ PnP id¡A¦Ó¦b³o¤§«eªº¦r¦ê¡]PMC2430¡^«h¬O¤@­Ó¿W¤@µL¤Gªº ASCII id¡C
+ ¦Ó³o¨Ç¸ê®Æ»Ý­n³Q¥[¨ì <filename>/usr/src/sys/isa/sio.c</filename>
+ ³o­ÓÀÉ®×ùØ¡C</para>
+
+ <para>¬°¤F¨¾¤î¥ô¦óªF¦è¥X¿ù¡A±zÀ³¸Ó­n¥ý³Æ¥÷¥Ø«eªº
+ <filename>sio.c</filename>¡C¦Ó¥B±z­n submit PR ®É¤]»Ý­n³o­Ó
+ ­ì©lÀɮרӰµ¥X patch¡]±zÀ³¸Ó·|±N¥¦ submit PR §a..¡G¡^..¡^¡C
+ ±µµÛ´N½s¿è <filename>sio.c</filename> §ä´M¤U­±³o¦æ</para>
+
+ <programlisting>static struct isa_pnp_id sio_ids[] = {</programlisting>
+
+ <para>±µµÛ©¹¤U±²°Ê¡A§ä­Ó¥¿½Tªº¦ì¸m¨Ó´¡¤J±zªº¸Ë¸m¸ê°T¡C±z¬Ý¨ìªº´N
+ ¤U­±³o­Ó¼Ë¤l¡A¥¦­Ì¬O·Ó¥kÃäµù¸Ñ¸Ì­±ªº ASCII ³o­Ó Vender ID °µ±Æ
+ §Çªº¡A©Î¬O &man.pnpinfo.8; ©Ò§ä¨ìªº¤@³¡¤À
+ <emphasis>¸Ë¸m´y­z</emphasis>¡G</para>
+
+ <programlisting>{0x0f804f3f¡ANULL}¡A /* OZO800f - Zoom 2812 (56k Modem) */
+{0x39804f3f¡ANULL}¡A /* OZO8039 - Zoom 56k flex */
+{0x3024a341¡ANULL}¡A /* PMC2430 - Pace 56 Voice Internal Modem */
+{0x1000eb49¡ANULL}¡A /* ROK0010 - Rockwell ? */
+{0x5002734a¡ANULL}¡A /* RSS0250 - 5614Jx3(G) Internal Modem */</programlisting>
+
+ <para>§â±z³o­Ó¸Ë¸mªº¤Q¤»¶i¦ìªº Vender ID ¥[¨ì¥¿½Tªº¦a¤è¡A¦sÀÉ¡A
+ µM«á­«·s½s¤@­Ó kernel¡A¦A­«¶}¾÷¡C¤§«á³o­Ó¸Ë¸mÀ³¸Ó´N·|¹³¦b
+ FreeBSD 3.X ¤U¡A³Q°»´ú¬° <literal>sio</literal> ¸Ë¸m¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="nlist-failed">
+ <para>¬°¤°»ò§Ú±`±`¦b¶]¤@¨Çµ{¦¡¡]¨Ò¦p <command>top</command> ©Î
+ <command>systat</command>¡^ªº®É­Ô¥X²{
+ <errorname>nlist failed</errorname> ³o­Ó¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD¬O¦]¬°±z¶]ªºµ{¦¡»Ý­n¤@­Ó¯S§Oªº kernel symbol¡A¥i¬O
+ ¤£ª¾¹D¤°»ò­ì¦]¦Ó§ä¤£¨ì¡Q¦Ó·|µo¥Í³o­Ó°ÝÃD¥i¯à¬O¦]¬°¤U­±¨â­Ó­ì¦]¡G
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>±zªº kernel ©M userland ªºÀɮת©¥»¨Ã¤£¤@­P¡]¨Ò¦p»¡¡A±z
+ ½s¤F¤@­Ó·sªº kernel¡A¦ý¬O¨Ã¨S¦³°õ¦æ¹ïÀ³ªº
+ <maketarget>installworld</maketarget>¡A©Î¬O¨ä¥LÃþ¦ü±¡§Î¡^¡A
+ ¦]¦¹ symbol table ªº¤º®e´N©MÀ³¥Îµ{¦¡½sĶ®Éªº¤£¤Ó¤@¼Ë¤F¡C¦p
+ ªG¬O³oºØ±¡§Î¡A½Ð°õ¦æ§¹¾ãªº¤É¯Å¨BÆJ¡]½Ð°Ñ¾\
+ <filename>/usr/src/UPDATING</filename> ¥H±oª¾¥¿½Tªº¬y
+ µ{¡^¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>±z¨S¦³¥Î <command>/boot/loader</command> ¨Ó¸ü¤J±zªº
+ kernel¡A¦Ó¬Oª½±µ¥Ñ boot2 ¶}¾÷¡]½Ð°Ñ¾\ &man.boot.8;¡^¡C
+ ÁöµM»¡¸õ¹L <command>/boot/loader</command> ¨Ã¨S¦³¤°»ò¿ù¡A
+ ¦ý¬O¥¦¦b kernel symbols ¸òÀ³¥Îµ{¦¡ªº·¾³q¤è­±¦û¤F«Ü­«ªº¥÷¶q¡C
+ </para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="connection-delay">
+ <para>¬°¤°»ò§Ú¥Î <command>ssh</command> ©Î <command>telnet</command>
+ ³s¨ì§Úªº¹q¸£®É¡A·|µ¥«Ý«Üªøªº¤@¬q®É¶¡¤~¯à³s¤W¡H</para>
+ </question>
+
+ <answer>
+ <para>¯gª¬¡GTCP ³s½u«Ø¥ß¤§«á©M¸ß°Ý±K½X¤§«e¡]¦pªG¬O¦b»¡ &man.telnet.1;
+ ªº¸Ü¡A«h¬O login ´£¥Ü²Å¸¹¸õ¥X¨Ó¤§«e¡^¡A­nµ¥«Ý«Üªøªº¤@¬q®É
+ ¶¡¡C</para>
+
+ <para>°ÝÃD©Ò¦b¡G³oºØ©µ¿ð±¡§Î±`±`¬O¦]¬°¦øªA³nÅé¡]server software¡^
+ ¹Á¸Õ­n±N«È¤áºÝ¡]client¡^ªº IP ¦ì§}Âà´«¦¨¥D¾÷¦WºÙ¡C¦]¬°«Ü¦h¦øªA
+ ³nÅé¡A¥]¬A FreeBSD ¤º«Øªº Telnet ©M SSH¡A¬°¤F±N¥D¾÷¦WºÙ¼g¤J¬ö
+ ¿ýÀɤ¤¥H¨ÑºÞ²zªÌ§@°Ñ¦Ò¡A¦Ó·|°µ³o¶µ°Ê§@¡C</para>
+
+ <para>¸Ñ¨M¤èªk¡G¦pªG³o­Ó°ÝÃD¦b±z³s±µ¤£¦Pªº¦øªA¾¹®É³£·|µo¥Í¡A¨º»ò
+ °ÝÃD¬O¦b±z«È¤áºÝ³o¤@¤è¡Q¦P¼Ëªº¡A¦pªG§O¤H¥u¦³¦b³s¨ì±zªº¦øªA¾¹¤W
+ ¤~·|µo¥Í³o­Ó±¡§Î¡A¨º»ò°ÝÃD´N¬O¦b¦øªA¾¹³oÃä¤F¡C</para>
+
+ <para>¦pªG¬O«È¤áºÝ³o¤è¦³°ÝÃD¡A°ß¤@ªº¤èªk´N¬O±N DNS ¦øªA¾¹­×¦n¡A
+ ³o¼Ë¹ï¤è¦øªA¾¹¤~¯à¥¿½TªºÂà´«¦WºÙ¡C¦pªG°ÝÃD¬O¦b¤º³¡°Ï°ìºô¸ôµo
+ ¥Íªº¡A³oÀ³¸Ó¬O¦øªA¾¹¦³°ÝÃD¡A½Ð¸Ô²ÓÀˬd¤@¤U¡Q¬Û¤Ïªº¡A¦pªG¬O±z
+ ¦b¤W Internet ®Éµo¥Íªº¡A¨º»ò±z»Ý­n¸ò±zªº ISP Ápµ¸¡A½Ð¥L­Ì¸Ñ¨M
+ ³o­Ó°ÝÃD¡C</para>
+
+ <para>¦pªG¬O¦øªA¾¹³oÃ䪺°ÝÃD¡A¦Ó¥B¬Oµo¥Í¦b¤º³¡°Ï°ìºô¸ô¡A¨º»ò±z»Ý
+ ­n³]©w³o­Ó¦øªA¾¹¡A¨Ï¥¦¯à¥¿½T±N¤º³¡ºô¸ôªº IP ¦ì§}Âà´«¬°¥D¾÷¦WºÙ¡C
+ ½Ð°Ñ¾\ &man.hosts.5; ©M &man.named.8; ªº»¡©ú¥HÀò±o§ó¦h¸ê°T¡C¦p
+ ªG¬O¦b Internet ¤Wªº¦øªA¾¹µo¥Í³o­Ó°ÝÃD¡A¨º»ò¦³¥i¯à¬O±z¦øªA¾¹ªº
+ Âà´«¥\¯à¥X°ÝÃD¡C±z¥i¥H¸Õ¸Õ¬d¸ß¥t¤@­Ó¥D¾÷¦WºÙ¡A¤ñ¦p¡G
+ <hostid>www.yahoo.com</hostid>¡C¦pªG¬d¤£¨ì¡A¨º»ò¥i¥H½T©w¬O±z³o
+ Ãä¥X°ÝÃD¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="stray-irq">
+ <para><errorname>stray IRQ</errorname> ³o­Ó¿ù»~°T®§¬O¤°»ò·N«ä¡H</para>
+ </question>
+ <answer>
+ <para>Stray IRQs ¬OµwÅé IRQ ¦³ÂI¤p°ÝÃDªº²{¶H¡A¤j¦h¬O¦]¬°µwÅ饻¨­
+ ¦bµo¥X¤¤Â_»Ý¨D«á¡A¤S¨ú®ø¤F¥¦¦Û¤vªº¤¤Â_­n¨D¡C</para>
+ <para>¦³¤T­Ó¤èªk¥i¥HÀ³¥I³o­Ó°ÝÃD¡G</para>
+ <itemizedlist>
+ <listitem>
+ <para>¤£²z·|³o­Óĵ§i¡C¤Ï¥¿¤@­Ó irq ¥X²{¤­¦¸Äµ§i«á¨t²Î´N¤£·|
+ ¦AÅã¥Ü¤F¡C</para>
+ </listitem>
+ <listitem>
+ <para>§â <function>isa_strayintr()</function> ùتº­È¡A¥Ñ 5
+ §ï¦¨ 0¡A³o¼Ë©Ò¦³ªºÄµ§i°T®§³£¤£·|¥X²{¡C</para>
+ </listitem>
+ <listitem>
+ <para>¦w¸Ë¨Ï¥Î irq 7 ªº¥­¦æ°ðµwÅé³]³Æ¡A¥H¤Î¥¦ªº PPP ÅX°Êµ{¦¡
+ ¡]³o­Ó¤j³¡¤À¨t²Î³£¦³°µ¡^¡A±µµÛ¦w¸Ë ide µwºÐ©Î¬O¨ä¥L·|¨Ï¥Î
+ irq 15 ªºµwÅé³]³Æ¥H¤Î¥¦ªºÅX°Êµ{¦¡¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="file-table-full">
+ <para>¬°¤°»ò <errorname>file: table is full</errorname> ³o­Ó°T®§
+ ¤@ª½¦b dmesg ùØ­«½Æ¥X²{¡H</para>
+ </question>
+ <answer>
+ <para>³o­Ó¿ù»~°T®§¥Nªí¤F±z¨t²Îªº file descriptors ¤w¸g¨Ï¥Î¥ú¤F¡C
+ ½Ð°Ñ¾\¤â¥U¤º <ulink url="../handbook/configtuning-kernel-limits.html">
+ Tuning Kernel Limits</ulink> ¸Ì­±ªº <ulink
+ url="../handbook/configtuning-kernel-limits.html#KERN-MAXFILES">
+ kern.maxfiles</ulink> ³o­Ó³¹¸`¡A¸Ì­±¦³¤@¨Ç°Q½×¤Î¸Ñ¨M¤èªk¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="laptop-clock-skew">
+ <para>¬°¤°»ò§Úµ§°O«¬¹q¸£¤Wªº®ÉÄÁ¤@ª½Åã¥Ü¿ù»~ªº®É¶¡¡H</para>
+ </question>
+
+ <answer>
+ <para>±zªºµ§°O«¬¹q¸£¸Ì¦³¨â­Ó¥H¤Wªº®ÉÄÁ¡A¦Ó FreeBSD ¿ï¨ì¤F¿ùªº
+ ¨º­Ó¡C</para>
+
+ <para>°õ¦æ &man.dmesg.8;¡AÀˬd¤@¤U¦³ <literal>Timecounter</literal>
+ ¦r¦êªº¨º´X¦æ¡C³Ì«á¤@¦æ¬O FreeBSD ¿ï¥Îªº¡A³q±`¬O
+ <literal>TSC</literal>¡C</para>
+
+ <screen>&prompt.root; <userinput>dmesg | grep Timecounter</userinput>
+Timecounter "i8254" frequency 1193182 Hz
+Timecounter "TSC" frequency 595573479 Hz</screen>
+
+ <para>±z¥i¥H°õ¦æ &man.sysctl.3; ¬Ý¤@¤U
+ <varname>kern.timecounter.hardware</varname> ³o­Ó­È°µ½T»{¡C</para>
+
+ <screen>&prompt.root; <userinput>sysctl kern.timecounter.hardware</userinput>
+kern.timecounter.hardware: TSC</screen>
+
+ <para>BIOS ¥i¯à¦b¤@¨Ç±¡§Î¤U·|§ó§ï TSC ªº®É¯ß&mdash;¦³®É­Ô¬O¦]¬°
+ ¦b¨Ï¥Î¹q¦À¤u§@®É·|§ó§ï³B²z¾¹ªº³t«×¡A¥t¥~¤]¦³¥i¯à¬O¶i¤J¤F¬Ù¹q¼Ò
+ ¦¡¡A¥i¬O FreeBSD ¨Ã¤£·|¹îı¨ì³o¨Ç½Õ¾ã¡A¦Ó·|µo¥Í®É¶¡¼W¥[©Î¬O´î
+ ¤Öªº±¡§Î¡C</para>
+
+ <para>¦b¤W­±ªº¨Ò¤l·í¤¤¡A§Ú­Ì¬Ý¨ìÁÙ¦³ <literal>i8254</literal>
+ ³o­Ó®ÉÄÁ¥i¥H¿ï¾Ü¡A°õ¦æ &man.sysctl.3; ¥Î¤â°Êªº¤è¦¡±N³o­Ó­È¼g¤J
+ <varname>kern.timecounter.hardware</varname> ¤¤¡C</para>
+
+ <screen>&prompt.root; <userinput>sysctl -w kern.timecounter.hardware=i8254</userinput>
+kern.timecounter.hardware: TSC -&gt; i8254</screen>
+
+ <para>³o¼Ë±zªºµ§°O«¬¹q¸£À³¸Ó´N¥i¥H«O«ù¥¿½Tªº®É¶¡¤F¡C</para>
+
+ <para>¦pªG­nÅý³o­Ó§ó§ïªº°Ê§@¦A¨C¦¸¶}¾÷®É¦Û°Ê°õ¦æ¡A¦b
+ <filename>/etc/sysctl.conf</filename> ùØ¥[¤J¤U­±³o¦æ¡C</para>
+
+ <programlisting>kern.timecounter.hardware=i8254</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="null-null">
+ <para>¬°¤°»ò§Úªºµ§°O«¬¹q¸£µLªk¥¿½Tªº°»´ú¨ì PC card ¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD±`±`µo¥Í¦bÄé¤F¦h­Ó§@·~¨t²Îªºµ§°O«¬¹q¸£¤W¡C¦³¨Ç«D
+ BSD ªº§@·~¨t²Î·|Åý PC card ªºµwÅé¸Ë¸m³B¦b¤@­Ó¤£¤@­Pªºª¬ºA¤U
+ ¡]inconsistent state¡^¡C¨Ï±o <command>pccardd</command> ¦b°»
+ ´ú³o¤ù¥d®É¡AµLªk§ì¨ì¥¿½Tªº«¬¸¹¡A¦Ó¬O
+ <errorname>"(null)""(null)"</errorname>¡C</para>
+
+ <para>±z»Ý­n²¾°£ PC card ´¡¼Ñªº¹q·½¥H­«¸m³o­ÓµwÅé¸Ë¸m¡C¤@­Ó¤èªk¬O
+ ±N±zªºµ§°O«¬¹q¸£Ãö¾÷¡]¤£¬O¥ð¯v¼Ò¦¡¡A¤]¤£¬O«Ý©R¼Ò¦¡¡Q­n§¹¥þªºÃö
+ ¾÷¡^¡Cµ¥­Ó´X¬íÄÁ¦A­«¶}¾÷¡C³o¼Ë±zªº PC card À³¸Ó´N¥¿±`¤F¡C</para>
+
+ <para>¦³®É¦³¨Çµ§°O«¬¹q¸£ÁöµM¬Ý°_¨Ó¤w¸gÃö¾÷¤F¡A¦ý¹ê»Ú¤W¨Ã¨S¦³¡C
+ ¦pªG±zµo²{¤W­±¨º­Ó¤èªk¨S¦³¥Î¡A½ÐÃö¾÷¡A²¾°£¹q¦À¡Aµ¥­Ó´X¬íÄÁ¡A
+ §â¹q¦À¸Ë¤W¥hµM«á­«¶}¾÷¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="boot-read-error">
+ <para>¬°¤°»ò¦b BIOS µe­±¤§«á¡AFreeBSD ªº boot loader Åã¥Ü
+ <errorname>Read error</errorname> µM«á´N°±¤î¤£°Ê¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¬O¦]¬°FreeBSD ªº boot loader µLªk¥¿½Tªº§ä¥XµwºÐªº
+ geometry¡C³o¼Ëªº¸Ü¡A´N»Ý­n¦b¥Î fdisk ¤À³Î©Î¬O­×§ï FreeBSD
+ ªº slice ®É¡A¤â°Ê±N¥¿½Tªº­È¿é¤J¶i¥h¤F¡C</para>
+ <para>¥¿½TªºµwºÐ geometry ­È¦b BIOS ¸Ì­±¥i¥H¬dªº¨ì¡Cª`·N¸ÓµwºÐªº
+ cylinders¡Aheads ¥H¤Î sectors ³o¨Ç¼Æ­È¡C</para>
+ <para>¦b°õ¦æ &man.sysinstall.8;ªº fdisk ®É¡A«ö¤U <keycap>G</keycap>
+ ¥H«K¤â°Ê³]©wµwºÐªº geometry¡C</para>
+ <para>³o®É·|¦³¤@­Ó¹ï¸Ü®Ø¸õ¥X¨Ó¡A¸ß°Ý±z¦³Ãö cylinders¡Aheads ¥H¤Î
+ sectors ³o¨ÇªF¦èªº­È¡C½Ð±N­è­è¦b BIOS ¬d¨ìªº¼Æ¦r¡A¥H / §@¤À¹j¿é
+ ¤J¶i¥h¡C</para>
+ <para>Á|¨Ò¨Ó»¡¡A¦pªG¬O 5000 cylinders¡A250 sectors ©M 60 sectors
+ ´N¿é¤J <userinput>5000/250/60</userinput></para>
+ <para>¿é¤J§¹«á½Ð«ö enter Áä½T»{¡A³Ì«á«ö¤U <keycap>W</keycap> Áä§â
+ ·sªº¤À³Î°Ïªí¼g¤JµwºÐ·í¤¤¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bootmanager-restore">
+ <para>¥t¤@­Ó§@·~¨t²ÎºR·´¤F§Úªº Boot Manager¡C§Ú­n«ç»ò¼Ë¤~¯à§â¥¦ÁÙ
+ ­ì¦^¨Ó¡H</para>
+ </question>
+
+ <answer>
+ <para>°õ¦æ &man.sysinstall.8; ±µµÛ¿ï Configure¡AµM«á¿ï Fdisk¡C
+ ¦A¨Ó¥Î<keycap>ªÅ¥Õ</keycap>Áä¿ï¾Ü­ì¥ý Boot Manager ©Ò¦bªºµwºÐ¡C
+ «ö¤U <keycap>W</keycap> Áä¨Ó§@¼g¤Jªº°Ê§@¡C³o®É·|¸õ¥X¤@­Ó´£¥Ü
+ °T®§¡A¸ß°Ý±z­n¦w¸Ë­þ¤@­Ó boot loader¡C½Ð¿ï¾Ü Boot Manager¡A
+ ³o¼Ë´N¥i¥H±N¥¦ÁÙ­ì¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="indefinite-wait-buffer">
+ <para>³o­Ó¿ù»~°T®§¡G<errorname>swap_pager: indefinite
+ wait buffer:</errorname> ¬O¤°»ò·N«ä©O¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°T®§¬O»¡¦³¤@­Ó°õ¦æµ{§Ç¥¿¦b¹Á¸Õ±N¤À­¶°O¾ÐÅé¡]page memory¡^
+ ¼g¤JµwºÐ¤¤¡A¦Ó³o­Ó°Ê§@¹Á¸Õ¤F 20 ¬íÄÁ¤´µMµLªk¦¨¥\¡C³o­Ó¦³¥i¯à¬O¦]¬°
+ µwºÐ¦³Ãa­y¡B¹q¸ô©Î±Æ½u¦³°ÝÃD¡B¥H¤Î¨ä¥L¸òµwºÐŪ¥X¼g¤J¦³ÃöªºµwÅé³]³Æ¡C
+ ¦pªG¯uªº¬OµwºÐÃa­yªº°ÝÃD¡A±zÀ³¸Ó·|¦b
+ <filename>/var/log/messages</filename>³o­ÓÀɮפ¤¡A©Î¬O¦b°õ¦æ
+ <command>dmesg</command>³o­Ó«ü¥O«á¡A¬Ý¨ì¦³ÃöºÏºÐ¿ù»~ªº°T®§¡C
+ ¦pªG¨S¦³¡A¨º»ò½ÐÀˬd±zªº±Æ½uÁÙ¦³±µÀY³s±µ¬O§_¨}¦n¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="touch-not-found">
+ <para>¬°¦ó¦b buildworld/installworld ®É¡A·|­w¦b
+ <errorname>touch: not found</errorname> ªº¿ù»~°T®§?</para>
+ </question>
+
+ <answer>
+ <para>³o¿ù»~°T®§¨Ã¤£¬O«ü &man.touch.1; µ{¦¡¤£¨£¤F¡A¨Æ¹ê¤W¥i¯à¬O¸ÓÀÉÀɮ׮ɶ¡³Q³]¬°¥¼¨Óªº®É¶¡¡C
+ ­Y¾÷¾¹¤Wªº CMOS-clock ®ÉÄÁ³]©w¬°·í¦a®É¶¡
+ («D®æªL«Âªv®É¶¡¡A¤ñ¦p¥xÆW®É¶¡¬° GMT +08:00 ¡A¤]´N¬O CST ¤¤­ì¼Ð·Ç®É¶¡)¡A
+ ¨º»ò½Ð¦b¶}¾÷®É¡A¥ý¿ï single user ¼Ò¦¡¶i¤J¡AµM«á¥´
+ <command>adjkerntz&nbsp;-i</command>
+ ¨Ó½Õ¾ã kernel clock »P¾÷¾¹¤Wªº CMOS-clock ¨Ó¦P¨B¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="commercial">
+ <chapterinfo>
+ <author>
+ <firstname>Vanilla</firstname>
+ <surname>Shu</surname>
+ <affiliation>
+ <address><email>vanilla@FreeBSD.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>°Ó·~³nÅé</title>
+
+ <note>
+ <para>³o¤@¸`ªº¤º®eÁÙ¬O¬Û·í¤Ö¡A¤£¹L§Ú­Ì·íµM§Æ±æ¦U­Ó¤½¥q¯à¬°¥¦¥[ÂI¤º®e :)
+ FreeBSD ²Õ´©M¦C¦b³o¸Ìªº¥ô¦ó¤@®a¤½¥q³£¨S¦³ª÷¿ú¤Wªº§Q®`Ãö«Y¡A¦C¥X¨Ó¯Âºé¥u¬O¹ï¤j²³¤½¶}¤¶²Ð(¦P®É¤]»{¬°¦b FreeBSD
+ ¤Wªº°Ó¾÷­Y¿³©ô¡A·|¹ï FreeBSD ¥iªø¥i¤[¦³·¥¥¿­±ªº®Ä¯q)¡C§Ú­Ì¹ªÀy°Ó·~³nÅ骺¼t°Ó§â¥L­Ìªº²£«~¥]¬A¦b¤U­±ªº¦W³æ¤¤¡A¦b
+ <ulink url="../../../../commercial/index.html">Vendors page</ulink> ¥i¥H¬Ý¨ì§óªøªº¦Cªí¡C</para>
+ </note>
+
+ <qandaset>
+ <qandaentry>
+ <question id="officesuite">
+ <para>¦b­þÃä§ä¨ìµ¹ FreeBSD ¥Îªº Office ®M¥ó©O¡H</para>
+ </question>
+
+ <answer>
+ <para><ulink
+ url="http://www.openoffice.org">OpenOffice</ulink> ³o®M open-source ©Ê½èªº office
+ ¥i¥H¦b FreeBSD ¤W¥¿±`¹B¥Î¦Û¦p¡A¦Ó &linux; ª©ªº
+ <ulink
+ url="http://www.sun.com/staroffice/">StarOffice</ulink>,
+ ³o®M closed-source ªº OpenOffice ¥[­Èª©¡A¤]¥i¥H¦b FreeBSD ¤W¥¿±`¨Ï¥Î¡C</para>
+
+ <para>FreeBSD ¤WÁÙ¦³³\¦h½s±Æ³nÅé¡B¸Õºâªí(Spreadsheet)¥H¤Îø¹Ï³nÅé³£¥i¥Î Ports
+ Collection ¨Ó¦w¸Ë³á¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="motif">
+ <para>¦b­þÃä¥i§ä¨ìµ¹ FreeBSD ¥Îªº Motif¡H</para>
+ </question>
+
+ <answer>
+ <para>Open Group ÄÀ¥X¤F Motif 2.1.30 ªº­ì©l½X¡A¥i¥H³z¹L
+ <literal>open-motif</literal> package ¦w¸Ë¡A©Î¬O¥Ñ ports ¦Û¦æ
+ ½sĶ¡C¬ÛÃöªº¸ê°T¡A½Ð°Ñ¦Ò handbook ¤¤ªº <ulink
+ url="../handbook/ports.html">ports</ulink> ³¹¸`¡C
+
+ <note>
+ <para>Open Motif ¥u¯à¦b¦P¼Ë¤]¬O <ulink
+ url="http://www.opensource.org/">open source</ulink>
+ ªº§@·~¨t²Î©Î­p¹º¤¤¨Ï¥Î¡C</para>
+ </note>
+ </para>
+
+ <para>¥t¥~¡A¤]¬O¦³°Ó·~ª©¥»ªº Motif ¦s¦b¡C¤]³\³oºØª©¥»ªº Motif
+ ¤£¬O§K¶Oªº¡A¦ý¬Oµ´¹ï¤¹³\¥Î¦b closed-source ªºÀô¹Ò¤U¡C
+ <link linkend="apps2go">Apps2go</link> ´£¨Ñ¤F³Ì«K©yªº FreeBSD
+ (¥]¬A i386 ¸ò alpha)ª©¥»ªº ELF Motif 2.1.20 ®M¥ó¡C
+ <anchor id="apps2go"/></para>
+
+ <para>¥Ø«e´£¨Ñ¨âºØ¤£¦PÀô¹Òªºª©¥»¡A <quote>µo®i¥Îª©¥»</quote> ¤Î
+ <quote>runtime ª©¥»</quote> ¡C³o¨âºØ®M¥ó³£¥]¬A¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>OSF/Motif manager, xmbind, panner, wsm.</para>
+ </listitem>
+
+ <listitem>
+ <para>Development kit with uil, mrm, xm, xmcxx, include
+ and Imake files.</para>
+ </listitem>
+
+ <listitem>
+ <para>Static and dynamic ELF libraries (for use with
+ FreeBSD 3.0 and above).</para>
+ </listitem>
+
+ <listitem>
+ <para>Demonstration applets.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¦]¬° <emphasis>Apps2go</emphasis> ¤]¦³´£¨Ñ NetBSD ©M OpenBSD
+ ªºª©¥»¡A©Ò¥H¦b­qÁʮɽЯS§O«ü©w¬O­n FreeBSD ª©¥»ªº Motif¡I
+ ¥L­Ì¥Ø«e¥u´£¨Ñ¥H FTP ªº¤è¦¡¨ú±o³o¥÷®M¥ó¡C</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>§ó¦h¸ê°T</term>
+ <listitem>
+ <para><ulink url="http://www.apps2go.com/">
+ Apps2go WWW page</ulink></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>©Î</term>
+ <listitem>
+ <para>
+ <email>sales@apps2go.com</email> ©Î
+ <email>support@apps2go.com</email>
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>©Î</term>
+ <listitem>
+ <para>phone (817) 431 8775 or +1 817 431-8775</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>¤]¥i¥HÁpµ¸ <link linkend="xig">Xi Graphics</link>¡A¥L­Ì´£¨Ñ¤F¤@­Ó
+ FreeBSD a.out ®æ¦¡ªº Motif 2.0 ®M¥ó¡C</para>
+
+ <para>¦b³o®M¥ó¤¤¥]¬A¤F¡G</para>
+ <itemizedlist>
+ <listitem>
+ <para>OSF/Motif manager, xmbind, panner, wsm.</para>
+ </listitem>
+
+ <listitem>
+ <para>Development kit with uil, mrm, xm, xmcxx, include
+ and Imake files.</para>
+ </listitem>
+
+ <listitem>
+ <para>Static and dynamic libraries (for use with FreeBSD
+ 2.2.8 and earlier).</para>
+ </listitem>
+
+ <listitem>
+ <para>Demonstration applets.</para>
+ </listitem>
+
+ <listitem>
+ <para>Preformatted man pages.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¦b§A¸ò¥L­Ì­qÁÊ Motif ®É¡A½Ð¤@©wµù©ú§A­nªº¬O FreeBSD ªºª©¥»¡I
+ ¦]¬° <emphasis>Xi Graphics</emphasis> ¤]¦P®É´£¨Ñ¤F BSDI ¸ò Linux
+ ª©¥»ªº Motif¡C¥Ø«eµo¦æªºª©¥»¬O©ñ¦b¥|¶ôºÏ¤ù¤¤¡A±N¨Ó¥L­Ì·|±N©Ò¦³ªº
+ ªF¦è³£©ñ¨ì¥úºÐ¸Ì¡A´N¹³¥L­Ì©Òµo¦æªº CDE ¤@¼Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cde">
+ <para>¦b­þÃä¥i§ä¨ìµ¹ FreeBSD ¥Îªº CDE¡H</para>
+ </question>
+
+ <answer>
+ <para><link linkend="xig">Xi Graphics</link> ¥H«e¦³½æ FreeBSD ¥Îªº
+ CDE¡A¤£¹L²{¤w°±¤îµo°â¤F¡C</para>
+
+ <para>´N³\¦h¤è­±¦Ó¨¥¡A<ulink url="http://www.kde.org/">KDE</ulink> ³o­Ó open
+ source ªº®à­±Àô¹Ò»P CDE ¬Û·íÃþ¦ü¡C¦¹¥~¡A§A¥i¯à·|³ßÅw¨Ï¥Î <ulink
+ url="http://www.xfce.org/">xfce</ulink>¡CKDE ¤Î xfce ³£¥i¥Ñ <ulink url="&url.base;/ports/index.html">ports
+ ¾÷¨î</ulink>¨Ó¦w¸Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="commercial-xserver">
+ <para>¦³¨S¦³­n¿ú¡A¦ý¬O°ª®Ä²vªº X servers¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³¡A <ulink url="http://www.xig.com/">Xi Graphics</ulink>
+ ¦³´£¨Ñµ¹ FreeBSD¡]©Î¨ä¥L Intel ¥­¥x¤W¡^¥Îªº X µøµ¡¥[³t²£«~¡C</para>
+
+
+ <para>Xi Graphics ©Ò´£¨Ñªº°ª®Ä¯à X Server ¦³«D±`²³æªº³]©w¤è¦¡¡A
+ ¨Ã¥B¤ä´©¤F¥Ø«e¥«­±¤W·í¬õªº¦U¤j¼tµPªºÅã¥Ü¥d¡C¥¦¥uµ¹§A Binary ÀɮסA
+ ¬O¥ÎºÏ¤ùªº¤è¦¡µo¦æ¡AFreeBSD ¸ò Linux ª©¥»³£¬Û¦P¡CXi Graphics ¦P®É
+ ¤]´£¨Ñ¤F±Mªùµ¹µ§°O«¬¹q¸£¥Îªº°ª®Ä¯à X Server¡C<anchor id="xig"/></para>
+
+ <para>5.0 ª©¦³´£¨Ñ§K¶Oªº¬Û®e <quote>demo</quote> ª©¥»</para>
+
+ <para>Xi Graphics ¤]¦³¦b½æ FreeBSD ¥Îªº Motif ¸ò CDE¡]©¹¤W­±¬Ý¬Ý¡^¡C
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>§ó¦hªº¸ê°T</term>
+ <listitem>
+ <para><ulink url="http://www.xig.com/">
+ Xi Graphics WWW page</ulink></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>©Î</term>
+ <listitem>
+ <para><email>sales@xig.com</email>
+ ©Î <email>support@xig.com</email>
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>©Î</term>
+ <listitem>
+ <para>phone (800) 946 7433 or +1 303 298-7478.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="database-systems">
+ <para>¦b FreeBSD ¤W¦³¥ô¦óªº¸ê®Æ®w¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³! ½Ð¬Ý FreeBSD ºô¯¸¤W <ulink
+ url="../../../../commercial/software_bycat.html#CATEGORY_DATABASE">
+ °Ó·~³nÅ餽¥q </ulink> ³o¤@³¡¥÷¡C</para>
+
+ <para>ÁÙ¦³½Ð°Ñ¦Ò ports ¤¤ <ulink
+ url="../../../../ports/databases.html">
+ Databases</ulink> ¬ÛÃöªº¦¬¶°¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="oracle-support">
+ <para>¥i¥H¦b FreeBSD ¤W°õ¦æ Oracle ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¡A¤U­±³o­Óºô­¶·|»¡©ú¦p¦ó¦b FreeBSD ¤W°õ¦æ Linux
+ ª©ªº Oracle¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink
+ url="http://www.scc.nl/~marcel/howto-oracle.html">
+ http://www.scc.nl/~marcel/howto-oracle.html</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="http://www.lf.net/lf/pi/oracle/install-linux-oracle-on-freebsd">
+
+ http://www.lf.net/lf/pi/oracle/install-linux-oracle-on-freebsd</ulink></para>
+
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="applications">
+ <chapterinfo>
+ <author>
+ <firstname>Kang-min</firstname>
+ <surname>Liu</surname>
+ <affiliation>
+ <address><email>gugod@gugod.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¤@¯ëÀ³¥Îµ{¦¡</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="user-apps">
+ <para>¶â..§Ú­n¦b­þ§ä¨ì§Ú­nªºµ{¦¡©O?</para>
+ </question>
+
+ <answer>
+ <para>½Ð¬Ý¬Ý <ulink url="../../../../ports/index.html">ports
+ ¥Ø¿ý</ulink> §a¡C³oÃ䦳¥÷¤w¸g port ¨ì FreeBSD ªº³nÅé¦Cªí¡C
+ ¥Ø«e¦³¶W¹L &os.numports; ­Ó³nÅé¤w¸g³Qport ¨ì FreeBSD ¤W¡A¨Ã¥B¨C¤Ñ
+ ³£¦b¼W¥[¤¤¡C©Ò¥H¦³ªÅ´N¦h¬Ý¬Ý³o¥÷¦Cªí¡A¤£µM§A¤]¥i¥H­q¾\
+ <literal>freebsd-announce</literal> <link linkend="mailing">
+ ³o¥÷ mailing list</link>¡A·|¦³¤H±N¨C­Ó¬P´Á³Ì·sªº³nÅé¦Cªí¶K¦b¤W­±¡C</para>
+
+ <para>¤j³¡¥÷ªº ports À³¸Ó³£¥i¥H¦b 4.X¡B5.X ¸ò 6.X ªº¨t²Î¤W¨Ï¥Î¡C
+ ¨C¦¸·í FreeBSD release ·sª©®É¡A³£·|¦³¤@¥÷ ports tree ³Q©ñ¦b³o¤@­Ó
+ release cd ¸Ì­±ªº <filename>ports/</filename> ¥Ø¿ý¸Ì¡C</para>
+
+ <para>§Ú­Ì¤]¤ä´©¤@ºØ¥s <quote>package</quote> ªº·§©À¡A°ò¥»¤W
+ ´N¬O gzip À£ÁY¡B¥i¥Î¨Óµo¦æªº binary ÀɮסA¦ý¬O¸Ì­±ÂäF¤@
+ ¨Ç¬Û·í¦³¥Îªº¸ê°T¡A¥i¥Hµ¹¦UºØ¦Û­q¦w¸Ë¨Ó¨Ï¥Î¡C¨Ï¥ÎªÌ¤£¥²ª¾
+ ¹D¬Y­Ó package ¸Ì¨s³º¦³¥]¬A­þ¨ÇÀɮסA´N¥i`¥H«Ü¤è«K¦a­«½Æ±N
+ ¥¦¦w¸Ë/¤Ï¦w¸Ë¡C</para>
+
+ <para>§A¥i¥H°õ¦æ <filename>sysinstall</filename>(&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>) «á¡A
+ ¦b post-configuration ¿ï³æ¤U¿ï¾Ü package ³o­Ó¦w¸Ë¿ï¶µ¡F©Î
+ ¬O¹ï¬Y­Ó¦³¿³½ìªº package ÀÉ®×°õ¦æ &man.pkg.add.1;
+ §â¥¦¸Ë°_¨Ó¡CPackage Àɮ׳q±`¥H <filename>.tgz</filename> ©Î <filename>.tbz</filename>
+ ¬°°ÆÀɦW¡A¤â¤W¦³ FreeBSD CDROM ªº¤H¥i¥H¦b <filename>packages/All</filename> ³o­Ó¥Ø¿ý¤U§ä¨ì³oÃþÀɮסC
+ ¹ï¤£¦Pªº FreeBSD ª©¥»¡A¤]¥i¥H±q¤U¦C¦ì§}¥Ñºô¸ô¤W¨ú±o¡G</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>µ¹ 4.X-RELEASE/4-STABLE ¥Îªº</term>
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/">
+ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/</ulink></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>µ¹ 5.X-RELEASE/5-STABLE ¥Îªº</term>
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-stable/">
+ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-stable</ulink></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>µ¹ 6.X-RELEASE/6-STABLE ¥Îªº</term>
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-6-stable/">
+ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-6-stable</ulink></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>µ¹ 7-CURRENT ¥Îªº</term>
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-7-current/">
+ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-7-current</ulink></para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>©Î¬OÂ÷§A³Ìªñªº mirror ¯¸¡C</para>
+
+ <para>­nª`·Nªº¬O¡A¦]¬°·sªº port ¤@ª½¦b¼W¥[¤¤¡A©Ò¥H¨Ã¤£¬O©Ò¦³ port
+ ³£¦³¬Û¹ïÀ³ªº package¡C³Ì¦n©w®ÉÀˬd<ulink
+ url="ftp://ftp.FreeBSD.org/pub/FreeBSD/">ftp.FreeBSD.org</ulink>
+ ¡A¬Ý¬Ý¦³­þ¨Ç package ¥i¥H¥Î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="configure-inn">
+ <para>¸Ó«ç»ò³]©w INN(Internet News) ¨Ó·í news server¡H</para>
+ </question>
+
+ <answer>
+ <para>¥H package ©Î port ¤è¦¡¨Ó¸Ë¦n <filename
+ role="package">news/inn</filename> ¤§«á¡A<ulink
+ url="http://www.visi.com/~barr/INN.html">Dave
+ Barr's INN Page</ulink> ¬O­Ó«D±`¦nªº INN ¤Jªù³B¡A§A¥i¥H¦b¨ºÃä§ä¨ì INN ªº FAQ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="java">
+ <para>FreeBSD ¦³¤ä´© &java; ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³°Ú¡A½Ð¬Ý <ulink
+ url="&url.base;/java/index.html">
+ http://www.FreeBSD.org/java/</ulink></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="missing-libcso30">
+ <para>§Ú¥i¥H¦b­þÃä§ä¨ì libc.so.3.0?</para>
+ </question>
+
+ <answer>
+ <para>§A¥i¯à¦b¤@¥x 2.1.x ªº¾÷¾¹¤W¡A¶]µÛµ¹ 2.2/3.x/4.0 ªº³nÅé¡C
+ ½Ð¦A©¹¤W­±¤@­Ó³¹¸`¬Ý¡A¥¿½Tªº¨ú±oµ¹§A¾÷¾¹¥Îªº port/package¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="missing-libcso40">
+ <para>¬°¦ó§Ú±o¨ì¤F³o­Ó°T®§ ?<errorname>Error: can't find
+ libc.so.4.0</errorname>?</para>
+ </question>
+
+ <answer>
+ <para>§A¤£¤p¤ß§ì¤Fµ¹ 4.X ¤Î 5.X ¨t²Î¥Îªº package¡A¨Ã¥B¹Á¸ÕµÛ
+ ¥h¸Ë¦b§Aªº 2.X ©Î 3.X ªº¨t²Î¤W­±¡C½Ð¤U¸ü¥¿½Tª©¥»ªº package¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="emul">
+ <para> ghostscript ¦b§Úªº 386/486SX ¤W¦³ÂI°ÝÃD©O¡I</para>
+ </question>
+
+ <answer>
+ <para>§A¨S¦³¯BÂI¹Bºâ¾¹¡A¹ï§a¡H§A¥²¶·¦b§Aªº kernel ¤¤¥[¤J¼Æ¾Ç
+ ¹Bºâ¼ÒÀÀ¾¹¡A§A¥i¥H¸òµÛ¤U­±ªº¨BÆJ°µ¡A¨Ã¦b§ó§ï¹L§Aªº kernel ³]©w
+ ÀÉ«á¡A­«·s½sĶ¹L¤@¦¸¡C</para>
+
+ <programlisting>options GPL_MATH_EMULATE</programlisting>
+
+ <note>
+ <para>·í§A¥[¤J¤W¤@¦æªº¦P®É¡A§A¥²¶·±N
+ <literal>MATH_EMULATE</literal> ²¾°£±¼¡C</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sco-socksys">
+ <para>¬°¤°»ò·í§Ú°õ¦æ SCO/iBCS2 ªºµ{¦¡®É¡A¥¦¦b
+ <errorname>socksys</errorname> ³o­Ó¦a¤è¥X¤F°ÝÃD¡H
+ (FreeBSD 3.0 ¥H¤Î§ó¦­ªºª©¥»¤~¦³¦¹°ÝÃD¡C)</para></question>
+
+ <answer>
+ <para>§A¥²¶·¥ý­×§ï <filename>/etc/sysconfig</filename> (©Î¬O
+ <filename>/etc/rc.conf</filename>, ½ÐŪ &man.rc.conf.5;)
+ ³oÀɮ׳̫á¤@­Ó³¹¸`¡A±N¤U­±©ÒÁ¿¨ìªºÅܼƳ]¦¨
+ <literal>YES</literal>¡G</para>
+
+ <programlisting># Set to YES if you want ibcs2 (SCO) emulation
+ loaded at startup ibcs2=NO</programlisting>
+
+ <para>³o·|¦b¶}¾÷®É±N ibcs2 ³o¤@­Ó kernel ¼Ò²Õ¸ü¤J¡C</para>
+
+ <para>§AÁÙ­n±N§Aªº /compat/ibcs2/dev §ï¦¨¤U­±³o¼Ë¡G</para>
+
+ <screen>lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -&gt; /dev/null
+lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -&gt; socksys
+-rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null
+lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -&gt; /dev/null
+crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx</screen>
+
+ <para>§A¥u»Ý­n±N socksys Âà¦V¨ì <devicename>/dev/null</devicename>
+ (½ÐŪ &man.null.4;) ¥hÄF¹L open &amp; close ªº°Ê§@¡C¦b -current
+ ¸Ì­±ªº ibcs2 ¬ÛÃöµ{¦¡½X±N·|³B²z¨ä¾lªº³¡¥÷¡A³oºØ§@ªk¤ñ¥H«eªº¤è¦¡
+ °®²b¤Ó¦h¤F¡C°²¦p§A·Q­n¨Ï¥Î <devicename>spx</devicename> ¤è­±ªº
+ µ{¦¡¡A¦b§Aªº kernel ³]©wÀɸ̭± ¥[¤W<literal>SPX_HACK</literal>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ms-frontpage">
+ <para>§Ú¸Ó¨Ï¥Î¨º­Óª©¥»ªº Microsoft FrontPage¡H</para>
+ </question>
+
+ <answer>
+ <para>Use the Port, Luke¡I¦b ports tree ¤¤¤w¸g¦³¤@­Ó¥]§t FrontPage
+ ªº Apache ª©¥»¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ports-3x">
+ <para>¬°¤°»ò§ÚµLªk¦b 3.X-STABLE ¾÷¾¹¤W¶¶§Q½s¦n³o­Ó port?</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§Aªº FreeBSD ª©¥»¬Û¸û -CURRENT ©Î -STABLE ¤§¤U¬O«Ü¥j
+ ¦­ªº¸Ü¡A©Î³\§A·|»Ý­n¤@­Ó¤É¯Å ports ªº¤u¨ã¡A¦b
+ <ulink url="../../../../ports/index.html">
+ http://www.FreeBSD.org/ports/</ulink>¡C¦pªG§A¥H±N¨ä§ó·s«o¤´µL¥Î¡A
+ ¨º»ò¤@©w¬O¬Y¤H§ó°Ê¤§«á³y¦¨ -CURRENT ¤~¯à¥Î¡A-STABLE µLªk¥Îªº±¡ªp¡C
+ ¥Ñ©ó ports ¤º©Ò¦¬¶°ªº³nÅé¦b -CURRENT ©Î¬O -STABLE ¤W³£­n¯à¥Î¡A
+ ©Ò¥H½Ð¾¨³t°e¥XÃö©ó¦¹°ÝÃDªºÂγø§i¡F½Ð¨Ï¥Î &man.send-pr.1; ³o­Ó«ü
+ ¥O¨Ó°eÂγø§i¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="find-ldso">
+ <para>¨º¸Ì¥i¥H§ä±o¨ì ld.so¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³¨Ç a.out ®æ¦¡ªºÀ³¥Îµ{¦¡·|»Ý­n a.out ®æ¦¡ªº¨ç¦¡®w¡A
+ Netscape Navigator ´N¬O¤@­Ó¨Ò¤l¡C¤£¹L¥Î ELF ¨ç¦¡®w½s°_¨Ó
+ ªº FreeBSD ¹w³]¨Ã¤£·|¦w¸Ëªº a.out ¨ç¦¡®w¡A©Ò¥H±z¥i¯à·|±o
+ ¨ìÃþ¦ü§ä¤£¨ì <filename>/usr/libexec/ld.so</filename> ªº©ê«è°T
+ ®§¡C¦pªG»¡±zªº¨t²Î¦³³o¦w¸Ë a.out ¨ç¦¡®wªº¥²­n¡A³o¨Ç¨ç¦¡®w
+ (compat22) ¤]¯à°÷§Q¥Î &man.sysinstall.8; ¨Ó¦w¸Ë¡C©ÎªÌ§Q¥Î
+ FreeBSD ­ì©l½X¨Ó¦w¸Ë¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/lib/compat/compat22</userinput>&prompt.root; <userinput>make install clean</userinput></screen>
+
+ <para>¦pªG§A§Æ±æ¨C¦¸ <command>make world</command> ®É·|¦Û°Ê§ó·s
+ compat22 ¨ç¦¡®w¡A¨º»ò­×§ï <filename>/etc/make.conf</filename>¡A
+ ¥[¤J <varname>COMPAT22=YES</varname>¡C³o¨Ç¬Û®e©ó¥j¦Ñª©¥»ªº¨ç¦¡®w
+ ¤w¸g¨S¤°»ò¦b§ó·s¤F¡A©Ò¥H¤@¯ë»¡¨Ó¬O¤£»Ý­n³o¼Ëªº¡C</para>
+
+ <para>¦P®É¤]½Ð±z¬Ý¤@¤U 3.1-RELEASE ©M 3.2-RELEASE ªº°É»~ªí(ERRATA)¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ports-update">
+ <para>§Ú§ó·s¤F¨t²Î­ì©l½X¡A²{¦b§Ú­n«ç¼Ë¤É¯Å¬Y­Ó¤w¸g¦w¸Ë¤W
+ ªº ports ?</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¥»¨­¨Ã¨S¦³¦Û°Ê¤É¯Å ports ªº¤u¨ã¡A¦ý¦³¤@¨Ç¥i¥HÅý¤É¯Å
+ ²¤Æ¤@¨Çªº¤pµ{¦¡¡C§A¤]¥i¥H¦Û¤v¸Ë¤WÃB¥~ªº¤u¨ã¨Ó³B²z¡C</para>
+
+ <para>&man.pkg.version.1; «ü¥O¥i¥H¦Û°Ê²£¥Í¥Î¨Ó¹F¨ì¦Û°Ê¤É¯Å¨ì
+ ports tree ³Ì·sª©¥»ªº script¡C</para>
+
+ <screen>&prompt.root; <userinput>pkg_version <option>-c</option> > <replaceable>/tmp/myscript</replaceable></userinput></screen>
+
+ <para><emphasis>¤@©w­n</emphasis>¦b¤â°Ê­×§ï¤@¤U²£¥Í¥X¨Óªº script¡C
+ ¥Ø«eªº &man.pkg.version.1; ¦b script ³Ì«e­±¥[¤J &man.exit.1; ±j
+ ­¢§A¥h­×§ï¥¦¡C</para>
+
+ <para>§AÀ³±N°õ¦æ script ©Ò²£¥Íªº¿é¥X°O¿ý¤U¨Ó¡A¦]¬°¸Ì­±·|¦³°O¸ü¬Y¨Ç
+ ©|¥¼¤É¯Å¦ý¤w¸g§ó·sªº ports¡C¤£¹L§A¤£¤@©w­n¥h¤É¯Å¥¦­Ì¡C³q±`¬O¦]¬°
+ ¦³¬Y­Ó¦@¥Îªº¨ç¦¡®w¤w¸g§ïÅܪ©¥»¸¹¤F¡A¤~­n¥h­«½s¤@¦¸¨º¨Ç¨Ï¥Î¨ì¸Ó¨ç
+ ¦¡®wªº ports¡C</para>
+
+ <para>¦pªG§AªºµwºÐªÅ¶¡«Ü°÷¡A¨º»ò¥i¥H¥Î <command>portupgrade</command>
+ ³o­Ó¤u¨ã¨Ó°µ¥þ¦Û°Ê³B¸Ì¡C<command>portupgrade</command> ¸Ì­±¤]¦³
+ ¤@¨Ç¤pµ{¦¡¨Ó²¤Æ package ¤É¯Å¡A¥¦¦b
+ <filename role="package">sysutils/portupgrade</filename>¡C
+ ³o­Ó¤u¨ã¬O¥Î Ruby ³o­Ó»y¨¥¼gªº¡A©Ò¥H¨Ã¤£¾A¦X¥[¤J¨ì FreeBSD ªº­ì
+ ©l½X¤¤¡A¤£¹L¨Ã¤£·|¦]¦¹Åý¬Y¨Ç¤H¤£¥Î¥¦¡C</para>
+
+ <para>¦pªG§Aªº¨t²Î¤@ª½³£³B©ó¶}¾÷ª¬ºA¡A¥i§Q¥Î &man.periodic.8; ¨t²Î¡A
+ ¨C­Ó¬P´Á²£¥Í¤@±i»Ý­n¤É¯Åªº²M³æ¡C¥u­n¦b
+ <filename>/etc/periodic.conf</filename> ¥[¤J
+ <literal>weekly_status_pkg_enable="YES"</literal> ´N¥i¥H¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="minima-sh">
+ <para>¬°¤°»ò <command>/bin/sh</command>³o»òªº¤p¡H¬°¤°»ò FreeBSD
+ ¤£§ï¥Î <command>bash</command> ©ÎªÌ¬O¨ä¥L¤ñ¸û±j®«ªº shell¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬° POSIX »¡¡A¸Ó­n¦³³o»ò¼Ëªº¤@­Ó shell ¦b¤~¦æ¡C</para>
+
+ <para>¤ñ¸ûÁcº¾ªºµª®×¡G³\¦h¤H»Ý­n¼g¥i¥H¸ó«Ü¦h¥­¥xªº shell script ¡C
+ ³o¤]¬O¬°¦ó POSIX ±N shell ¥H¤Î¤u¨ã©RºÙ³£©w¸qªº«D±`¸Ô²Óªº½t¬G¡C
+ ¤j³¡¥÷ªº script ³£¾A¥Î©ó Bourne shell¡A¤S¦]¬°¦³´X­Ó­«­nªº
+ ¼gµ{¦¡©Ò¥Î¨ìªºµ{¦¡©ÎªÌ¨ç¦¡ (&man.make.1; , &man.system.3;,
+ &man.popen.3;, ÁÙ¦³¦b Perl ©ÎªÌ Tcl ¸Ì­±©I¥s¨t²Îµ{¦¡ªº¦a¤è)
+ ³£«ü©w¥Î Bourne shell ¡C¨º»ò¦]¬° Bourne Shell ¦p¦¹ªº¼sªx±`¥Î¡A
+ ¨º»ò¥¦ªº°õ¦æ®Ä²v«K«Ü­«­n¡A§Ö³t¬O¥¦¨M©w©Êªº­nÂI¤§¤@¡AÁÙ­n¤£¦û¤Ó¦h
+ °O¾ÐÅé¡C</para>
+
+ <para>¥Ø«eªº <command>/bin/sh</command> ¤w¬O§Ú­Ì¹Ã¤ßÃw¦å¤§§@¡A¥¦¤w
+ ¸gºÉ¶q¦a²Å¦X¼Ð·Ç³W©w¡C¬°¤FÅý¥¦«D±`¤p¡A§Ú­Ì®³±¼¤F¤@¨Ç¨ä¥L shell
+ ¦³ªº¤è«K¥\¯à¡C³o¤]¬O¬°¤°»ò ports ¸Ì­±ÁÙ¦³«Ü¦h±j®«ªº shell ¡A¹³¬O
+ bash, scsh, tcsh ¥H¤Î zsh ¡C (§A¥i¥H¦Û¤v¤ñ¸û¤@¤U³o¨Ç shell °õ¦æ
+ ®É©Ò¦ûªº°O¾ÐÅé¤j¤p¡A¥h¬Ý¬Ý <command>ps -u</command> ¦C¥X¨Óªº
+ <quote>VSZ</quote> ©M <quote>RSS</quote> ³o¨â­ÓÄæ¦ì´Nª¾¹D¤F¡C)
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="netscape-slow-startup">
+ <para>¬°¤°»ò Netscape ©M Opera ­nªá¦n¤[ªº®É¶¡¤~¯à±Ò°Ê¡H</para>
+ </question>
+
+ <answer>
+ <para>³q±`¬O¦]¬°§Aªº DNS ¨S¦³³]©w¦n¡C Netscape ¸ò Opera ¦b±Ò°Êªº®É­Ô
+ ³£·|¥hÀˬd¤@¤U DNS¡Cª½¨ì DNS ¦³¦^À³¡A©ÎªÌ¬OÂ_©wºô¸ô¥Ø«e¬OÂ_½u¤§«á¡A
+ ¥¦­Ì¤~·|Åã¥Üµe­±¥X¨Ó¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+
+ <chapter id="kernelconfig">
+ <chapterinfo>
+ <author>
+ <firstname>Kang-min</firstname>
+ <surname>Liu</surname>
+ <affiliation>
+ <address><email>gugod@gugod.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>kernel ³]©w</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="make-kernel">
+ <para>§Ú·Q¦Û­q kernel¡A³o·|«Ü§xÃø¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¤£·|¡I½Ð¬d¾\ <ulink url="../../handbook/kernelconfig.html">
+ ¨Ï¥Î¤â¥U¤¤ªº kernel ³]©w¤@¸`</ulink>¡C</para>
+
+ <note>
+ <para>§Ú·|«Øij§A¦b§AÅý®Ö¤ß¯à¥¿±`¤u§@«á¡A°µ¤@­Ó
+ <filename>kernel.YYMMDD</filename> ¤é´Á§Î¦¡ªº³Æ¥÷¡A¦P®É¤]³Æ¥÷
+ <filename>/module</filename>³o­Ó¥Ø¿ý¦Ü
+ <filename>/modules.YYMMDD</filename>¡C³o¼Ë¤U¦¸¦pªG§A«Ü¤£©¯ªºª±
+ Ãa¤F³]©w¡A¦Ü¤Ö¥i¥H¤£»Ý­n¨Ï¥Î³Ì­ì©lªº
+ <filename>kernel.GENERIC</filename>¡C¦p§A¥¿±q¤@­Ó GENERIC
+ kernel ¸Ì­±¤£¤ä´©ªº±±¨î¾¹¸Ì±Ò°Ê®É¡A³o´NÅã±o¯S§O­«­n¡C</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="missing-hw-float">
+ <para>§Úªº®Ö¤ß¦]¬° <literal>_hw_float</literal>¿ò¥¢¦Ó½sĶ¥¢±Ñ¡C
+ ¸Ó«ç»ò­×¥¿©O¡H</para>
+ </question>
+
+ <answer>
+ <para>Åý§Ú²q¬Ý¬Ý¡A§A§â <devicename>npx0</devicename>
+ (¸Ô¨£ &man.npx.4;) ±q§Aªº kernel ³]©wÀɲ¾°£¤F¡A¦]¬°§A¨S¦³¼Æ¾Ç¹Bºâ¾¹¡A
+ ¹ï¶Ü¡H¿ù¤F¡I:-) ³o­Ó <devicename>npx0</devicename>¬O
+ <emphasis>¥²¶·­n¦³ªº</emphasis>¡C´Nºâ§A¨S¦³¼Æ¾Ç¹Bºâ¾¹¡A§AÁÙ¬O
+ <emphasis>¥²¶·</emphasis> ¤Þ¤J <devicename>npx0</devicename> ¸Ë¸m¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="why-kernel-big">
+ <para>¬°¤°»ò³y¥X¨Óªº kernel ³o»ò¤j (10MB ¥H¤W) ¡H</para>
+ </question>
+
+ <answer>
+ <para>³o«Ü¦³¥i¯à¬O¦]¬°¡A§A§â kernel ½s¦¨ <emphasis>°»¿ù¼Ò¦¡</emphasis>
+ ¤F¡C°»¿ù¼Ò¦¡¤§¤Uªº kernel ¸Ì­±·|¦sµÛ°»¿ù¥Îªº³\¦h²Å¸¹¡A¦]¦¹·|¤j´T
+ ¼W¥[ kernel ªº¤j¤p¡C¦pªG»¡§Aªº FreeBSD ¬O 3.0 ¥H«áªºª©¥»¡A³o¹ï©ó
+ ®Ä¯à¨Ó»¡¼vÅT¨Ã¤£¤j¡A´X¥G¬O¨S¦³¡C¦Ó¦b¨t²Î·|¦]¬Y¨Ç­ì¦] panic ®É¡A
+ ¦³­Ó°»¿ù¼Ò¦¡ªº kernel ¦b¤]®¼¦³¥Îªº¡C</para>
+
+ <para>¤£¹L©O¡A¦pªG§AªººÏºÐªÅ¶¡«Ü¤p¡A©ÎªÌ§A´N¬O¤£·Q¥Î°»¿ù¼Ò¦¡ªº
+ kernel ªº¸Ü¡A½Ð½T»{¥H¤U¨Æ±¡¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>kernel ³]©wÀɸ̭±¨S¦³³o¤@¦æ¡G</para>
+
+ <programlisting>makeoptions DEBUGS=-g </programlisting>
+ </listitem>
+
+ <listitem>
+ <para>°õ¦æ &man.config.8; ®É¨S¦³¥[¤W <option>-g</option>
+ ³o­Ó¿ï¶µ¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¥H¤W¨â¥ó¨Æ±¡³£·|Åý§A½s¥X¤@­Ó°»¿ù¼Ò¦¡ªº kernel¡C¦ý¥u­nÁקK¤§¡A
+ ´N¥i¥H½s¥X¤@­Ó¥¿±`ªº kernel¡A¦Ó§A¤]·|ª`·N¨ì¡Akernel ©úÅ㪺Åܤp¤F¡F
+ ¤j³¡¥÷ªº kernel ³£®t¤£¦h¦b 1.5MB ¨ì 2MB ¤§¶¡¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="multiport-serial-interrupts">
+ <para>¬°¦ó¥X²{¤F multi-port serial code ªº¤¤Â_½Ä¬ð¡H</para>
+ </question>
+
+ <answer>
+ <para>·í§Ú½sĶ¤@­Ó multi-port serial code ªº®Ö¤ß®É¡A¥¦§i¶D§Ú¥u¦³
+ ²Ä¤@­Ó³Q°»´ú¨ì¡A¨ä¥Lªº«h¦]¤¤Â_½Ä¬ð¦Ó¸õ¹L¤F¡A§Ú¸Ó«ç»ò­×¥¿¥¦¡H</para>
+
+ <para>³o­Ó°ÝÃD¬O¦]¬° FreeBSD ¨Ï¥Î¤º«Øµ{¦¡½XÁקK¦]¬°µwÅé©Î³nÅé½Ä¬ð
+ ¾É­P kernel ¹L©óªÎ¤j©ÎµL¥Î¡C­n­×¥¿³oºØ±¡§Îªº¤èªk¬O°£¤F¤@­Ó port
+ ¥~§â¨ä¥L©Ò¦³ªº IRQ ³]©w³£°µ«O¯d¡C³o¸Ì¦³¤@­Ó½d¨Ò¡G</para>
+
+ <programlisting>#
+# Multiport high-speed serial line - 16550 UARTS
+#
+device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
+device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
+device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
+device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="generic-kernel-build-failure">
+ <para>¬°¤°»ò§Ú¤@­Ó kernel ³£½s¤£°_¨Ó¡H¬Æ¦Ü GENERIC ¤]¤£¦æ¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¦³«Ü¦hºØ¥i¯àªº­ì¦]¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>§A¨S¦³¥Î·sªº <command>make buildkernel</command> »P
+ <command>make installkernel</command> ³o¨â­Ó¤èªk¨Ó½s¡A¦Ó¥¿¦n
+ §Aªº¨t²Î­ì©l½Xªºª©¥»©M¥¿¦b°õ¦æªº¨t²Î®Ö¤ßª©¥»¤£¤@¼Ë (¹³¬O¡A
+ ¦b¶] 4.0-RELEASE ªº¨t²Î¤W¹Á¸ÕµÛ½s 4.3-RELEASE)¡C¦pªG»¡§A­n¤É
+ ¯Å¨t²Îªº¸Ü¡A½Ð°È¥²¥h¬Ý¬Ý <filename>/usr/src/UPDATING</filename>
+ ³o­ÓÀɮסA¯S§Oª`·N³Ì«á­±ªº <quote>COMMON ITEMS</quote>
+ ³o­Ó¤p¸`¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>§A¤w¸g¥Î¤W <command>make buildkernel</command> ¥H¤Î
+ <command>make installkernel</command> ¤F¡A¦ý¬O¦b
+ <command>make buildworld</command> ®É¥¢±Ñ¤F¡C¥i±¤ªº¬O¡A
+ <command>make buildkernel</command> ­n¦¨¥\¡A»Ý­n¨Ì¿à
+ <command>make buildworld</command> «á³y¥X¨Óªº¤@¨ÇÀɮסC</para>
+ </listitem>
+
+ <listitem>
+ <para>´Nºâ¬O§A¦b½s <link linkend="stable">&os.stable;</link>¡A
+ ÁÙ¬O¦³¥i¯à§A§ì¨ì¤F¥¿¦b­×§ï¤¤¡A©ÎµÛ¦]¬°¬Y¨Ç½t¬G¦Ó®Ú¥»ÁÙ¨S§ï¦n
+ ªº­ì©l½X¡FÁöµM»¡ <link linkend="stable">&os.stable;</link>
+ ¤j³¡¥÷ªº®É­Ô³£¬O¥i¥H½sªº¡A¦ý¥u¦³ RELEASE ¤~¬O«OÃÒ¥i¥H½sªº¡C¸I
+ ¨ì³o­Ó°ÝÃD®É¡A¦A¦¸§ó·s­ì©l½X¨Ã¥B¦A¸Õ¸Õ¬Ý¡C¤]¦³¥i¯à¬O©ñ­ì©l½Xªº
+ ¦øªA¾¹¥X²{¬Y¨Ç°ÝÃD¡A©Ò¥H§ó·s­ì©l½X®É¤]¸Õ¸Õ±q¤£¦P¦øªA¾¹¨Ó§ó·s¬Ý
+ ¬Ý¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="disks">
+ <title>µwºÐ¡BÀɮרt²Î¡BBoot Loader</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="new-huge-disk">
+ <para>§Ú­n«ç»ò§â§Úªº¨t²Î·h¨ì·sµwºÐ¤W­±¥h¡H</para>
+ </question>
+
+ <answer>
+ <para>²z·Qªº¤è¦¡¬O¥ý¦b·sµwºÐ¤W­«¸Ë¦n§@·~¨t²Î¡AµM«á§â¨Ï¥ÎªÌ¬ÛÃöµ{¦¡¡B¸ê®Æ·h¹L¥h´N¦n¡C
+ This is highly
+ recommended if you have been tracking -STABLE for more
+ than one release, or have updated a release instead of
+ installing a new one. You can install booteasy on both
+ disks with &man.boot0cfg.8;, and dual boot them until
+ you are happy with the new configuration. Skip the
+ next paragraph to find out how to move the data after
+ doing this.</para>
+
+ <para>Should you decide not to do a fresh install, you
+ need to partition and label the new disk with either
+ <filename>sysinstall</filename>(&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>), or &man.fdisk.8;
+ and &man.disklabel.8;. You should also install booteasy
+ on both disks with &man.boot0cfg.8;, so that you can
+ dual boot to the old or new system after the copying
+ is done.</para>
+
+ <para>Now you have the new disk set up, and are ready
+ to move the data. Unfortunately, you cannot just blindly
+ copy the data. Things like device files (in
+ <filename>/dev</filename>), flags, and links tend to
+ screw that up. You need to use tools that understand
+ these things, which means &man.dump.8;.
+ Although it is suggested that you move the data in single user
+ mode, it is not required.</para>
+
+ <para>You should never use anything but &man.dump.8; and
+ &man.restore.8; to move the root filesystem. The
+ &man.tar.1; command may work - then again, it may not.
+ You should also use &man.dump.8; and &man.restore.8;
+ if you are moving a single partition to another empty
+ partition. The sequence of steps to use dump to move
+ a partitions data to a new partition is:</para>
+
+ <procedure>
+ <step>
+ <para>newfs the new partition.</para>
+ </step>
+
+ <step>
+ <para>mount it on a temporary mount point.</para>
+ </step>
+
+ <step>
+ <para>cd to that directory.</para>
+ </step>
+
+ <step>
+ <para>dump the old partition, piping output to the
+ new one.</para>
+ </step>
+ </procedure>
+
+ <para>For example, if you are going to move root to
+ <devicename>/dev/ad1s1a</devicename>, with
+ <filename>/mnt</filename> as the temporary mount point,
+ it is:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
+&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
+&prompt.root; <userinput>cd /mnt</userinput>
+&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen>
+
+ <para>Rearranging your partitions with dump takes a bit more
+ work. To merge a partition like <filename>/var</filename>
+ into its parent, create the new partition large enough
+ for both, move the parent partition as described above,
+ then move the child partition into the empty directory
+ that the first move created:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
+&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
+&prompt.root; <userinput>cd /mnt</userinput>
+&prompt.root; <userinput>dump 0af - / | restore xf -</userinput>
+&prompt.root; <userinput>cd var</userinput>
+&prompt.root; <userinput>dump 0af - /var | restore xf -</userinput></screen>
+
+ <para>To split a directory from its parent, say putting
+ <filename>/var</filename> on its own partition when it was not
+ before, create both partitions, then mount the child partition
+ on the appropriate directory in the temporary mount point, then
+ move the old single partition:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
+&prompt.root; <userinput>newfs /dev/ad1s1d</userinput>
+&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
+&prompt.root; <userinput>mkdir /mnt/var</userinput>
+&prompt.root; <userinput>mount /dev/ad1s1d /mnt/var</userinput>
+&prompt.root; <userinput>cd /mnt</userinput>
+&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen>
+
+ <para>You might prefer &man.cpio.1;, &man.pax.1;,
+ &man.tar.1; to &man.dump.8; for user data. At the time of
+ this writing, these are known to lose file flag information,
+ so use them with caution.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dangerously-dedicated">
+ <para>Will a <quote>dangerously dedicated</quote> disk endanger
+ my health?</para>
+ </question>
+
+ <answer>
+
+ <para><anchor id="dedicate"/>The installation procedure allows
+ you to chose two different methods in partitioning your
+ hard disk(s). The default way makes it compatible with other
+ operating systems on the same machine, by using fdisk table
+ entries (called <quote>slices</quote> in FreeBSD), with a
+ FreeBSD slice that employs partitions of its own. Optionally,
+ one can chose to install a boot-selector to switch between the
+ possible operating systems on the disk(s). The alternative uses
+ the entire disk for FreeBSD, and makes no attempt to be
+ compatible with other operating systems.</para>
+
+ <para>So why it is called <quote>dangerous</quote>? A disk
+ in this mode does not contain what normal PC utilities
+ would consider a valid fdisk table. Depending on how well
+ they have been designed, they might complain at you once
+ they are getting in contact with such a disk, or even
+ worse, they might damage the BSD bootstrap without even
+ asking or notifying you. In addition, the
+ <quote>dangerously dedicated</quote> disk's layout is
+ known to confuse many BIOSes, including those from AWARD
+ (e.g. as found in HP Netserver and Micronics systems as
+ well as many others) and Symbios/NCR (for the popular
+ 53C8xx range of SCSI controllers). This is not a complete
+ list, there are more. Symptoms of this confusion include
+ the <errorname>read error</errorname> message printed by
+ the FreeBSD bootstrap when it cannot find itself, as well
+ as system lockups when booting.</para>
+
+ <para>Why have this mode at all then? It only saves a few kbytes
+ of disk space, and it can cause real problems for a new
+ installation. <quote>Dangerously dedicated</quote> mode's
+ origins lie in a desire to avoid one of the most common
+ problems plaguing new FreeBSD installers - matching the BIOS
+ <quote>geometry</quote> numbers for a disk to the disk
+ itself.</para>
+
+ <para><quote>Geometry</quote> is an outdated concept, but one
+ still at the heart of the PC's BIOS and its interaction with
+ disks. When the FreeBSD installer creates slices, it has to
+ record the location of these slices on the disk in a fashion
+ that corresponds with the way the BIOS expects to find them. If
+ it gets it wrong, you will not be able to boot.</para>
+
+ <para><quote>Dangerously dedicated</quote> mode tries to work
+ around this by making the problem simpler. In some cases, it
+ gets it right. But it is meant to be used as a last-ditch
+ alternative - there are better ways to solve the problem 99
+ times out of 100.</para>
+
+ <para>So, how do you avoid the need for <quote>DD</quote> mode
+ when you are installing? Start by making a note of the geometry
+ that your BIOS claims to be using for your disks. You can
+ arrange to have the kernel print this as it boots by specifying
+ <option>-v</option> at the <literal>boot:</literal> prompt, or
+ using <command>boot -v</command> in the loader. Just before the
+ installer starts, the kernel will print a list of BIOS
+ geometries. Do not panic - wait for the installer to start and
+ then use scrollback to read the numbers. Typically the BIOS
+ disk units will be in the same order that FreeBSD lists your
+ disks, first IDE, then SCSI.</para>
+
+ <para>When you are slicing up your disk, check that the disk
+ geometry displayed in the FDISK screen is correct (ie. it
+ matches the BIOS numbers); if it is wrong, use the
+ <keycap>g</keycap> key to fix it. You may have to do this if
+ there is absolutely nothing on the disk, or if the disk has been
+ moved from another system. Note that this is only an issue with
+ the disk that you are going to boot from; FreeBSD will sort
+ itself out just fine with any other disks you may have.</para>
+
+ <para>Once you have got the BIOS and FreeBSD agreeing about the
+ geometry of the disk, your problems are almost guaranteed to be
+ over, and with no need for <quote>DD</quote> mode at all. If,
+ however, you are still greeted with the dreaded <errorname>read
+ error</errorname> message when you try to boot, it is time to cross
+ your fingers and go for it - there is nothing left to
+ lose.</para>
+
+ <para>To return a <quote>dangerously dedicated</quote> disk
+ for normal PC use, there are basically two options. The first
+ is, you write enough NULL bytes over the MBR to make any
+ subsequent installation believe this to be a blank disk. You
+ can do this for example with</para>
+
+ <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda0 count=15</userinput></screen>
+
+ <para>Alternatively, the undocumented DOS
+ <quote>feature</quote></para>
+
+ <screen><prompt>C:\&gt;</prompt> <userinput>fdisk /mbr</userinput></screen>
+
+ <para>will to install a new master boot record as well, thus
+ clobbering the BSD bootstrap.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="safe-softupdates">
+ <para>Which partitions can safely use Soft Updates? I have
+ heard that Soft Updates on <filename>/</filename> can cause
+ problems.</para>
+ </question>
+
+ <answer>
+ <para>Short answer: you can usually use Soft Updates safely
+ on all partitions.</para>
+
+ <para>Long answer: There used to be some concern over using
+ Soft Updates on the root partition. Soft Updates has two
+ characteristics that caused this. First, a Soft Updates
+ partition has a small chance of losing data during a
+ system crash. (The partition will not be corrupted; the
+ data will simply be lost.) Also, Soft Updates can cause
+ temporary space shortages.</para>
+
+ <para>When using Soft Updates, the kernel can take up to
+ thirty seconds to actually write changes to the physical
+ disk. If you delete a large file, the file still resides
+ on disk until the kernel actually performs the deletion.
+ This can cause a very simple race condition. Suppose you
+ delete one large file and immediately create another large
+ file. The first large file is not yet actually removed
+ from the physical disk, so the disk might not have enough
+ room for the second large file. You get an error that the
+ partition does not have enough space, although you know
+ perfectly well that you just released a large chunk of
+ space! When you try again mere seconds later, the file
+ creation works as you expect. This has left more than one
+ user scratching his head and doubting his sanity, the
+ FreeBSD filesystem, or both.</para>
+
+ <para>If a system should crash after the kernel accepts a
+ chunk of data for writing to disk, but before that data is
+ actually written out, data could be lost or corrupted.
+ This risk is extremely small, but generally manageable.
+ Use of IDE write caching greatly increases this risk; it
+ is strongly recommended that you disable IDE write caching
+ when using Soft Updates.</para>
+
+ <para>These issues affect all partitions using Soft Updates.
+ So, what does this mean for the root partition?</para>
+
+ <para>Vital information on the root partition changes very
+ rarely. Files such as <filename>/kernel</filename> and
+ the contents of <filename>/etc</filename> only change
+ during system maintenance, or when users change their
+ passwords. If the system crashed during the
+ thirty-second window after such a change is made, it is
+ possible that data could be lost. This risk is negligible
+ for most applications, but you should be aware that it
+ exists. If your system cannot tolerate this much risk,
+ do not use Soft Updates on the root filesystem!</para>
+
+ <para><filename>/</filename> is traditionally one of the
+ smallest partitions. By default, FreeBSD puts the
+ <filename>/tmp</filename> directory on
+ <filename>/</filename>. If you have a busy
+ <filename>/tmp</filename>, you might see intermittent
+ space problems. Symlinking <filename>/tmp</filename> to
+ <filename>/var/tmp</filename> will solve this
+ problem.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="inappropriate-ccd">
+ <para>What is inappropriate about my ccd?</para>
+ </question>
+
+ <answer>
+ <para>The symptom of this is:</para>
+
+ <screen>&prompt.root; <userinput>ccdconfig -C</userinput>
+ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format</screen>
+
+ <para>This usually happens when you are trying to concatenate
+ the <literal>c</literal> partitions, which default to type
+ <literal>unused</literal>. The ccd driver requires the
+ underlying partition type to be FS_BSDFFS. Edit the disklabel
+ of the disks you are trying to concatenate and change the types
+ of partitions to <literal>4.2BSD</literal>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ccd-disklabel">
+ <para>Why can I not edit the disklabel on my ccd?</para>
+ </question>
+
+ <answer>
+ <para>The symptom of this is:</para>
+
+ <screen>&prompt.root; <userinput>disklabel ccd0</userinput>
+(it prints something sensible here, so let us try to edit it)
+&prompt.root; <userinput>disklabel -e ccd0</userinput>
+(edit, save, quit)
+disklabel: ioctl DIOCWDINFO: No disk label on disk;
+use "disklabel -r" to install initial label</screen>
+
+ <para>This is because the disklabel returned by ccd is actually
+ a <quote>fake</quote> one that is not really on the disk.
+ You can solve this problem by writing it back explicitly,
+ as in:</para>
+
+ <screen>&prompt.root; <userinput>disklabel ccd0 &gt; /tmp/disklabel.tmp</userinput>
+&prompt.root; <userinput>disklabel -Rr ccd0 /tmp/disklabel.tmp</userinput>
+&prompt.root; <userinput>disklabel -e ccd0</userinput>
+(this will work now)</screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mount-foreign-fs">
+ <para>Can I mount other foreign filesystems under FreeBSD?</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD supports a variety of other
+ filesystems.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>Digital UNIX</term>
+
+ <listitem>
+ <para>UFS CDROMs can be mounted directly on FreeBSD.
+ Mounting disk partitions from Digital UNIX and other
+ systems that support UFS may be more complex, depending
+ on the details of the disk partitioning for the operating
+ system in question.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&linux;</term>
+
+ <listitem>
+ <para>FreeBSD supports <literal>ext2fs</literal>
+ partitions. See &man.mount.ext2fs.8; for more
+ information.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&windowsnt;</term>
+
+ <listitem>
+ <para>FreeBSD includes a read-only NTFS driver. For
+ more information, see &man.mount.ntfs.8;.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>FAT</term>
+
+ <listitem>
+ <para>FreeBSD includes a read-write FAT driver. For
+ more information, see &man.mount.msdosfs.8;.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>FreeBSD also supports network filesystems such as NFS
+ (see &man.mount.nfs.8;), NetWare (see &man.mount.nwfs.8;),
+ and Microsoft-style SMB filesystems (see
+ &man.mount.smbfs.8;).</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mount-dos">
+ <para>How do I mount a secondary DOS partition?</para>
+ </question>
+
+ <answer>
+
+ <para>The secondary DOS partitions are found after ALL the
+ primary partitions. For example, if you have an
+ <quote>E</quote> partition as the second DOS partition on
+ the second SCSI drive, you need to create the special files
+ for <quote>slice 5</quote> in <filename>/dev</filename>,
+ then mount <devicename>/dev/da1s5</devicename>:</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV da1s5</userinput>
+&prompt.root; <userinput>mount -t msdos /dev/da1s5 /dos/e</userinput></screen>
+
+ <note>
+ <para>You can omit this step if you are running FreeBSD
+ 5.0-RELEASE or newer with &man.devfs.5;
+ enabled.</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="crypto-filesystem">
+ <para>&os; ¦³ÀÉ®×¥[±K¨t²Î¶Ü¡H</para>
+ </question>
+
+ <answer>
+
+ <para>¦³°Ú¡I FreeBSD 5.0 °_¤º«Ø &man.gbde.8;¡A¦Ó FreeBSD 6.0
+ ¤S¥[¤W &man.geli.8;¡C ¦Ó¸û¦­´Áªºª©¥»¡A½Ð¦h§Q¥Î <filename
+ role="package">security/cfs</filename> port¡AÁÂÁ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="nt-bootloader">
+ <para>How can I use the &windowsnt; loader to boot FreeBSD?</para>
+ </question>
+
+ <answer>
+ <para>The general idea is that you copy the first sector of your
+ native root FreeBSD partition into a file in the DOS/&windowsnt;
+ partition. Assuming you name that file something like
+ <filename>c:\bootsect.bsd</filename> (inspired by
+ <filename>c:\bootsect.dos</filename>), you can then edit the
+ <filename>c:\boot.ini</filename> file to come up with something
+ like this:</para>
+
+ <programlisting>[boot loader]
+timeout=30
+default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
+[operating systems]
+multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
+C:\BOOTSECT.BSD="FreeBSD"
+C:\="DOS"</programlisting>
+
+ <para>If FreeBSD is installed on the same disk as the &windowsnt; boot
+ partition simply copy <filename>/boot/boot1</filename> to
+ <filename>C:\BOOTSECT.BSD</filename>. However, if FreeBSD is
+ installed on a different disk <filename>/boot/boot1</filename>
+ will not work, <filename>/boot/boot0</filename> is needed.</para>
+
+ <para><filename>/boot/boot0</filename> needs to be installed
+ using sysinstall(&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>) by selecting the FreeBSD boot manager on
+ the screen which asks if you wish to use a boot
+ manager. This is because <filename>/boot/boot0</filename>
+ has the partition table area filled with NULL characters
+ but sysinstall copies the partition table before copying
+ <filename>/boot/boot0</filename> to the MBR.</para>
+
+ <warning>
+ <para><emphasis>Do not simply copy <filename>/boot/boot0</filename>
+ instead of <filename>/boot/boot1</filename>; you will
+ overwrite your partition table and render your computer
+ un-bootable!</emphasis></para>
+ </warning>
+
+ <para>When the FreeBSD boot manager runs it records the last
+ OS booted by setting the active flag on the partition table
+ entry for that OS and then writes the whole 512-bytes of itself
+ back to the MBR so if you just copy
+ <filename>/boot/boot0</filename> to
+ <filename>C:\BOOTSECT.BSD</filename> then it writes an empty
+ partition table, with the active flag set on one entry, to the
+ MBR.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="lilo-bootloader">
+ <para>How do I boot FreeBSD and &linux; from LILO?</para>
+ </question>
+
+ <answer>
+ <para>If you have FreeBSD and &linux; on the same disk, just follow
+ LILO's installation instructions for booting a non-&linux;
+ operating system. Very briefly, these are:</para>
+
+ <para>Boot &linux;, and add the following lines to
+ <filename>/etc/lilo.conf</filename>:</para>
+
+ <programlisting>other=/dev/hda2
+ table=/dev/hda
+ label=FreeBSD</programlisting>
+
+ <para>(the above assumes that your FreeBSD slice is known to
+ &linux; as <devicename>/dev/hda2</devicename>; tailor to
+ suit your setup). Then, run <command>lilo</command> as
+ <username>root</username> and you should be done.</para>
+
+ <para>If FreeBSD resides on another disk, you need to add
+ <literal>loader=/boot/chain.b</literal> to the LILO entry.
+ For example:</para>
+
+ <programlisting>other=/dev/dab4
+ table=/dev/dab
+ loader=/boot/chain.b
+ label=FreeBSD</programlisting>
+
+ <para>In some cases you may need to specify the BIOS drive number
+ to the FreeBSD boot loader to successfully boot off the second
+ disk. For example, if your FreeBSD SCSI disk is probed by BIOS
+ as BIOS disk 1, at the FreeBSD boot loader prompt you need to
+ specify:</para>
+
+ <screen>Boot: <userinput>1:da(0,a)/kernel</userinput></screen>
+
+ <para>You can configure
+ &man.boot.8;
+ to automatically do this for you at boot time.</para>
+
+ <para>The <ulink
+ url="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html">
+ &linux;+FreeBSD mini-HOWTO</ulink> is a good reference for
+ FreeBSD and &linux; interoperability issues.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="booteasy-loader">
+ <para>How do I boot FreeBSD and &linux; using BootEasy?</para>
+ </question>
+
+ <answer>
+ <para>Install LILO at the start of your &linux; boot partition
+ instead of in the Master Boot Record. You can then boot LILO
+ from BootEasy.</para>
+
+ <para>If you are running &windows; 95 and &linux; this is recommended
+ anyway, to make it simpler to get &linux; booting again if you
+ should need to reinstall &windows; 95 (which is a Jealous
+ Operating System, and will bear no other Operating Systems in
+ the Master Boot Record).</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="changing-bootprompt">
+ <para>How do I change the boot prompt from <literal>???</literal> to
+ something more meaningful?</para>
+ </question>
+
+ <answer>
+ <para>You can not do that with the standard boot manager without
+ rewriting it. There are a number of other boot managers
+ in the <filename>sysutils</filename> ports category that
+ provide this functionality.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="removable-drives">
+ <para>I have a new removable drive, how do I use it?</para>
+ </question>
+
+ <answer>
+
+ <para>Whether it is a removable drive like a &iomegazip; or an EZ drive
+ (or even a floppy, if you want to use it that way), or a new
+ hard disk, once it is installed and recognized by the system,
+ and you have your cartridge/floppy/whatever slotted in, things
+ are pretty much the same for all devices.</para>
+
+ <para>(this section is based on <ulink
+ url="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">
+ Mark Mayo's ZIP FAQ</ulink>)</para>
+
+ <para>If it is a ZIP drive or a floppy, you have already got a DOS
+ filesystem on it, you can use a command like this:</para>
+
+ <screen>&prompt.root; <userinput>mount -t msdos /dev/fd0c /floppy</userinput></screen>
+
+ <para>if it is a floppy, or this:</para>
+
+ <screen>&prompt.root; <userinput>mount -t msdos /dev/da2s4 /zip</userinput></screen>
+
+ <para>for a ZIP disk with the factory configuration.</para>
+
+ <para>For other disks, see how they are laid out using
+ &man.fdisk.8; or
+ &man.sysinstall.8;.</para>
+
+ <para>The rest of the examples will be for a ZIP drive on da2,
+ the third SCSI disk.</para>
+
+ <para>Unless it is a floppy, or a removable you plan on sharing
+ with other people, it is probably a better idea to stick a BSD
+ filesystem on it. You will get long filename support, at least a
+ 2X improvement in performance, and a lot more stability. First,
+ you need to redo the DOS-level partitions/filesystems. You can
+ either use &man.fdisk.8; or
+ <filename>sysinstall</filename>(&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>), or for a small drive
+ that you do not want to bother with multiple operating system
+ support on, just blow away the whole FAT partition table
+ (slices) and just use the BSD partitioning:</para>
+
+ <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda2 count=2</userinput>
+&prompt.root; <userinput>disklabel -Brw da2 auto</userinput></screen>
+
+ <para>You can use disklabel or
+ <filename>sysinstall</filename> to create multiple BSD
+ partitions. You will certainly want to do this if you are adding
+ swap space on a fixed disk, but it is probably irrelevant on a
+ removable drive like a ZIP.</para>
+
+ <para>Finally, create a new filesystem, this one is on our ZIP
+ drive using the whole disk:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/rda2c</userinput></screen>
+
+ <para>and mount it:</para>
+
+ <screen>&prompt.root; <userinput>mount /dev/da2c /zip</userinput></screen>
+
+ <para>and it is probably a good idea to add a line like this
+ to <filename>/etc/fstab</filename> (see &man.fstab.5;) so
+ you can just type <command>mount /zip</command> in the
+ future:</para>
+
+ <programlisting>/dev/da2c /zip ffs rw,noauto 0 0</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mount-cd-superblock">
+ <para>Why do I get <errorname>Incorrect super block</errorname> when
+ mounting a CDROM?</para>
+ </question>
+
+ <answer>
+ <para>You have to tell &man.mount.8; the type of the device
+ that you want to mount. This is described in the <ulink
+ url="&url.books.handbook;/creating-cds.html"> Handbook section on
+ optical media</ulink>, specifically the section <ulink
+ url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
+ CDs</ulink>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cdrom-not-configured">
+ <para>Why do I get <errorname>Device not
+ configured</errorname> when mounting a CDROM?</para>
+ </question>
+
+ <answer>
+ <para>This generally means that there is no CDROM in the
+ CDROM drive, or the drive is not visible on the
+ bus. Please see the <ulink
+ url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
+ CDs</ulink> section of the Handbook for a detailed
+ discussion of this issue.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cdrom-unicode-filenames">
+ <para>Why do all non-English characters in filenames show up as
+ <quote>?</quote> on my CDs when mounted in FreeBSD?</para>
+ </question>
+
+ <answer>
+ <para>Your CDROM probably uses the <quote>Joliet</quote>
+ extension for storing information about files and
+ directories. This is discussed in the Handbook chapter on
+ <ulink url="&url.books.handbook;/creating-cds.html">creating and
+ using CDROMs</ulink>, specifically the section on <ulink
+ url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
+ CDROMs</ulink>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="burncd-isofs">
+ <para>I burned a CD under FreeBSD and now I can not read it
+ under any other operating system. Why?</para>
+ </question>
+
+ <answer>
+ <para>You most likely burned a raw file to your CD, rather
+ than creating an ISO 9660 filesystem. Take a look at the
+ <ulink url="&url.books.handbook;/creating-cds.html">Handbook
+ chapter on creating CDROMs</ulink>, particularly the
+ section on <ulink
+ url="&url.books.handbook;/creating-cds.html#RAWDATA-CD">burning raw
+ data CDs</ulink>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="copy-cd">
+ <para>How can I create an image of a data CD?</para>
+ </question>
+
+ <answer>
+ <para>This is discussed in the Handbook section on <ulink
+ url="&url.books.handbook;/creating-cds.html#IMAGING-CD">duplicating
+ data CDs</ulink>. For more on working with CDROMs, see the
+ <ulink url="&url.books.handbook;/creating-cds.html">Creating CDs
+ Section</ulink> in the Storage chapter in the
+ Handbook.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mount-audio-CD">
+ <para>Why can I not <command>mount</command> an audio
+ CD?</para>
+ </question>
+
+ <answer>
+ <para>If you try to mount an audio CD, you will get an error
+ like <errorname>cd9660: /dev/acd0c: Invalid
+ argument</errorname>. This is because
+ <command>mount</command> only works on filesystems. Audio
+ CDs do not have filesystems; they just have data. You
+ need a program that reads audio CDs, such as the
+ <filename role="package">audio/xmcd</filename> port.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="multi-session-CD">
+ <para>How do I <command>mount</command> a multi-session CD?</para>
+ </question>
+
+ <answer>
+ <para>By default, &man.mount.8; will attempt to mount the
+ last data track (session) of a CD. If you would like to
+ load an earlier session, you must use the
+ <option>-s</option> command line argument. Please see
+ &man.mount.cd9660.8; for specific examples.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="user-floppymount">
+ <para>How do I let ordinary users mount floppies, CDROMs and
+ other removable media?</para>
+ </question>
+
+ <answer>
+ <para>Ordinary users can be permitted to mount devices. Here is
+ how:</para>
+
+ <procedure>
+ <step>
+ <para>As <username>root</username> set the sysctl variable
+ <varname>vfs.usermount</varname> to
+ <literal>1</literal>.</para>
+
+ <screen>&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput></screen>
+ </step>
+
+ <step>
+ <para>As <username>root</username> assign the appropriate
+ permissions to the block device associated with the
+ removable media.</para>
+
+ <para>For example, to allow users to mount the first floppy
+ drive, use:</para>
+
+ <screen>&prompt.root; <userinput>chmod 666 /dev/fd0</userinput></screen>
+
+ <para>To allow users in the group
+ <groupname>operator</groupname> to mount the CDROM drive,
+ use:</para>
+
+ <screen>&prompt.root; <userinput>chgrp operator /dev/acd0c</userinput>
+&prompt.root; <userinput>chmod 640 /dev/acd0c</userinput></screen>
+ </step>
+
+ <step>
+ <para>If you are running &os; 5.X or later, you will need to alter
+ <filename>/etc/devfs.conf</filename> to make these changes
+ permanent across reboots.</para>
+
+ <para>As <username>root</username>, add the necessary lines to
+ <filename>/etc/devfs.conf</filename>. For example, to allow
+ users to mount the first floppy drive add:</para>
+
+ <programlisting># Allow all users to mount the floppy disk.
+own /dev/fd0 root:operator
+perm /dev/fd0 0666</programlisting>
+
+ <para>To allow users in the group <groupname>operator</groupname>
+ to mount the CD-ROM drive add:</para>
+
+ <programlisting># Allow members of the group operator to mount CD-ROMs.
+own /dev/acd0 root:operator
+perm /dev/acd0 0660</programlisting>
+ </step>
+
+ <step>
+ <para>Finally, add the line
+ <literal><varname>vfs.usermount</varname>=1</literal>
+ to the file <filename>/etc/sysctl.conf</filename> so
+ that it is reset at system boot time.</para>
+ </step>
+ </procedure>
+
+ <para>All users can now mount the floppy
+ <devicename>/dev/fd0</devicename> onto a directory that they
+ own:</para>
+
+ <screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput>
+&prompt.user; <userinput>mount -t msdos /dev/fd0 ~/my-mount-point</userinput></screen>
+
+ <para>Users in group <groupname>operator</groupname> can now
+ mount the CDROM <devicename>/dev/acd0c</devicename> onto a
+ directory that they own:</para>
+
+ <screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput>
+&prompt.user; <userinput>mount -t cd9660 /dev/acd0c ~/my-mount-point</userinput></screen>
+
+ <para>Unmounting the device is simple:</para>
+
+ <screen>&prompt.user; <userinput>umount ~/my-mount-point</userinput></screen>
+
+ <para>Enabling <varname>vfs.usermount</varname>, however,
+ has negative security implications. A better way to
+ access &ms-dos; formatted media is to use the
+ <filename role="package">emulators/mtools</filename>
+ package in the ports collection.</para>
+
+ <note>
+ <para>The device name used in the previous examples must be
+ changed according to your configuration.</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="du-vs-df">
+ <para>The <command>du</command> and <command>df</command>
+ commands show different amounts of disk space available.
+ What is going on?</para>
+ </question>
+
+ <answer>
+ <para>You need to understand what <command>du</command> and
+ <command>df</command> really do. <command>du</command>
+ goes through the directory tree, measures how large each
+ file is, and presents the totals. <command>df</command>
+ just asks the filesystem how much space it has left. They
+ seem to be the same thing, but a file without a directory
+ entry will affect <command>df</command> but not
+ <command>du</command>.</para>
+
+ <para>When a program is using a file, and you delete the
+ file, the file is not really removed from the filesystem
+ until the program stops using it. The file is immediately
+ deleted from the directory listing, however. You can see
+ this easily enough with a program such as
+ <command>more</command>. Assume you have a file large
+ enough that its presence affects the output of
+ <command>du</command> and <command>df</command>. (Since
+ disks can be so large today, this might be a
+ <emphasis>very</emphasis> large file!) If you delete this
+ file while using <command>more</command> on it,
+ <command>more</command> does not immediately choke and
+ complain that it cannot view the file. The entry is
+ simply removed from the directory so no other program or
+ user can access it. <command>du</command> shows that it
+ is gone &mdash; it has walked the directory tree and the file
+ is not listed. <command>df</command> shows that it is
+ still there, as the filesystem knows that
+ <command>more</command> is still using that space. Once
+ you end the <command>more</command> session,
+ <command>du</command> and <command>df</command> will
+ agree.</para>
+
+ <para>Note that Soft Updates can delay the freeing of disk
+ space; you might need to wait up to 30 seconds for the
+ change to be visible!</para>
+
+ <para>This situation is common on web servers. Many people
+ set up a FreeBSD web server and forget to rotate the log
+ files. The access log fills up <filename>/var</filename>.
+ The new administrator deletes the file, but the system
+ still complains that the partition is full. Stopping and
+ restarting the web server program would free the file,
+ allowing the system to release the disk space. To prevent
+ this from happening, set up &man.newsyslog.8;.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="add-swap-space">
+ <para>How can I add more swap space?</para>
+ </question>
+
+ <answer>
+ <para>In the <ulink
+ url="&url.books.handbook;/config-tuning.html">Configuration and
+ Tuning</ulink> section of the Handbook, you will find a
+ <ulink
+ url="&url.books.handbook;/adding-swap-space.html">section</ulink>
+ describing how to do this.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="manufacturer-disk-size">
+ <para>Why does &os; see my disk as smaller than the
+ manufacturer says it is?</para>
+ </question>
+
+ <answer>
+ <para>Disk manufacturers calculate gigabytes as a billion bytes
+ each, whereas &os; calculates them as 1,073,741,824 bytes
+ each. This explains why, for example, &os;'s boot messages
+ will report a disk that supposedly has 80GB as holding
+ 76319MB.</para>
+ <para>Also note that &os; will (by default)
+ <link linkend="disk-more-than-full">reserve</link> 8% of the disk
+ space.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="disk-more-than-full">
+ <para>How is it possible for a partition to be more than 100%
+ full?</para>
+ </question>
+
+ <answer>
+ <para>A portion of each UFS partition (8%, by default) is
+ reserved for use by the operating system and the
+ <username>root</username> user.
+ &man.df.1; does not count that space when
+ calculating the <literal>Capacity</literal> column, so it can
+ exceed 100%. Also, you will notice that the
+ <literal>Blocks</literal> column is always greater than the
+ sum of the <literal>Used</literal> and
+ <literal>Avail</literal> columns, usually by a factor of
+ 8%.</para>
+
+ <para>For more details, look up the <option>-m</option> option
+ in &man.tunefs.8;.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+
+ <chapter id="admin">
+ <chapterinfo>
+ <author>
+ <firstname>Wei-Hon</firstname>
+ <surname>Chen</surname>
+ <affiliation>
+ <address><email>plasmaball@pchome.com.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¨t²ÎºÞ²z</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="startup-config-files">
+ <para>¨t²Î°_©l³]©wÀɦb­þ¡H</para>
+ </question>
+
+ <answer>
+
+ <para>±q 2.0.5R ¨ì 2.2.1R¡A¥D­nªº³]©wÀɬO
+ <filename>/etc/sysconfig</filename>¡C©Ò¦³ªº¿ï¶µ³£³Q«ü©w¦b³o­ÓÀÉ¡A
+ ¦Ó¨ä¥L¹³ <filename>/etc/rc</filename> (°Ñ¨£ &man.rc.8;)
+ ©M <filename>/etc/netstart</filename> ¥u¬O¤Þ¥Î¥¦¡C</para>
+
+ <para>Æ[¹î <filename>/etc/sysconfig</filename> ³o­ÓÀɨíץ¿¨ä­È¥H
+ ¾A¦X§Aªº¨t²Î¡C³o­ÓÀɥεù¸Ñ¶ñº¡¥Hªí¥Ü¦ó³B¸Ó©ñ¸m¤°»ò³]©w¡C</para>
+
+ <para>¦b post-2.2.1 ¥H«á¤Î 3.0¡A<filename>/etc/sysconfig</filename>
+ ¥ç§ó¦W¬°¤@­Ó§ó®e©ö´y­zªºÀɦW¥s &man.rc.conf.5; ¡A¨Ã¥B»yªk²¤Æ¤F¨Ç¡C
+ <filename>/etc/netstart</filename> ¥ç§ó¦W¬°
+ <filename>/etc/rc.network</filename> ¦]¦¹©Ò¦³ªºÀɮ׳£¥i¥H¥Î
+ <command>cp /usr/src/etc/rc* /etc</command> ¨Ó«þ¨©¡C</para>
+
+ <para>¦b 3.1 ¥H¤Î¡A<filename>/etc/rc.conf</filename> ³Q²¾¨ì
+ <filename>/etc/defaults/rc.conf</filename>¡C
+ <emphasis>¤d¸U¤£­n½s¿è³o­ÓÀÉ¡I</emphasis> ¦pªG
+ <filename>/etc/defaults/rc.conf</filename> ¤º¦³·Q­n§ó°Êªº¶µ¥Ø¡A
+ §AÀ³¸Ó±N¨º¤@¦æªº¤º®e«þ¨©¨ì <filename>/etc/rc.conf</filename>¡A
+ µM«á¦A­×§ï¥¦¡C</para>
+
+ <para>¨Ò¦p FreeBSD 3.1 ¤Î¥H«áªºª©¥»¤º¡A¦³¤@­Ó DNS ¦øªA¾¹ named¡A
+ ¦Ó§A·Q­n±Ò°Ê¥¦¡C§A©Ò»Ý­n§@ªº¨Æ´N¬O¡G</para>
+ <screen>&prompt.root; <userinput>echo named_enable="YES" &gt;&gt; /etc/rc.conf</userinput></screen>
+
+ <para>·Q­n¦b FreeBSD 3.1 ¤Î¥H«áªºª©¥»¤¤¡A±Ò°Ê¥»¦aºÝªA°Èªº¸Ü¡A±N
+ shell script ¸m©ó <filename>/usr/local/etc/rc.d</filename> ¥Ø¿ý
+ ¤U¡C³o¨Ç shell script À³¸Ó³]©w¦¨¥i°õ¦æ¡A¨Ã¥BÀɦW¥H .sh µ²§ô¡C
+ ¦b FreeBSD 3.0 ¤Î§ó¦­ªºª©¥»¤¤¡A§AÀ³¸Óª½±µ½s¿è
+ <filename>/etc/rc.local</filename> ÀÉ¡C</para>
+
+ <para><filename>/etc/rc.serial</filename>¥Î¨Óªì©l¤Æ§Ç¦C°ð
+ ¡]¹³¬OÂê©w°ðªº¯S©Êµ¥¡^¡C</para>
+
+ <para><filename>/etc/rc.i386</filename> ¬O Intel ±M¥Î³]©w¡A
+ ¹³¬O iBCS2 ¼ÒÀÀ©Î¬O PC ¨t²Î¥D±±¥x³]©w¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="adding-users">
+ <para>¸Ó¦p¦ó²³æ¦a·s¼W±b¸¹¡H</para>
+ </question>
+
+ <answer>
+ <para>¨Ï¥Î &man.adduser.8; «ü¥O¡C¦pªG»Ý­n§ó½ÆÂøªº¨Ï¥Î¤è¦¡¡A
+ ½Ð¥Î &man.pw.8; ³o­Ó«ü¥O¡C</para>
+
+ <para>­n¦A¦¸²¾°£¨Ï¥ÎªÌ¡A¨Ï¥Î &man.rmuser.8; «ü¥O¡CÁÙ¦³¡A
+ &man.pw.8; ¤]¥i¥H¨Ï¥Î¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="root-not-found-cron-errors">
+ <para>¦b§ï§¹ crontab Àɮ׫á¡A¬°¤°»ò¦Ñ¬O¦¬¨ì³o¼Ëªº°T®§¡G
+ <errorname>root: not found</errorname>¡H</para>
+ </question>
+
+ <answer>
+ <para>³q±`³£¬O¦]¬°½s¿è¤F¨t²Îªº crontab
+ (<filename>/etc/crontab</filename>) µM«á´N¥Î &man.crontab.1;
+ ¥h¦w¸Ë¥¦¡G</para>
+
+ <screen>&prompt.root; <userinput>crontab /etc/crontab</userinput></screen>
+
+ <para>³o¼Ë§@¬O¤£¹ïªº¡C¨t²Îªº crontab ©M &man.crontab.1;
+ ©Ò§ó·sªº¨Ï¥ÎªÌªº crontab ®æ¦¡¨Ã¤£¤@¼Ë (&man.crontab.5;
+ »¡©ú¤å¥ó°w¹ï®t²§³B¦³¸Ô²Óªº»¡©ú)¡C</para>
+
+ <para>¦pªG§A¤w¸g¥Î³oºØ¤èªk¡AÃB¥~¦h¥Xªº crontab ¥u´N¬O
+ <filename>/etc/crontab</filename> ªº«þ¨©¡A¥u¬O®æ¦¡¬O¿ù»~ªº¡C
+ ¥i¥Î¥H¤Uªº©R¥O§R°£¡G</para>
+
+ <screen>&prompt.root; <userinput>crontab -r</userinput></screen>
+
+ <para>¤U¦¸§A½s¿è <filename>/etc/crontab</filename> Àɮתº®É­Ô¡A
+ §A¤£¥Î§@¥ô¦ó°Ê§@¥h³qª¾ &man.cron.8; ¡A¥¦¦Û°Ê·|¥h°»´ú¬O§_¦³§ó°Ê¡C
+ </para>
+
+ <para>¦pªG§A·Q­n¨C¤Ñ¡B¨C¶g¡B©Î¬O¨C¤ë©T©w°õ¦æ¬Y¨Ç°Ê§@¤@¦¸¡A¤]³\¥[­Ó
+ shell script ¦b <filename>/usr/local/etc/periodic</filename>
+ ¥Ø¿ý¤U·|§ó¦n¡A¨t²Îªº cron ·|©T©w°õ¦æ &man.periodic.8; ©R¥O¡A
+ ¥¦¥i±N§Aªºµ{¦¡©M¨ä¥¦ªº¨t²Î¶g´Á©Ê¤u§@¤@°_°õ¦æ¡C</para>
+
+ <para>³o­Ó¿ù»~ªº¯u¥¿­ì¦]¡A¬O¦]¬°¨t²Îªº crontab ¦³¤@­ÓÃB¥~ªºÄæ¦ì¡A
+ »¡©ú¸Ó©R¥O­n¥H¤°»ò¨Ï¥ÎªÌ¨­¥÷°õ¦æ¡C¦b FreeBSD ªº¹w³]¨t²Î crontab
+ ¤¤¡A©Ò¦³ªº¶µ¥Ø³£¬O <username>root</username>¡C ·í³o­Ó crontab
+ ³Q·í§@¬O <username>root</username> ªº¨Ï¥ÎªÌ crontab (¥¦©M¨t²Îªº
+ crontab ¬O <emphasis>¤£</emphasis> ¤@¼Ëªº)¡A&man.cron.8; ·|¥H¬°
+ <literal>root</literal> ¦r¦ê¬O±ý°õ¦æªº©R¥Oªº²Ä¤@­Ó¦r¡A¦ý¬O¹ê»Ú¤W
+ ¨Ã¨S¦³³o¼Ëªº©R¥O¦s¦b¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="su-wheel-group">
+ <para>¬°¤°»ò§Ú·Q­n¥Î su ¦¨¬° <username>root</username> ®É¡A·|±o¨ì
+ <errorname>you are not in the correct group to su root</errorname>
+ ªº¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¬O¤@­Ó¦w¥þ¯S©Ê¡C·Q­n§Q¥Î su ¦¨¬° <username>root</username>
+ (©Î¨ä¥¦¦³ superuser Åv­­ªº±b¸¹)¡A§A¤@©w­n¦b
+ <groupname>wheel</groupname> ¸s²Õ¤º¡C¦pªG¨S¦³³o­Ó¯S©Êªº¸Ü¡A
+ ¥ô¦ó¤H¥u­n¦b¨t²Î¸Ì¦³±b¸¹¡A¨Ã¥B«ê¥©ª¾¹D <username>root</username>
+ ªº±K½X¡A´N¥i¥H¨ú±o superuser µ¥¯ÅªºÅv­­¥H¦s¨ú¨t²Î¡C¦³¤F³o­Ó¯S©Ê¡A
+ ³o¼Ëªº±¡ªp´N¤£·|µo¥Í¡F¦pªG¨Ï¥ÎªÌ¤£¦b <groupname>wheel</groupname>
+ ¸s²Õ¤ºªº¸Ü¡A&man.su.1; ·|Åý¥L­Ì³s¸ÕµÛÁä¤J±K½Xªº¾÷·|³£¨S¦³¡C</para>
+
+ <para>­nÅý¬Y¤H¥i¥H§Q¥Î su ¦¨¬° <username>root</username> ªº¸Ü¡A
+ ¥u­n§â¥L­Ì©ñ¤J <groupname>wheel</groupname> ¸s²Õ¤º§Y¥i¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="rcconf-readonly">
+ <para>§Ú¦b <filename>rc.conf</filename> ÁÙ¬O¬Y­Ó°_°ÊÀɮ׸̥ǤF¿ù»~¡A
+ ¦]¬°Àɮרt²ÎÅܦ¨°ßŪªº¡A§ÚµLªk¥h½s¿è¥¦¡C§Ú¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>·í¹q¸£°Ý§A shell §¹¾ã¸ô®|¦W®É¡A¥u­n«ö <literal>ENTER
+ </literal>¡AµM«á°õ¦æ <command>mount /</command> ¥HŪ¼g¼Ò¦¡
+ ­«·s±¾¸ü®ÚÀɮרt²Î¡C§A¤]³\»Ý­n°õ¦æ <command>mount -a -t ufs
+ </command>¡A±N§AºD¥Îªº¤å¦r½s¿è¾¹©Ò¦bªºÀɮרt²Î±¾¸ü¤W¨Ó¡C¦pªG
+ §AºD¥Îªº¤å¦r½s¿è¾¹¦bºô¸ôÀɮרt²Î¤Wªº¸Ü¡A§A¥²¶·¥ý¤â°Ê±Nºô¸ô³]©w
+ °_¨Ó¡A¥H«K±Nºô¸ôÀɮרt²Î±¾¸ü¤W¨Ó¡A©Î¬O¨Ï¥Î¥»¦aºÝÀɮרt²Î¤Wªº
+ ½s¿è¾¹¡A¨Ò¦p &man.ed.1;¡C</para>
+
+ <para>¦pªG§A·Q­n¨Ï¥Î¹³ &man.vi.1; ©Î¬O &man.emacs.1; µ¥ªº¥þ¿Ã¹õ
+ ¤å¦r½s¿è¾¹ªº¸Ü¡A§A¤]»Ý­n°õ¦æ
+ <command>export TERM=cons25 </command>¡A¥H«KÅý³o¨Ç½s¿è¾¹¯à°÷±q
+ &man.termcap.5; ¸ê®Æ®w¸ÌŪ¨ú¥¿½Tªº¸ê®Æ¡C</para>
+
+ <para>·í§A¤w¸g§¹¦¨¤F³o¨Ç¨BÆJ«á¡A§A¥i¥H·Ó§A¥­±`­×§ï¤åªk¿ù»~ªº¤è¦¡
+ ¥h½s¿è <filename>/etc/rc.conf</filename> ÀɮסC¦b®Ö¤ß (kernel)
+ ±Ò°Ê®É©ÒÅã¥Üªº¿ù»~°T®§¡A¯à°÷§i¶D§AÀɮפ¤­þ¤@¦æ¦³¿ù»~¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="printer-setup">
+ <para>¬°¤°»ò§Ú¨S¿ìªk³]©w§Úªº¦Lªí¾÷¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò¤@¤U Handbook ¤¤¡A¦³Ãö¦C¦Lªº³¡¥÷¡C¥¦À³¸Ó¯à°÷¸Ñ¨M
+ §A¤j³¡¥÷ªº°ÝÃD¡C½Ð°Ñ¦Ò <ulink url="../handbook/printing.html">
+ Handbook ¤¤ªº¦C¦L³¡¥÷</ulink>¡C</para>
+
+ <para>¦³¨Ç¦Lªí¾÷»Ý­n¥D¾÷¤ä´©ªºÅX°Êµ{¦¡ (host-based driver) ¤~¯à
+ °õ¦æ¥ô¦ó¦C¦L¥\¯à¡CFreeBSD ¥»¨­¨Ã¤£¤ä´©³o¨Ç©Ò¿×ªº
+ <quote>WinPrinters</quote>¡C ¦pªG§Aªº¦Lªí¾÷µLªk¦b DOS ©Î
+ Windows NT 4.0 ¤U°õ¦æ¡A¨º¥¦¤j·§´N¬O¤@¥x WinPrinter¡C§A°ß¤@¯à¨Ï¥Î
+ ³o¼Ëªº¦Lªí¾÷ªº§Æ±æ¡A´N¬O¸Õ¸Õ <filename role="package">
+ print/pnm2ppa</filename> ¤ä¤£¤ä´©¥¦¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="keyboard-mappings">
+ <para>§Ú­n«ç»ò¼Ë­×¥¿§Úªº¨t²Î©Ò¨Ï¥ÎªºÁä½L¹ï¬M (keyboard mapping)¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò Handbook ¤¤ªº <ulink
+ url="../handbook/using-localization.html">using localization
+ </ulink> ³¹¸`¡A¤×¨ä¬O <ulink
+ url="../handbook/using-localization.html#SETTING-CONSOLE">console
+ setup</ulink> ³¹¸`¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pnp-resources">
+ <para>¬°¤°»ò§Ú¦b¨t²Î±Ò°Ê®É¡A±o¨ì <errorname>unknown: &lt;PNP0303&gt;
+ can't assign resources</errorname> ªº°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para>¥H¤U¬O±q &os.current; ³q«H½×¾Âªº¤@½g¤å³¹¤¤¸`¿ý¥X¨Óªº¡C</para>
+
+ <blockquote>
+ <attribution>&a.wollman;, 2001 ¦~¥|¤ë 24 ¤é</attribution>
+
+ <para><quote>µLªk«ü¬£¸ê·½ (can't assign resources)</quote> °T®§ªí¥Ü
+ ¨º¨Ç¸Ë¸m¬O¶Ç²Îªº ISA ¸Ë¸m¡A¦Ó®Ö¤ß¤¤¤w¸g½s¤J¤£»{±o PNP ªºÅX°Êµ{
+ ¦¡¡C³o¨Ç¸Ë¸m¥]¬AÁä½L±±¨î¾¹¡A¥iµ{¦¡¤Æ§ÃÂ_±±¨î´¹¤ù¡AÁÙ¦³´X­Ó¼Ð·Ç
+ ³]³Æ¡C¸ê·½µLªk«ü¬£µ¹³o¨Ç¸Ë¸m¡A¬O¦]¬°¦­¤w¦³ÅX°Êµ{¦¡¨Ï¥Î¨º¨Ç¦ì§}
+ ¤F¡C</para>
+ </blockquote>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="user-quotas">
+ <para>¬°¤°»ò user quotas µLªk¥¿±`¹B§@¡H</para>
+ </question>
+
+ <answer>
+
+ <orderedlist>
+ <listitem>
+ <para>¥i¯à§A kernel ³]©w¥¼¥[¤J quotas ¤ä´©(¹w³]¬OµL)¡C¦pªG¬O³o¼Ë¤lªº¸Ü¡A
+ ¨º»ò½Ð§â¤U­±³o¦æ¥[¨ì kernel ³]©wÀɤº¨Ã­«·s½sĶ¡B¦w¸Ë¡G</para>
+ <programlisting>options QUOTA</programlisting>
+
+ <para>²Ó¸`³¡¤À¡A½Ð°Ñ¾\ Handbook ¤ºªº <ulink url="&url.books.handbook;/quotas.html">
+ quotas</ulink> ³¹¸`¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>½Ð¤£­nª½±µ¦b <filename>/</filename> ¥´¶} quotas </para>
+ </listitem>
+
+ <listitem>
+ <para>§â quotas ÀÉ©ñ¦b¥¦¥²¶·±j­¢¸m¤JªºÀɮרt²Î¤º¡AÁ|¨Ò¡G</para>
+
+ <informaltable frame="none">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Àɮרt²Î</entry>
+ <entry>Quota ÀÉ</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><filename>/usr</filename></entry>
+ <entry><filename>/usr/admin/quotas</filename></entry>
+ </row>
+
+ <row>
+ <entry><filename>/home</filename></entry>
+ <entry><filename>/home/admin/quotas</filename></entry>
+ </row>
+
+ <row>
+ <entry>&hellip;</entry>
+ <entry>&hellip;</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </listitem>
+ </orderedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sysv-ipc">
+ <para>FreeBSD ¤ä´© System V IPC ®æ¦¡«ü¥O¶°¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Oªº¡AFreeBSD ¤ä´© System V-style IPC¡C³o¥]¬A¦@¨É°O¾ÐÅé¡A
+ °T®§¸ò«H¸¹¡C§A»Ý­n¦b§Aªº kernel ³]©wÀɤº¥[¤J¤U¦C´X¦æ¥H±Ò°Ê¥¦­Ì¡C</para>
+
+ <programlisting>options SYSVSHM # enable shared memory
+options SYSVSEM # enable for semaphores
+options SYSVMSG # enable for messaging</programlisting>
+
+ <note>
+ <para>¦b FreeBSD 3.2 ¥H¤Î¤§«áªºª©¥»¡A³o¨Ç¿ï¶µ¤w¸g¬O
+ <emphasis>GENERIC</emphasis> ®Ö¤ßªº¤@³¡¥÷¡A¤]´N¬O»¡¥¦­Ì¤w
+ ¸g½s¶i¤F§Aªº¨t²Î¤¤¡C</para>
+ </note>
+
+ <para>­«·s½sĶ¨Ã¦w¸Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="uucpmail">
+ <para>§Ú¸Ó¦p¦óÅý sendmail ³z¹L UUCP ¨Ó»¼°e¶l¥ó¡H</para>
+ </question>
+
+ <answer>
+ <para>¸òÀH FreeBSD ®M¸Ë¦Ó¨Óªº sendmail ³]©w¬O¾A¦X¨º¨Çª½±µ³s¤Wºô»Úºô¸ô
+ ªº¯¸¥x¡C·Q³z¹L UUCP ¥æ´«¶l¥óªº¯¸¥x¥²¶·¥t¥~¦w¸Ë sendmail ªº³]©wÀɮסC
+ </para>
+
+ <para>¤â°Ê­×§ï <filename>/etc/sendmail.cf</filename> ¬Oµ´¹ï¥²­nªº¡C
+ ²Ä 8 ª©ªº sendmail ´£¨Ñ¤@­Ó¥þ·sªº¤J¤f¥H³z¹L¤@¨Ç¹³ &man.m4.1;
+ ªº³B²z´N¯à²£¥Í³]©wÀÉ¡A³o¨Æ¹ê¤W¬O¤@­Ó°ª¼h·§©Àµ¥¯Åªº§Þ¥©©Ê³]©w¡C
+ §AÀ³¸Ó¥i¥H¦b <filename>/usr/src/usr.sbin/sendmail/cf</filename>
+ ¥H¤U¸Ì¨Ï¥Î¥¦¡G</para>
+
+ <para>°²¦p§A¤£¬O¥Î full sources ¤è¦¡¦w¸Ë¨t²Î¡A¨º»ò sendmail
+ ³]©w¶µ¥Ø¥i¯à¤w¸g¤À´²¦¨¦n´X­Ó¨Ó·½¤À¥¬Àɦbµ¥µÛ§A¡A°²³]§A¤w¸g
+ mount ¥úºÐ¾÷¡A°µ¥H¤U°Ê§@¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /cdrom/src</userinput>
+&prompt.root; <userinput>cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail</userinput></screen>
+
+ <para>§OÅå·W¡A³o¥u¦³¼Æ¤Q¸U­Ó¦ì¤¸²Õªº¤j¤p¡C¦b <filename>cf</filename>
+ ¥Ø¿ý¸Ìªº <filename>README</filename> ¥i¥H´£¨Ñ¤@­Ó m4 ³]©wªkªº°ò
+ ¥»¤¶²Ð¡C</para>
+
+ <para>¥H UUCP »¼°e¨Ó»¡¡A«Øij§A³Ì¦n¨Ï¥Î <literal>mailertable</literal>
+ ¯SÂI¡C«Øºc¤@­Ó¸ê®Æ®wÅý sendmail ¥i¥H¨Ï¥Î¥¦¦Û¤vªº¸ô®|¨Mµ¦¡C</para>
+
+ <para>­º¥ý¡A§A¥²¶·«Ø¥ß¦Û¤vªº <filename>.mc</filename> ÀÉ¡C
+ <filename>/usr/src/usr.sbin/sendmail/cf/cf</filename> ¥Ø¿ý¬O³o¨Ç
+ Àɮתº®a¡C¬d¬Ý¤@¤U¡A¤w¸g¦³¦n´X­Ó½d¨ÒÀÉ¡A°²³]§A¤w¸g©R¦W¦Û¤vªºÀÉ¥s
+ <filename>foo.mc</filename>¡A§A­n°µªº¥u¬O§â¥¦Âà´«¦¨¤@­Ó¦³®Äªº
+ <filename>sendmail.cf</filename>¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail/cf/cf</userinput>
+&prompt.root; <userinput>make foo.cf</userinput>
+&prompt.root; <userinput>cp foo.cf /etc/mail/sendmail.cf</userinput></screen>
+
+ <para>¤@­Ó¨å«¬ªº <filename>.mc</filename> Àɬݰ_¨Ó¥i¯à¹³³o¼Ë¡G</para>
+
+ <programlisting>VERSIONID(`<replaceable>Your version number</replaceable>')
+OSTYPE(bsd4.4)
+
+FEATURE(accept_unresolvable_domains)
+FEATURE(nocanonify)
+FEATURE(mailertable, `hash -o /etc/mail/mailertable')
+
+define(`UUCP_RELAY', <replaceable>your.uucp.relay</replaceable>)
+define(`UUCP_MAX_SIZE', 200000)
+define(`confDONT_PROBE_INTERFACES')
+
+MAILER(local)
+MAILER(smtp)
+MAILER(uucp)
+
+Cw <replaceable>your.alias.host.name</replaceable>
+Cw <replaceable>youruucpnodename.UUCP</replaceable></programlisting>
+
+ <para><literal>accept_unresolvable_domains</literal>¡A
+ <literal>nocanonify</literal>¡A ©M
+ <literal>confDONT_PROBE_INTERFACES</literal> ¯S©Ê±NÁקK¥ô¦ó¦b
+ »¼°e¶l¥ó®É·|¥Î¨ì DNS ªº¾÷·|¡C<literal>UUCP_RELAY</literal>
+ ¶µ¥Øªº¥X²{²z¥Ñ«Ü©_©Ç¡A´N¤£­n°Ý¬°¦ó¤F¡C²³æªº©ñ¤J¤@­Óºô»Úºô¸ô
+ ¤W¥i¥H³B²z .UUCP µêÀÀºô°ì¦ì§}ªº¥D¾÷¦WºÙ¡F³q±`¡A§A¥u»Ý­n¦b³o
+ ¸Ì¶ñ¤J§A ISP ªº«H¥ó¦^ÂгB (mail replay)¡C</para>
+
+ <para>§A¤w¸g°µ¨ì³o¸Ì¤F¡A§AÁٻݭn³o­Ó¥s
+ <filename>/etc/mail/mailertable</filename>¡C¦pªG§A¥u¦³¤@­Ó¥Î
+ ¨Ó¶Ç»¼©Ò¦³¶l¥óªº¹ï¥~³q¹Dªº¸Ü¡A¥H¤UªºÀÉ®×´N¨¬°÷¤F¡G</para>
+
+ <programlisting>#
+# makemap hash /etc/mail/mailertable.db &lt; /etc/mail/mailertable
+ uucp-dom:<replaceable>your.uucp.relay</replaceable></programlisting>
+
+ <para>¥t¤@­Ó§ó½ÆÂøªº¨Ò¤l¬Ý°_¨Ó¹³³o¼Ë¡G</para>
+
+ <programlisting>#
+# makemap hash /etc/mail/mailertable.db &lt; /etc/mail/mailertable
+#
+horus.interface-business.de uucp-dom:horus
+interface-business.de uucp-dom:if-bus
+interface-business.de uucp-dom:if-bus
+heep.sax.de smtp8:%1
+horus.UUCP uucp-dom:horus
+if-bus.UUCP uucp-dom:if-bus
+ uucp-dom:</programlisting>
+
+
+ <para>¦p§A©Ò¨£¡A³o¬O¬Y­Ó¯u¹êÀɮ׸̪º¤@³¡¥÷¡C­º¤T¦æ³B²zºô°ì©w§}«H¥ó
+ ¤£À³¸Ó³Q°e¥X¨ì¤º©w¸ô®|¡A¦Ó¥Ñ¬Y¨Ç UUCP ¾F©~(UUCP neighbor)¨ú¥N
+ ªº¯S®í±¡§Î¡A³o¬O¬°¤F <quote>ÁYµu</quote>»¼°eªº¸ô®|¡C¤U¤@¦æ³B²z¨ì
+ ¥»¦a¤A¤Óºô¸ôºô°ìªº«H¥óÅý¥¦¥i¥H¨Ï¥Î SMTP ¨Ó»¼°e¡C³Ì«á¡AUUCP ¾F©~´£¨ì
+ .UUCP µêÀÀºô°ìªº°O¸ü¡A¤¹³\¤@­Ó <literal><replaceable>uucp-neighbor
+ </replaceable>!<replaceable>recipient</replaceable></literal> ±À½
+ ¤º©w³W«h¡C³Ì«á¤@¦æ«h¥H¤@­Ó³æ¿Wªº¥yÂI°µµ²§ô¡A¥H UUCP »¼°e¨ì´£¨Ñ·í
+ §A¥þ¥@¬É©Ê¶l¥ó¹hªùªºUUCP ¾F©~¡C©Ò¦³¦b <literal>uucp-dom:</literal>
+ ÃöÁä¦r¸Ìªº¸`ÂI¦WºÙ¥²¶·³£¬O¦³®Äªº UUCP ¾F©~¡A§A¥i¥H¥Î
+ <literal>uuname</literal> ©R¥O¥h½T»{¡C
+ </para>
+
+ <para>´£¿ô§A³o­ÓÀɮצb¨Ï¥Î«e¥²¶·³QÂà´«¦¨ DBM ¸ê®Æ®wÀɮסA³Ì¦n¦b
+ mailertable ³Ì¤W­±¥Îµù¸Ñ¼g¥X©R¥O¦C¨Ó§¹¦¨³o­Ó¤u§@¡C·í§A¨C¦¸§ó´«§A
+ ªº mailertable «á§AÁ`¬O»Ý­n°õ¦æ³o­Ó©R¥O¡C</para>
+
+ <para>³Ì«á´£¥Ü¡G¦pªG§A¤£½T©w¬Y¨Ç¯S©wªº«H¥ó¸ô®|¥i¥Î¡A°O±o§â
+ <option>-bt</option> ¿ï¶µ¥[¨ì sendmail¡C³o·|±N sendmail ±Ò°Ê¦b
+ <emphasis>address test mode</emphasis>¡F¥u­n«ö¤U
+ <literal>0</literal>¡A±µµÛ¿é¤J§A§Æ±æ´ú¸Õªº«H¥ó¸ô®|¦ì§}¡C
+ ³Ì«á¤@¦æ§i¶D§A¨Ï¥Î¤º³¡ªº«H¥ó¥N²zµ{¦¡¡A¥N²zµ{¦¡ªº·|³qª¾¥Øªº¥D¾÷¡A
+ ¥H¤Î(¥i¯àÂà´«ªº)¦ì§}¡C­nÂ÷¶}¦¹¼Ò¦¡½Ð«ö Control-D¡C</para>
+
+ <screen>&prompt.user; <userinput>sendmail -bt</userinput>
+ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
+Enter &lt;ruleset&gt; &lt;address&gt;
+<prompt>&gt;</prompt> <userinput>3,0 foo@example.com</userinput>
+canonify input: foo @ example . com
+..
+parse returns: $# uucp-dom $@ <replaceable>your.uucp.relay</replaceable> $: foo &lt; @ example . com . &gt;
+<prompt>&gt;</prompt> <userinput>^D</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ispmail">
+ <para>·í§Ú¥Î¼·±µ³s¤Wºô¸ô®É¸Ó«ç»ò³]©w«H¥ó»¼°e¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§A¤w¸g¦³¤@­Ó©T©wªº IP ¼Æ¦r¡A§A¤£»Ý­n½Õ¾ã¥ô¦ó¤º©w­È¡C³]¦n
+ §A­n«ü©wªººô¸ô¦WºÙ¡A¨ä¥Lªº sendmail ³£·|À°§A°µ§¹¡C</para>
+
+ <para>¦pªG§A®³¨ìªº¬O°ÊºA°t¸mªº IP ¼Æ¦r¦Ó¨Ï¥Î¼·±µ ppp ³s±µ¨ìºô»Úºô
+ ¸ô¡A§A¥i¯à¤w¸g¦b§Aªº ISP «H¥ó¥D¾÷¤W¦³¤@­Ó«H½c¡C°²³]§Aªº ISP ºô°ì
+ ¬O <hostid role="domainname">example.net</hostid>¡A§Aªº¨Ï¥ÎªÌ¦W
+ ºÙ¬O <username>user</username>¡C¥ç°²³]§AºÙ¦Û¤vªº¥D¾÷¦WºÙ¬O
+ <hostid role="fqdn">bsd.home</hostid> ¦Ó§Aªº ISP §i¶D§A¥i¥H¨Ï¥Î
+ <hostid role="fqdn">relay.example.net</hostid> ·í§@«H¥ó¦^ÂгB¡C
+ </para>
+
+ <para>¬°¤F±q§Aªº«H½c±µ¦¬«H¥ó¡A§A±N»Ý­n¦w¸Ë¨ú«Hµ{¦¡¥H«K±q«H½c¨ú¦^«H¥ó¡C
+ <application>Fetchmail</application> ¬O¤@­Ó¤£¿ùªº¿ï¾Ü¡A¦]¬°¥¦¤ä
+ ´©³\¦h¤£¦Pªº³q°T¨ó©w¡A³q±`§Aªº ISP ·|´£¨Ñ POP3¡C¦pªG§A¿ï¾Ü¨Ï¥Î
+ user-ppp¡A§A¥i¥H¦b³s½u¨ìºô¸ô¦¨¥\«á¦Û°Ê§ì¨ú§Aªº«H¥ó¡A¥u­n¦b
+ <filename>/etc/ppp/ppp.linkup</filename>¸Ì­±³]©w¥H¤U³o¶µ¡G</para>
+
+ <programlisting>MYADDR:
+ !bg su user -c fetchmail</programlisting>
+
+ <para>°²¨Ï§A¥¿¨Ï¥Î <application>sendmail</application> (¦p¤U©Ò¥Ü)
+ ¶Ç°e«H¥ó¨ì«D¥»¦a±b¸¹¡A¸m¤J¥H¤U©R¥O¡G</para>
+
+ <programlisting> !bg su user -c "sendmail -q"</programlisting>
+
+ <para>¦b¤W­±¨º¶µ©R¥O¤§«á¡C³o·|±j­¢ <application>sendmail</application>
+ ¦b³s±µ¤Wºô¸ô«á°¨¤W¶}©l³B²z mailqueue¡C</para>
+
+ <para>§Ú°²³]§A¦b <hostid role="fqdn">bsd.home</hostid> ¾÷¾¹¤W¦³¤@­Ó
+ <username>user</username> ªº±b¸¹¡C¦b <hostid
+ role="fqdn">bsd.home</hostid> ¾÷¾¹¤W <username>user</username>
+ ªº®a¥Ø¿ý¸Ì«Ø¥ß¤@­Ó <filename>.fetchmailrc</filename> ªºÀɮסG</para>
+
+ <programlisting>poll example.net protocol pop3 fetchall pass MySecret</programlisting>
+
+ <para>µL¶·Âب¥¡A³o­ÓÀÉ°£¤F <username>user</username> ¥~¤£À³¸Ó³Q¥ô
+ ¦ó¤HŪ¨ú¡A¦]¬°¥¦¥]§t <literal>MySecret</literal> ³o­Ó±K½X¡C</para>
+
+ <para>¬°¤F¦b±H«H®É¦³¥¿½Tªº©ïÀY <literal>from:</literal>¡A§A¥²¶·§i¶D
+ <application>sendmail</application> ¨Ï¥Î
+ <literal>user@example.net</literal> ¦Ó«D
+ <literal>user@bsd.home</literal>¡C§A¥i¯à·|§Æ±æ§i¶D
+ <application>sendmail</application> ±q
+ <hostid role="fqdn">relay.example.net</hostid> °e¥X©Ò¦³«H¥ó¡A
+ ¥[§Ö«H¥ó¶Ç°e¡C</para>
+
+ <para>¥H¤Uªº <filename>.mc</filename> ÀÉÀ³¯àº¡¨¬§Aªº­n¨D¡G</para>
+
+ <programlisting>VERSIONID(`bsd.home.mc version 1.0')
+OSTYPE(bsd4.4)dnl
+FEATURE(nouucp)dnl
+MAILER(local)dnl
+MAILER(smtp)dnl
+Cwlocalhost
+Cwbsd.home
+MASQUERADE_AS(`example.net')dnl
+FEATURE(allmasquerade)dnl
+FEATURE(masquerade_envelope)dnl
+FEATURE(nocanonify)dnl
+FEATURE(nodns)dnl
+define(`SMART_HOST', `relay.example.net')
+Dmbsd.home
+define(`confDOMAIN_NAME',`bsd.home')dnl
+define(`confDELIVERY_MODE',`deferred')dnl</programlisting>
+
+ <para>¦p¦óÂà´«³o­Ó <filename>.mc</filename> Àɮרì
+ <filename>sendmail.cf</filename> Àɪº¸Ô²Ó²Ó¸`¡A½Ð°Ñ¦Ò¤W¤@¸`¡C
+ ¥t¥~¡A¦b§ó·s <filename>sendmail.cf</filename> ¥H«á¤£­n§Ñ°O­«·s±Ò°Ê
+ <application>sendmail</application>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sendmail-alternative">
+ <para>°£¤F Sendmail ¥~¡AÁÙ¦³­þ¨Ç¶l¥ó¦øªA¾¹¥i¥H¨Ï¥Î©O¡H</para>
+ </question>
+
+ <answer>
+ <para><ulink url="http://www.sendmail.org/">Sendmail</ulink>
+ ¬O FreeBSD ¹w³]¨Ï¥Îªº¶l¥ó¦øªA¾¹¡A¦ý¬O§AÁÙ¬O¥i¥H«Ü®e©ö¦a¥H¨ä¥¦
+ ¶l¥ó¦øªA¾¹ (¨Ò¦p¡A±q port ¦w¸Ëªº¶l¥ó¦øªA¾¹) ¨ú¥N¤§¡C</para>
+
+ <para>port ¸Ì¦³«Ü¦h¥i¨Ñ¿ï¾Üªº¶l¥ó¦øªA¾¹¡A¹³
+ <filename role="package">mail/exim</filename>¡B
+ <filename role="package">mail/postfix</filename>¡B
+ <filename role="package">mail/qmail</filename>¡B
+ <filename role="package">mail/zmailer</filename> 杭A
+ ´N¬O´X­Ó«Ü¨üÅwªïªº¿ï¾Ü¡C</para>
+
+ <para>¦h¼Ë¿ï¾Ü¬O¦n¨Æ¡A¦Ó¥B¤j®a¦³³\¦h¶l¥ó¦øªA¾¹¥i¥H¨Ï¥Î¤]³Q»{¬°¬O
+ ¦n¨Æ¡F©Ò¥H½ÐÁקK¦b³q«H½×¾Â¸Ì°Ý¹³ <quote>Sendmail ¦³¤ñ Qmail
+ ¦n¶Ü¡H</quote> ³o¼Ëªº°ÝÃD¡C¦pªG§A¯uªº«Ü·Q°Ýªº¸Ü¡A½Ð¥ý¨ì³q«H½×¾Â
+ archive ¸Ì§ä¤@¤U¡C¨C¤@­Ó¶l¥ó¦øªA¾¹ªºÀuÂI»P¯ÊÂI¡A¥H«e¤j·§´N¤w¸g
+ °Q½×¦n´X¦¸¤F¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="forgot-root-pw">
+ <para>§Ú§Ñ¤F <username>root</username> ±K½X¤F¡I«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>¤£­nÅå·W¡I¥u­n­«·s±Ò°Ê¨t²Î¡A¦b¬Ý¨ì Boot: ®É¿é¤J
+ <userinput>boot -s</userinput> §Y¥i¶i¤J³æ¨Ï¥ÎªÌ¼Ò¦¡
+ (¦b 3.2-RELEASE ¤§«eªºª©¥»½Ð§ï¥Î <userinput>-s</userinput>)¡C
+ ¦b°Ý­n¨Ï¥Î­þ­Ó shell ®É¡A«ö¤U ENTER¡C§A·|¬Ý¨ì¤@­Ó &prompt.root;
+ ªº´£¥Ü¸¹¡A¿é¤J <command>mount -u /</command> ¥H­«·s±¾¤W(mount)
+ §Aªº®ÚÀɮרt²Î¥i¨ÑŪ/¼g¡C°õ¦æ <command>passwd root</command>
+ ¥H§ó´« <username>root</username> ±K½X¡AµM«á°õ¦æ &man.exit.1;
+ Ä~Äò±Ò°Êµ{§Ç¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="CAD-reboot">
+ <para>§Ú¸Ó«ç»òÅý Control-Alt-Delete ¤£·|­«·s±Ò°Ê¨t²Î¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§A¬O¨Ï¥Î FreeBSD 2.2.7-RELEASE ©Î¤§«áª©¥»ªº
+ syscons(¨t²Î¤º©wªº¥D±±¥xÅX°Êµ{¦¡)¡A§â¤U¦C³o¦æ©ñ¨ì kernel ³]©wÀɤº¡A
+ µM«á­«°µ¤@­Ó·sªº®Ö¤ß¡G</para>
+
+ <programlisting>options SC_DISABLE_REBOOT</programlisting>
+
+ <para>­Y¬O¨Ï¥Î FreeBSD 2.2.5-RELEASE ©Î¤§«áª©¥»ªº PCVT ¥D±±¥xÅX°Ê
+ µ{¦¡¡A«h¥H¤U¦C¿ï¶µ¥N´À¡G</para>
+
+ <programlisting>options PCVT_CTRL_ALT_DEL</programlisting>
+
+ <para>¨ä¥L§ó¦­´Áªº FreeBSD ª©¥»¡A½Ð­×§ï§A¥¿¦b¨Ï¥Îªº¥D±±¥xÁä½L¹ïÀ³¡A
+ ¨Ã±N©Ò¦³ <literal>boot</literal> ÃöÁä¦r¥H <literal>nop</literal>
+ ¨ú¥N¡C¤º©wªºÁä½L¹ïÀ³¬O¦b
+ <filename>/usr/share/syscons/keymaps/us.iso.kbd</filename>¡C
+ §A¥i¯à»Ý­n©ú¥Õªº§h©J <filename>/etc/rc.conf</filename> ¥hŪ¨ú
+ ³o­ÓÁä½L¹ïÀ³¥H½T«O§ó°Ê¥Í®Ä¡C·íµM¦pªG§A¥¿¦b¥Î¾A¦X§A°êÄyªºÁä½L¹ïÀ³¡A
+ §AÀ³¸Ó½s¿è¨º¤@­Ó¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dos-to-unix-txt">
+ <para>§Ú¸Ó«ç»ò§â DOS ¤å¦rÀÉ®×­«·s®æ¦¡¤Æ¦¨ UNIX ªº¡H</para>
+ </question>
+
+ <answer>
+ <para>¥u­n¨Ï¥Î³o­Ó perl ©R¥O¡G</para>
+
+ <screen>&prompt.user; <userinput>perl -i.bak -npe 's/\r\n/\n/g' file ...</userinput></screen>
+
+ <para>file ´N¬O­n³B²zªºÀɮסC³o­Ó­×§ï¬O¦b¤º³¡§¹¦¨¡A­ì©lªºÀÉ®×·|Àx¦s¦¨
+ °ÆÀɦW¬° .bak ªºÀɮסC</para>
+
+ <para>©ÎªÌ§A¥i¥H¨Ï¥Î &man.tr.1; ³o­Ó©R¥O¡G</para>
+
+ <screen>&prompt.user; <userinput>tr -d '\r' &lt; <replaceable>dos-text-file</replaceable> &gt; <replaceable>unix-file</replaceable></userinput></screen>
+
+ <para><replaceable>dos-text-file</replaceable> ¬O¥]§t DOS ¤å¦rªº
+ ÀɮסA¦Ó <replaceable>unix-text-file</replaceable> «h¬O¥]§tÂà´«
+ ªº¿é¥Xµ²ªG¡C³o¤ñ¨Ï¥Î perl ÁÙ­n§Ö¤W¤@ÂIÂI¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="kill-by-name">
+ <para>§Ú¸Ó«ç»ò¥Î¦WºÙ¬å±¼ process¡H</para>
+ </question><answer>
+
+ <para>¨Ï¥Î &man.killall.1; ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="root-acl">
+ <para>¬°¦ó¦b su ¤@ª½»¡§Ú¤£¦b <username>root</username> ªº ACL ¸Ì¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>³o­Ó¿ù»~¬O¦]¬° Kerberos ¤À´²»{ÃÒ¨t²Î¡C³o­Ó°ÝÃD¨Ã¤£¬O«ÜÄY­«
+ ¦ý¬O¥O¤H¹½·Ð¡C§A¥i¥H¥Î -K ¿ï¶µ¥h°õ¦æ su¡A©Î¬O¹³¤U­Ó°ÝÃD©Ò´y­zªº
+ ²¾°£ Kerberos¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="uninstall-kerberos">
+ <para>§Ú¸Ó«ç»ò²¾°£ Kerberos¡H</para>
+ </question>
+
+ <answer>
+ <para>­n±q¨t²Î¸Ì²¾°£ Kerberos¡A­«¸Ë§A¥¿¦b°õ¦æªº release ª©¥»ªº
+ bin distribution¡C¦pªG§A¦³ CDROM¡A§A¥i¥H mount cd(°²³]¦b /cdrom)
+ ¨Ã°õ¦æ¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /cdrom/bin</userinput>
+&prompt.root; <userinput>./install.sh</userinput></screen>
+
+ <para>©ÎªÌ§A¤]¥i¥H±N <filename>/etc/make.conf</filename> ¸Ìªº
+ "MAKE_KERBEROS" ¿ï¶µ¥þ³£®³±¼¡AµM«á¦A build world.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="add-pty">
+ <para>§Ú¸Ó«ç»ò¼W¥[¨t²ÎªºµêÀÀ²×ºÝ¾÷¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§A¦³³\¦h telnet¡Assh¡AX ©Î¬O screen ¨Ï¥ÎªÌ¡A§A©Î³\·|¥Î§¹
+ µêÀÀ²×ºÝ¾÷¡A³o¯à±Ð§A«ç»ò¥[§ó¦h¡G</para>
+
+ <procedure>
+ <step>
+ <para>«Ø¥ß¨Ã¦w¸Ë¤@­Ó·sªº kernel ¨Ã¥B§â³o¤@¦æ</para>
+
+ <programlisting>pseudo-device pty 256</programlisting>
+
+ <para>¥[¤J¨ì³]©wÀɸ̡C</para>
+ </step>
+
+ <step>
+ <para>°õ¦æ³o­Ó©R¥O¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV pty{1,2,3,4,5,6,7}</userinput></screen>
+
+ <para>·|³y¥X 256 ­ÓµêÀÀ²×ºÝ¾÷ªº¸Ë¸m¸`ÂI¡C</para>
+
+ </step>
+
+ <step>
+ <para>½s¿è <filename>/etc/ttys</filename> ¨Ã¥[¤J²Å¦X 256
+ ­Ó²×ºÝ¾÷ªº¦æ¼Æ¡C¥¦­ÌÀ³¸Ó²Å¦X¤w¸g¦s¦b³æ¶µªº®æ¦¡¡AÁ|¨Ò¨Ó»¡¡A
+ ¥¦­Ì¬Ý°_¨Ó¹³¡G</para>
+
+ <programlisting>ttyqc none network</programlisting>
+
+ <para>¦r¥À³]­pªº¶¶§Ç¬O
+ <literal>tty[pqrsPQRS][0-9a-v]</literal>¡A¨Ï¥Î¥¿³Wªí¥Ü¦¡¡C
+ </para>
+ </step>
+
+ <step>
+ <para>¥Î·sªº kernel ­«·s±Ò°Ê¹q¸£´N¥i¥H¤F¡C</para>
+ </step>
+ </procedure>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="create-snd0">
+ <para>/dev/snd0 ³o­Ó¸Ë¸m°µ¤£¥X¨Ó¡I</para>
+ </question>
+
+ <answer>
+ <para>¨Ã¨S <devicename>snd</devicename> ³o­Ó¸Ë¸mªº¦s¦b¡C³o­Ó¦W¦r
+ ¬O¥Î¨Ó·í§@¦U­Ó²Õ¦¨ FreeBSD Án­µÅX°Êµ{¦¡²Õ¡A½Ñ¦p
+ <devicename>mixer</devicename>¡A
+ <devicename>sequencer</devicename>¡A¥H¤Î
+ <devicename>dsp</devicename> ªºÂ²ºÙ¡C</para>
+
+ <para>¥i¥H¥Î¥H¤Uªº©R¥O§@¥X³o¨Ç¸Ë¸m¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV snd0</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="reread-rc">
+ <para>¥i¥H¤£¥Î¶}¾÷¡A­«·sŪ¨ú <filename>/etc/rc.conf</filename>¡B
+ ¦A¦¸±Ò°Ê <filename>/etc/rc</filename> ¶Ü?</para>
+ </question>
+
+ <answer>
+ <para>¥ý¶i¤J³æ¤H¨Ï¥ÎªÌ¼Ò¦¡¡AµM«á¦A¦^¨ì¦h¨Ï¥ÎªÌ¼Ò¦¡¡C</para>
+
+ <para>¦b¥D±±¥x°õ¦æ¡G</para>
+
+ <screen>&prompt.root; <userinput>shutdown now</userinput>
+(Note: without -r or -h)
+
+&prompt.root; <userinput>return</userinput>
+&prompt.root; <userinput>exit</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="release-candidate">
+ <para>§Ú·Q­n§â§Úªº¨t²Îª@¯Å¨ì³Ì·sªº -STABLE¡A¦ý¬O±o¨ìªº¬O -RC ©Î
+ -PRERELEASE¡I«ç»ò¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æ¦a»¡¡G¨º¥u¬O¦W¦r¦Ó¤w¡CRC ªº·N«ä¬O <quote>Release Candiate¡A
+ µo¦æ­Ô¿ïª©¥»</quote>¡A¥¦ªí¥Ü·sª©¥»§Ö­nµo¦æ¤F¡C¦b FreeBSD ¤¤¡A
+ -PRERELEASE ³q±`¬Oµo¦æ«eªºµ{¦¡½X­áµ²ªº¥N¦Wµü¡C(¦³¨Çµo¦æª©¥»¤¤¡A
+ -BETA ¼ÐÅÒ¸ò -PRERELEASE ¬O¬Û¦P·N«äªº¡C)</para>
+
+ <para>¸Ô²Ó¦a»¡¡GFreeBSD ±q¨â­Ó¦a¤è¤À¤ä¥X¥¦ªºµo¦æª©¥»¡C¥Dª©¸¹¡B
+ ÂI¹s¡Brelease (¨Ò¦p 3.0-RELEASE ¤Î 4.0-RELEASE) ªº¡A¬O±qµo®i¹Lµ{
+ ¶}©l®É¤À¤ä¥X¨Óªº¡A³q±`ºÙ¬° <link linkend="current">-CURRENT
+ </link>¡C¦³°Æª©¸¹ªºª©¥» (¨Ò¦p 3.1-RELEASE ©Î 4.2-RELEASE)¡A¬O
+ ¬¡ÅDªº <link linkend="stable">-STABLE</link> ¤À¤ä¤¤ªºµo¦æª©¥»
+ §Ö·Ó¡C±q 4.3-RELEASE ¶}©l¡A¨C¤@­Óµo¦æª©¥»¦³¥¦¦Û¤vªº¤À¤ä¡A¥i¬°
+ °¾¦n·¥«×«O¦uªºµo®i³t«× (³q±`¥u·|§@¦w¥þ¤è­±ªº§ó·s) ªº¤H©Ò¥Î¡C</para>
+
+ <para>·Ç³Æ­n»s§@µo¦æª©¥»®É¡A¨ä©Ò¦bªº¤À¤ä·|¸g¹L¤@©wªºµ{§Ç¡C¦³¤@­Ó¬O
+ µ{¦¡½X­áµ²¡C·íµ{¦¡½X­áµ²¶}©l®É¡A¤À¤ä¦WºÙ·|§ó¦W¡A¥H¤Ï¬M¥¦§Ö­n¦¨¬°
+ ¤@­Óµo¦æª©¥»¤F¡CÁ|­Ó¨Ò¤l¡A¦pªG­ì¨Óªº¤À¤ä¥s 4.5-STABLE¡A¥¦ªº¦W¦r
+ ·|Åܦ¨ 4.6-PRERELEASE ¥Hªí¥Üµ{¦¡½X¤w­áµ²¡A¨Ã¥BÃB¥~ªºµo¦æ«e´ú¸Õ
+ ±N­n¶}©l¤F¡C¯äÂΧ󥿤´¥i¦^³ø¡A¥H¦¨¬°µo¦æª©¥»ªº¤@³¡¥÷¡C·íµ{¦¡½X
+ ¦³¤F¥i¦¨¬°µo¦æª©¥»ªºÂú§Î®É¡A¥¦ªº¦W¦r´N·|Åܦ¨ 4.6-RC¡A¥Hªí¥Üµo¦æ
+ ª©¥»§Ö¦n¤F¡C¶i¤J RC ¶¥¬q«á¡A¥u¦³§ä¨ìªº³Ì¦³¼vÅTªº¯äÂΤ~·|³Q­×¥¿¡C
+ ·íµo¦æª©¥» (¥»¨Ò¤¤¬° 4.6-RELEASE) ²£¥Í«á¡Aµo¦æª©¥»·|¦³¦Û¤vªº¤À¤ä¡A
+ ­ì¤À¤ä·|³Q§ó¦W¬° 4.6-STABLE¡C</para>
+
+ <para>·Q­n±oª¾§ó¦h¦³Ãöª©¥»¸¹½X»P¦U CVS ¤À¤äªº¸ê°T¡A½Ð°Ñ¦Ò
+ <ulink url="../../articles/releng/article.html">Release
+ Engineering</ulink> ¤@¤å¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="kernel-chflag-failure">
+ <para>§Ú¸ÕµÛ­n¦w¸Ë¤@­Ó·sªº®Ö¤ß¡A¦ý¬OµLªk chflags¡C§Ú¸Ó«ç»ò¸Ñ¨M¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>²³æ¦a»¡¡G§Aªº securelevel ¥i¯à¤j©ó¹s¡Cª½±µ­«·s¶}¾÷¨ì
+ ³æ¤H¼Ò¦¡¡A¦A¦w¸Ë®Ö¤ß¡C</para>
+
+ <para>¸Ô²Ó¦a»¡¡GFreeBSD ¦b securelevel ¤j©ó¹s±¡ªp¤U¡A¤£¤¹³\
+ Åܧó¨t²ÎºX¼Ð (system flags)¡C§A¥i¥H¥Î³o­Ó«ü¥OÀˬd§Aªº
+ securelevel¡G</para>
+
+ <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
+
+ <para>§A¨S¦³¿ìªk­°§C securelevel¡F§A¥²¶·±Ò°Ê¨t²Î¨ì³æ¤H¼Ò¦¡¥H
+ ¦w¸Ë®Ö¤ß¡A©Î¬O­×§ï <filename>/etc/rc.conf</filename> ¤ºªº
+ securelevel ¦A­«·s¶}¾÷¡C½Ð°Ñ¦Ò &man.init.8; »¡©ú¤å¥ó¡A¥H¨ú±o
+ §ó¦h¦³Ãö securelevel ªº¸ê°T¡AÁÙ¦³ <filename>/etc/defaults/rc.conf
+ </filename> ©M &man.rc.conf.5; »¡©ú¤å¥ó¡A¥H¨ú±o§ó¦h¦³Ãö rc.conf
+ ªº¸ê°T¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="kernel-securelevel-time">
+ <para>¦b§Úªº¨t²Î¤W¡A§ÚµLªkÅܧó®É¶¡¶W¹L¤@¬í¥H¤Wªº½d³ò¡I
+ §Ú¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æ¦aÁ¿¡G§A¨t²Îªº securelevel ¤]³\¤j©ó 1¡Cª½±µ­«·s¶}¾÷¦Ü
+ ³æ¤H¼Ò¦¡¡AµM«á¦A­×§ï®É¶¡¡C</para>
+
+ <para>¸Ô²Ó¦a»¡¡G¦b securelevel ¤j©ó 1 ªº±¡ªp¤U¡AFreeBSD ¤£¤¹³\®É¶¡
+ Åܰʤj©ó¤@¬í¡C§A¥i¥H¥Î¥H¤Uªº©R¥O¨ÓÀˬd¥Ø«eªº securelevel¡G</para>
+
+ <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
+
+ <para>§AµLªk­°§C securelevel¡F§A¥²¶·±Ò°Ê¹q¸£¦Ü³æ¤H¼Ò¦¡¤U¥H­×§ï®É¶¡¡A
+ ©Î¬O­×§ï <filename>/etc/rc.conf</filename> ¦A­«·s¶}¾÷¡C½Ð°Ñ¦Ò
+ &man.init.8; »¡©ú¤å¥ó¡A¥H¨ú±o§ó¦h¦³Ãö securelevel ªº¸ê°T¡AÁÙ¦³
+ <filename>/etc/defaults/rc.conf</filename> ©M &man.rc.conf.5;
+ »¡©ú¤å¥ó¡A¥H¨ú±o§ó¦h¦³Ãö rc.conf ªº¸ê°T¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="statd-mem-leak">
+ <para>¬°¤°»ò <command>rpc.statd</command> ¥Î¤F 256 megabytes
+ ªº°O¾ÐÅé¡H</para>
+ </question>
+
+ <answer>
+ <para>¤£¡A¨º¤£¬O memory leak¡A¦Ó¥B¥¦¤]¤£¬O¯uªº¥Î¤F 256 Mbyte
+ ªº°O¾ÐÅé¡C¥¦¥u¬O³ßÅw (·N«ä´N¬OÁ`·|³o¼Ë§@) ±N¤@ª¯²¼ªº°O¾ÐÅé
+ ¬MÁ¨쥦¦Û¤vªº¦ì§}ªÅ¶¡¡A¥H¤è«K§@¨Æ¡C´N§Þ³N¦Ó¨¥¡A³o¼Ë¨Ã¨S¦³
+ ¤°»ò¤£¹ï¡F³o¼Ë¥u¬O·|Åý &man.top.1; ©M &man.ps.1; À~¤@¤j¸õ¦Ó¤w¡C
+ </para>
+
+ <para>&man.rpc.statd.8; ·|±N¥¦ªºª¬ºAÀÉ®× (¦ì©ó <filename>/var
+ </filename>) ¬M®g¦Ü¥¦ªº¦ì§}ªÅ¶¡¸Ì¡F¬°¤F¨¾¤î»Ý­nªº®É­Ô¦A¼W¤j©Ò
+ ¾É­Pªº­«·s¬M®g¡A¥¦¤@¦¸·|¨Ï¥Î¬Û·í¤jªº¤j¤p¡C±qµ{¦¡½X¨Ó¬Ýªº¸Ü´N
+ §ó©úÅã¤F¡A¥i¥H¬Ý¨ì &man.mmap.2; ªºªø«×°Ñ¼Æ¬° <literal>0x10000000
+ </literal>¡A¥¦¬O IA32 ¬[ºc¤Wªº¤Q¤»¤À¤§¤@ªº©w§}ªÅ¶¡¡A¤]´N¬O
+ 256MB¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="unsetting-schg">
+ <para>¬°¤°»ò§Ú¨S¿ìªk¨ú®ø <literal>schg</literal> Àɮ׺X¼Ð¡H</para>
+ </question>
+
+ <answer>
+ <para>§A¥¿¦b¤@­Ó´£°ª¤F securelevel (¤]´N¬O¤j©ó 0) ªº¨t²Î¹B§@¡C
+ ­°§C securelevel ¦A¸Õ¸Õ¬Ý¡C½Ð°Ñ¦Ò <link linkend="securelevel">
+ FAQ ¤¤¹ï securelevel ªº»¡©ú</link> ©M &man.init.8; »¡©ú¤å¥ó¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ssh-shosts">
+ <para>¬°¤°»òªñ¨Óªº·sª© FreeBSD ¹w³]µLªk§Q¥Î <filename>.shosts
+ </filename> §¹¦¨ SSH »{ÃÒ¡H</para>
+ </question>
+
+ <answer>
+ <para>¬°¤°»òªñ¨Ó·sª© FreeBSD <filename>.shosts</filename> »{ÃÒ¹w³]
+ ¬°¨ú®øªº­ì¦]¡A¬O¦]¬° &man.ssh.1; ¹w³]¤£¦w¸Ë¬° suid ¦¨ <username>
+ root</username>¡C­n <quote>­×¥¿</quote> ³oÂI¡A§A¥i¥H§@¤U¦Cªº
+ ¥ô¦ó¤@¥ó¨Æ¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>­n¤@³Ò¥Ã¶h¸Ñ¨M¡A½Ð±N <filename>/etc/make.conf</filename>
+ ¸Ìªº <makevar>ENABLE_SUID_SSH</makevar> ³]¦¨ <literal>true
+ </literal>¡AµM«á¦A­«·s build ssh (©Î¬O°õ¦æ <command>make
+ world</command>)¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¥u§@¤@®Éªº­×¥¿ªº¸Ü¡A¥i¥H <username>root</username> ¨­¥÷
+ °õ¦æ <command>chmod 4755 /usr/bin/ssh</command> ±N
+ <filename>/usr/bin/ssh</filename> ³]¦¨ <literal>4555
+ </literal>¡CµM«á±N <makevar>ENABLE_SUID_SSH= true</makevar>
+ ¥[¤J <filename>/etc/make.conf</filename> ¸Ì¡A³o¼Ë¤U¦¸
+ <command>make world</command> °õ¦æ´N·|¥Í®Ä¤F¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="vnlru">
+ <para>¤°»ò¬O <literal>vnlru</literal>?</para>
+ </question>
+
+ <answer>
+ <para>·í¨t²Î¹F¨ì¤W­­ <varname>kern.maxvnodes</varname> ®É¡A
+ <literal>vnlru</literal> ·|²M°£¨ÃÄÀ©ñ vnode¡C³o­Ó®Ö¤ß
+ °õ¦æºü¤j³¡¥÷ªº®É¶¡³£¨S¨Æ§@¡A¥u¦³·í§A¦³«Ü¤jªº°O¾ÐÅé¡A¦Ó¥B
+ ¥¿¦b¦s¨ú¤W¸U­Ó¤pÀɮ׮ɡA¤~·|³Q±Ò°Ê¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="x">
+ <chapterinfo>
+ <author>
+ <firstname>Wei-Hon</firstname>
+ <surname>Chen</surname>
+ <affiliation>
+ <address><email>plasmaball@pchome.com.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>X Window System ¤Î Virtual Consoles</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="running-X">
+ <para>§Ú·Q­n°õ¦æ X ¡A§Ú¸Ó«ç»ò°µ¡H</para>
+ </question>
+
+ <answer>
+
+ <para>³Ì²³æªº¤èªk´N¬O¦b¦w¸Ë¨t²Îªº®É­Ô¤@¨Ö¦w¸Ë¡C</para>
+
+ <para>µM«á¬Ý¬Ý &man.xorgconfig.1; ªº¤å¥ó¡A³o­Óµ{¦¡¥i¥H
+ À°±z³]©w &xorg; ¬ÛÃö³]©w¡A¨Ï¥¦¯à°÷¥¿½T¹B¥Î±zªºÅã¥Ü¥d¡B·Æ¹«µ¥¶gÃä¡C¦¹¥~¡AÁÙ¥i¥H¥Î &man.xorgcfg.1;
+ ªº¹Ï§Î¤¶­±¨Ó°µ¬ÛÃö³]©w¡C</para>
+
+ <para>±z©Î³\¤]·Q¸Õ¸Õ¬Ý Xaccel server¡C¸Ô±¡½Ð¬Ý <link linkend="xig">Xi Graphics</link>
+ ³o¤@¬q¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="running-X-securelevels">
+ <para>§Ú <emphasis>¸ÕµÛ</emphasis> ­n°õ¦æ X, ¦ý¬O·í§ÚÁä¤J
+ <command>startx</command> ®É¡A±o¨ì
+ <errorname>KDENABIO failed (Operation not permitted)</errorname>
+ ¿ù»~¡C§Ú¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>§Aªº¨t²Î¤@©w´£°ª¤F securelevel¡A¹ï¤£¹ï¡H¦b¤@­Ó´£°ª¤F
+ securelevel ªº¨t²Î¤W¡A¬Oµ´¹ïµLªk°_°Ê X ªº¡C·Qª¾¹D¬°¤°»ò¡A
+ ½Ð°Ñ¦Ò &man.init.8; »¡©ú¤å¥ó¡C</para>
+
+ <para>©Ò¥H³o­Ó°ÝÃDÅܦ¨¡G§AÁÙ¯à«ç»ò¿ì¡C°ò¥»¤W§A¦³¨âºØ¿ï¾Ü¡G
+ ±N§Aªº securelevel ³]¦^¹s (³q±`¦b <filename>/etc/rc.conf
+ </filename> ¸Ì­±³]©w)¡A©Î¬O¦b±Ò°Ê®É°õ¦æ &man.xdm.1; (¦b
+ securelevel ³Qª@°ª«e)¡C</para>
+
+ <para>½Ð°Ñ¦Ò <xref linkend="xdm-boot"/> ¥H¨ú±o§ó¦h¦³Ãö±Ò°Ê®É
+ °õ¦æ &man.xdm.1; ªº¸ê°T¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="x-and-moused">
+ <para>¬°¤°»ò§Ú¤£¯à¦b X ¸Ì¨Ï¥Î·Æ¹«¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG±z¥Îªº¬O syscons (¤º©wªº console ÅX°Êµ{¦¡) ªº¸Ü¡A±z¥i¥H
+ ¸g¥Ñ³]©w FreeBSD ¨ÓÅý¥¦¤ä´©¦b¨C­Ó virtual console ¨Ï¥Î·Æ¹«¡C¬°¤F
+ ÁקK©M X ²£¥Í½Ä¬ð¡Asyscons ¨Ï¥Î¤F¤@­Ó¥s°µ
+ <devicename>/dev/sysmouse</devicename> ªºµêÀÀ¸Ë¸m¡C©Ò¦³·Æ¹«²£¥Íªº
+ event ³£·|§Q¥Î moused ¨Ó¼g¨ì sysmouse ³o­Ó¸Ë¸m¡C¦pªG±z§Æ±æ¦b¤@­Ó
+ ©Î¥H¤Wªº virtual console ¤W¨Ï¥Î·Æ¹«¡A<emphasis>¨Ã¥B</emphasis>
+ ¯à°÷¨Ï¥Î X ªº¸Ü¡A½Ð°Ñ¦Ò
+ <xref linkend="moused" remap="another section"/> ¨Ã¥B³]©w¦n
+ moused¡C</para>
+
+ <para>µM«á½s¿è <filename>/etc/XF86Config</filename> ³o­ÓÀɮסA
+ ¨Ã¥B½T»{§A¦³¥H¤U³o´X¦æªº³]©w¡C</para>
+
+ <programlisting>Section Pointer
+Protocol "SysMouse"
+Device "/dev/sysmouse"
+....</programlisting>
+
+ <para>¥H¤Wªº¨Ò¤l¡A¾A¥Î©ó XFree86 3.3.2 ¤Î¨ä«áªºª©¥»¡C¥Î©ó§ó¦­ªº
+ ª©¥»ªº¡A¨ä <emphasis>Protocol</emphasis> À³¬°
+ <emphasis>MouseSystems</emphasis>¡C</para>
+
+ <para>¦³¨Ç¤H¤ñ¸û³ßÅw¦b³]©w X ªº®É­Ô¥Î
+ <devicename>/dev/mouse</devicename> ³o­Ó¸Ë¸m¡C¦pªG±z­nÅý¥¦¯à°÷
+ ¥¿±`¤u§@ªº¸Ü¡A±z´N¥²¶·§â <devicename>/dev/mouse</devicename>
+ ³sµ²¨ì <devicename>/dev/sysmouse</devicename> (½Ð°Ñ¦Ò
+ &man.sysmouse.4;):</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>rm -f mouse</userinput>
+&prompt.root; <userinput>ln -s sysmouse mouse</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="x-and-wheel">
+ <para>·Æ¹«ªººu½ü¡A¯à¦b X ¸Ì­±¨Ï¥Î¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¡C¤£¹L»Ý­n³]©w X client ºÝµ{¦¡¡C ½Ð°Ñ¦Ò <ulink
+ url="http://www.inria.fr/koala/colas/mouse-wheel-scroll/">
+ Colas Nahaboo ªººô­¶
+ (http://www.inria.fr/koala/colas/mouse-wheel-scroll/)
+ </ulink>.</para>
+
+ <para>¦pªG§A­n¨Ï¥Î <application>imwheel</application> µ{¦¡¡A
+ ¥u­n¸òµÛ¤U¦C¨BÆJ§@§Y¥i¡C</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Âà´«ºu½ü event
+Translate the Wheel Events</para>
+
+ <para><application>imwheel</application> µ{¦¡ªº¹B§@­ì²z¡A
+ ¬O±N·Æ¹«ªº²Ä¥|Áä»P²Ä¤­ÁäÂà´«¦¨«öÁä event¡C¦]¬°¦p¦¹¡A©Ò¥H
+ §A¥²¶·Åý·Æ¹«ÅX°Êµ{¦¡±N·Æ½ü¨Æ¥óÂà´«¦¨²Ä¥|Áä»P²Ä¤­Áä event¡C
+ ¦³¨âºØ¤èªk¥i¥H¹F¨ì¥Øªº¡A¤@¬OÅý &man.moused.8; §@Âà´«¡A¤G¬O
+ Åý X ¥»¨­¥h§@ event Âà´«¡C</para>
+
+ <orderedlist>
+ <listitem>
+ <para>¨Ï¥Î &man.moused.8; ¨ÓÂà´«ºu½ü Event</para>
+
+ <para>­nÅý &man.moused.8; ¨Ó§@ event Âà´«¡A¥u­n¦b
+ °õ¦æ &man.moused.8; ªº©R¥O¦C¤¤¥[¤W <option>-z 4</option>
+ §Y¥i¡CÁ|­Ó¨Ò¤l¡A¦pªG§A¤@¯ë³£¬O¥H
+ <command>moused -p /dev/psm0</command> ¨Ó°_°Ê
+ &man.moused.8; ªº¸Ü¡A¥u­n§ï¦¨ <command>moused -p
+ /dev/psm0 -z 4</command> §Y¥i¡C¦pªG§A¬O¦b¶}¾÷¹Lµ{¤¤§Q¥Î
+ <filename>/etc/rc.conf</filename> ¨Ó°_°Ê &man.moused.8;¡A
+ §A¥i¥H¦b <filename>/etc/rc.conf</filename> ¤¤±N
+ <varname>moused_flags</varname> ¤W¥[ <option>-z 4
+ </option> §Y¥i¡C</para>
+
+ <para>§A²{¦b»Ý­nÅý X ª¾¹D§Aªº·Æ¹«¦³¤­­Ó«öÁä¡A¥u­n¦b
+ <filename>/etc/XF86Config</filename> ¤¤ªº
+ <quote>Pointer</quote> °Ï¶ô¤¤¥[¤W
+ <literal>Buttons 5</literal> ³o¤@¦æ§Y¥i¡C¨Ò¦p¡A
+ §A¥i¯à¦b <filename>/etc/XF86Config</filename> ¤¤¦³
+ ¥H¤Uªº <quote>Pointer</quote> °Ï¶ô¡G</para>
+
+ <example>
+
+ <title>¦b XFree86 3.3.x ¨t¦Cªº XF86Config ³]©wÀɪº
+ <quote>Pointer</quote> °Ï¶ô¤¤¡A¥H moused §@Âà´«
+ ªººu½ü¹«ªº³]©w½d¨Ò</title>
+
+ <programlisting>Section "Pointer"
+ Protocol "SysMouse"
+ Device "/dev/sysmouse"
+ Buttons 5
+EndSection</programlisting>
+ </example>
+
+ <example>
+ <title>¦b XFree86 4.x ¨t¦Cªº XF86Config ³]©wÀɪº
+ <quote>InputDevice</quote> °Ï¶ô¤¤¡A¥H X Server §@Âà´«
+ ªººu½ü¹«ªº³]©w½d¨Ò</title>
+
+ <programlisting>Section "InputDevice"
+ Identifier "Mouse1"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/sysmouse"
+ Option "Buttons" "5"
+EndSection</programlisting>
+ </example>
+
+ <example>
+ <title>¦b <quote>.emacs</quote> ¤¤¡A³]©wºu½ü¹«ªº­ì¥Í
+ ­¶­±ºu°Ê¤ä´©½d¨Ò</title>
+ <programlisting>;; wheel mouse
+(global-set-key [mouse-4] 'scroll-down)
+(global-set-key [mouse-5] 'scroll-up)</programlisting>
+ </example>
+
+ </listitem>
+
+ <listitem>
+ <para>§Q¥Î§Aªº X Server ¨Ó§@ºu½ü Event Âà´«</para>
+
+ <para>¦pªG§A¨S¦³°õ¦æ &man.moused.8;¡A©Î¬O§A¤£·Q§Q¥Î
+ &man.moused.8; ¥h§@ºu½ü event Âà´«¡A§A¥i¥H§ï¥Î
+ X server ¨Ó§@³o¼Ëªº event Âà´«¡C§A±o¦b <filename>
+ /etc/XF86Config</filename> Àɮפ¤§@´X­Ó§ó°Ê¡C²Ä¤@¡A
+ §A­n¬°§Aªº·Æ¹«¿ï¾Ü¾A·íªº³q°T¨ó©w¡C¤j¦h¼Æªººu½ü¹«³£
+ ¨Ï¥Î <quote>IntelliMouse</quote> ¨ó©w¡A¤£¹L XFree86
+ ¤]¤ä´©¨ä¥¦ªº³q°T¨ó©w¡A¨Ò¦pù§Þªº MouseMan+ ·Æ¹«©Ò¥Îªº
+ <quote>MouseManPlusPS/2</quote>¡C·í§A¿ï¦n¤§«á¡A¥u­n
+ ¥[¶i¤@¦æ <quote>Pointer</quote> °Ï¶ôªº <varname>
+ Protocol</varname> ÅܼƧY¥i¡C</para>
+
+ <para>²Ä¤G¡A§A­n§i¶D X server ±N±²°Ê¨Æ¥ó­«·s¹ï¬M¦Ü·Æ¹«ªº
+ ²Ä¥|©M²Ä¤­Áä¡C³o¥i¥H§Q¥Î <varname>ZAxisMapping</varname>
+ ¿ï¶µ¿ì¨ì¡C</para>
+
+ <para>Á|­Ó¨Ò¤l¡A¦pªG§A¨S¦³¨Ï¥Î &man.moused.8;¡A¦Ó§A¦³¤@­Ó
+ IntelliMouse ¦w¸Ë¦b PS/2 ·Æ¹«°ðªº¸Ü¡A§A¥i¥H¦b
+ <filename>/etc/XF86Config</filename> ¸Ì¨Ï¥Î¥H¤Uªº³]©w¡C
+ </para>
+
+ <example>
+ <title>¦b XF86Config ³]©wÀɪº <quote>Pointer</quote>
+ °Ï¶ô¤¤¡A¥H X Server §@Âà´«ªººu½ü¹«ªº³]©w½d¨Ò</title>
+
+ <programlisting>Section "Pointer"
+ Protocol "IntelliMouse"
+ Device "/dev/psm0"
+ ZAxisMapping 4 5
+EndSection</programlisting>
+ </example>
+
+ <example>
+ <title>¦b XFree86 4.x ¨t¦Cªº XF86Config ³]©wÀɪº
+ <quote>InputDevice</quote> °Ï¶ô¤¤¡A¥H X Server §@Âà´«
+ ªººu½ü¹«ªº³]©w½d¨Ò</title>
+
+ <programlisting>Section "InputDevice"
+ Identifier "Mouse1"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/psm0"
+ Option "ZAxisMapping" "4 5"
+EndSection</programlisting>
+ </example>
+
+ <example>
+ <title>¦b <quote>.emacs</quote> ¤¤¡A³]©wºu½ü¹«ªº­ì¥Í
+ ­¶­±ºu°Ê¤ä´©½d¨Ò</title>
+ <programlisting>;; wheel mouse
+(global-set-key [mouse-4] 'scroll-down)
+(global-set-key [mouse-5] 'scroll-up)</programlisting>
+ </example>
+
+ </listitem>
+ </orderedlist>
+ </listitem>
+
+ <listitem>
+ <para>¦w¸Ë <application>imwheel</application></para>
+
+ <para>±µ¤U¨Ó¡A±q Ports ¸Ì¦w¸Ë <application>imwheel
+ </application>¡C¦b x11 Ãþ§O¸Ì¥i¥H§ä¨ì¥¦¡A¥¦¥i¥H±N
+ ºu½ü event ¹ï¬M¨ìÁä½L event¡CÁ|­Ó¨Ò¤l¡A¥¦¥i¥H¦b§A
+ ±Nºu½ü©¹«e±À®É¡A°e¥X¤@­Ó <keycap>Page Up</keycap>
+ ¨ì§AªºÀ³¥Îµ{¦¡¥h¡C<application>Imwheel</application>
+ §Q¥Î¤@­Ó³]©wÀÉ¡A¥H«K¹ïÀ³ºu½ü event ¦ÜÁä½L event¡A³o¼Ë
+ ¥¦´N¥i¥H¦b¤£¦PªºÀ³¥Îµ{¦¡¤¤¡A°e¥X¤£¦PªºÁä½L«öÁä¡C¹w³]ªº
+ <application>imwheel</application> ³]©wÀɬO¦b
+ <filename>/usr/X11R6/etc/imwheelrc</filename>¡A¦pªG§A·Q
+ ½s¿è¦Û­qªº³]©wÀɪº¸Ü¡A¥i¥H±N¥¦½Æ»s¨ì
+ <filename>~/.imwheelrc</filename>¡AµM«á¨Ì§Aªº»Ý­n­×§ï¥¦¡C
+ ³]©wÀɪº®æ¦¡¦b &man.imwheel.1; ¸Ì­±¦³¸Ô²Óªº»¡©ú¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>³]©w <application>Emacs</application> »P
+ <application>Imwheel</application> ¨ó¦P¤u§@
+ (<emphasis>¿ï¾Ü©Ê</emphasis>)</para>
+
+ <para>¦pªG§A¨Ï¥Î <application>emacs</application> ©Î¬O
+ <application>Xemacs</application> ªº¸Ü¡A¨º§A»Ý­n¦b§Aªº
+ <filename>~/.emacs</filename> Àɮ׸̥[¤W¤@¤p¬q³]©w¡C
+ <application>emacs</application> ½Ð¥[¤W³o¤@¬q¡G</para>
+
+ <example>
+ <title><application>Imwheel</application> ªº
+ <application>Emacs</application> ³]©w</title>
+
+ <programlisting>;;; For imwheel
+(setq imwheel-scroll-interval 3)
+(defun imwheel-scroll-down-some-lines ()
+ (interactive)
+ (scroll-down imwheel-scroll-interval))
+(defun imwheel-scroll-up-some-lines ()
+ (interactive)
+ (scroll-up imwheel-scroll-interval))
+(global-set-key [?\M-\C-\)] 'imwheel-scroll-up-some-lines)
+(global-set-key [?\M-\C-\(] 'imwheel-scroll-down-some-lines)
+;;; end imwheel section</programlisting>
+ </example>
+
+ <para><application>Xemacs</application> «h¦b
+ <filename>~/.emacs</filename> Àɸ̥[¤W³o¤@¬q¡G</para>
+
+ <example>
+ <title><application>Imwheel</application> ªº
+ <application>Xemacs</application> ³]©w</title>
+
+ <programlisting>;;; For imwheel
+(setq imwheel-scroll-interval 3)
+(defun imwheel-scroll-down-some-lines ()
+ (interactive)
+ (scroll-down imwheel-scroll-interval))
+(defun imwheel-scroll-up-some-lines ()
+ (interactive)
+ (scroll-up imwheel-scroll-interval))
+(define-key global-map [(control meta \))] 'imwheel-scroll-up-some-lines)
+(define-key global-map [(control meta \()] 'imwheel-scroll-down-some-lines)
+;;; end imwheel section</programlisting>
+ </example>
+ </listitem>
+
+ <listitem>
+ <para>°õ¦æ <application>Imwheel</application></para>
+
+ <para>¦w¸Ë¤§«á¡A§A¥i¥Hª½±µ¦b xterm ¸ÌÁä¤J <command>imwheel
+ </command> ©R¥O¥H°_°Ê¥¦¡C¥¦·|¥H­I´º°õ¦æ¡A¨Ã¥B°¨¤Wµo´§®Ä¥Î¡C
+ ¦pªG§A½T©w­nª½±µ¨Ï¥Î <application>imwheel</application>¡A
+ ¥u­n§â¥¦¥[¶i§A¦Û¤vªº <filename>.xinitrc</filename> ©Î
+ <filename>.xsession</filename> ¤ºÀɮקY¥i¡C§A¥i¥H¤£ºÞ
+ <application>imwheel</application> ©Ò°e¥X¨Ó¦³Ãö PID ÀÉ®×
+ ĵ§i¡C¨º¨Çĵ§i¥u¹ï Linux ª©ªº <application>imwheel
+ </application> ¦³®Ä¦Ó¤w¡C</para>
+ </listitem>
+ </orderedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="window-menu-weird">
+ <para>¬°¤°»ò X Window ªº¿ï³æ©M¹ï¸Ü®Ø¤£¯à¥¿±`¹B§@¡H</para>
+ </question>
+
+ <answer>
+ <para>§â Num Lock Ãö±¼¸Õ¸Õ¡C</para>
+
+ <para>¦pªG±zªº Num Lock ¦b¶}¾÷®Éªº¹w³]­È¬O¶}µÛªº¸Ü¡A±z¥²¶·§â¤U¦C
+ ³o¦æ©ñ¨ì <filename>XF86Config</filename> ³]©wÀɤ¤ªº
+ <literal>Keyboard</literal> ³¡¥÷¡C</para>
+
+ <programlisting># Let the server do the NumLock processing. This should only be
+# required when using pre-R6 clients
+ ServerNumLock</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="virtual-console">
+ <para>¤°»ò¬O virtual console¡H§Ú­n«ç»ò°µ¤~¯à¥Î¦h¤@ÂI¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æ¨Ó»¡¡Avirtual console ´N¬O¥i¥HÅý±z¤£¥²°µ¤Ó¦h½ÆÂøªº³]©w
+ ¦p¨Ï¥Îºô¸ô©Î°õ¦æ X ¡A¦Ó¦b¦P¤@»O¾÷¾¹¤W¦P®É°µ¦n´X¥ó¨Æªº¤èªk¡C</para>
+
+ <para>·í±Ò°Ê¨t²Î¨ÃÅã¥Ü§¹©Ò¦³¶}¾÷°T®§¤§«á¡A±z´N·|¦b¿Ã¹õ¤W¬Ý¨ì¤@­Ó
+ login ªº´£¥Ü²Å¸¹¡C¦b³o­Ó®É­Ô±z´N¥i¥H¿é¤J±zªº login name ¥H¤Î
+ password ¡AµM«á´N¥i¥H¦b²Ä¤@­Ó virtual console ¤W¶}©l¤u§@¤F
+ (©ÎªÌ¶}©lª±¡I) ¡C</para>
+
+ <para>¦b¬Y¨Ç±¡ªp¤U¡A±z¥i¯à·|·Q­n§@¨ä¥Lªº¤u§@¡A¨Ò¦p»¡¬O¬Ý¬Ý±z¥¿¦b
+ °õ¦æªºµ{¦¡ªº»¡©ú¤å¥ó¡A©Î¬O·í±z¦b FTP ¶Ç¿éªºµ¥«Ý®É¶¡¤¤¬Ý¬Ý±zªº
+ ¶l¥ó¡C±z¥u»Ý­n«ö Alt-F2 («ö¦í Alt Á䤣©ñ¡A¨Ã«ö¤U F2 Áä) ¡AµM«á
+ ±z´N·|¦b²Ä¤G­Ó <quote>virtual console</quote> ¤W¬Ý¨ì¤@­Ó login
+ ´£¥Ü²Å¸¹¡I·í±z·Q­n¦^¨ì­ì¨Óªº¤u§@®É¡A½Ð«ö Alt-F1¡C</para>
+
+ <para>FreeBSD ¦b¦w¸Ë®Éªº¹w³]­È¬O¨Ï¥Î¤T­Ó virtual console
+ (3.3-RELEASE «á¬°¤K­Ó)¡A±z¥i¥H¥Î Alt-F1¡AAlt-F2¡A¥H¤Î Alt-F3
+ ¦b¥¦­Ì¤§¶¡°µ¤Á´«¡C</para>
+
+ <para>¦pªG±z·Q­n¦h¤@ÂI virtual console ªº¸Ü¡A±z¥u»Ý­n½s¿è
+ <filename>/etc/ttys</filename> ³o­ÓÀÉ (½Ð°Ñ¦Ò &man.ttys.5;)¡A
+ ¦b <quote>Virtual terminals</quote> ³o­Óµù¸Ñ«á­±¥[¤J
+ <devicename>ttyv4</devicename> ¨ì <devicename>ttyvc</devicename>
+ ªºÄæ¦ì¡G</para>
+
+ <programlisting># Edit the existing entry for ttyv3 in /etc/ttys and change
+# "off" to "on".
+ttyv3 "/usr/libexec/getty Pc" cons25 on secure
+ttyv4 "/usr/libexec/getty Pc" cons25 on secure
+ttyv5 "/usr/libexec/getty Pc" cons25 on secure
+ttyv6 "/usr/libexec/getty Pc" cons25 on secure
+ttyv7 "/usr/libexec/getty Pc" cons25 on secure
+ttyv8 "/usr/libexec/getty Pc" cons25 on secure
+ttyv9 "/usr/libexec/getty Pc" cons25 on secure
+ttyva "/usr/libexec/getty Pc" cons25 on secure
+ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting>
+
+ <para>±z·Q¥Î´X­Ó´N³]´X­Ó¡C±z³]¶V¦h virtual terminal ¡A¥¦­Ì´N¥Î±¼
+ ¶V¦h¨t²Î¸ê·½¡F¦pªG±z¥u¦³¤£¨ì 8MB ªº°O¾ÐÅ骺¸Ü¡A³o¼vÅT´N¤j¤F¡C
+ ±z¥i¯à¤]·|·Q§â <literal>secure</literal> ´«¦¨
+ <literal>insecure</literal>¡C</para>
+
+ <important>
+ <para>¦pªG±z·Q­n°õ¦æ X ªº¸Ü¡A±z <emphasis>¥²¶·</emphasis>
+ ¬°¥¦«O¯d (©ÎÃö±¼) ¦Ü¤Ö¤@­Ó virtual terminal ¡C³o´N¬O»¡¡A¦pªG
+ ±z·Q¦b«ö¤Q¤G­Ó Alt ¥\¯àÁä®É³£¦³ login ´£¥Ü²Å¸¹¡A¦Ó¥B¤S¦b¦P¤@
+ ³¡¹q¸£¤W¤]·Q°õ¦æ X ªº¸Ü¡A¨º»ò³o¯u¬O¤Ó¤£©¯¤F - ±z¥u¯à¥Î¤Q¤@­Ó¡C
+ </para>
+ </important>
+
+ <para>¨ú®ø¤@­Ó console ³Ì²³æªº¤èªk´N¬O§â¥¦Ãö±¼¡CÁ|¨Ò¨Ó»¡¡A¦pªG
+ ±z¹³¤W­±Á¿ªº¤@¼Ë³]©w¤F¥þ³¡ªº 12 ­Ó terminal ¨Ã¥B·Q­n°õ¦æ X ¡A
+ ±z¥²»Ý§â virtual terminal 12 ±q¡G</para>
+
+ <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting>
+
+ <para>³]¦¨¡G</para>
+
+ <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting>
+
+ <para>¦pªG±zªºÁä½L¥u¦³ 10 ­Ó¥\¯àÁ䪺¸Ü¡A±z´N­n§ï¦¨³o¼Ë¡G</para>
+
+<programlisting>ttyv9 "/usr/libexec/getty Pc" cons25 off secure
+ttyva "/usr/libexec/getty Pc" cons25 off secure
+ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting>
+
+ <para>(±z¤]¥i¥Hª½±µ§â³o´X¦æ¬å±¼¡C)</para>
+
+ <para>¤@¥¹±z§ï¤F <filename>/etc/ttys</filename>¡A¤U¤@­Ó¨BÆJ´N¬O­n
+ ½T©w±z¦³¨¬°÷ªº virtual terminal ¸Ë¸m¡C³Ì²³æªº¤èªk´N¬O¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV vty12</userinput></screen>
+
+ <para>¦A¹L¨Ó¡A·Q­n±Ò°Ê³o¨Ç virtual console ³Ì²³æ (¤]¬O³Ì°®²b)
+ ªº°µªk´N¬O­«¶}¾÷¡CµM«á¡A¦pªG±z¤£·Q­«¶}¾÷ªº¸Ü¡A±z¥i¥H§â X Window
+ Ãö±¼¡AµM«á¥Î <username>root</username> ªº¨­¥÷°õ¦æ¤U¦C«ü¥O¡G</para>
+
+ <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
+
+ <para>·í±z°õ¦æ³o­Ó©R¥O«e¡A±z¤@©w­n§¹¥þ§â X Window Ãö±¼¡C¦pªG
+ ±z¤£³o»ò°µªº¸Ü¡A±zªº¨t²Î¥i¯à·|¦b±z°õ¦æ kill ©R¥O«á¥X²{·í±¼©Î
+ Âꦺªº±¡ªp¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="vty-from-x">
+ <para>§Ú­n«ç»ò±q X ¤Á´«¨ì virtual console¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð¥Î <keycombo action="simul">
+ <keycap>Ctrl</keycap>
+ <keycap>Alt</keycap>
+ <keycap>F<replaceable>n</replaceable></keycap>
+ </keycombo> ¥H¤Á¦^¦Ü virtual console¡C
+ <keycombo action="simul">
+ <keycap>Ctrl</keycap>
+ <keycap>Alt</keycap>
+ <keycap>F1</keycap>
+ </keycombo> ¥i¥H¤Á¦^¦Ü²Ä¤@­Ó virtual console¡C</para>
+
+ <para>·í§A¤Á¦^¦Ü¤å¦r console «á¡A§A´N¥i¥H¨Ï¥Î¤@¯ë
+ <keycombo action="simul">
+ <keycap>Alt</keycap>
+ <keycap>F<replaceable>n</replaceable></keycap>
+ </keycombo> «öÁä²Õ¦X¡A¦b¦U console ¤§¶¡¤Á´«¡C</para>
+
+ <para>­n¦^¨ì X ªº¸Ü¡A§A¥²¶·¤Á¦^¦Ü°õ¦æ X ªº virtual console¡C
+ ¦pªG§A¬O±q©R¥O¦C¸Ì°_°Ê X ªº¸Ü (¨Ò¦p¨Ï¥Î <command>startx</command>
+ «ü¥O)¡A¨º»ò X ·|¨Ìªþ¦b¤U¤@­Ó¥¼¨Ï¥Îªº virtual console¡A¦Ó¤£¬O¥¦³Q
+ °_°Êªº¤å¦r console¡C¦pªG§A¦³¤K­Ó¨Ï¥Î¤¤ªº virtual terminal¡A¨º»ò
+ X ´N·|¦b²Ä¤E­Ó¤W°õ¦æ¡A§A´N¥i¥H¨Ï¥Î
+ <keycombo action="simul">
+ <keycap>Alt</keycap>
+ <keycap>F9</keycap>
+ </keycombo> ¥Hªð¦^¦Ü X ¤¤¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="xdm-boot">
+ <para>§Ú­n«ç»ò°µ¤~¯à¦b¶}¾÷®É±Ò°Ê XDM¡H</para>
+ </question><answer>
+
+ <para>¦³¨âºØ¤èªk¥i¥H±Ò°Ê <ulink
+ url="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xdm">
+ xdm</ulink>¡C¤@ºØ¤èªk¬O±q <filename>/etc/ttys</filename> ¨Ó±Ò°Ê¡A
+ ¥i¥H°Ñ¦Ò &man.ttys.5; »¡©ú¤å¥ó¤¤ªº½d¨Ò¡F¥t¤@ºØ¤èªk¬O¦b
+ <filename>rc.local</filename> (½Ð°Ñ¦Ò &man.rc.8;) °õ¦æ xdm¡A©Î¬O
+ ¦b <filename>/usr/local/etc/rc.d</filename> ©ñ¤@­Ó
+ <filename>X.sh</filename>¡C³o¨âºØ¤èªk³£¬O¦Xªkªº¡A¦pªG±z¸Õ¬Y¤@ºØ
+ ¤èªkµL®Äªº¸Ü¡A±z¥i¥H¸Õ¸Õ¥t¥~¤@ºØ¡C³o¨âºØ¤èªkªºµ²ªG¬O¤@¼Ëªº¡GX
+ ·|Åã¥Ü¤@­Ó¹Ï§Î¤Æªº login: ´£¥Ü¡C</para>
+
+ <para>¥Î ttys ªº¤èªkªºÀuÂI¡A¦b©ó«ü©ú¤F X ¦b±Ò°Ê®É¨ì©³¬O¥Î¨º­Ó vty¡A
+ ¨Ã¥B±N logout ®É­«·s±Ò°Ê X server ªº³d¥ô¥áµ¹ init¡C rc.local
+ ªº¤èªk«h¬O¦b·í±Ò°Ê X ¥X¤F°ÝÃD®É¡A¥i¥H«Ü»´ÃP¦a§â xdm ±þ±¼¨Ó¸Ñ¨M
+ °ÝÃD¡C</para>
+
+ <para>¦pªG¬O¥Î rc.local ªº¤èªk¡A¦b°õ¦æ <command>xdm</command>
+ ®É±z¤£¯à¥[¥ô¦ó°Ñ¼Æ¡]¤]´N¬O¶]¦¨ daemon¡^¡C¥²¶·¦b getty °õ¦æ«á
+ ¤~¯à±Ò°Ê xdm¡A§_«h getty ©M xdm ·|¤¬¬Û½Ä¬ð¦ÓÂê¦í console¡C³Ì¦nªº
+ ¤è¦¡¬O¦b script ¤¤¥[­Ó sleep¡AÅý¥¦¼È°± 10 ¬íÄÁ¥ª¥k¡A±µµÛ¤~°õ¦æ
+ xdm¡C</para>
+
+ <para>¦pªG§A¬O±q <filename>/etc/ttys</filename> ±Ò°Ê
+ <command>xdm</command>¡A<command>xdm</command> »P &man.getty.8;
+ ¤´¦³¾÷·|¤¬¬Û½Ä¬ð¡C¤@­ÓÁקK¥¦ªº¤èªk¡A´N¬O¦b
+ <filename>/usr/X11R6/lib/X11/xdm/Xservers</filename> Àɮפ¤¥[¤J
+ <literal>vt</literal> ¼Æ¦r¡C</para>
+
+ <programlisting>:0 local /usr/X11R6/bin/X vt4</programlisting>
+
+ <para>¤W­±ªº¨Ò¤l¤¤¡A·|«ü¥Ü X server ¦b <devicename>/dev/ttyv3
+ </devicename> ¤¤°õ¦æ¡C½Ðª`·N¼Æ¦r¬O®t¤@ªº¡CX server ±q¤@¶}©l¼Æ
+ vty¡A¦Ó FreeBSD ®Ö¤ß«h¬O±q¹s¶}©l¼Æ vty ªº¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="xconsole-failure">
+ <para>¬°¤°»ò·í§Ú°õ¦æ xconsole ®É¡Aµo¥Í¤F
+ <errorname>Couldn't open console</errorname> ªº¿ù»~¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§A¬O¥Î <command>startx</command> ¨Ó±Ò°Ê <command>startx
+ </command> ªº¸Ü¡A<devicename>/dev/console</devicename> ªºÅv­­¨Ã
+ <emphasis>¤£·|</emphasis> §ïÅÜ¡Aµ²ªG´N¬O <command>xterm -C
+ </command> ©M <command>xconsole</command> ³oÃþªºµ{¦¡µLªk
+ ¥¿±`°õ¦æ¡C</para>
+
+ <para>³o¤@¤Áªº°ÝÃD¡A³£¬O¦]¬° console ªºÅv­­¬O±Ä¥Î¨t²Î¹w³]­È¡C
+ ¦b¤@­Ó¦h¨Ï¥ÎªÌªº¨t²Î¸Ì¡A§Ú­Ì¤£§Æ±æ¨C­Ó¨Ï¥ÎªÌ³£¥i¥Hª½±µ¼g¤J¨t²Î
+ console ¡C¦pªG¨Ï¥ÎªÌ¬O±q¾÷¾¹ªº VTY ª½±µ login ªº¸Ü¡A¨º»ò
+ &man.fbtab.5; ¥i¥H¸Ñ¨M³oÃþªº°ÝÃD¡C</para>
+
+ <para>²³æ¦a»¡¡A½Ð½T«O <filename>/etc/fbtab</filename> (½Ð°Ñ¦Ò
+ &man.fbtab.5;) ³o­ÓÀɮפ¤ªº³o¤@¦æ¨S¦³³Qµù¸Ñ±¼¡G</para>
+
+ <programlisting>/dev/ttyv0 0600 /dev/console</programlisting>
+
+ <para>³o¤@¦æ³]©wªº¦s¦b¥i¥H½T«O±q <devicename>/dev/ttyv0</devicename>
+ µn¤Jªº¨Ï¥ÎªÌ¥i¥H±±¨î console¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="xfree86-root">
+ <para>¥H«e§Ú¥i¥H¥H¤@¯ë¨Ï¥ÎªÌ°õ¦æ XFree86¡A¬°¤°»ò²{¦b¥¦»¡§Ú¤@©w­n
+ ¥H <username>root</username> ¤~¯à°õ¦æ¡H</para>
+ </question>
+
+ <answer>
+ <para>©Ò¦³ªº X server ³£»Ý­n¥H <username>root</username> ¨Ó°õ¦æ¡A
+ ¤~¯àª½±µ¦s¨ú§Aªºµø°TµwÅé¡Cª©¥»ªº XFree86 (&lt;= 3.3.6) ·|¦Û°Ê
+ ±N©Òªþªº server ¥H§Q¥Î <username>root</username> ¨­¥÷°õ¦æªº¤è¦¡
+ ¦w¸Ë°_¨Ó (setuid ¬° <username>root</username>)¡C¥Ñ©ó X server
+ ³£¬OÅé¿nÃe¤j¤S½ÆÂøªºµ{¦¡¡AÅã¦Ó©ö¨£¦a¡A³o¬O¤@­Ó¦w¥þ¤Wªº¨aÃø¡C
+ ¦]¬°³o­Ó­ì¦]¡A·sª©ªº XFree86 ´N¤£±N³o¨Ç server ¥H setuid ¬°
+ <username>root</username> ªº¤è¦¡¦w¸Ë¡C</para>
+
+ <para>«Ü©úÅã¦a¡A§Ú­Ì§¹¥þµLªk±µ¨ü±N X server ¥H
+ <username>root</username> ªº¨­¥÷°õ¦æ¡C°_½X´N¦w¥þ¤W¤£¬O­Ó¦n¥D·N¡C
+ ¦³¨âºØ¤èªk¥i¥H¥H¤@¯ë¨Ï¥ÎªÌªº¨­¥÷¨Ï¥Î X¡C²Ä¤@¬O§Q¥Î
+ <command>xdm</command> ©Î¬O¨ä¥¦ªº display manager (¨Ò¦p
+ <command>kdm</command>)¡F²Ä¤G¬O§Q¥Î <command>Xwrapper</command>¡C
+ </para>
+
+ <para><command>xdm</command> ¬O¤@­Ó³B²z¹Ï§Î¬É­±µn¤Jªº daemon¡C
+ ¥¦³q±`¦b¶}¾÷®É°õ¦æ°_¨Ó¡A¦Ó¥B­t³d¹ï¨Ï¥ÎªÌ§@¨­¥÷»{ÃÒ¡A¥H¤Î°_°Ê
+ ¨Ï¥ÎªÌªº¤u§@Àô¹Ò¡F¥¦¥i»¡¬O¹Ï§ÎÀô¹Ò¤Uªº &man.getty.8; »P
+ &man.login.1; ªº¹ïÀ³µ{¦¡¡C·Q±oª¾§ó¦h¦³Ãö <command>xdm</command>
+ ªº¸ê°T¡A½Ð°Ñ¦Ò <ulink url="http://www.xfree86.org/support.html">
+ XFree86 ¤å¥ó</ulink>¡A¥H¤Î¨ä <link linkend="xdm-boot">FAQ
+ ¶µ¥Ø</link>¡C</para>
+
+ <para><command>Xwrapper</command> ¬O X server ªº¥]¸Ëµ{¦¡¡F¥¦¥i¥H
+ Åý¤@¯ë¨Ï¥ÎªÌ¥i¥H¤â°Ê°_°Ê X server ªº¤p¤u¨ã¡A¦ÓÁÙ¯àºû«ù¤@©wªº¦w¥þ
+ Àô¹Ò¡C¥¦·|Àˬd¶Ç¤Jªº©R¥O¦C°Ñ¼Æ¡A¦pªG¨S°ÝÃDªº¸Ü¡A´N°_°Ê¾A·íªº
+ X server¡C¦pªG§A¦]¬°¬YºØ²z¥Ñ¦Ó¤£·Q°õ¦æ display manager ªº¸Ü¡A
+ ¥¦¬O¬°§A¦Ó³]©wªº¡C¦pªG§A¦w¸Ë¤F§¹¾ãªº ports¡A§A¥i¥H¦b
+ <filename>/usr/ports/x11/wrapper</filename> ¤¤§ä¨ì¥¦¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ps2-x">
+ <para>§Úªº PS/2 ·Æ¹«¦b X ¤¤¦³ÂI¤£¥¿±`¡H</para>
+ </question>
+
+ <answer>
+ <para>±zªº·Æ¹«©M±zªº·Æ¹«ÅX°Êµ{¦¡¥i¯à¦s¦b¦³¤£¦P¨Bªº²{¶H¡C</para>
+
+ <para>¦b 2.2.5 ¥H¤Î§ó¦­ªº¨t²Î¸Ì¡A±q X ¤Á¨ì virtual terminal µM«á
+ ¦A¤Á¦^¨Ó´N¥i¥H¨Ï¥¦­Ì­«·s°µ¦P¨Bªº°Ê§@¡C¦pªG³o­Ó°ÝÃD±`±`µo¥Íªº¸Ü¡A
+ ±z¥i¥H¦b±zªº kernel ³]©wÀɤ¤¥[¤J¤U­±³o­Ó¿ï¶µµM«á­«·s½sĶ¡G</para>
+
+ <programlisting>options PSM_CHECKSYNC</programlisting>
+
+ <para>¦pªG±z¨S¦³«Ø¥ß kernel ªº¸gÅç¡A½Ð¬Ý
+ <link linkend="make-kernel">¦Û­q®Ö¤ß</link> ³o¤@¸`¡C</para>
+
+ <para>¥[¤W³o­Ó¿ï¶µ¥H«á¡A·Æ¹«©M·Æ¹«ÅX°Êµ{¦¡¶¡ªº¦P¨B°ÝÃDÀ³¸Ó´N¤ñ¸û
+ ¤£·|¥X²{¤F¡C¦pªG³o­Ó°ÝÃD¤´µM¦s¦bªº¸Ü¡A¦b²¾°Ê·Æ¹«®É«ö«ö·Æ¹««öÁä
+ ¥i¥H¨Ï·Æ¹«©M·Æ¹«ÅX°Êµ{¦¡­«·s°µ¦P¨Bªº°Ê§@¡C</para>
+
+ <para>¸Óª`·Nªº¬O³o­Ó¿ï¶µ¨Ã¤£¬O¹ï¨C¤@­Ó¨t²Î³£¦³®Ä¡A¥¦¥i¯à·|Åý±µ¦b
+ PS/2 ·Æ¹«¦ì¸mªº ALPS GlidePoint ¸Ë¸m¥¢¥h <quote>tap</quote>
+ ³o¶µ¥\¯à¡C</para>
+
+ <para>¦b 2.2.6 ¤Î¨ä«áªºª©¥»¡A¦P¨Bªº½T»{¤w¸g¦³¤F¸û¦nªº¸Ñ¨M¿ìªk¡A
+ ¦Ó¥B³o¨Ç³£¤w¸g¬O PS/2 ·Æ¹«ÅX°Êµ{¦¡ªº¼Ð·Ç¤F¡C³o­Ó¤èªk¤]¥i¥H¦b
+ GlidePoint ¤W¥¿±`¤u§@¡C (¦]¬°½T»{ªºµ{¦¡½X¤w¸g¦¨¬°¤@­Ó¼Ð·Ç¥\¯à¡A
+ ©Ò¥H¦b³o¨Çª©¥»¤¤§Ú­Ì¤£¦b´£¨Ñ PSM_CHECKSYNC ªº¿ï¶µ¤F¡C) ¤£¹L¦b
+ ·¥¤Ö¼Æªº®×¨Ò¤¤¡A³o¨ÇÅX°Êµ{¦¡·|»~³ø¦P¨B©Ê¿ù»~¡AµM«á±z´N·|¬Ý¨ì
+ ³o¼Ëªº®Ö¤ß°T®§¡G</para>
+
+ <programlisting>psmintr: out of sync (xxxx != yyyy)</programlisting>
+
+ <para>µM«á±z´N·|µo²{±zªº·Æ¹«¤£¯à¥¿±`¹B§@¤F¡C</para>
+
+ <para>¦pªG±zµo¥Í¤F³o¼Ëªºª¬ªp¡A±z¥²¶·Âǥѧâ PS/2 ·Æ¹«ÅX°Êµ{¦¡ªº flag
+ ³]¦¨ 0x100 ¨Ó§â¦P¨B½T»{ªºµ{¦¡½Xµ¹¨ú®ø±¼¡CµM«á¦b¶}¾÷´£¥Ü²Å¸¹®É¥Î
+ <option>-c</option> ¿ï¶µ¨Ó¶i¤J <emphasis>UserConfig</emphasis>¡G
+ </para>
+
+ <screen>boot: <userinput>-c</userinput></screen>
+
+ <para>µM«á¡A¦b <emphasis>UserConfig</emphasis> ©R¥O¦C¤¤Áä¤J¡G</para>
+
+ <screen>UserConfig&gt; <userinput>flags psm0 0x100</userinput>
+UserConfig&gt; <userinput>quit</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ps2-mousesystems">
+ <para>§Úªº PS/2 ·Æ¹«¤£¯à³z¹L MouseSystem ¨Ó¹B§@¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³¤@¨Ç³ø§i«ü¥X¬Y¨Ç¼tµPªº PS/2 ·Æ¹«¥u¯à¦b
+ <quote>°ª¸ÑªR«×</quote> ª¬ºA¤U¤~¯à¹B§@¡C¦pªG¤£¬Oªº¸Ü¡A·Æ¹«´å¼Ð
+ ·|±`±`¶]¨ì¿Ã¹õªº¥ª¤W¨¤¥h¡C</para>
+
+ <para>«D±`¤£©¯ªº¡A³o­Ó°ÝÃD¦b 2.0.X ©M 2.1.X ¤U¬OµL¸Ñªº¡C¦b 2.2
+ ¨ì 2.2.5 ª©¡A±z¥i¥H¹ï <filename>/sys/i386/isa/psm.c</filename>
+ ¨Ï¥Î¤U¦C patch µM«á­««Ø±zªº®Ö¤ß¡C¦pªG±z¨S¦³«Ø¥ß kernel ªº¸gÅç¡A
+ ½Ð¬Ý <link linkend="make-kernel">¦Û­q®Ö¤ß</link> ³o¸`¡C</para>
+
+ <programlisting>@@ -766,6 +766,8 @@
+ if (verbose &gt;= 2)
+ log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n",
+ unit, i);
++ set_mouse_resolution(sc-&gt;kbdc, PSMD_RES_HIGH);
++
+ #if 0
+ set_mouse_scaling(sc-&gt;kbdc); /* 1:1 scaling */
+ set_mouse_mode(sc-&gt;kbdc); /* stream mode */</programlisting>
+
+ <para>¦b 2.2.6 ¤Î¥H«áªºª©¥»¡A¦b PS/2 ·Æ¹«ÅX°Êµ{¦¡¤¤³]©w 0x04 ªº
+ flag ·|§â·Æ¹«³]¦¨°ª¸ÑªR«×¼Ò¦¡¡C¦b¶}¾÷´£¥Ü²Å¸¹®É¥Î
+ <option>-c</option> ¿ï¶µ¨Ó¶i¤J <emphasis>UserConfig</emphasis>¡G
+ </para>
+
+ <screen>boot: <userinput>-c</userinput></screen>
+
+ <para>µM«á¡A¦b <emphasis>UserConfig</emphasis> ªº©R¥O¦C¤¤Áä¤J¡G
+ </para>
+
+ <screen>UserConfig&gt; <userinput>flags psm0 0x04</userinput>
+UserConfig&gt; <userinput>quit</userinput></screen>
+
+ <para>«e¤@¸`¦³´£¨ì¥t¤@­Ó¥i¯à¾É­P·Æ¹«°ÝÃDªº­ì¦]¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="imake-tmpl">
+ <para>·í§Ú«Ø¥ß X µ{¦¡®É¡A<command>imake</command> »¡¥¦§ä¤£¨ì
+ <filename>Imake.tmpl</filename>¡C¥¦¦b­þ¨à¡H</para>
+ </question>
+
+ <answer>
+
+ <para><filename>Imake.tmpl</filename> ¬O Imake ®M¥óªº¤@³¡¥÷¡AImake
+ ¬O¼Ð·Çªº«Ø¥ß X µ{¦¡ªº¤u¨ã¡C <filename>Imake.tmpl</filename>
+ ©M¨ä¥L¼Æ­Ó header file ¤@¼Ë¬O«Ø¥ß X µ{¦¡ªº¥²­nÀɮסA±z¥i¥H¦b
+ X prog distribution ¤¤§ä¨ì¥¦­Ì¡C±z¥i¥H¥Î sysinstall(&os; 5.2 ¤§«eª©¥»«h¬O <command>/stand/sysinstall</command>)
+ ¨Ó¦w¸Ë©Î¬Oª½±µ±q X distribution ¤¤¤â°Ê¦w¸Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="xfree86-version">
+ <para>§Ú¦b build ¤@­Ó X À³¥Îµ{¦¡¡A¥¦»Ý­n XFree86 3.3.x¡A¦ý¬O
+ §Ú¤w¸g¦w¸Ë XFree86 4.x ¤F¡C§Ú¸Ó«ç»ò¿ì¡H</para>
+ </question>
+
+ <answer>
+ <para>­n§i¶D port ¦b½sĶµ{¦¡®É¡A¨Ï¥Î XFree86 4.x ¨ç¦¡®w¡A§A¥i¥H
+ ¦b <filename>/etc/make.conf</filename> ¸Ì (¦pªG§A¨S¦³³o­ÓÀÉ¡A
+ ½Ð«Ø¥ß¥¦) ¥[¤W¤U­±³o¤@¦æ¡G</para>
+
+ <programlisting>XFREE86_VERSION= 4</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mouse-button-reverse">
+ <para>§Ú­n«ç»ò°µ¤~¯à³]©w¥ªºJ¤l¥Îªº·Æ¹«¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b±zªº <filename>.xinitrc</filename> ©Î¬O
+ <filename>.xsession</filename> ¤¤°õ¦æ
+ <literal>xmodmap -e "pointer = 3 2 1"</literal> ªº«ü¥O¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="install-splash">
+ <para>­n¦p¦ó¦w¸Ë splash ¹Ï§ÎÅã¥Üµ{¦¡¡H¨º¸Ì¥i¥H§ä±o¨ì©O¡H</para>
+ </question>
+
+ <answer>
+
+ <para>´N¦bµo¦æ FreeBSD 3.1 ¤§«e¡A§Ú­Ì¥[¶i¤F¦b¶}¾÷®ÉÅã¥Ü
+ <quote>splash</quote> ¹Ï§Îªº·s¥\¯à¡C¥Ø«e¥Î¨ÓÅã¥Ü¦b¿Ã¹õ¤WªºÀÉ®×
+ ¥²¶·¬O 256 ¦âªºÂI¯x°}¹Ï§Î (<filename>*.BMP</filename>) ©Î ZSoft
+ PCX(<filename>*.PCX</filename>) ªº®æ¦¡¡C°£¦¹¤§¥~¡A¸ÑªR«×¤]¥²¶·¦b
+ 320x200 ¥H¤U¡A¤~¯à©M¼Ð·Ç VGA Åã¥Ü¥d·f°t¨Ï¥Î¡C¦pªG±z½sĶ kernel
+ ®É¦³¥[¤J VESA ¤ä´©¡A¨º»ò³Ì¤j¸ÑªR«×¥i¥H¨ì 1024x768¡Cª`·N VESA ªº
+ ¤ä´©»Ý­n¥[¤J <literal>VM86</literal> ³o­Ó kernel ¿ï¶µ¡CVESA
+ ¤ä´©¹ê»Ú¤W¥i¥H¦b½sĶ kernel ®É¥[¤J <literal>VESA</literal> ¿ï¶µ¡B
+ ©Î¸ü¤J VESA ªº kld module ¨Ó¹F¦¨¡C</para>
+
+ <para>±z­n­×§ï±±¨î FreeBSD ¶}¾÷¨BÆJªº³]©wÀÉ¡A¤~¯à¨Ï¥Î splash
+ Åã¥Ü¹Ï§Îªº¥\¯à¡C³]©wÀɦbµo¦æ FreeBSD 3.2 «e¦³¨Ç§ó°Ê¡A©Ò¥H²{¦b
+ ¦³¨â­Ó¤èªk¥i¥H¸ü¤J splash ªº¥\¯à¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>FreeBSD 3.1</para>
+
+ <para>¥ý¿ï¥X¥Î¨ÓÅã¥Ü¦b¿Ã¹õ¤Wªº¹Ï§Î¡A3.1 ª©¥u¤ä´© Windows
+ ªºÂI¯x°}®æ¦¡¡C¿ï¦n¤F±z­nªº¹ÏÀÉ«á¡A±N¥¦«þ¨ì <filename>
+ /boot/splash.bmp</filename>¡C±µµÛ§â¤U­±´X¦æ¥[¤J
+ <filename>/boot/loader.rc</filename> ¤¤¡G</para>
+
+ <programlisting>load kernel
+load -t splash_image_data /boot/splash.bmp
+load splash_bmp
+autoboot</programlisting>
+
+ </listitem>
+
+ <listitem>
+ <para>FreeBSD 3.2+</para>
+
+ <para>°£¤F¥[¤J¹ï PCX Àɮתº¤ä´©¥~¡AFreeBSD 3.2 ¤]§ï¶i¤F
+ ¶}¾÷µ{§Çªº³]©w¤è¦¡¡C¦pªG±zÄ@·Nªº¸Ü¡A¥i¥H¥Î¤W­z FreeBSD 3.1
+ ªº¤èªk¡A±N <literal>splash_bmp</literal> ´«¦¨
+ <literal>splash_pcx</literal> ¨Ó¸ü¤J PCX ÀɮקY¥i¡C
+ ¦pªG·Q¥Î·sªº³]©w¤è¦¡¡A±zªº <filename>/boot/loader.rc
+ </filename> ¥²¶·¥]¬A³o´X¦æ¡G</para>
+
+ <programlisting>include /boot/loader.4th
+start</programlisting>
+
+ <para>Áٻݭn¤@­Ó¥]§t¥H¤U´X¦æªº <filename>/boot/loader.conf
+ </filename>¡G</para>
+
+ <programlisting>splash_bmp_load="YES"
+bitmap_load="YES"</programlisting>
+
+ <para>³o¬O°²³]±z¥Î <filename>/boot/splash.bmp</filename>
+ ¨Ó·í§@ splash ªº¿Ã¹õÅã¥Ü¡C¦pªG·Q¥Î PCX ªºÀɮסA§â¥¦«þ¦¨
+ <filename>/boot/splash.pcx</filename>¡A¦p¤W­z°µ¥X
+ <filename>/boot/loader.rc</filename>¡A¦A±N³o´X¦æ¥[¨ì
+ <filename>/boot/loader.conf</filename> ¤¤¡G</para>
+
+ <programlisting>splash_pcx_load="YES"
+bitmap_load="YES"
+bitmap_name="/boot/splash.pcx"</programlisting>
+
+ </listitem>
+ </itemizedlist>
+
+ <para>²{¦b´N¥u³Ñ¤U splash ¥Î¨ÓÅã¥Üªº¹ÏÀÉ¡A±z¥i¥H¦b
+ <ulink url="http://www.baldwin.cx/splash/">http://www.baldwin.cx/splash/</ulink> §ä¨ì¦UºØ¼Ë«~¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="windows-keys">
+ <para>§Ú¯à¦b X ¸Ì¨Ï¥ÎÁä½L¤Wªº <trademark class="registered">Windows
+ </trademark> ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¥H¡C§A©Ò­n§@ªº¡A´N¬O§Q¥Î &man.xmodmap.1; ¥h©w¸q§A·Q¨Ï¥Î
+ ªº¥\¯à¡C</para>
+
+ <para>°²³]©Ò¦³ªº <quote><trademark class="registered">Windows</trademark></quote> ³£¬O¼Ð·Çªº¡A
+ ¨º¥¦­Ìªº keycode ¤À§O¬°¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>115 - <trademark class="registered">Windows</trademark> Áä¡A
+ ¦b¥ª¤âªº Ctrl »P Alt Á䤧¶¡</para>
+ </listitem>
+
+ <listitem>
+ <para>116 - <trademark class="registered">Windows</trademark> Áä¡A
+ ¦b Alt-Gr Áä¥kÃä</para>
+ </listitem>
+
+ <listitem>
+ <para>117 - ¿ï³æÁä¡A¥k¤âªº Ctrl Á䥪Ãä</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>­nÅý¥ªÃ䪺 <trademark class="registered">Windows</trademark>
+ Áä¦L¥X¤@­Ó³rÂI¡A¸Õ¸Õ³o­Ó¡G</para>
+
+ <screen>&prompt.root; <userinput>xmodmap -e "keycode 115 = comma"</userinput></screen>
+
+ <para>§A¥i¯à­n­«¶]§Aªº windows manager¡A¤~·|¦³°Ê§@¡C</para>
+
+ <para>­nÅý <trademark class="registered">Windows</trademark> Áä
+ ªº¹ï¬M¦b¨C¦¸ X °_°Ê®É¦Û°Ê³]©w¦n¡A§A¥i¥H¦b§Aªº
+ <filename>~/.xinitrc</filename> ¸Ì¥[¤W <command>xmodmap</command>¡A
+ ©Î¬O³Ì¦n«Ø¥ß¤@­Ó <filename>~/.xmodmaprc</filename> ÀɮסA¸Ì­±
+ ¨C¤@¦æ´N¬O¤@­Ó <command>xmodmap</command> ªº¿ï¶µ¡AµM«á¦b§Aªº
+ <filename>~/.xinitrc</filename> ¸Ì¥[¤W¡G</para>
+
+
+ <programlisting>xmodmap $HOME/.xmodmaprc</programlisting>
+
+ <para>³o¤@¦æ¡C</para>
+
+ <para>¨Ò¦p¡A§A·Q­n±N³o¤T­ÓÁä¦U¹ï¬M¨ì F13¡BF14 ©M F15¡C³oÅý§A¯à
+ ¦b§Aªºµ{¦¡©Î¬O window manager ¤º±N¨ä¹ïÀ³¨ì«K§Qªº¥\¯à¤W¡Aµ¥¤@¤U
+ §Ú­Ì·|¥Ü½d¡C</para>
+
+ <para>§â³o¨Ç©ñ¶i <filename>~/.xmodmaprc</filename> ¸Ì¡G</para>
+
+ <programlisting>keycode 115 = F13
+keycode 116 = F14
+keycode 117 = F15</programlisting>
+
+ <para>°²¦p§A¥Î <command>fvwm2</command> ªº¸Ü¡A§A¥i¥H§@³o¼Ëªº¹ï¬M¡A
+ Åý F13 ¯à°÷Åý´å¼Ð©Ò¦bªºµøµ¡ÁY¦¨¤p¹Ï¥Ü (©Î¬O¤Ï¹L¨Ó)¡CF14 Åý´å¼Ð
+ ©Ò¦bªºµøµ¡Åܦ¨³Ì¤W¼hªºµøµ¡¡A©Î¬O°h¨ì¤U¼h¥h (¦pªG¥¦¤w¸g¬O³Ì¤W¼h
+ ¤Fªº¸Ü)¡CF15 «h±N Workplace (application) ¿ï³æ¥s¥X¨Ó¡A§Y¨Ï´å¼Ð
+ ¤£¦b®à­±¤W¡C·í§A¨S¦³¥i¨£ªº®à­±°Ï°ì®É¡A³o­Ó¥\¯à´N¬Û·í¦a¤è«K (¦Ó¥B
+ «öÁä¤Wªº¹Ï®×©M³o­Ó¥\¯à¬Û§k¦X)¡C</para>
+
+ <para>¥H¤Uªº <filename>~/.fvwmrc</filename> ³]©w¥i§@¥X«e­zªº¥\¯à¡C
+ </para>
+
+ <programlisting>Key F13 FTIWS A Iconify
+Key F14 FTIWS A RaiseLower
+Key F15 A A Menu Workplace Nop</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="x-3d-acceleration">
+ <para>§Ú­n«ç»ò¼Ë¤~¯à±o¨ì OpenGL ªº 3D µwÅé¥[³t¥\¯à¡H</para>
+ </question>
+
+ <answer>
+ <para>3D ¥[³t¥\¯àªº¦³µL¡Aµø§A©Ò¨Ï¥Îªº XFree86 ª©¥»»PÅã¥Ü´¹¤ù
+ ªº«¬¸¹¦Ó©w¡C¦pªG§Aªº¬O NVIDIA ´¹¤ùªº¸Ü¡A½Ð¥h
+ <ulink url="http://nvidia.netexplorer.org/">FreeBSD NVIDIA
+ Driver Initiative </ulink> ºô­¶¬Ý¬Ý¡A¨º¸Ì¦³¦b XFree86-4 ¤W¨Ï¥Î
+ NVIDIA ´¹¤ùªº 3D ¥[³t¥\¯àªº°Q½×¡CXFree86-4 ¤Wªº¨ä¥¦Åã¥Ü¥d¼tµP
+ µwÅé¥[³t¥\¯àªº¸ê°T¡A ¥]¬A Matrox G200/G400, ATI Rage 128/Radeon,
+ 3dfx Voodoo 3, 4, 5, ¥H¤Î Banshee¡A¥i¦b <ulink
+ url="http://gladstone.uoregon.edu/~eanholt/dri/">XFree86-4
+ Direct Rendering on FreeBSD</ulink> ºô­¶¤W§ä¨ì¡CXFree 3.3 ªº
+ ¨Ï¥ÎªÌ¥i¥H¨Ï¥Î Utah-GLX port¡A¥¦¥i¥H¦b
+ <filename role="package">graphics/utah-glx</filename> §ä¨ì¡C
+ ¨Ï¥Î¥¦¥i¥H¦b Matrox Gx00, ATI Rage Pro, SiS 6326, i810,
+ Savage, ¥H¤Îªº NVIDIA ¤W±o¨ì¦³­­ªº OpenGL ¥[³t¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="networking">
+ <chapterinfo>
+ <author>
+ <firstname>Biing Jong</firstname>
+ <surname>Lin</surname>
+ <affiliation>
+ <address><email>bjlin@stic.gov.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>Networking</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="diskless-booting">
+ <para>§ÚÀ³¸Ó¨ì­þÃä§ä¦³ÃöµLºÏºÐ¶}¾÷
+ <quote>diskless booting</quote> ªº¸ê®Æ¡H</para>
+ </question>
+
+ <answer>
+ <para><quote>Diskless booting</quote> ´N¬OÅý FreeBSD ¥D¾÷±qºô¸ô
+ ¤W¶}¾÷¡A¨Ã¥B±qºô¸ô¤Wªº server ¤WŪ¨ú¨ä¥L¥²­nªºÀɮסA¦Ó«D¥Ñ¥D¾÷
+ ªºµwºÐ¤W¨ú±o³o¨ÇÀɮסC¸Ô²Óªº¸ê®Æ¥i¥H°Ñ¦Ò <ulink
+ url="../handbook/diskless.html"> FreeBSD ¤â¥UªºµLºÏºÐ¶}¾÷½g
+ </ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="router">
+ <para>FreeBSD ªº¥D¾÷¥i¥H·í§@¬Y­Óºô¸ô¤Wªº¸ô¥Ñ¾¹(router)¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Oªº¡C½Ð°Ñ¦Ò FreeBSD ¤â¥Uªººô¸ô¶i¶¥½g <ulink
+ url="../handbook/routing.html"> advanced
+ networking</ulink>¡A¤×¨ä¬O¸ô¥Ñ»P¹h¹D¾¹ <ulink
+ url="../handbook/routing.html#DEDICATED-ROUTER">routing
+ and gateways</ulink>ªº³¡¤À¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="win95-connection">
+ <para>§Ú¥i¥H³z¹L FreeBSD ±N§Úªº Win95 ¾÷¾¹³s¤W Internet ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>°ò¥»¤W¡A·|°Ý³oºØ°ÝÃDªº¤H¦b®a¸Ì¦Ü¤Ö¦³¨â¥x¹q¸£¡A¤@¥x¶] FreeBSD
+ ¥t¥~¤@¥x¶] Win95¡F³o­Ó·Qªk¬O±N FreeBSD ¥D¾÷³s¤W Internet¡AµM«á³z
+ ¹L³o¥x FreeBSD ¥D¾÷¡AÅý¶] Win95 ªº¹q¸£¯à°÷¤Wºô¡C³o­Ó°ÝÃDºâ¬O«e¤@
+ ­Ó°ÝÃDªº¤@­Ó¯S¨Ò</para> <para>... µª®×¬O¡G¥i¥Hªº¡I¦b FreeBSD 3.x
+ ª©¤¤¡A¨Ï¥ÎªÌ¼Ò¦¡(user-mode)ªº &man.ppp.8; ¥]§t¤F
+ <option>-nat</option> ¿ï¶µ¡C¦pªG§A¦b
+ <filename>/etc/rc.conf</filename> ¨Ï¥Î<option>-nat</option>¿ï¶µ¨Ã
+ ³]©w <literal>gateway_enable</literal> ¬° <emphasis>YES</emphasis>
+ ¡A¥H³oºØ³]©w±Ò°Ê &man.ppp.8; ¡A¨Ã¥B¥¿½Tªº³]©w§Aªº Windows ¥D¾÷ªº
+ ¸Ü¡A³o­Ó°µªkÀ³¸Ó¬O¥i¥H¥¿±`¨Ï¥Îªº¡C</para>
+
+ <para>Ãö©ó¥»¥DÃD§ó¸Ô²Óªº¸ê®Æ¥i¥H°Ñ¦Ò Steve Sims ©Ò¼¶¼gªº <ulink
+ url="../ppp-primer/index.html"> Pedantic PPP Primer</ulink> ¤@¤å¡C
+ </para>
+
+ <para>¦pªG§A¨Ï¥Îªº¬O®Ö¤ß¼Ò¦¡ (kernel-mode) PPP¡A©ÎªÌ§A¦³°Ï°ì³s½u
+ (Ethernet connection) ¥i³q¹F Internet ªº¸Ü¡A§A±N»Ý­n¨Ï¥Î
+ &man.natd.8;¡C½Ð¬d¾\ FAQ ¤¤Ãö©ó <link linkend="natd">natd</link>
+ ªº³¡¤À¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="slip-ppp-support">
+ <para>FreeBSD ¤ä´© SLIP ©M PPP ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Oªº¡C§A¥i¥H¬d¬d man pages ¤¤Ãö©ó &man.slattach.8;¡A
+ &man.sliplogin.8;¡A&man.ppp.8;¡A¥H¤Î &man.pppd.8; ªº³¡¤À¡C
+ &man.ppp.8; ¤Î &man.pppd.8; ´£¨Ñ¶i¥XÂù¦V³s½uªº¤ä´©¡A¥t¥~
+ &man.sliplogin.8; ±Mªù´£¨Ñ¶i¤J³s½uªº¤ä´©¡A¦Ó &man.slattach.8;
+ ±Mªù´£¨Ñ¦V¥~³s½uªº¤ä´©¡C</para>
+
+ <para>¦pªG§A»Ý­n§ó¶i¤@¨Bªº¸ê®Æªº¸Ü,½Ð¬d¾\ <ulink
+ url="../handbook/ppp-and-slip.html">FreeBSD ¤â¥U¤¤Ãö©ó PPP »P SLIP
+ ªº»¡©ú</ulink>¡C</para>
+
+ <para>¦pªG§A¥u¯à°÷¹L <quote>shell account</quote> ³s½u¨ì Internet
+ ªº¸Ü¡A§A¤]³\¥i¥H¸Õ¸Õ <filename role="package">net/slirp</filename>
+ ³o­Ó®M¥óµ{¦¡¡C³o­Ó®M¥óµ{¦¡¥i¥H´£¨Ñ§Aªº¹q¸£ª½±µ³s¤W¬Y¨Ç(­­©wªº)ªA°È
+ ³s½u¡A¦p ftp ¤Î http µ¥µ¥¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="natd">
+ <para>FreeBSD ¤ä´© NAT ©Î Masquerading ¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§A¦³¤@­ÓªñºÝªº¤lºô¸ô(¦³¤@¥x¥H¤Wªº¾÷¾¹)¡A¦ý¬O§Aªº
+ Internet provider «o¥u¤À°t¤@­Ó IP number µ¹§A(©ÎªÌ§A¥u¤À°t¨ì¤@­Ó
+ °ÊºAªº IP number)¡A§A¥i¥H°Ñ¦Ò &man.natd.8; ³o­Óµ{¦¡¡C &man.natd.8;
+ Åý§A¥i¥H³z¹L³o¤@­Ó IP number Åý¾ã­Ó¤lºô¸ôªº¹q¸£³£¯à³s¤W internet¡C
+ </para>
+
+ <para>&man.ppp.8; ³o­Óµ{¦¡¤]´£¨ÑÃþ¦üªº¥\¯à¡A¦pªG§A«ü©w
+ <option>-nat</option> ¿ï¶µ¡Calias library (&man.libalias.3;)
+ ¦b³o¨â­Ó³B²z¤è¦¡¤¤³£·|³Q¨Ï¥Î¨ì¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="parallel-connect">
+ <para>§Ú¦p¦ó±N¨â¥x FreeBSD ¥D¾÷¥Î¥­¦æ°ð (parallel line) ³z¹L PLIP
+ ³s½u¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò¤â¥U¤¤Ãö©ó <ulink url="../handbook/plip.html">PLIP
+ section</ulink> ªº³¡¤À¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="create-dev-net">
+ <para>§Ú¨S¦³¿ìªk«Ø¥ß <filename>/dev/ed0</filename> ³o­Ó device¡A
+ ¬°¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬°¤£»Ý­n¡I¦b Berkeley ºô¸ô¬[ºc¤¤¡A¥u¦³ kernel µ{¦¡½X¥i¥Hª½
+ ±µ¦s¨úºô¸ô¬É­±¥d¡C½Ð°Ñ¦Ò <filename>/etc/rc.network</filename> ³o
+ ­ÓÀɮשM manual pages ¨ú±o»P¨ä¥L¤£¦Pºô¸ôµ{¦¡¡C§ó¶i¤@¨Bªº¸ê°T¡G¦p
+ ªG§Aı±o§A§¹¥þ·d²V¤Fªº¸Ü¡A±zÀ³¸Ó§ä¤@¥»»P¨ä¥L BSD ¬ÛÃö§@·~¨t²Îºô¸ô
+ ºÞ²z¦³Ãö®Ñ¨Ó°Ñ¦Ò¡F°£¤F¤Ö¼ÆÅãµÛªº¤£¦P¥~¡AFreeBSD ªººô¸ôºÞ²z°ò¥»¤W©M
+ SunOS 4.0 ©M Ultrix ¬O¤@¼Ëªº¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ethernet-aliases">
+ <para>§Ú¦p¦ó«Ø¥ß Ethernet aliases¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG§Aªº alias ¦ì§}¸ò§A¥Ø«eºô¸ô¤¶­±ªº¦ì§}¦b¦P¤@­Ó¤lºô¸ô¤Uªº
+ ¸Ü¡A¥[¤J¤@­Ó <literal>netmask 0xffffffff</literal> ¦b§Aªº
+ &man.ifconfig.8; command-line¡A½d¨Ò¦p¤U¡G</para>
+ <screen>&prompt.root; <userinput>ifconfig ed0 alias 192.0.2.2 netmask 0xffffffff</userinput></screen>
+ <para>¤£µMªº¸Ü¡A´N¦p¦P¥[¤J¤@­Ó·sªººô¸ô¦ì§}¤@¼Ë¿é¤J§Aªººô¸ô¦ì§}»P¤l
+ ºô¸ô¾B¸n¡G</para>
+ <screen>&prompt.root; <userinput>ifconfig ed0 alias 172.16.141.5 netmask 0xffffff00</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="port-3c503">
+ <para>§Ú¦p¦ó«ü©w§Úªº 3C503 ¨Ï¥Î¨ä¥L¤£¦Pªºªº network port¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG±z·Q¨Ï¥Î¨ä¥Lªº port¡A§A¥²¶·¦b &man.ifconfig.8; ªº©R¥O¤¤
+ «ü©wÃB¥~ªº°Ñ¼Æ¡C¤º©wªº port ¬O <literal>link0</literal>¡C­n¨Ï¥Î
+ AUI port ¥N´À BNC port ªº¸Ü¡A§ï¥Î <literal>link2</literal>¡C³o¨Ç
+ flags À³¸Ó§ïÅÜifconfig_* ªºÅܼƨӫü©w¡A §A¥i¥H¦b
+ <filename>/etc/rc.conf</filename> ³o­ÓÀɮ׸̭±§ä¨ì (½Ð°Ñ¦Ò
+ &man.rc.conf.5;)¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="nfs">
+ <para>¬°¤°»ò§Ú¦b¨Ï¥Î FreeBSD ªº NFS ®É¥X²{°ÝÃD¡H</para>
+ </question>
+
+ <answer>
+ <para>§Ú­Ì¥Î§t»W¤@ÂIªº»¡ªk¡A¬Y¨Ç PC ªººô¸ô¥d¤ñ¨ä¥Lªº¦n¡A³oºØª¬ªp¦b
+ ³y¦¨ NFS ³oºØ¹ïºô¸ô±Ó·Pªºµ{¦¡¦³®É·|¥X²{°ÝÃD¡C</para>
+
+ <para>°Ñ¦Ò <ulink url="../handbook/nfs.html">
+ the Handbook entry on NFS</ulink> ¥HÀò±o³o­Ó¥DÃDªº§ó¦h¸ê°T¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="nfs-linux">
+ <para>¬°¤°»ò§Ú¤£¯à NFS-mount Linux ªº¾÷¾¹¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Y¨Çª©¥»ªº Linux NFS µ{¦¡½X¥u±µ¨ü privileged port ªº
+ mount request¡F¸Õ¥Î³o¦æ«ü¥O¬Ý¬Ý</para>
+
+ <screen>&prompt.root; <userinput>mount -o -P linuxbox:/blah /mnt</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="nfs-sun">
+ <para>¬°¤°»ò§Ú¤£¯à NFS-mount Sun ªº¾÷¾¹¡H</para>
+ </question>
+
+ <answer>
+ <para>¶] SunOS 4.X ªº Sun ¤u§@¯¸¥u±µ¨ü¨Ó¦Û privileged port ªº
+ mount request¡F¸Õ¥Î³o¦æ«ü¥O¬Ý¬Ý</para>
+
+ <screen>&prompt.root; <userinput>mount -o -P sunbox:/blah /mnt</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="exports-errors">
+ <para>¬°¤°»ò <command>mountd</command> ¤@ª½°­¥s»¡
+ <errorname>can't change attributes</errorname> ¦Ó¥B§Ú¤@ª½¬Ý¨ì
+ <errorname>bad exports list</errorname> ³o­Ó°T®§¦b§Úªº FreeBSD NFS
+ ¦øªA¾¹¤W¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­Ó°ÝÃD³Ì±`µo¥Íªº­ì¦]¬O¦b©ó¤£¤F¸Ñ
+ <filename>/etc/exports</filename> ªº¥¿½T®æ¦¡¡C½Ð¸ÔŪ
+ &man.exports.5; ¥H¤Î¤â¥U¤¤Ãö©ó <ulink
+ url="../handbook/nfs.html">NFS</ulink> ªº³¡¤À¡A¯S§O¬O<ulink
+ url="../handbook/nfs.html#CONFIGURING-NFS">configuring
+ NFS</ulink>³o¤@¬q¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-nextstep">
+ <para>¬°¤°»ò§Ú¦b¨Ï¥Î PPP ³s½u¨ì NeXTStep ¾÷¾¹®É¦³°ÝÃD¡H</para>
+ </question>
+
+ <answer>
+
+ <para>§â TCP extensions ¨ú®ø¡A³o­Ó³]©w¦b
+ <filename>/etc/rc.conf</filename> ¸Ì­±(°Ñ¦Ò &man.rc.conf.5;) §â
+ ¥H¤U³o­Ó­È³]¦¨ NO¡G</para>
+
+ <programlisting>tcp_extensions=NO</programlisting>
+
+ <para>Xylogic ªº Annex ¥D¾÷¤]¦³¬Û¦Pªº°ÝÃD¡A±z­n°µ¬Û¦Pªº­×§ï¤~¯à³s
+ ¤W³o¨Ç¥D¾÷¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ip-multicast">
+ <para>§Ú­n«ç¼Ë¤~¯à§â IP multicast support ¥´¶}¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD 2.0 ¥H«áªºª©¥»¤º©w³£¦³ ¤ä´© Multicast host ¾Þ§@¡C¦pªG
+ ±z·Q±N±zªº¥D¾÷³]©w¦¨ multicast router ªº¸Ü¡A±z¥²¶·­«·s compile ±z
+ ªº kernel¡A¥[¤J <literal>MROUTING</literal> ªº¿ï¶µ¡A¨Ã¥B°õ¦æ
+ &man.mrouted.8; FreeBSD 2.2 ¤Î¤§«áªºª©¥»·|¦b¶}¾÷®É°õ¦æ
+ &man.mrouted.8; ¦pªG¦b <filename>/etc/rc.conf</filename> ¤¤
+ <literal>mrouted_enable</literal> ³]©w¬° <literal>"YES"</literal>
+ </para>
+
+ <para>MBONE ªº¦UºØ¤u¨ã¥i¥H¦b¥L­Ì ports ¤U©ÒÄÝ¥s°µ <ulink
+ url="http://www.FreeBSD.org/ports/mbone.html">mbone</ulink> ¥Ø¿ý
+ ¤¤§ä¨ì¡C¦pªG±z¦b§äµø°T·|ijªº¤u¨ã¦p <command>vic</command> ¥H¤Î
+ <command>vat</command>ªº¸Ü¡A¨ì¨ºÃä§ä§ä§a¡I</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dec-pci-chipset">
+ <para>­þ¨Çºô¸ô¥d¬O¨Ï¥Î DEC PCI chipset¡H</para>
+ </question><answer>
+
+ <para>¥H¤U¬O Glen Foster <email>gfoster@driver.nsta.org</email>
+ ´£¨Ñªº²M³æ¡G</para>
+
+ <table>
+ <title>Network cards based on the DEC PCI chipset</title>
+
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Vendor</entry>
+ <entry>Model</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>ASUS</entry>
+ <entry>PCI-L101-TB</entry>
+ </row>
+ <row>
+ <entry>Accton</entry>
+ <entry>ENI1203</entry>
+ </row>
+ <row>
+ <entry>Cogent</entry>
+ <entry>EM960PCI</entry>
+ </row>
+ <row>
+ <entry>Compex</entry>
+ <entry>ENET32-PCI</entry>
+ </row>
+ <row>
+ <entry>D-Link</entry>
+ <entry>DE-530</entry>
+ </row>
+ <row>
+ <entry>Dayna</entry>
+ <entry>DP1203, DP2100</entry>
+ </row>
+ <row>
+ <entry>DEC</entry>
+ <entry>DE435, DE450</entry>
+ </row>
+ <row>
+ <entry>Danpex</entry>
+ <entry>EN-9400P3</entry>
+ </row>
+ <row>
+ <entry>JCIS</entry>
+ <entry>Condor JC1260</entry>
+ </row>
+ <row>
+ <entry>Linksys</entry>
+ <entry>EtherPCI</entry>
+ </row>
+ <row>
+ <entry>Mylex</entry>
+ <entry>LNP101</entry>
+ </row>
+ <row>
+ <entry>SMC</entry>
+ <entry>EtherPower 10/100 (Model 9332)</entry>
+ </row>
+ <row>
+ <entry>SMC</entry>
+ <entry>EtherPower (Model 8432)</entry>
+ </row>
+ <row>
+ <entry>TopWare</entry>
+ <entry>TE-3500P</entry>
+ </row>
+ <row>
+ <entry>Znyx (2.2.x)</entry>
+ <entry>ZX312, ZX314, ZX342, ZX345, ZX346, ZX348</entry>
+ </row>
+ <row>
+ <entry>Znyx (3.x)</entry>
+ <entry>ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442, ZX444,
+ ZX474, ZX478, ZX212, ZX214 (10mbps/hd)</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="fqdn-hosts">
+ <para>¬°¤°»ò­n¥Î FQDN ¤~¯à³s¨ì¨ä¥L¾÷¾¹¡H</para>
+ </question>
+
+ <answer>
+ <para>§A¤]³\·|µo²{­n³sªº¾÷¾¹¨ä¹ê¬O¦b¥t¤@­Óºô°ì¡CÁ|­Ó¨Ò¤l¡A°²³]§A¬O¦b
+ foo.bar.edu ³o­Óºô°ì¤¤¡A·Q­n³s¨ì¦b¤@¥x¥s <hostid>mumble</hostid>
+ ªº¥D¾÷¡A¥L¦b <hostid role="domainname">example.org</hostid> ºô°ì¤U¡A
+ §A¥²¶·¥Î Fully-Qualified Domain Name <hostid
+ role="fqdn">mumble.example.org</hostid>¡A¦Ó¤£¬O¥u¥Î
+ <hostid>mumble</hostid>¡C</para>
+
+ <para>¶Ç²Îªº BSD BIND resolver ¤¹³\¥Î³oºØ¤è¦¡¸Ñ¥X¾÷¾¹ªº¦ì§}¡A¦ý¬O
+ FreeBSD ¤ºªþ <application>bind</application> (see &man.named.8;)
+ ª©¥»¤º©w¤è¦¡¡A«h¬O°£¤F§A©Ò¦bªººô°ì¥H¥~¡A¤£¤ä´©¨ä¥L«D FQDN ªºÁY¼g¡C
+ ©Ò¥H¦p <hostid>mumble</hostid> ¥²¶·¦b <hostid
+ role="fqdn">mumble.foo.example.org</hostid>¡A§_«h´N·|±qºô°ìªº³Ì©³
+ ¼h¶}©l§ä¡C</para>
+
+ <para>³o©M¥ý«eªº°µªk¤£¦P¡A¤]´N¬O¤£¥Î
+ <hostid role="domainname">mumble.example.org</hostid>¡A©M
+ <hostid role="domainname">mumble.edu</hostid> Ä~Äò·j´M¡C
+ ¬Ý¤@¤U RFC 1535¡A¸Ì­±¦³´£¨ì¬°¤°»ò¤§«eªº°µªk¤£¦n¡A¬Æ¦Üºâ¬O­Ó¦w¥þ
+ º|¬}¡C</para>
+
+ <para>³o¸Ì¦³­Ó¤£¿ùªº¸Ñªk, §A¥i¥H¥[¤J¤@¦æ</para>
+
+ <programlisting>search foo.example.org example.org</programlisting>
+
+ <para>instead of the previous</para>
+
+ <programlisting>domain foo.example.org</programlisting>
+
+ <para>¦b§Aªº <filename>/etc/resolv.conf</filename> Àɮפ¤ (½Ð°Ñ¦Ò
+ &man.resolv.conf.5;)¡C¦ý¬O­n½T©w·j´M¶¶§Ç¤£·|¹H¤Ï RFC 1535 ©Ò¿×ªº
+ <quote>boundary between local and public administration</quote>¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="network-permission-denied">
+ <para>¬°¤°»ò§Ú¦b³s½u®É¤@ª½¥X²{
+ <errorname>Permission denied</errorname> ªº¿ù»~°T®§¡H</para>
+ </question>
+
+ <answer>
+ <para> ¦pªG¦b½sĶ kernel ®É¥[¤J <literal>IPFIREWALL</literal> ¿ï¶µ¡A
+ ½Ðª`·N 2.1.7R ¤º©w¬O©Úµ´©Ò¦³¥¼¸g®Ö­ãªººô¸ô«Ê¥](¦ý¦b¶}µo
+ 2.1-STABLE ®É§ï±¼¤F)¡C</para>
+
+ <para>I¦pªG¤£¤p¤ß§Ë¿ù¤F firewall ªº³]©w¡A§A¥i¥H¥H
+ <username>root</username> °õ¦æ¥H¤U©R¥Oºô¸ô¥\¯à´N·|«ì´_¥¿±`¡G</para>
+
+ <screen>&prompt.root; <userinput>ipfw add 65534 allow all from any to any</userinput></screen>
+
+ <para>¤]¥i¥H¦b <filename>/etc/rc.conf</filename> ¥[¤J
+ <literal>firewall_type="open"</literal> ªº¿ï¶µ¡C</para>
+
+ <para>¦pªG·Qª¾¹D¦p¦ó³]©w FreeBSD firewall¡A½Ð°Ñ¦Ò <ulink
+ url="../handbook/firewalls.html">¤â¥U¤¤¬ÛÃö³¹¸`</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ipfw-overhead">
+ <para>IPFW ·|³y¦¨¦h¤jªººô¸ô©µ¿ð¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò¤â¥U¤¤ <ulink
+ url="../handbook/firewalls.html">Firewalls</ulink> ³¹¸`¡A¯S§O¬O
+ <ulink url="../handbook/firewalls.html#IPFW-OVERHEAD">IPFW
+ Overhead & Optimization</ulink> ³o¤@¬q¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ipfw-fwd">
+ <para>¬°¤°»ò§Úªº <command>ipfw</command> <quote>fwd</quote>
+ redirect ³W«h±NªA°ÈÂà¦V¨ä¥L¾÷¾¹®ÉµLªk¥¿±`¹B§@¡H</para>
+ </question>
+
+ <answer>
+ <para>¥i¯à¬O§A°£¤FÂà°e«Ê¥]¥H¥~ÁÙÃB¥~·Q¶i¦æ¦ì§}ÂàĶ
+ (network address translation, NAT)¡A<quote>fwd</quote> ³W«h©Ò¶i
+ ¦æªº°Ê§@´N¦p¦P¦r­±©Ò¥Ü¡F¶ÈÂà°e«Ê¥]¡A¥¦¨Ã¤£·|¥h­×§ï«Ê¥]¤¤ªº¸ê®Æ¡C
+ °²³]§Ú­Ì¦³¦p¤Uªº³W«h¡G</para>
+
+ <screen>01000 fwd <replaceable>10.0.0.1</replaceable> from any to <replaceable>foo 21</replaceable></screen>
+
+ <para>·í¤@­Ó³q©¹¯S©w¥Ø¼Ð¦ì§} <replaceable>foo</replaceable> ªº«Ê¥]
+ °e¹F¥D¾÷®É¡A®Ú¾Ú³o±ø³W«h¡A«Ê¥]±N³QÂà°e¦Ü
+ <replaceable>10.0.0.1</replaceable>¡A¦ý¬O¥¦ªº¥Ø¼Ð¦ì§}«o¤´µM¬O
+ <replaceable>foo</replaceable>¡I«Ê¥]ªº¥Ø¼Ð¦ì§}¨Ã
+ <emphasis>¨S¦³</emphasis> §ó§ï¬°
+ <replaceable>10.0.0.1</replaceable>¡C¤j³¡¤Àªº¥D¾÷·|±N«Ê¥]¥á±ó¡A
+ ¦]¬°¥L­Ì¨Ã¤£¬O³o­Ó¥Ø¼Ð¦ì§}¡C¦]¦¹¡A¨Ï¥Î <quote>fwd</quote> ³W«h
+ ®É©¹©¹¤£¦p¨Ï¥ÎªÌ©Ò¹w´Áªº¨º¯ë¶¶§Q¡C³oºØ¦æ¬°¬O¨t²Î¯S©Ê¡A¦Ó«D¿ù»~¡C
+ </para>
+
+ <para>°Ñ¦Ò <link linkend="service-redirect">Ãö©óªA°ÈÂà¦Vªº±`¨£°Ý
+ µª¶°</link>¡A &man.natd.8; ¤â¥U¡A©ÎªÌ¬O¨Ï¥Î <ulink
+ url="../../../../ports/index.html">ports collection</ulink> ¤¤³\
+ ¦hªA°ÈÂà¦Vªº¤u¨ã¨Ó¥¿½Tªº§¹¦¨§A·Q¶i¦æªº¤u§@¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="service-redirect">
+ <para>­n¦p¦ó§â¹ï¬Y¥x¾÷¾¹ªººô¸ôªA°È­n¨D(service request)Âà¦V¨ì¥t¤@¥x¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>¦b ports ¥Ø¿ýªº<quote>sysutils</quote>¤ÀÃþ¤¤¦³­Ó¥s
+ <literal>socket</literal> ªº®M¥ó¡A¥i¥HÀ°§AÂà¦V FTP ©Î¨ä¥LÃþ¦üªº
+ ºô¸ôªA°È¡C¥u­n§â¸Óºô¸ôªA°Èªº©R¥O§ï¦¨©I¥s socket §Y¥i¡A¦p¤U©Ò¥Ü¡G
+ </para>
+
+ <programlisting>ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.example.com</replaceable> <replaceable>ftp</replaceable></programlisting>
+
+ <para>¨ä¤¤ <replaceable>ftp.example.com</replaceable> »P
+ <replaceable>ftp</replaceable> ¤À§O¬O³QÂà¨ìªº¾÷¾¹©M port ¦WºÙ¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bandwidth-mgr-tool">
+ <para>¨º¸Ì¥i¥H§ä¨ìºÞ²zÀW¼eªº¤u¨ã¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ¤W¦³¤T®MÀW¼eºÞ²z¤u¨ã¡G &man.dummynet.4; ¤w¸g¾ã¦X¶i¤J
+ FreeBSD ¨t²Î(§ó¸Ô²Óªº¥Î³~, &man.ipfw.4;); <ulink
+ url="http://www.csl.sony.co.jp/person/kjc/programs.html">ALTQ</ulink>
+ ¥i¥H§K¶O¨Ï¥Î¡A<ulink
+ url="http://www.etinc.com/">Emerging Technologies</ulink>
+ ±À¥Xªº Bandwidth Manager «h¬O°Ó¥Î³nÅé¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bpf-not-configured">
+ <para>«ç»ò·|¶]¥X
+ <errorname>/dev/bpf0: device not configured</errorname>³o­Ó°T®§¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>§A°õ¦æ¤F¤@­Ó»Ý­n¬f§JµÜ«Ê¥]¹LÂo¾¹ (Berkeley Packet Filter) ªº
+ µ{¦¡ (&man.bpf.4;)¡A¦ý¬O§A¦b kernel ¤¤¨S¦³±Ò°Ê¥¦¡C§â¤U­±³o¤@¦æ¥[
+ ¤J kernel ³]©wÀɤ¤¡A½sĶ¤@­Ó·sªº kernel¡G</para>
+
+ <programlisting>pseudo-device bpf # Berkeley Packet Filter</programlisting>
+
+ <para>¦b­«·s¶}¾÷¤§«á¡AÁÙ­n°µ¥X device node¡A¦b
+ <filename>/dev</filename> ¤U°õ¦æ¡G</para>
+
+ <screen>&prompt.root; <userinput>sh MAKEDEV bpf0</userinput></screen>
+
+ <para>¦pªG·Q­n§ó¶i¤@¨Bª¾¹D¦p¦ó°µ¥X¦UºØ device node¡A½Ð°Ñ¾\ <ulink
+ url="../handbook/kernelconfig-nodes.html">Handbook Ãö©ó¶gÃä¸`ÂIªº»¡©ú</ulink>
+ ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="mount-smb-share">
+ <para>§Ú­n«ç¼Ë¤~¯à±N Windows ¾÷¾¹¤¤ªººÏºÐ±¾¤J¨t²Î, ´N¹³ Linux ´£¨Ñ
+ ªº smbmount ¨º¼Ë¡H</para>
+ </question>
+
+ <answer>
+ <para>¨Ï¥Î <application>SMBFS</application> ¤u¨ã²Õ¡C³o®M¤u¨ã²Õ¤¤
+ ¥]§t¤F¤@¨t¦Cªº kernel ­×§ïÁÙ¦³¨Ï¥ÎªÌªº¤u¨ãµ{¦¡(userland programs)¡C
+ ³o¨Çµ{¦¡©M¸ê°T¦b ports ¦¬Âä¤
+ <filename role="package">net/smbfs</filename> ¤U¥i¥H§ä¨ì¡C¦b
+ 4.5-RELEASE ¤§«áªºª©¥»«h¬O¨t²Î¤¤¤º«Ø¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="icmp-response-bw-limit">
+ <para>§Ú¦b¨t²Î¤é»x¤¤µo²{¥H¤U°T®§¡G
+ <quote>icmp-response bandwidth limit 300/200 pps</quote>¡A³o¬O
+ ½¼¦Ì¸J¿|¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¬O¨t²Î®Ö¤ß§i¶D§A¦³¬Y¨Ç¬¡°Ê¤Þµo¥¦°e¥X¤ñ¥¦©Ò»{¬°À³¸Ó°e¥X§ó
+ ¦hªº ICMP ©Î TCP ­«¸m°T®§ (RST)¡CICMP ¦^À³°T®§±`±`¬O¦]¬°¦³¤H¹Á
+ ¸Õ³s±µ¥¼³Q¨Ï¥Îªº UDP ³q°T°ð¡CTCP ­«¸m°T®§«h¬O¦³¤H¹Á¸Õ³s±µ¥¼¶}
+ ©ñ TCP ³q°T°ð³y¦¨ªºµ²ªG¡C¥H¤U³o¨Ç¬¡°Ê¥i¯à´N¬O³y¦¨³o¨Ç°T®§ªº­ì¦]¡G
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>¼É¤OªkªºªA°È²Õµ´§ðÀ»(DoS)¤è¦¡
+ (¬Û¸û©ó°w¹ï¯S®í®zÂI¨Ï¥Î³æ¤@«Ê¥]ªº§ðÀ»¤è¦¡)¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¤j¶qªº³q°T°ð±½´y(¬Û¸û©ó¶È¹Á¸Õ¤Ö¼Æªº±`¨£ªA°È³q°T°ð)¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>¥X²{ªº¼Æ¦r¤¤²Ä¤@­Ó¥Nªí®Ú¾Ú³o¨Ç¬y¶q kernel À³¸Ó°e¥Xªº«Ê¥]¼Æ¡A
+ ²Ä¤G­Ó¼Æ¦r«h¬O kernel ¥Ø«e­­¨î³Ì¤jµo°e¼Æ¡C§A¥i¥H§Q¥Î sysctl ­×§ï
+ <varname>net.inet.icmp.icmplim</varname> ÅܼƭȨӧó§ï³Ì¤j­È¡CÁ|
+ ¨Ò¨Ó»¡,¦pªG§Æ±æ­×§ï­­¨î¬° <literal>300</literal> packets per
+ second¡G</para>
+
+ <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim=300</userinput></screen>
+
+ <para>¦pªG§A¤£·Q¦b¨t²Î¬ö¿ý¤¤¬Ý¨ì³o¨Ç°T®§¡A¦ý¬O¤´µM§Æ±æ«O«ù¦^À³ªº­­
+ ¨îªº¸Ü¡A§A¥i¥H§Q¥Î sysctl ­×§ï
+ <varname>net.inet.icmp.icmplim_output</varname> ÅܼƨӨú®ø³o¨Ç°T
+ ®§¡G</para>
+
+ <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim_output=0</userinput></screen>
+
+ <para>³Ì«á¡A¦pªG§A·Q¨ú®ø³o¨Ç­­¨îªº¸Ü¡A§A¥i¥H³]©w
+ <varname>net.inet.icmp.icmplim</varname> (¦p¤W¨Ò©Ò¥Ü) ¬°
+ <literal>0</literal>¡C°ò©ó¤W­z²z¥Ñ¡A§Ú­Ì¤£«Øij§A¨ú®ø³o¨Ç­­¨î¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="unknown-hw-addr-format">
+ <para>³o­Ó¿ù»~°T®§
+ <errorname>arp: unknown hardware address format</errorname>
+ ¬O¤°»ò·N«ä¡H</para>
+ </question>
+
+ <answer>
+ <para>³o¥Nªí§Aªº°Ï°ìºô¸ô³s½u¤W¦³¤@¨Ç³]³Æ¨Ï¥Î FreeBSD ¬Ý¤£À´ªº MAC
+ ®æ¦¡¡C³o³q±`¬O¥Nªí¦³¤H¦b§Aªº°Ï°ìºô¸ô¤W¶i¦æ¹êÅç¡A³Ì±`¨£ªº´N¬O
+ cable modem ªº³s½u¡C³o°T®§µL®`¡A¦Ó¥BÀ³¸Ó¤£¦Ü©ó¼vÅT¨ì FreeBSD ¥D
+ ¾÷ªº®Ä¯à¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cvsup-missing-libs">
+ <para>§Ú­è­è¸Ë¦n CVSup ®M¥ó¡A¦ý¬O¦b¹Á¸Õ°õ¦æ®Éµo¥Í¤F¿ù»~¡A­n«ç»ò¿ì¡H
+ </para>
+ </question>
+
+ <answer>
+ <para>­º¥ý¡A¬Ý¬Ý¿ù»~ªº°T®§¬O§_¦p¤U¡G</para>
+
+ <programlisting>/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found</programlisting>
+
+ <para>³oºØ¿ù»~°T®§¥Nªí§A¥D¾÷¤W¦w¸Ëªº
+ <filename role="package">net/cvsup</filename> ¨S¦³¥]§t
+ <application>XFree86</application> ®M¥ó¡C¦pªG§A·Q­n¨Ï¥Î
+ <application>CVSup</application> ¤º«Øªº¹Ï§Î¤¶­±
+ <acronym>GUI</acronym> ªº¸Ü¡A§A»Ý­n¦w¸Ë
+ <application>XFree86</application>¡C¦¹¥~¡A¦pªG§A¥u·Q¥H©R¥O¦C¤è
+ ¦¡¨Ï¥Î <application>CVSup</application> ªº¸Ü¡A§AÀ³¸Ó¥ý²¾°£¤§«e
+ ¦w¸Ëªº®M¥ó¡C¨Ã¦w¸Ë
+ <filename role="package">net/cvsup-without-gui</filename> ³o®M
+ ³nÅé¡C¦b FreeBSD ¤â¥U¤¤ <ulink
+ url="http://www.freebsd.org/handbook/cvsup.html">CVSup</ulink>
+ ¬q¸¨¤¤¦³§ó¸Ô²Óªº»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="security">
+ <chapterinfo>
+ <author>
+ <firstname>Biing Jong</firstname>
+ <surname>Lin</surname>
+ <affiliation>
+ <address><email>bjlin@stic.gov.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¨t²Î¦w¥þ½g</title>
+ <qandaset>
+ <qandaentry>
+ <question id="sandbox">
+ <para>¤°»ò¬O sandbox¡H</para>
+ </question><answer>
+
+ <para><quote>Sandbox</quote> ¬O¨t²Î¦w¥þ¥Îªº³N»y¡A¦³¨â­Ó·N¸q¡G</para>
+
+ <itemizedlist>
+ <listitem>
+
+ <para>©ñ¦b¬Y¨ÇµêÀÀ¨¾Å@Àð¸Ìªº°õ¦æµ{§Ç¡A³o¨Ç¨¾Å@Àð¬O¥Î¨Óªý¤î
+ ¬Y¨Ç¤H«I¤J³o¹Dµ{§Ç¡A¶i¦Ó¥X¤J©ó§ó¤jªº¨t²Î¤¤¡C</para>
+
+ <para>³o¹Dµ{§Ç¥i¥H§¹¥þ¦b¨¾Å@Àð¸Ì <quote>°Ê§@</quote>¡C¤]´N
+ ¬O»¡¡A¥¦©Ò°õ¦æªº¥ô¦óµ{¦¡¤£¥i¯à·|º¯³z¨ìÀ𪺥~­±¡C©Ò¥H¦pªG
+ ±z¹ï¥¦¦³¦w¥þ¤WªºÅU¼{¡A¨Ã¤£»Ý­n¯S§O¥hºÊÅ¥¥¦ªº¤@Á|¤@°Ê¡A¤Ï
+ ¥¿¥¦¥u¯à¦bÀ𤺬¡°Ê¡C</para>
+
+ <para>Á|¨Ò¨Ó»¡¡A¥i¥H¥Î userid ¨Ó°µ³o¹D¨¾Å@Àð¡A³o¥¿¬O security
+ ©M named »¡©ú¤å¥ó¤¤ªº©w¸q¡C</para>
+
+ <para>²{¦b´N¥Î <literal>ntalk</literal> ³o­ÓªA°È§@»¡©ú¡]¨£
+ /etc/inetd.conf¡^¡C³o­ÓªA°È¥H«eªº userid ¬O
+ <username>root</username>¡A²{¦b°õ¦æ®É«h¬O¥Î
+ <username>tty</username>¡C<username>tty</username>
+ ³o­Ó¨Ï¥ÎªÌ´N¬O¤@­Ó sandbox¡A¦pªG¦³¤H¯à°÷¶¶§Q¥Î ntalk
+ «I¤J¨t²Î¡A²{¦b¥L´Nºâ¶i±o¨Ó¤]¥u¯à¥Î³o­Ó userid¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>©ñ¦b¬Y­Ó¼ÒÀÀ¾÷¾¹¸Ìªºµ{¦¡¡A³o¤ñ¤W­z¨Ó±o§óÄY±K¡C°ò¥»¤W
+ ³oªí¥Ü¯à«I¤J¸Óµ{¦¡ªº¤H¬Û«H¥L¯à¦A¶i¤J©ÒÄݪº¾÷¾¹¡A¦ý¨Æ¹ê¤W
+ ¥u·|¶i¤J¼ÒÀÀ¥X¨Óªº¾÷¾¹¡AµLªk¶i¤@¨B­×§ï¥ô¦ó¯u¹êªº¸ê®Æ¡C</para>
+
+ <para>¹F¨ì³o­Ó¥Øªº³Ì±`¥Îªº¤èªk¡A´N¬O¦b¬Y­Ó¤l¥Ø¿ý¤U°µ¥X¼ÒÀÀªº
+ Àô¹Ò¡AµM«á¥Î chroot °õ¦æ¸Óµ{¦¡¡A³o¼Ë¸Óµ{¦¡ªº®Ú¥Ø¿ý«K¬O³o­Ó
+ ¤l¥Ø¿ý¡A¦Ó«D¨t²Î¯u¥¿ªº®Ú¥Ø¿ý¡C</para>
+
+ <para>¥t¤@­Ó±`¨£§@ªk¬O±N¬Y­ÓÀɮרt²Î mount ¦¨°ßŪ¡A¦ý¦b¥¦
+ ¤W­±¥t¥~»s³y¥Xµ{¦¡¥H¬°¥i¥H¼g¤JªºÀɮרt²Î¡C³o­Óµ{¦¡·|¬Û«H
+ ¥¦¥i¥H¹ï¨ä¥LÀÉ®×Ū¼g¡A¦ý¥u¦³¥¦¬Ý¤£¨ì³o­Ó°ßŪ®ÄÀ³ - ¨t²Î
+ °õ¦æªº¤@¯ëµ{¦¡³£¬Ý±o¨ì¡C</para>
+
+ <para>§Ú­Ì¸Õ¹Ï±N³oÃþ sandbox ºÉ¶q³z©ú¤Æ¡AÅý¨Ï¥ÎªÌ©Î«I¤JªÌ
+ µLªk¬Ý¨ì¥L¬O§_¦b¬Y­Ó sandbox ¸Ì­±¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>UNIX ¹ê§@¨âºØ sandbox¡A¤@­Ó¦bµ{¦¡¼h­±¡A¥t¤@­Ó«h¬O¥Ñ userid
+ ¨Ó¹F¦¨¡C</para>
+
+ <para>¨C­Ó UNIX °õ¦æµ{§Ç·|¥Î¨¾¤õÀð±N¥¦©M©Ò¦³¨ä¥Lµ{§Ç¹j¶}¡A¬Y­Óµ{§Ç
+ ¤£¥i¥HÀH·N­×§ï¨ä¥Lµ{§Ç¦ì§}ªº¸ê®Æ¡C³o©M Windows ¤¤¡Aµ{¦¡¥i¥H»´©ö
+ ­×§ï¨ä¥L¦ì§}¸ê®Æ¡Aµ²ªG¾É­P·í¾÷ªº±¡§Î¤j¤£¬Û¦P¡C</para>
+
+ <para>¨C­Ó UNIX µ{§Ç³£ÄÝ©ó¬Y­Ó¯S©wªº userid¡C¦pªG¸Ó userid ¤£¬O
+ <username>root</username>¡A´N·|±N¥¦©M¨ä¥L¨Ï¥ÎªÌªºµ{§Ç¹j¶}¡C
+ Userid ¦P®É¤]¥Î©óµwºÐ¸ê®Æªº¦s¨úÅv¤W¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="securelevel">
+ <para>¤°»ò¬O securelevel?</para>
+ </question>
+
+ <answer>
+ <para>securelevel ¬O®Ö¤ß¤¤©Ò¹ê§@ªº¤@­Ó¦w¥þ¾÷¨î¡C°ò¥»¤W·í
+ securelevel ¬O¥¿­È®É¡A®Ö¤ß·|­­¨î¬Y¨Ç¤u§@¡F§Y¨Ï¬O superuser
+ (¤]´N¬O <username>root</username>) ¤]µLªk§¹¦¨¨º¨Ç¤u§@¡C¦b¼¶¼g
+ ¥»¤å®É¡Asecurelevel ¾÷¨î¦b¤@¯ëªº­­¨î¥~¡AÁÙ¯à°÷­­¨î¥H¤Uªº¥\¯à¡G
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>²M°£¬Y¨Ç¯S©wªºÀɮ׺X¼Ð¡A¨Ò¦p <literal>schg</literal>
+ (¨t²Î°ßŪ¼ÐºX, the system immutable flag)</para>
+ </listitem>
+
+ <listitem>
+ <para>¸g¥Ñ <devicename>/dev/mem</devicename> »P
+ <devicename>/dev/kmem</devicename>¡A ±N¸ê®Æ¼g¤J¦Ü®Ö¤ß°O¾ÐÅ餤
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>¸ü¤J®Ö¤ß¼Ò²Õ</para>
+ </listitem>
+
+ <listitem>
+ <para>§ó°Ê &man.ipfirewall.4; ³W«h¡C</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>·Q­nÀˬd¦b¬Y­Ó¹B§@¤¤ªº¨t²Îªº securelevel ª¬ºA¡A¥u­n°õ¦æ¥H¤U
+ ©R¥O§Y¥i¡G</para>
+
+ <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
+
+ <para>¿é¥Xªºµ²ªG·|¥]§t¤@­Ó &man.sysctl.8; ÅܼƦWºÙ (¦b³o­Ó¨Ò¤l¤¤¡A
+ ¥¦¬O <varname>kern.securelevel</varname>) ¥H¤Î¤@­Ó¼Æ¦r¡C«áªÌ§Y¬O
+ ¥Ø«eªº securelevel ­È¡C¦pªG¥¦¬O¤@­Ó¥¿­È (¤]´N¬O¤j©ó 0)¡Aªí¥Ü¦Ü¤Ö
+ ¦³¤@¨Ç securelevel ªº«OÅ@¾÷¨î¤w¸g¶}±Ò¤F¡C</para>
+
+ <para>§A¨S¦³¿ìªk­°§C¤@­Ó¹B§@¤¤ªº¨t²Îªº securelevel¡F¦pªG¥i¥Hªº¸Ü¡A
+ ´N¥¢¥h¤F³o­Ó¾÷¨îªº·N¸q¤F¡C¦pªG§A­n§@¤@¨Ç»Ý­n securelevel ¬°
+ «D¥¿­È¤~¥i¥Hªº°Ê§@ªº¸Ü (¨Ò¦p <maketarget>installworld</maketarget>
+ ©Î§ó°Ê¤é´Á)¡A§A»Ý­n­×§ï <filename>/etc/rc.conf</filename> ¤ºªº
+ securelevel ³]©w (§ä§ä <varname>kern_securelevel</varname> ©M
+ <varname>kern_securelevel_enable</varname> ÅܼÆ)¡AµM«á­«·s¶}¾÷¡C
+ </para>
+
+ <para>·Q­nª¾¹D§ó¦h¦³Ãö©ó securelevel »P¦U­Ó¤£¦Pµ¥¯Å¼vÅTªº²Ó¸`¡A
+ ½Ð°Ñ¦Ò &man.init.8; »¡©ú¤å¥ó¡C</para>
+
+ <warning>
+ <para>securelevel ¥i¤£¬O¸UÆF¤¦¡F¥¦¦³³\¦h¤wª¾ªº¯Ê³´¡A©¹©¹³y¦¨
+ ¤@ºØ¦w¥þªº°²¶H¡C</para>
+
+ <para>¥¦¤@­Ó³Ì¤jªº°ÝÃD¡A´N¬O­nÅý³o­Ó¥\¯à§¹¥þ¦³®Äªº¸Ü¡A¦b
+ securelevel µo´§§@¥Î«eªº±Ò°Ê¹Lµ{¤¤¡A©Ò¦³¨Ï¥Î¨ìªºÀɮ׳£
+ ¥²¶·³Q«OÅ@°_¨Ó¡C¦pªG¤@­Ó§ðÀ»ªÌ¦b securelevel ¦³®Ä«e (¥Ñ©ó
+ ¦³¨Ç¨t²Î¦b±Ò°Ê¤¤©Ò§@ªº¨Æ±¡¡AµLªk¦b¸û°ªªº securelevel ¤¤
+ ¥¿±`¹B§@¡A©Ò¥H³o·|¦b±Ò°Ê¹Lµ{¤¤«á´Á¤~·|¹B§@)¡A¯àÅý¥L­Ìªºµ{¦¡
+ ³Q°õ¦æªº¸Ü¡Asecurelevel ªº«OÅ@´N§¹¥þµL®Ä¤F¡C«OÅ@±Ò°Êµ{§Ç
+ ¤¤©Ò¦³ªºÀɮצb§Þ³N¤W¬O¥i¦æªº¡A¦ý¬O¦pªG¯uªº³o¼Ë§@ªº¸Ü¡A¨t²Î
+ ºûÅ@±N·|Åܦ¨¤@³õ¹ÚÆL¡C§Y¨Ï¥u¬O­×§ï¤@­Ó³]©wÀÉ¡A¤]¥²¶·±N¾ã­Ó
+ ¨t²ÎÃö³¬¡A¦Ü¤Ö¤]±o¨ì³æ¤H¼Ò¦¡¡C</para>
+
+ <para>°£¤F³oÂI¡AÁÙ¦³³\¦h¨ä¥¦ªºªF¦è³£¦b³q«H½×¾Â¤W°Q½×¡A¤×¨ä¬O
+ freebsd-security¡C½Ð¨ì <ulink
+ url="../../../../search/index.html">³o¸Ì</ulink> ·j´M¥H«eªº
+ °Q½×¡C¦³¨Ç¤H§Æ±æ securelevel ¯à°÷¾¨§Ö®ø¥¢¡A¥Ñ¥t¤@­Ó§óÀu¨qªº
+ ¾÷¨î¨ú¥N¡A¤£¹L¾÷·|¦³ÂI´ù¯í¡C</para>
+
+ <para>­·ÀI¦Û¦æ©Ó¾á¡C</para>
+ </warning>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="extra-named-port">
+ <para>BIND (<command>named</command>) °£¤F¦b³q°T°ð 53 ¥H¥~¤]¦b
+ ¨ä¥L°ª½s¸¹³q°T°ð (high-numbered port) ²âÅ¥ (Listen)¡C
+ ³o¬O«ç»ò¦^¨Æ¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD 3.0 «áªºª©¥»¨Ï¥Î¤@­Ó¯S®íªº BIND ª©¥»¡A³o­Óª©¥»·|¨Ï
+ ¥ÎÀH¾÷ªº°ª½s¸¹³q°T°ð¨Ó¦^À³¥~³¡ªº¬d¸ß¡C¦pªG§A¦]¬°­n¾A¦X¨¾¤õÀðªº
+ ³]©w©Î¬O³æ¯Âªº·QÅý¦Û¤v¬Ý¨ÓµÎªA¤@ÂI¦Ó·Q¥Î 53 ³q°T°ð¦^À³¥~³¡¬d¸ß¡A
+ ¨º»ò§A¥i¥H¹Á¸Õ§ó§ï¥H¤UÀɮ׬ÛÃö¤º®e
+ <filename>/etc/namedb/named.conf</filename>¡G</para>
+
+ <programlisting>options {
+ query-source address * port 53;
+};</programlisting>
+
+ <para>§A¤]¥i¥H±N <literal>*</literal> §ó§ï¬°¯S©w IP address¡A
+ ÂÇ¥H¥[±j±±¨î±ø¥ó¡C</para>
+
+ <para>¶¶«K®¥³ß§A¡C¯à°÷Ū¨ú§A¨t²Î¤Wªº &man.sockstat.1; ³ø§i¨Ã¥Bª`·N
+ ¤£¥¿±`ª¬ªp¬O¤@¥ó¦n¨Æ¡I</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sendmail-port-587">
+ <para>Sendmail °£¤F¦b¼Ð·Çªº³q°T°ð 25 ¥~¤]¦b³q°T°ð 587 ²âÅ¥¡I³o¬O«ç
+ »ò¦^¨Æ¡H</para>
+ </question>
+
+ <answer>
+ <para>¸û·sª©¥»ªº Sendmail ¤ä´© mail submission ³o¶µ¥\¯à¡A¨Ã¥B¨Ï
+ ¥Î³q°T°ð 587¡C³o¶µ¥\¯àÁÙ¨S¦³³Q¼sªx¤ä´©¦ý¬O¤ä´©ªº¼Æ¥Ø¥¿¦b¼Wªø
+ ¤¤¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="toor-account">
+ <para>§Úµo²{¤F³o­Ó UID 0 <username>toor</username> ±b¸¹¡A³o¬O¤°»ò
+ ¸J¿|¡H§Ú³Q¶Â±¼¤F¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>©ñ¤ß¡C<username>toor</username> ¬O¤@­Ó
+ <quote>alternative</quote> ºÞ²zªÌ±b¸¹ (toor ¬O root ªºÂà¦V«÷ªk)¡C
+ ¥H©¹¬O¸òÀH &man.bash.1; ¦w¸Ë¦Ó«Ø¨îªº¡A«á¨Ó«h¦¨¬°¨t²Î¤º©w«Ø¨îªº¤@
+ ­Ó±b¸¹¡C³o­Ó±b¸¹±N¦ñÀH¤@­Ó«D¼Ð·Çªº shell ´ú¸Õ¨Ï¥Î¡A Åý§A¤£»Ý­n¥h
+ §ó§ï¨ì <username>root</username> ªº¤º«Ø shell¡C¦]¬°³o¨Ç¨ä¥Lªº shell
+ ¨Ã¨S¦³¸òÀH¨t²Î¹w³]­È¦w¸Ë (Á|¨Ò¨Ó»¡¡A¬Y¨Ç¥Ñ ports ¦w¸Ëªº
+ shell package)¡A¦Ó³Q¤º©w¦w¸Ë¦b <filename>/usr/local/bin</filename>
+ ¥Ø¿ý¤U¡A¦³¥i¯à¦s¦b¤£¦PªºÀɮרt²Î¤¤¡C ­Õ­Y <username>root</username>
+ ªº shell ³Q©ñ¦b <filename>/usr/local/bin</filename>¡A¥B
+ <filename>/usr</filename> (©Î¬O¨ä¥L¥]§tµÛ
+ <filename>/usr/local/bin</filename> ³o­Ó¤l¥Ø¿ýªºÀɮרt²Î)
+ ¦]¬°¬Y¨Ç­ì¦]¨Ã¨S¦³³Q¥¿±`ªº mount °_¨Óªº¸Ü¡A<username>root</username>
+ ±NµLªk¥¿±`ªºµn¤J¨t²Î¶i¦æºû­× (ÁöµM»¡§A­«¶}¾÷¦¨³æ¤H¼Ò¦¡´N·|°Ý§A­n
+ ¸ü¤J­þ­Ó shell)¡C</para>
+
+ <para>¦³¨Ç¤H¨Ï¥Î <username>toor</username> ±b¸¹¶i¦æ¨C¤éªº
+ <username>root</username> ºûÅ@¤u§@¡A¦p¦¹¥i¥H¨Ï¥Î«D¼Ð·Çªº
+ shell¡A¦Ó <username>root</username> ¥i¥H«O¯d¼Ð·Ç shell¡A
+ ¥H¦]À³³æ¤@¨Ï¥ÎªÌ¼Ò¦¡ (single user mode) ©Îºò«æª¬ªp³B²z¡C
+ ¨Ì·Ó¨t²Î¤º©w­È¡A§A±NµLªk¨Ï¥Î <username>toor</username> µn¤J¡A
+ ¦]¬°³o­Ó±b¸¹©|¥¼§ó§ï±K½X³]©w¡C¦]¦¹§A¦pªG§A·Q±Ò°Ê³o­Ó±b¸¹¡A§A»Ý­n
+ ¨Ï¥Î <username>root</username> µn¤J¨t²Î¨Ã¥B­×§ï
+ <username>toor</username> ªº±K½X¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="suidperl">
+ <para>¬°¤°»ò <command>suidperl</command> µLªk¥¿±`¹B§@¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬°¬Y¨Ç¦w¥þªº¦Ò¡A<command>suidperl</command> ¤º©wªº¦w¸Ë
+ ¨Ã¨S¦³³]©w suid bit¡C¨t²ÎºÞ²zªÌ¥i¥H¨Ì·Ó¥H¤U©R¥O±Ò°Ê suid ³]©w¡C
+ </para>
+
+ <screen>&prompt.root; <userinput>chmod u+s /usr/bin/suidperl</userinput></screen>
+
+ <para>¦pªG§A·Q­n¦b¥Ñ source ¤É¯Å®É <command>suidperl</command> ¤º©w
+ ±Ò°Ê suid ¥\¯àªº¸Ü¡A½s¿è <filename>/etc/make.conf</filename> ¥[¤J
+ <varname>ENABLE_SUIDPERL=true</varname> µM«á°õ¦æ
+ <command>make buildworld</command>¡C</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="ppp">
+ <title>PPP</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="userppp">
+ <para>I cannot make &man.ppp.8; work. What am I doing wrong?</para>
+ </question>
+
+ <answer>
+ <para>You should first read the
+ &man.ppp.8;
+ man page and the <ulink
+ url="../handbook/ppp-and-slip.html#USERPPP">
+ PPP section of the handbook</ulink>. Enable logging with
+ the command</para>
+
+ <programlisting>set log Phase Chat Connect Carrier lcp ipcp ccp command</programlisting>
+
+ <para>This command may be typed at the
+ &man.ppp.8; command prompt or it may be
+ entered in the <filename>/etc/ppp/ppp.conf</filename>
+ configuration file (the start of the
+ <literal>default</literal> section is the best
+ place to put it). Make sure that
+ <filename>/etc/syslog.conf</filename> (see &man.syslog.conf.5;) contains the lines</para>
+
+ <programlisting>!ppp
+*.* /var/log/ppp.log</programlisting>
+
+ <para>and that the file <filename>/var/log/ppp.log</filename>
+ exists. You can now find out a lot about what is going on
+ from the log file. Do not worry if it does not all make sense.
+ If you need to get help from someone, it may make sense to
+ them.</para>
+
+ <para>If your version of &man.ppp.8; does not understand the
+ <command>set log</command> command, you should download the
+ <ulink url="http://people.FreeBSD.org/~brian/">
+ latest version</ulink>. It will build on FreeBSD version
+ 2.1.5 and higher.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-hangs">
+ <para>Why does &man.ppp.8; hang when I run it?</para>
+ </question>
+
+ <answer>
+ <para>This is usually because your hostname will not resolve.
+ The best way to fix this is to make sure that
+ <filename>/etc/hosts</filename> is consulted by your
+ resolver first by editing <filename>/etc/host.conf</filename>
+ and putting the <literal>hosts</literal> line first. Then,
+ simply put an entry in <filename>/etc/hosts</filename> for
+ your local machine. If you have no local network, change your
+ <hostid>localhost</hostid> line:</para>
+
+ <programlisting>127.0.0.1 foo.bar.com foo localhost</programlisting>
+
+ <para>Otherwise, simply add another entry for your host.
+ Consult the relevant man pages for more details.</para>
+
+ <para>You should be able to successfully
+ <command>ping -c1 `hostname`</command> when you are done.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-nodial-auto">
+ <para>Why will &man.ppp.8; not dial in <literal>-auto</literal>
+ mode?</para>
+ </question>
+
+ <answer>
+ <para>First, check that you have got a default route. By running
+ <command>netstat -rn</command> (see &man.netstat.1;), you should see two entries like this:</para>
+
+ <programlisting>Destination Gateway Flags Refs Use Netif Expire
+default 10.0.0.2 UGSc 0 0 tun0
+10.0.0.2 10.0.0.1 UH 0 0 tun0</programlisting>
+
+ <para>This is assuming that you have used the addresses from the
+ handbook, the man page or from the ppp.conf.sample file.
+ If you do not have a default route, it may be because you are
+ running an old version of &man.ppp.8;
+ that does not understand the word <literal>HISADDR</literal>
+ in the ppp.conf file. If your version of
+ &man.ppp.8; is from before FreeBSD
+ 2.2.5, change the</para>
+
+ <programlisting>add 0 0 HISADDR</programlisting>
+
+ <para>line to one saying</para>
+
+
+ <programlisting>add 0 0 10.0.0.2</programlisting>
+
+ <para>Another reason for the default route line being missing
+ is that you have mistakenly set up a default router in your
+ <filename>/etc/rc.conf</filename> (see &man.rc.conf.5;) file (this file was called
+ <filename>/etc/sysconfig</filename> prior to release 2.2.2),
+ and you have omitted the line saying</para>
+
+ <programlisting>delete ALL</programlisting>
+
+ <para>from <filename>ppp.conf</filename>. If this is the case,
+ go back to the <ulink
+ url="../handbook/ppp-and-slip.html#USERPPP-FINAL">
+ Final system configuration</ulink> section of the
+ handbook.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="no-route-to-host">
+ <para>What does <errorname>No route to host</errorname> mean?</para>
+ </question>
+
+ <answer>
+ <para>This error is usually due to a missing</para>
+
+ <programlisting>MYADDR:
+ delete ALL
+ add 0 0 HISADDR</programlisting>
+
+ <para>section in your <filename>/etc/ppp/ppp.linkup</filename>
+ file. This is only necessary if you have a dynamic IP address
+ or do not know the address of your gateway. If you are using
+ interactive mode, you can type the following after entering
+ <literal>packet mode</literal> (packet mode is
+ indicated by the capitalized <acronym>PPP</acronym> in the
+ prompt):</para>
+
+ <programlisting>delete ALL
+add 0 0 HISADDR</programlisting>
+
+ <para>Refer to the <ulink
+ url="../handbook/ppp-and-slip.html#USERPPP-DYNAMICIP">
+ PPP and Dynamic IP addresses</ulink> section of the handbook
+ for further details.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="connection-threeminutedrop">
+ <para>Why does my connection drop after about 3 minutes?</para>
+ </question>
+
+ <answer>
+ <para>The default PPP timeout is 3 minutes. This can be
+ adjusted with the line</para>
+
+ <programlisting>set timeout <replaceable>NNN</replaceable></programlisting>
+
+ <para>where <replaceable>NNN</replaceable> is the number of
+ seconds of inactivity before the connection is closed. If
+ <replaceable>NNN</replaceable> is zero, the connection is never
+ closed due to a timeout. It is possible to put this command in
+ the <filename>ppp.conf</filename> file, or to type it at the
+ prompt in interactive mode. It is also possible to adjust it on
+ the fly while the line is active by connecting to
+ <application>ppp</application>s server socket using
+ &man.telnet.1; or &man.pppctl.8;.
+ Refer to the
+ &man.ppp.8; man
+ page for further details.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-drop-heavy-load">
+ <para>Why does my connection drop under heavy load?</para>
+ </question>
+
+ <answer>
+ <para>If you have Link Quality Reporting (LQR) configured,
+ it is possible that too many LQR packets are lost between
+ your machine and the peer. Ppp deduces that the line must
+ therefore be bad, and disconnects. Prior to FreeBSD version
+ 2.2.5, LQR was enabled by default. It is now disabled by
+ default. LQR can be disabled with the line</para>
+
+ <programlisting>disable lqr</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-drop-random">
+ <para>Why does my connection drop after a random amount of
+ time?</para>
+ </question>
+
+ <answer>
+ <para>Sometimes, on a noisy phone line or even on a line with
+ call waiting enabled, your modem may hang up because it
+ thinks (incorrectly) that it lost carrier.</para>
+
+ <para>There is a setting on most modems for determining how
+ tolerant it should be to temporary losses of carrier. On a
+ USR Sportster for example, this is measured by the S10
+ register in tenths of a second. To make your modem more
+ forgiving, you could add the following send-expect sequence
+ to your dial string:</para>
+
+ <programlisting>set dial "...... ATS10=10 OK ......"</programlisting>
+
+ <para>Refer to your modem manual for details.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-hangs-random">
+ <para>Why does my connection hang after a random amount of
+ time?</para>
+ </question><answer>
+
+ <para>Many people experience hung connections with no apparent
+ explanation. The first thing to establish is which side of
+ the link is hung.</para>
+
+ <para>If you are using an external modem, you can simply try
+ using &man.ping.8; to see if the
+ <acronym>TD</acronym> light is flashing when you transmit data.
+ If it flashes (and the <acronym>RD</acronym> light does not),
+ the problem is with the remote end. If <acronym>TD</acronym>
+ does not flash, the problem is local. With an internal modem,
+ you will need to use the <literal>set server</literal> command in
+ your <filename>ppp.conf</filename> file. When the hang occurs,
+ connect to &man.ppp.8; using &man.pppctl.8;. If your network connection
+ suddenly revives (PPP was revived due to the activity on the
+ diagnostic socket) or if you cannot connect (assuming the
+ <literal>set socket</literal> command succeeded at startup
+ time), the problem is local. If you can connect and things are
+ still hung, enable local async logging with <literal>set log
+ local async</literal> and use &man.ping.8; from
+ another window or terminal to make use of the link. The async
+ logging will show you the data being transmitted and received
+ on the link. If data is going out and not coming back, the
+ problem is remote.</para>
+
+ <para>Having established whether the problem is local or remote,
+ you now have two possibilities:</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-remote-not-responding">
+ <para>The remote end is not responding. What can I do?</para>
+ </question>
+
+ <answer>
+ <para>There is very little you can do about this. Most ISPs
+ will refuse to help if you are not running a Microsoft OS.
+ You can <literal>enable lqr</literal> in your
+ <filename>ppp.conf</filename> file, allowing &man.ppp.8; to detect
+ the remote failure and hang up, but this detection is
+ relatively slow and therefore not that useful. You may want to
+ avoid telling your ISP that you are running user-PPP...</para>
+
+ <para>First, try disabling all local compression by adding the
+ following to your configuration:</para>
+
+ <programlisting>disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
+deny pred1 deflate deflate24 protocomp acfcomp shortseq vj</programlisting>
+
+ <para>Then reconnect to ensure that this makes no difference.
+ If things improve or if the problem is solved completely,
+ determine which setting makes the difference through trial
+ and error. This will provide good ammunition when you contact
+ your ISP (although it may make it apparent that you are not
+ running a Microsoft product).</para>
+
+ <para>Before contacting your ISP, enable async logging locally
+ and wait until the connection hangs again. This may use up
+ quite a bit of disk space. The last data read from the port
+ may be of interest. It is usually ascii data, and may even
+ describe the problem
+ (<quote>Memory fault, core dumped</quote>?).</para>
+
+ <para>If your ISP is helpful, they should be able to enable
+ logging on their end, then when the next link drop occurs,
+ they may be able to tell you why their side is having a
+ problem. Feel free to send the details to &a.brian;, or
+ even to ask your ISP to contact me directly.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-hung">
+ <para>&man.ppp.8; has hung. What can I do?</para>
+ </question>
+
+ <answer>
+ <para>Your best bet here is to rebuild &man.ppp.8; by adding
+ <literal>CFLAGS+=-g</literal> and <literal>STRIP=</literal>
+ to the end of the Makefile, then doing a
+ <command>make clean &amp;&amp; make &amp;&amp; make
+ install</command>. When &man.ppp.8; hangs, find the &man.ppp.8; process id
+ with <command>ps ajxww | fgrep ppp</command> and run
+ <command>gdb ppp <replaceable>PID</replaceable></command>.
+ From the gdb prompt, you can then use <command>bt</command>
+ to get a stack trace.</para>
+
+ <para>Send the results to <email>brian@Awfulhak.org</email>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-loginok-thennothing">
+ <para>Why does nothing happen after the <quote>Login OK!</quote>
+ message?</para>
+ </question>
+
+ <answer>
+ <para>Prior to FreeBSD version 2.2.5, once the link was
+ established, &man.ppp.8;
+ would wait for the peer to initiate the Line Control Protocol
+ (LCP). Many ISPs will not initiate negotiations and expect
+ the client to do so. To force
+ &man.ppp.8; to initiate the LCP, use the
+ following line:</para>
+
+ <programlisting>set openmode active</programlisting>
+
+ <note>
+ <para>It usually does no
+ harm if both sides initiate negotiation, so openmode is now
+ active by default. However, the next section explains when
+ it <emphasis>does</emphasis> do some harm.</para>
+ </note>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-same-magic">
+ <para>I keep seeing errors about magic being the same. What does
+ it mean?</para>
+ </question>
+
+ <answer>
+ <para>Occasionally, just after connecting, you may see messages
+ in the log that say <quote>magic is the same</quote>.
+ Sometimes, these messages are harmless, and sometimes one side
+ or the other exits. Most PPP implementations cannot survive
+ this problem, and even if the link seems to come up, you will see
+ repeated configure requests and configure acknowledgments in
+ the log file until &man.ppp.8; eventually gives up and closes the
+ connection.</para>
+
+ <para>This normally happens on server machines with slow disks
+ that are spawning a getty on the port, and executing &man.ppp.8; from
+ a login script or program after login. I have also heard reports
+ of it happening consistently when using slirp. The reason is
+ that in the time taken between &man.getty.8; exiting and &man.ppp.8; starting,
+ the client-side &man.ppp.8; starts sending Line Control Protocol (LCP)
+ packets. Because ECHO is still switched on for the port on
+ the server, the client &man.ppp.8; sees these packets
+ <quote>reflect</quote> back.</para>
+
+ <para>One part of the LCP negotiation is to establish a magic
+ number for each side of the link so that
+ <quote>reflections</quote> can be detected. The protocol says
+ that when the peer tries to negotiate the same magic number, a
+ NAK should be sent and a new magic number should be chosen.
+ During the period that the server port has ECHO turned on, the
+ client &man.ppp.8; sends LCP packets, sees the same magic in the
+ reflected packet and NAKs it. It also sees the NAK reflect
+ (which also means &man.ppp.8; must change its magic). This produces a
+ potentially enormous number of magic number changes, all of
+ which are happily piling into the server's tty buffer. As soon
+ as &man.ppp.8; starts on the server, it is flooded with magic number
+ changes and almost immediately decides it has tried enough to
+ negotiate LCP and gives up. Meanwhile, the client, who no
+ longer sees the reflections, becomes happy just in time to see
+ a hangup from the server.</para>
+
+ <para>This can be avoided by allowing the peer to start
+ negotiating with the following line in your ppp.conf
+ file:</para>
+
+ <programlisting>set openmode passive</programlisting>
+
+ <para>This tells &man.ppp.8; to wait for the server to initiate LCP
+ negotiations. Some servers however may never initiate
+ negotiations. If this is the case, you can do something
+ like:</para>
+
+ <programlisting>set openmode active 3</programlisting>
+
+ <para>This tells &man.ppp.8; to be passive for 3 seconds, and then to
+ start sending LCP requests. If the peer starts sending
+ requests during this period, &man.ppp.8; will immediately respond
+ rather than waiting for the full 3 second period.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-lcp-constant">
+ <para>LCP negotiations continue until the connection is
+ closed. What is wrong?</para>
+ </question>
+
+ <answer>
+ <para>There is currently an implementation mis-feature in
+ &man.ppp.8; where it does not associate
+ LCP, CCP &amp; IPCP responses with their original requests. As
+ a result, if one PPP
+ implementation is more than 6 seconds slower than the other
+ side, the other side will send two additional LCP configuration
+ requests. This is fatal.</para>
+
+ <para>Consider two implementations,
+ <hostid>A</hostid> and
+ <hostid>B</hostid>. <hostid>A</hostid> starts
+ sending LCP requests immediately after connecting and
+ <hostid>B</hostid> takes 7 seconds to start. When
+ <hostid>B</hostid> starts, <hostid>A</hostid>
+ has sent 3 LCP REQs. We are assuming the line has ECHO switched
+ off, otherwise we would see magic number problems as described in
+ the previous section. <hostid>B</hostid> sends a
+ REQ, then an ACK to the first of
+ <hostid>A</hostid>'s REQs. This results in
+ <hostid>A</hostid> entering the <acronym>OPENED</acronym>
+ state and sending and ACK (the first) back to
+ <hostid>B</hostid>. In the meantime,
+ <hostid>B</hostid> sends back two more ACKs in response to
+ the two additional REQs sent by <hostid>A</hostid>
+ before <hostid>B</hostid> started up.
+ <hostid>B</hostid> then receives the first ACK from
+ <hostid>A</hostid> and enters the
+ <acronym>OPENED</acronym> state.
+ <hostid>A</hostid> receives the second ACK from
+ <hostid>B</hostid> and goes back to the
+ <acronym>REQ-SENT</acronym> state, sending another (forth) REQ
+ as per the RFC. It then receives the third ACK and enters the
+ <acronym>OPENED</acronym> state. In the meantime,
+ <hostid>B</hostid> receives the forth REQ from
+ <hostid>A</hostid>, resulting in it reverting to the
+ <acronym>ACK-SENT</acronym> state and sending
+ another (second) REQ and (forth) ACK as per the RFC.
+ <hostid>A</hostid> gets the REQ, goes into
+ <acronym>REQ-SENT</acronym> and sends another REQ. It
+ immediately receives the following ACK and enters
+ <acronym>OPENED</acronym>.</para>
+
+ <para>This goes on until one side figures out that they are
+ getting nowhere and gives up.</para>
+
+ <para>The best way to avoid this is to configure one side to be
+ <literal>passive</literal> - that is, make one side
+ wait for the other to start negotiating. This can be done
+ with the</para>
+
+ <programlisting>set openmode passive</programlisting>
+
+ <para>command. Care should be taken with this option. You
+ should also use the</para>
+
+ <programlisting>set stopped N</programlisting>
+
+ <para>command to limit the amount of time that
+ &man.ppp.8; waits for the peer to begin
+ negotiations. Alternatively, the</para>
+
+ <programlisting>set openmode active N</programlisting>
+
+ <para>command (where <replaceable>N</replaceable> is the
+ number of seconds to wait before starting negotiations) can be
+ used. Check the manual page for details.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-lockups">
+ <para>Why does &man.ppp.8; lock up shortly after connection?</para>
+ </question>
+
+ <answer>
+ <para>Prior to version 2.2.5 of FreeBSD, it was possible that
+ your link was disabled shortly after connection due to
+ &man.ppp.8; mis-handling Predictor1
+ compression negotiation. This would only happen if both sides
+ tried to negotiate different Compression Control Protocols
+ (CCP). This problem is now corrected, but if you are still
+ running an old version of &man.ppp.8;
+ the problem can be circumvented with the line</para>
+
+ <programlisting>disable pred1</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-shell-test-lockup">
+ <para>Why does &man.ppp.8; lock up when I shell out to test it?</para>
+ </question>
+
+ <answer>
+ <para>When you execute the <command>shell</command> or
+ <command>!</command> command, &man.ppp.8; executes a
+ shell (or if you have passed any arguments,
+ &man.ppp.8; will execute those arguments). Ppp will
+ wait for the command to complete before continuing. If you
+ attempt to use the PPP link while running the command, the link
+ will appear to have frozen. This is because
+ &man.ppp.8; is waiting for the command to
+ complete.</para>
+
+ <para>If you wish to execute commands like this, use the
+ <command>!bg</command> command instead. This will execute
+ the given command in the background, and &man.ppp.8; can continue to
+ service the link.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-nullmodem">
+ <para>Why does &man.ppp.8; over a null-modem cable never exit?</para>
+ </question>
+
+ <answer>
+ <para>There is no way for &man.ppp.8; to
+ automatically determine that a direct connection has been
+ dropped. This is due to the lines that are used in a
+ null-modem serial cable. When using this sort of connection,
+ LQR should always be enabled with the line</para>
+
+ <programlisting>enable lqr</programlisting>
+
+ <para>LQR is accepted by default if negotiated by the peer.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-auto-noreasondial">
+ <para>Why does &man.ppp.8; dial for no reason in -auto mode?</para>
+ </question><answer>
+
+ <para>If &man.ppp.8; is dialing
+ unexpectedly, you must determine the cause, and set up Dial
+ filters (dfilters) to prevent such dialing.</para>
+
+ <para>To determine the cause, use the following line:</para>
+
+ <programlisting>set log +tcp/ip</programlisting>
+
+ <para>This will log all traffic through the connection. The
+ next time the line comes up unexpectedly, you will see the
+ reason logged with a convenient timestamp next to it.</para>
+
+ <para>You can now disable dialing under these circumstances.
+ Usually, this sort of problem arises due to DNS lookups. To
+ prevent DNS lookups from establishing a connection (this will
+ <emphasis>not</emphasis> prevent
+ &man.ppp.8; from passing the packets
+ through an established connection), use the following:</para>
+
+ <programlisting>set dfilter 1 deny udp src eq 53
+set dfilter 2 deny udp dst eq 53
+set dfilter 3 permit 0/0 0/0</programlisting>
+
+ <para>This is not always suitable, as it will effectively break
+ your demand-dial capabilities - most programs will need a DNS
+ lookup before doing any other network related things.</para>
+
+ <para>In the DNS case, you should try to determine what is
+ actually trying to resolve a host name. A lot of the time,
+ &man.sendmail.8; is the culprit. You should make sure that
+ you tell sendmail not to do any DNS lookups in its
+ configuration file. See the section on
+ <link linkend="ispmail">Mail Configuration</link> for details
+ on how to create your own configuration file and what should
+ go into it. You may also want to add the following line to
+ your <filename>.mc</filename> file:</para>
+
+ <programlisting>define(`confDELIVERY_MODE', `d')dnl</programlisting>
+
+ <para>This will make sendmail queue everything until the queue
+ is run (usually, sendmail is invoked with
+ <option>-bd -q30m</option>, telling it to run the queue every
+ 30 minutes) or until a <command>sendmail -q</command> is done
+ (perhaps from your ppp.linkup file).</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ccp-errors">
+ <para>What do these CCP errors mean?</para>
+ </question>
+
+ <answer>
+ <para>I keep seeing the following errors in my log file:</para>
+
+ <programlisting>CCP: CcpSendConfigReq
+CCP: Received Terminate Ack (1) state = Req-Sent (6)</programlisting>
+
+ <para>This is because &man.ppp.8; is trying to negotiate Predictor1
+ compression, and the peer does not want to negotiate any
+ compression at all. The messages are harmless, but if you
+ wish to remove them, you can disable Predictor1 compression
+ locally too:</para>
+
+ <programlisting>disable pred1</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-lockup-ioerrors">
+ <para>Why does &man.ppp.8; lock up during file transfers with IO
+ errors?</para>
+ </question>
+
+ <answer>
+ <para>Under FreeBSD 2.2.2 and before, there was a bug in the
+ tun driver that prevents incoming packets of a size larger
+ than the tun interface's MTU size. Receipt of a packet
+ greater than the MTU size results in an IO error being logged
+ via syslogd.</para>
+
+ <para>The PPP specification says that an MRU of 1500 should
+ <emphasis>always</emphasis> be accepted as a minimum,
+ despite any LCP negotiations, therefore it is possible that
+ should you decrease the MTU to less than 1500, your ISP will
+ transmit packets of 1500 regardless, and you will tickle this
+ non-feature - locking up your link.</para>
+
+ <para>The problem can be circumvented by never setting an MTU of
+ less than 1500 under FreeBSD 2.2.2 or before.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-connectionspeed">
+ <para>Why does &man.ppp.8; not log my connection speed?</para>
+ </question>
+
+ <answer>
+
+ <para>In order to log all lines of your modem
+ <quote>conversation</quote>, you must enable the
+ following:</para>
+
+ <programlisting>set log +connect</programlisting>
+
+ <para>This will make &man.ppp.8; log
+ everything up until the last requested <quote>expect</quote>
+ string.</para>
+
+ <para>If you wish to see your connect speed and are using PAP
+ or CHAP (and therefore do not have anything to
+ <quote>chat</quote> after the CONNECT in the dial script - no
+ <literal>set login</literal> script), you must make sure that
+ you instruct &man.ppp.8; to <quote>expect</quote> the whole CONNECT
+ line, something like this:</para>
+
+ <programlisting>set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \
+ \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"</programlisting>
+
+ <para>Here, we get our CONNECT, send nothing, then expect a
+ line-feed, forcing &man.ppp.8; to read
+ the whole CONNECT response.</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-ignores-backslash">
+ <para>Why does &man.ppp.8; ignore the <literal>\</literal> character
+ in my chat script?</para>
+ </question><answer>
+
+ <para>Ppp parses each line in your config files so that it can
+ interpret strings such as
+ <literal>set phone "123 456 789"</literal> correctly (and
+ realize that the number is actually only
+ <emphasis>one</emphasis> argument. In order to specify a
+ <literal>&quot;</literal> character, you must escape it
+ using a backslash (<literal>\</literal>).</para>
+
+ <para>When the chat interpreter parses each argument, it
+ re-interprets the argument in order to find any special
+ escape sequences such as <literal>\P</literal> or
+ <literal>\T</literal> (see the man page). As a result of this
+ double-parsing, you must remember to use the correct number of
+ escapes.</para>
+
+ <para>If you wish to actually send a <literal>\</literal>
+ character to (say) your modem, you would need something
+ like:</para>
+
+ <programlisting>set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"</programlisting>
+
+ <para>resulting in the following sequence:</para>
+
+ <programlisting>ATZ
+OK
+AT\X
+OK</programlisting>
+
+ <para>or</para>
+
+ <programlisting>set phone 1234567
+set dial "\"\" ATZ OK ATDT\\T"</programlisting>
+
+ <para>resulting in the following sequence:</para>
+
+ <programlisting>ATZ
+OK
+ATDT1234567</programlisting>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-segfault-nocore">
+ <para>Why does &man.ppp.8; get a seg-fault, but I see no
+ <filename>ppp.core</filename> file?</para>
+ </question>
+
+ <answer>
+ <para>Ppp (or any other program for that matter) should never
+ dump core. Because &man.ppp.8; runs with an effective user id of 0,
+ the operating system will not write &man.ppp.8;'s core image to disk
+ before terminating it. If, however &man.ppp.8;
+ is actually terminating due to a
+ segmentation violation or some other signal that normally
+ causes core to be dumped, <emphasis>and</emphasis>
+ you are sure you are using the latest version (see the start of
+ this section), then you should do the following:</para>
+
+ <screen>&prompt.user; <userinput>tar xfz ppp-*.src.tar.gz</userinput>
+&prompt.user; <userinput>cd ppp*/ppp</userinput>
+&prompt.user; <userinput>echo STRIP= &gt;&gt;Makefile</userinput>
+&prompt.user; <userinput>echo CFLAGS+=-g &gt;&gt;Makefile</userinput>
+&prompt.user; <userinput>make clean all</userinput>
+&prompt.user; <userinput>su</userinput>
+&prompt.root; <userinput>make install</userinput>
+&prompt.root; <userinput>chmod 555 /usr/sbin/ppp</userinput></screen>
+
+ <para>You will now have a debuggable version of &man.ppp.8; installed.
+ You will have to be <username>root</username> to run &man.ppp.8; as all of its privileges
+ have been revoked. When you start &man.ppp.8;, take a careful note
+ of what your current directory was at the time.</para>
+
+ <para>Now, if and when &man.ppp.8; receives the segmentation violation,
+ it will dump a core file called <filename>ppp.core</filename>. You should then do
+ the following:</para>
+
+ <screen>&prompt.user; <userinput>su</userinput>
+&prompt.root; <userinput>gdb /usr/sbin/ppp ppp.core</userinput>
+<prompt>(gdb)</prompt> <userinput>bt</userinput>
+.....
+<prompt>(gdb)</prompt> <userinput>f 0</userinput>
+....
+<prompt>(gdb)</prompt> <userinput>i args</userinput>
+....
+<prompt>(gdb)</prompt> <userinput>l</userinput>
+.....</screen>
+
+ <para>All of this information should be given alongside your
+ question, making it possible to diagnose the problem.</para>
+
+ <para>If you are familiar with gdb, you may wish to find out some
+ other bits and pieces such as what actually caused the dump and
+ the addresses &amp; values of the relevant variables.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-autodialprocess-noconnect">
+ <para>Why does the process that forces a dial in auto mode never
+ connect?</para>
+ </question>
+
+ <answer>
+ <para>This was a known problem with
+ &man.ppp.8; set up to negotiate a
+ dynamic local IP number with the peer in auto mode. It is
+ fixed in the latest version - search the man page for
+ <literal>iface</literal>.</para>
+
+ <para>The problem was that when that initial program calls
+ &man.connect.2;, the IP number of the tun interface is assigned
+ to the socket endpoint. The kernel creates the first outgoing
+ packet and writes it to the tun device.
+ &man.ppp.8; then reads the packet and
+ establishes a connection. If, as a result of
+ &man.ppp.8;'s dynamic IP assignment, the
+ interface address is changed, the original socket endpoint will
+ be invalid. Any subsequent packets sent to the peer will
+ usually be dropped. Even if they are not, any responses will
+ not route back to the originating machine as the IP number is
+ no longer owned by that machine.</para>
+
+ <para>There are several theoretical ways to approach this
+ problem. It would be nicest if the peer would re-assign the
+ same IP number if possible <literal>:-)</literal>
+ The current version of &man.ppp.8; does
+ this, but most other implementations do not.</para>
+
+ <para>The easiest method from our side would be to never change
+ the tun interface IP number, but instead to change all outgoing
+ packets so that the source IP number is changed from the
+ interface IP to the negotiated IP on the fly. This is
+ essentially what the <literal>iface-alias</literal> option in
+ the latest version of &man.ppp.8; is
+ doing (with the help of
+ &man.libalias.3; and &man.ppp.8;'s <option>-nat</option> switch) -
+ it is maintaining all previous interface addresses and NATing
+ them to the last negotiated address.</para>
+
+ <para>Another alternative (and probably the most reliable) would
+ be to implement a system call that changes all bound sockets
+ from one IP to another. &man.ppp.8; would
+ use this call to modify the sockets of all existing programs
+ when a new IP number is negotiated. The same system call could
+ be used by dhcp clients when they are forced to re-bind() their
+ sockets.</para>
+
+ <para>Yet another possibility is to allow an interface to be
+ brought up without an IP number. Outgoing packets would be
+ given an IP number of 255.255.255.255 up until the first
+ SIOCAIFADDR ioctl is done. This would result in fully binding
+ the socket. It would be up to &man.ppp.8;
+ to change the source IP number, but only if it is set to
+ 255.255.255.255, and only the IP number and IP checksum would
+ need to change. This, however is a bit of a hack as the kernel
+ would be sending bad packets to an improperly configured
+ interface, on the assumption that some other mechanism is
+ capable of fixing things retrospectively.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ppp-nat-games">
+ <para>Why do most games not work with the -nat switch?</para>
+ </question>
+
+ <answer>
+ <para>The reason games and the like do not work when libalias
+ is in use is that the machine on the outside will try to open a
+ connection or send (unsolicited) UDP packets to the machine on
+ the inside. The NAT software does not know that it should send
+ these packets to the interior machine.</para>
+
+ <para>To make things work, make sure that the only thing
+ running is the software that you are having problems with, then
+ either run tcpdump on the tun interface of the gateway or
+ enable &man.ppp.8; tcp/ip logging (<literal>set log +tcp/ip</literal>)
+ on the gateway.</para>
+
+ <para>When you start the offending software, you should see
+ packets passing through the gateway machine. When something
+ comes back from the outside, it will be dropped (that is the
+ problem). Note the port number of these packets then shut down
+ the offending software. Do this a few times to see if the port
+ numbers are consistent. If they are, then the following line in
+ the relevant section of <filename>/etc/ppp/ppp.conf</filename> will make the
+ software functional:</para>
+
+ <programlisting>nat port <replaceable>proto</replaceable> <replaceable>internalmachine</replaceable>:<replaceable>port</replaceable> <replaceable>port</replaceable></programlisting>
+
+ <para>where <replaceable>proto</replaceable> is either
+ <literal>tcp</literal> or <literal>udp</literal>,
+ <replaceable>internalmachine</replaceable> is the machine that
+ you want the packets to be sent to and
+ <replaceable>port</replaceable> is the destination port number
+ of the packets.</para>
+
+ <para>You will not be able to use the software on other machines
+ without changing the above command, and running the software
+ on two internal machines at the same time is out of the question
+ - after all, the outside world is seeing your entire internal
+ network as being just a single machine.</para>
+
+ <para>If the port numbers are not consistent, there are three
+ more options:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Submit support in
+ libalias. Examples of <quote>special cases</quote> can be found
+ in <filename>/usr/src/lib/libalias/alias_*.c</filename>
+ (<filename>alias_ftp.c</filename> is a good prototype). This
+ usually involves reading certain recognised outgoing packets,
+ identifying the instruction that tells the outside machine to
+ initiate a connection back to the internal machine on a
+ specific (random) port and setting up a <quote>route</quote> in
+ the alias table so that the subsequent packets know where to
+ go.</para>
+
+ <para>This is the most difficult solution, but it is the best
+ and will make the software work with multiple machines.</para>
+ </listitem>
+
+ <listitem>
+ <para>Use a proxy. The
+ application may support socks5 for example, or (as in the
+ <quote>cvsup</quote> case) may have a <quote>passive</quote>
+ option that avoids ever requesting that the peer open
+ connections back to the local machine.</para>
+ </listitem>
+
+ <listitem>
+ <para>Redirect everything to
+ the internal machine using <literal>nat addr</literal>. This
+ is the sledge-hammer approach.</para>
+ </listitem>
+ </orderedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="useful-port-numbers">
+ <para>Has anybody made a list of useful port numbers?</para>
+ </question><answer>
+
+ <para>Not yet, but this is intended to grow into such a list
+ (if any interest is shown). In each example,
+ <replaceable>internal</replaceable> should be replaced with
+ the IP number of the machine playing the game.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><application>Asheron's Call</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>
+ :65000 65000</literal></para>
+
+ <para>Manually change the port number within the game to
+ 65000. If you have got a number of machines that you wish
+ to play on assign a unique port number for each (i.e.
+ 65001, 65002, etc) and add a <literal>nat port</literal>
+ line for each one.</para>
+ </listitem>
+
+ <listitem>
+ <para><application>Half Life</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:27005
+ 27015</literal></para>
+ </listitem>
+
+ <listitem>
+ <para><application>PCAnywhere 8.0</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:5632
+ 5632</literal></para>
+
+ <para><literal>nat port tcp
+ <replaceable>internal</replaceable>:5631
+ 5631</literal></para>
+ </listitem>
+
+ <listitem>
+ <para><application>Quake</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:6112
+ 6112</literal></para>
+
+ <para>Alternatively, you may want to take a look at <ulink
+ url="http://www.battle.net/support/proxy/">
+ www.battle.net</ulink> for Quake proxy support.</para>
+ </listitem>
+
+ <listitem>
+ <para><application>Quake 2</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:27901
+ 27910</literal></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:60021
+ 60021</literal></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:60040
+ 60040</literal></para>
+ </listitem>
+
+ <listitem>
+ <para><application>Red Alert</application></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:8675
+ 8675</literal></para>
+
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:5009
+ 5009</literal></para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="fcs-errors">
+ <para>What are FCS errors?</para>
+ </question>
+
+ <answer>
+ <para>FCS stands for <literal>F</literal>rame
+ <literal>C</literal>heck
+ <literal>S</literal>equence. Each PPP packet
+ has a checksum attached to ensure that the data being
+ received is the data being sent. If the FCS of an incoming
+ packet is incorrect, the packet is dropped and the HDLC FCS
+ count is increased. The HDLC error values can be displayed
+ using the <literal>show hdlc</literal> command.</para>
+
+ <para>If your link is bad (or if your serial driver is dropping
+ packets), you will see the occasional FCS error. This is not
+ usually worth worrying about although it does slow down the
+ compression protocols substantially. If you have an external
+ modem, make sure your cable is properly shielded from
+ interference - this may eradicate the problem.</para>
+
+ <para>If your link freezes as soon as you have connected and you
+ see a large number of FCS errors, this may be because your link
+ is not 8 bit clean. Make sure your modem is not using software
+ flow control (XON/XOFF). If your datalink
+ <emphasis>must</emphasis> use software flow control, use the
+ command <literal>set accmap 0x000a0000</literal> to tell
+ &man.ppp.8; to escape the <literal>^Q</literal> and
+ <literal>^S</literal> characters.</para>
+
+ <para>Another reason for seeing too many FCS errors may be that
+ the remote end has stopped talking <acronym>PPP</acronym>. You
+ may want to enable <literal>async</literal> logging at this
+ point to determine if the incoming data is actually a login or
+ shell prompt. If you have a shell prompt at the remote end,
+ it is possible to terminate &man.ppp.8; without dropping the line by
+ using the <literal>close lcp</literal> command (a following
+ <literal>term</literal> command will reconnect you to the shell
+ on the remote machine.</para>
+
+ <para>If nothing in your log file indicates why the link might
+ have been terminated, you should ask the remote administrator
+ (your ISP?) why the session was terminated.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry id="PPPoEwithNAT">
+ <question id="macos-win98-pppoe-freeze">
+ <para>Why do MacOS and Windows 98 connections freeze when
+ running PPPoE on the gateway?</para>
+ </question>
+
+ <answer>
+ <para>Thanks to Michael Wozniak
+ <email>mwozniak@netcom.ca</email> for figuring this out and
+ Dan Flemming <email>danflemming@mac.com</email> for the Mac
+ solution:</para>
+
+ <para>This is due to what is called a <quote>Black Hole</quote>
+ router. MacOS and Windows 98 (and maybe other Microsoft OSs)
+ send TCP packets with a requested segment size too big to fit
+ into a PPPoE frame (MTU is 1500 by default for Ethernet)
+ <emphasis>and</emphasis> have the <quote>do not
+ fragment</quote> bit set (default of TCP) and the Telco router
+ is not sending ICMP <quote>must fragment</quote> back to the
+ www site you are trying to load. (Alternatively, the router is
+ sending the ICMP packet correctly, but the firewall at the www
+ site is dropping it.) When the www server is sending
+ you frames that do not fit into the PPPoE pipe the Telco router
+ drops them on the floor and your page does not load (some
+ pages/graphics do as they are smaller than a MSS.) This seems
+ to be the default of most Telco PPPoE configurations (if only
+ they knew how to program a router... sigh...)</para>
+
+ <para>One fix is to use regedit on your 95/98 boxes to add the
+ following registry entry...</para>
+
+ <programlisting>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000\MaxMTU</programlisting>
+
+ <para>It should be a string with a value <quote>1436</quote>, as
+ some ADSL routers are reported to be unable to deal with packets
+ larger than this. This registry key has been changed to
+ <literal>Tcpip\Parameters\Interfaces\<replaceable>ID for adapter</replaceable>\MTU</literal>
+ in Windows 2000 and becomes a DWORD.</para>
+
+ <para>Refer to the Microsoft Knowledge Base documents <ulink
+ url="http://support.microsoft.com/support/kb/articles/Q158/4/74.asp">Q158474
+ - Windows TCPIP Registry Entries</ulink> and <ulink
+ url="http://support.microsoft.com/support/kb/articles/Q120/6/42.asp">Q120642
+ - TCPIP & NBT Configuration Parameters for Windows
+ NT</ulink> for more information on changing Windows MTU to
+ work with a NAT router.</para>
+
+ <para>Another regedit possibility under Windows 2000 is to
+ set the
+ <literal>Tcpip\Parameters\Interfaces\<replaceable>ID for
+ adapter</replaceable>\EnablePMTUBHDetect</literal> DWORD
+ to 1 as mentioned in the Microsoft document 120642
+ mentioned above.</para>
+
+ <para>Unfortunately, MacOS does not provide an interface for
+ changing TCP/IP settings. However, there is commercial software
+ available, such as OTAdvancedTuner (OT for OpenTransport, the
+ MacOS TCP/IP stack) by <ulink
+ url="http://www.softworks.com/">Sustainable Softworks</ulink>,
+ that will allow users to customize TCP/IP settings. MacOS NAT
+ users should select <literal>ip_interface_MTU</literal> from
+ the drop-down menu, enter <literal>1450</literal> instead of
+ <literal>1500</literal> in the box, click the box next to
+ <literal>Save as Auto Configure</literal>, and click
+ <literal>Make Active</literal>.</para>
+
+ <para>The latest version of &man.ppp.8;
+ (2.3 or greater) has an <command>enable tcpmssfixup</command>
+ command that will automatically adjust the MSS to an appropriate
+ value. This facility is enabled by default. If you are stuck
+ with an older version of &man.ppp.8;, you
+ may want to look at the <application>tcpmssd</application>
+ port.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="desperation">
+ <para>None of this helps - I am desperate! What can I do?</para>
+ </question>
+
+ <answer>
+ <para>If all else fails, send as much information as you can,
+ including your config files, how you are starting
+ &man.ppp.8;, the relevant parts of your
+ log file and the output of the <command>netstat -rn</command>
+ command (before and after connecting) to the &a.questions; or
+ the <ulink url="news:comp.unix.bsd.freebsd.misc">
+ comp.unix.bsd.freebsd.misc</ulink> news group, and someone
+ should point you in the right direction.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="serial">
+ <title>Serial Communications</title>
+
+ <para>This section answers common questions about serial
+ communications with FreeBSD. PPP and SLIP are covered in the
+ <xref linkend="networking" remap="Networking"/> section.</para>
+
+
+ <qandaset>
+ <qandaentry>
+ <question id="found-serial">
+ <para>How do I tell if FreeBSD found my serial ports?</para>
+ </question>
+
+ <answer>
+ <para>As the FreeBSD kernel boots, it will probe for the serial
+ ports in your system for which the kernel was configured.
+ You can either watch your system closely for the messages it
+ prints or run the command</para>
+
+ <screen>&prompt.user; <userinput>dmesg | grep sio</userinput></screen>
+
+ <para>after your system is up and running.</para>
+
+ <para>Here is some example output from the above command:</para>
+
+ <programlisting>sio0 at 0x3f8-0x3ff irq 4 on isa
+sio0: type 16550A
+sio1 at 0x2f8-0x2ff irq 3 on isa
+sio1: type 16550A</programlisting>
+
+ <para>This shows two serial ports. The first is on irq 4, is
+ using port address <literal>0x3f8</literal>, and has a
+ 16550A-type UART chip. The second uses the same kind of chip
+ but is on irq 3 and is at port address <literal>0x2f8</literal>.
+ Internal modem cards are treated just like serial ports---except
+ that they always have a modem <quote>attached</quote> to the
+ port.</para>
+
+ <para>The <filename>GENERIC</filename> kernel includes support
+ for two serial ports using the same irq and port address
+ settings in the above example. If these settings are not
+ right for your system, or if you have added modem cards or have
+ more serial ports than your kernel is configured for, just
+ reconfigure your kernel. See section
+ <link linkend="make-kernel">about building a kernel</link> for
+ more details.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="found-modem">
+ <para>How do I tell if FreeBSD found my modem cards?</para>
+ </question>
+
+ <answer>
+ <para>Refer to the answer to the previous question.</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="missing-tty0X">
+ <para>I just upgraded to 2.0.5 and my
+ <devicename>tty0<replaceable>X</replaceable></devicename>
+ are missing! How do I solve this problem?</para>
+ </question>
+
+ <answer>
+ <para>Do not worry, they have been merged with the
+ <devicename>ttyd<replaceable>X</replaceable></devicename> devices. You will have to change
+ any old configuration files you have, though.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="access-serial-ports">
+ <para>How do I access the serial ports on FreeBSD?</para>
+ </question>
+
+ <answer>
+ <para>The third serial port,
+ <devicename>sio2</devicename>
+ (see &man.sio.4;, known as COM3 in DOS), is on <devicename>/dev/cuaa2</devicename>
+ for dial-out devices, and on <devicename>/dev/ttyd2</devicename>
+ for dial-in devices. What is the difference between these two
+ classes of devices?</para>
+
+ <para>You use <devicename>ttyd<replaceable>X</replaceable></devicename> for dial-ins. When
+ opening <devicename>/dev/ttyd<replaceable>X</replaceable></devicename> in blocking mode, a
+ process will wait for the corresponding
+ <devicename>cuaa<replaceable>X</replaceable></devicename> device to become inactive, and then
+ wait for the carrier detect line to go active. When you open
+ the <devicename>cuaa<replaceable>X</replaceable></devicename> device, it makes sure the serial
+ port is not already in use by the <devicename>ttyd<replaceable>X</replaceable></devicename>
+ device. If the port is available, it <quote>steals</quote> it
+ from the <devicename>ttyd<replaceable>X</replaceable></devicename> device. Also, the
+ <devicename>cuaa<replaceable>X</replaceable></devicename> device does not care about carrier
+ detect. With this scheme and an auto-answer modem, you can have
+ remote users log in and you can still dial out with the same
+ modem and the system will take care of all the
+ conflicts.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="enable-multiport-serial">
+ <para>How do I enable support for a multiport serial
+ card?</para>
+ </question>
+
+ <answer>
+ <para>Again, the section on kernel configuration provides
+ information about configuring your kernel. For a multiport
+ serial card, place an &man.sio.4; line
+ for each serial port on the card in the kernel configuration
+ file. But place the irq and vector specifiers on only one of
+ the entries. All of the ports on the card should share one irq.
+ For consistency, use the last serial port to specify the irq.
+ Also, specify the <literal>COM_MULTIPORT</literal>
+ option.</para>
+
+ <para>The following example is for an AST 4-port serial card on
+ irq 7:</para>
+
+ <programlisting>options "COM_MULTIPORT"
+device sio4 at isa? port 0x2a0 tty flags 0x781
+device sio5 at isa? port 0x2a8 tty flags 0x781
+device sio6 at isa? port 0x2b0 tty flags 0x781
+device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr</programlisting>
+
+ <para>The flags indicate that the master port has minor number 7
+ (<literal>0x700</literal>), diagnostics enabled during probe
+ (<literal>0x080</literal>), and all the ports share an irq
+ (<literal>0x001</literal>).</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="multiport-serial-share-irq">
+ <para>Can FreeBSD handle multiport serial cards sharing
+ irqs?</para>
+ </question>
+
+ <answer>
+ <para>Not yet. You will have to use a different irq for each
+ card.</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="default-serial-params">
+ <para>Can I set the default serial parameters for a
+ port?</para>
+ </question>
+
+ <answer>
+ <para>The <devicename>ttyd<replaceable>X</replaceable></devicename> (or
+ <devicename>cuaa<replaceable>X</replaceable></devicename>) device is the regular device
+ you will want to open for your applications. When a process
+ opens the device, it will have a default set of terminal I/O
+ settings. You can see these settings with the command</para>
+
+ <screen>&prompt.root; <userinput>stty -a -f /dev/ttyd1</userinput></screen>
+
+ <para>When you change the settings to this device, the settings
+ are in effect until the device is closed. When it is reopened,
+ it goes back to the default set. To make changes to the
+ default set, you can open and adjust the settings of the
+ <quote>initial state</quote> device. For example, to turn on
+ <acronym>CLOCAL</acronym> mode, 8 bits, and
+ <acronym>XON/XOFF</acronym> flow control by default for
+ ttyd5, do:</para>
+
+ <screen>&prompt.root; <userinput>stty -f /dev/ttyid5 clocal cs8 ixon ixoff</userinput></screen>
+
+ <para>A good place to do this is in
+ <filename>/etc/rc.serial</filename>. Now, an application will
+ have these settings by default when it opens
+ <filename>ttyd5</filename>. It can still change these settings
+ to its liking, though.</para>
+
+ <para>You can also prevent certain settings from being changed
+ by an application by making adjustments to the
+ <quote>lock state</quote> device. For example, to lock the
+ speed of <devicename>ttyd5</devicename> to 57600 bps, do</para>
+
+ <screen>&prompt.root; <userinput>stty -f /dev/ttyld5 57600</userinput></screen>
+
+ <para>Now, an application that opens <devicename>ttyd5</devicename>
+ and tries to change the speed of the port will be stuck with
+ 57600 bps.</para>
+
+ <para>Naturally, you should make the initial state and lock state
+ devices writable only by <username>root</username>. The
+ &man.MAKEDEV.8;
+ script does <emphasis>NOT</emphasis> do this when it creates the
+ device entries.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="enable-dialup">
+ <para>How can I enable dialup logins on my modem?</para>
+ </question>
+
+ <answer>
+ <para>So you want to become an Internet service provider, eh?
+ First, you will need one or more modems that can auto-answer.
+ Your modem will need to assert carrier-detect when it detects a
+ carrier and not assert it all the time. It will need to hang up
+ the phone and reset itself when the data terminal ready
+ (<acronym>DTR</acronym>) line goes from on to off. It should
+ probably use <filename>RTS/CTS</filename> flow control or no
+ local flow control at all. Finally, it must use a constant
+ speed between the computer and itself, but (to be nice to your
+ callers) it should negotiate a speed between itself and the
+ remote modem.</para>
+
+ <para>For many Hayes command-set--compatible modems, this
+ command will make these settings and store them in
+ nonvolatile memory:</para>
+
+ <programlisting>AT &amp;C1 &amp;D3 &amp;K3 &amp;Q6 S0=1 &amp;W</programlisting>
+
+ <para>See the section <link linkend="direct-at">on sending AT
+ commands</link> below for information on how to make these
+ settings without resorting to an MS-DOS terminal program.</para>
+
+ <para>Next, make an entry in
+ <filename>/etc/ttys</filename> (see &man.ttys.5;) for the modem. This file lists all the ports
+ on which the operating system will await logins. Add a line
+ that looks something like this:</para>
+
+ <programlisting>ttyd1 "/usr/libexec/getty std.57600" dialup on insecure</programlisting>
+
+ <para>This line indicates that the second serial port
+ (<devicename>/dev/ttyd1</devicename>) has a modem connected
+ running at 57600 bps and no parity
+ (<literal>std.57600</literal>, which comes from the file
+ <filename>/etc/gettytab</filename>, see &man.gettytab.5;).
+ The terminal type for this port is <literal>dialup</literal>.
+ The port is <literal>on</literal> and is
+ <literal>insecure</literal>---meaning <username>root</username>
+ logins on the port are not allowed. For dialin ports like this one,
+ use the <devicename>ttyd<replaceable>X</replaceable></devicename>
+ entry.</para>
+
+ <para>It is common practice to use <literal>dialup</literal> as
+ the terminal type. Many users set up in their <filename>.profile</filename> or
+ <filename>.login</filename> files a prompt for the actual terminal type if the
+ starting type is dialup. The example shows the port as
+ insecure. To become <username>root</username> on this port, you
+ have to login as a regular user, then &man.su.1; to become
+ <username>root</username>. If you use <literal>secure</literal>
+ then <username>root</username> can login in directly.</para>
+
+ <para>After making modifications to
+ <filename>/etc/ttys</filename>, you need to send a hangup or
+ <acronym>HUP</acronym> signal to the
+ &man.init.8; process:</para>
+
+ <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
+
+ <para>This forces the &man.init.8; process to reread
+ <filename>/etc/ttys</filename>. The init process will then start getty
+ processes on all <literal>on</literal> ports. You can find
+ out if logins are available for your port by typing</para>
+
+ <screen>&prompt.user; <userinput>ps -ax | grep '[t]tyd1'</userinput></screen>
+
+ <para>You should see something like:</para>
+
+ <programlisting>747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dumb-terminal">
+ <para>How can I connect a dumb terminal to my FreeBSD
+ box?</para>
+ </question>
+
+ <answer>
+ <para>If you are using another computer as a terminal into your
+ FreeBSD system, get a null modem cable to go between the two
+ serial ports. If you are using an actual terminal, see its
+ accompanying instructions.</para>
+
+ <para>Then, modify
+ <filename>/etc/ttys</filename> (see &man.ttys.5;), like above. For example, if you are
+ hooking up a WYSE-50 terminal to the fifth serial port,
+ use an entry like this:</para>
+
+ <programlisting>ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure</programlisting>
+
+ <para>This example shows that the port on
+ <devicename>/dev/ttyd4</devicename> has a wyse50 terminal
+ connected at 38400 bps with no parity
+ (<literal>std.38400</literal> from
+ <filename>/etc/gettytab</filename>, see &man.gettytab.5;) and <username>root</username> logins are
+ allowed (<literal>secure</literal>).</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cannot-tip">
+ <para>Why can I not run <command>tip</command> or
+ <command>cu</command>?</para>
+ </question>
+
+ <answer>
+ <para>On your system, the programs &man.tip.1;
+ and &man.cu.1;
+ are probably executable only by
+ <username>uucp</username>
+ and group <groupname>dialer</groupname>. You can use the group
+ <groupname>dialer</groupname> to control who has access to your
+ modem or remote systems. Just add yourself to group
+ dialer.</para>
+
+ <para>Alternatively, you can let everyone on your system
+ run &man.tip.1; and &man.cu.1; by
+ typing:</para>
+
+ <screen>&prompt.root; <userinput>chmod 4511 /usr/bin/cu</userinput>
+&prompt.root; <userinput>chmod 4511 /usr/bin/tip</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="hayes-unsupported">
+ <para>My stock Hayes modem is not supported---what
+ can I do?</para>
+ </question>
+
+ <answer>
+ <para>Actually, the man page for &man.tip.1; is
+ out of date. There is a generic Hayes dialer already built in.
+ Just use <literal>at=hayes</literal> in your
+ <filename>/etc/remote</filename> (see &man.remote.5;) file.</para>
+
+ <para>The Hayes driver is not smart enough to recognize some of
+ the advanced features of newer modems---messages like
+ <literal>BUSY</literal>, <literal>NO DIALTONE</literal>, or
+ <literal>CONNECT 115200</literal> will just confuse it. You
+ should turn those messages off when you use &man.tip.1;
+ (using <literal>ATX0&amp;W</literal>).</para>
+
+ <para>Also, the dial timeout for &man.tip.1; is 60
+ seconds. Your modem should use something less, or else tip
+ will think there is a communication problem. Try
+ <literal>ATS7=45&amp;W</literal>.</para>
+
+ <para>Actually, as shipped &man.tip.1; does not yet
+ support it fully. The solution is to edit the file
+ <filename>tipconf.h</filename> in the directory
+ <filename>/usr/src/usr.bin/tip/tip</filename>. Obviously you
+ need the source distribution to do this.</para>
+
+ <para>Edit the line <literal>#define HAYES 0</literal>
+ to <literal>#define HAYES 1</literal>. Then
+ <command>make</command> and <command>make install</command>.
+ Everything works nicely after that.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="direct-at">
+ <para>How am I expected to enter these AT commands?</para>
+ </question>
+
+ <answer>
+ <para>Make what is called a <quote>direct</quote> entry in your
+ <filename>/etc/remote</filename> file (see &man.remote.5;). For example, if your modem is hooked
+ up to the first serial port, <devicename>/dev/cuaa0</devicename>,
+ then put in the following line:</para>
+
+ <programlisting>cuaa0:dv=/dev/cuaa0:br#19200:pa=none</programlisting>
+
+ <para>Use the highest bps rate your modem supports in the br
+ capability. Then, type
+ <command>tip <devicename>cuaa0</devicename></command> (see &man.tip.1;)
+ and you will be connected to your modem.</para>
+
+ <para>If there is no <devicename>/dev/cuaa0</devicename> on your
+ system, do this:</para>
+
+ <screen>&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV cuaa0</userinput></screen>
+
+ <para>Or use cu as <username>root</username> with the following command:</para>
+
+ <screen>&prompt.root; <userinput>cu -l<replaceable>line</replaceable> -s<replaceable>speed</replaceable></userinput></screen>
+
+ <para>with <replaceable>line</replaceable> being the serial port (e.g.
+ <devicename>/dev/cuaa0</devicename>) and <replaceable>speed</replaceable> being the speed
+ (e.g.<literal>57600</literal>). When you are done entering
+ the AT commands hit <literal>~.</literal> to exit.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="gt-failure">
+ <para>Why does the <literal>&lt;@&gt;</literal> sign for the pn
+ capability not work?</para></question><answer>
+
+ <para>The <literal>&lt;@&gt;</literal> sign in the phone number
+ capability tells tip to look in
+ <filename>/etc/phones</filename> for a phone number. But the
+ <literal>&lt;@&gt;</literal> sign is also a special character
+ in capability files like <filename>/etc/remote</filename>.
+ Escape it with a backslash:</para>
+
+ <programlisting>pn=\@</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dial-command-line">
+ <para>How can I dial a phone number on the command
+ line?</para>
+ </question><answer>
+
+ <para>Put what is called a <quote>generic</quote> entry in your
+ <filename>/etc/remote</filename> file (see &man.remote.5;). For example:</para>
+
+ <programlisting>tip115200|Dial any phone number at 115200 bps:\
+ :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
+tip57600|Dial any phone number at 57600 bps:\
+ :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:</programlisting>
+
+ <para>Then you can do something like <command>tip -115200
+ 5551234</command>. If you prefer &man.cu.1;
+ over
+ &man.tip.1;, use a generic cu entry:</para>
+
+ <programlisting>cu115200|Use cu to dial any number at 115200bps:\
+ :dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:</programlisting>
+
+ <para>and type <command>cu 5551234 -s 115200</command>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="set-bps">
+ <para>Do I have to type in the bps rate every time I do
+ that?</para>
+ </question><answer>
+
+ <para>Put in an entry for <literal>tip1200</literal> or
+ <literal>cu1200</literal>, but go ahead and use whatever bps
+ rate is appropriate with the br capability.
+ &man.tip.1;
+ thinks a good default is 1200 bps which is why it looks for
+ a <literal>tip1200</literal> entry. You do not have to use 1200
+ bps, though.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="terminal-server">
+ <para>How can I more easily access a number of hosts through a
+ terminal server?</para>
+ </question>
+
+ <answer>
+ <para>Rather than waiting until you are connected and typing
+ <literal>CONNECT <replaceable>host</replaceable></literal>
+ each time, use tip's <literal>cm</literal> capability. For
+ example, these entries in
+ <filename>/etc/remote</filename> (see &man.remote.5;):</para>
+
+ <programlisting>pain|pain.deep13.com|Forrester's machine:\
+ :cm=CONNECT pain\n:tc=deep13:
+muffin|muffin.deep13.com|Frank's machine:\
+ :cm=CONNECT muffin\n:tc=deep13:
+deep13:Gizmonics Institute terminal server:\
+ :dv=/dev/cuaa2:br#38400:at=hayes:du:pa=none:pn=5551234:</programlisting>
+
+ <para>will let you type <command>tip pain</command> or
+ <command>tip muffin</command> to connect to the hosts
+ <hostid>pain</hostid> or <hostid>muffin</hostid>; and
+ <command>tip deep13</command> to get to the terminal
+ server.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="tip-multiline">
+ <para>Can tip try more than one line for each site?</para>
+ </question>
+
+ <answer>
+ <para>This is often a problem where a university has several
+ modem lines and several thousand students trying to use
+ them...</para>
+
+ <para>Make an entry for your university in
+ <filename>/etc/remote</filename> (see &man.remote.5;) and use <literal>&lt;\@&gt;</literal> for
+ the <literal>pn</literal> capability:</para>
+
+ <programlisting>big-university:\
+ :pn=\@:tc=dialout
+dialout:\
+ :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:</programlisting>
+
+ <para>Then, list the phone numbers for the university in
+ <filename>/etc/phones</filename> (see &man.phones.5;):</para>
+
+ <programlisting>big-university 5551111
+big-university 5551112
+big-university 5551113
+big-university 5551114</programlisting>
+
+ <para>&man.tip.1;
+ will try each one in the listed order, then give
+ up. If you want to keep retrying, run &man.tip.1;
+ in a while loop.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="multi-controlp">
+ <para>Why do I have to hit CTRL+P twice to send CTRL+P
+ once?</para>
+ </question>
+
+ <answer>
+ <para>CTRL+P is the default <quote>force</quote> character,
+ used to tell &man.tip.1;
+ that the next character is literal data. You can set the
+ force character to any other character with the
+ <literal>~s</literal> escape, which means <quote>set a
+ variable</quote>.</para>
+
+ <para>Type <literal>~sforce=<replaceable>single-char
+ </replaceable></literal> followed by a newline.
+ <replaceable>single-char</replaceable> is any single character.
+ If you leave out <replaceable>single-char</replaceable>,
+ then the force character is the nul character, which you can
+ get by typing CTRL+2 or CTRL+SPACE. A pretty good value for
+ <replaceable>single-char</replaceable> is SHIFT+CTRL+6, which
+ I have seen only used on some terminal servers.</para>
+
+ <para>You can have the force character be whatever you want by
+ specifying the following in your
+ <filename>$HOME/.tiprc</filename> file:</para>
+
+ <programlisting>force=<replaceable>single-char</replaceable></programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="uppercase">
+ <para>Why is everything I type suddenly in UPPER CASE?</para>
+ </question>
+
+ <answer>
+ <para>You must have pressed CTRL+A, &man.tip.1;
+ <quote>raise character</quote>, specially
+ designed for people with broken caps-lock keys. Use
+ <literal>~s</literal> as above and set the variable
+ <quote>raisechar</quote> to something reasonable. In fact,
+ you can set it to the same as the force character, if you
+ never expect to use either of these features.</para>
+
+ <para>Here is a sample .tiprc file perfect for Emacs users who
+ need to type CTRL+2 and CTRL+A a lot:</para>
+
+ <programlisting>force=^^
+raisechar=^^</programlisting>
+
+<para>The ^^ is SHIFT+CTRL+6.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="tip-filetransfer">
+ <para>How can I do file transfers with
+ <command>tip</command>?</para>
+ </question>
+
+ <answer>
+ <para>If you are talking to another Unix system, you can send
+ and receive files with <literal>~p</literal> (put) and
+ <literal>~t</literal> (take). These commands run
+ &man.cat.1; and
+ &man.echo.1; on the remote system to accept and send files.
+ The syntax is:</para>
+
+ <programlisting>~p &lt;local-file&gt; [&lt;remote-file&gt;]
+~t &lt;remote-file&gt; [&lt;local-file&gt;]</programlisting>
+
+ <para>There is no error checking, so you probably should use
+ another protocol, like zmodem.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="zmodem-tip">
+ <para>How can I run zmodem with
+ <application>tip</application>?</para>
+ </question>
+
+ <answer>
+ <para>First, install one of the zmodem programs from the
+ ports collection (such as one of the two from the comms
+ category, <application>lrzsz</application> or
+ <application>rzsz</application>.</para>
+
+ <para>To receive files, start the sending program on the
+ remote end. Then, press enter and type
+ <literal>~C rz</literal> (or <literal>~C lrz</literal> if you
+ installed <application>lrzsz</application>) to begin
+ receiving them locally.</para>
+
+ <para>To send files, start the receiving program on the remote
+ end. Then, press enter and type
+ <literal>~C sz <replaceable>files</replaceable></literal>
+ (or <literal>~C lsz <replaceable>files</replaceable></literal>)
+ to send them to the remote system.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cannot-find-serial">
+ <para>Why does FreeBSD not find my serial ports, even
+ when the settings are correct?</para>
+ </question>
+
+ <answer>
+ <para>Motherboards and cards with Acer UARTs do not probe
+ properly under the FreeBSD sio probe. Obtain a patch from
+ <ulink url="http://www.lemis.com/serial-port-patch.html">
+ www.lemis.com</ulink> to fix your problem.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="misc">
+ <title>¨ä¥¦¦U¦¡¦U¼Ëªº°ÝÃD</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="more-swap">
+ <para>¬°¬Æ»ò FreeBSD ¥Îªº¸m´«(swap)ªÅ¶¡¤ñ Linux ¦h¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD¶È¬O¬Ý°_¨Ó¸m´«ªÅ¶¡(swap)¥Îªº¤ñLinux¦h¦Ó¤w¡C¦b¨Æ¹ê¤W¡A
+ ¨Ã¤£µM¡C¥D­nªº®t²§¬O¦b©ó¡AFreeBSD¿n·¥ªº±N¶¢¸mµL¥Îªº¥D°O¾ÐÅ餺®e
+ ±À¤J¸m´«ªÅ¶¡(swap)¤¤¡A¥H¨Ï±o¥D°O¾ÐÅé¥i¥H§ó¬°¦³®Ä²vªº³Q¨Ï¥Î¡C¦Ó
+ Linuxªºµ¦²¤¬O±N¸m´«ªÅ¶¡(swap)¥Î¨Ó§@¬°¸Ñ¨M°O¾ÐÅé°ÝÃDªº³Ì²×¤â¬q¡C
+ ¸ûÀWÁcªº¨Ï¥Î¸m´«ªÅ¶¡(swap)¡C¬O¤@ºØ§ó¦³®Ä²vªº¨Ï¥Î¥D°O¾ÐÅ骺¤â¬q¡C
+ </para>
+
+ <para>µù¡G·í¤@¤è­±FreeBSD¿n·¥ªº¨Ï¥Î¸m´«ªÅ¶¡(swap)ªº¦P®É¡A§A¥²»Ýª`
+ ·N¨ì¡AFreeBSD¨Ã¤£·|¥ô·Nªº±N©Ò¦³ªºªF¦è³£±À¤J¸m´«ªÅ¶¡(swap)¤¤¡C¦p¦¹¡A
+ §A¤~¤£·|¦b¤@©]±J¾K°_§É«áµo²{¡A¾ã­Ó¨t²Î³£³Q­Ë¶i¤F¸m´«ªÅ¶¡(swap)¤§¤¤¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="top-freemem">
+ <para>§Y¨Ï§Ú¥u¦³¹B¦æ¤Ö¼Æµ{¦¡¡A¬°¤°»ò <command>top</command> Åã¥Ü¥X
+ ¨Óªº³Ñ¾l°O¾ÐÅéÁÙ¬O«Ü¤Ö¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æªºµª®×¬O¡A©Ò¦³¥¼¨Ï¥Î¨ìªº¶¢¸m°O¾ÐÅé³£¬O³Q®ö¶Oªº°O¾ÐÅé¡A
+ ¥ô¦ó¥¼³Q§Aªºµ{¦¡©Ò§Q¥Î¨ìªº°O¾ÐÅé±N³Q®Ö¤ß(kernel)¥Î¨Ó·í
+ §@ºÏºÐ§Ö¨ú(disk cache)¡C¦Ó³oºØ°O¾ÐÅé³Q &man.top.1; ¼Ð°O¬°
+ <literal>¶¢¸mªº(Inact)</literal>¡A<literal>§Ö¨ú(Cache)</literal>¡A
+ ¥H¤Î <literal>½w½Ä°Ï(Buf)</literal>¡A¨Ã­t³d¦b¦U­Ó¤£¦Pªº¦ì¸m­t³d
+ ¼È¦s¸ê®Æ¡C³Q¼È¦s(cached)ªº¸ê®Æ¥Nªí¨t²Î¤£»Ý­n¥h¦s¨ú¸ûºCªººÏºÐ¸Ë¸m
+ ´N¥i¥H±o¨ì¸ê®Æ¡A¦p¦¹¡A¥i¥H´£¤É¨t²Îªº®Ä¯à¡CÁ`¦Ó¨¥¤§¡A&man.top.1;
+ Åã¥Ü¥X¸û¤Öªº <literal>¶¢¸m(Free)</literal> °O¾ÐÅé¬O¦nªº¡A¥u­nÅã¥Ü
+ ¥X¨Óªº­È¤£¬O <literal>«D±`</literal> ªº§C¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="aout-elf">
+ <para>¬°¬Æ»ò­n¥Î(¬Æ»ò¬O) a.out ©M ELF °õ¦æÀɮ榡¡H</para>
+ </question>
+
+ <answer>
+ <para>­n¤F¸Ñ¬°¤°»òFreebsd¨Ï¥Î <filename>ELF</filename> ®æ¦¡¡A§A¦³¥²
+ ­n¥ý»{ÃѤ@¤U¤TºØ¦b¥Ø«e Unix ¨t²Î¤¤³Ì³Q¼sªxÀ³¥Î¨ìªº°õ¦æÀɮ榡¡G
+ </para>
+
+ <note>
+ <para>¦b FreeBSD 3.x ¤§«e¡AFreeBSD ¨Ï¥Î a.out ®æ¦¡¡C</para>
+ </note>
+
+ <itemizedlist>
+ <listitem>
+ <para>&man.a.out.5;</para>
+
+ <para>³o¬O³Ì¦­¡A¦P¬O¤]¬O <quote>³Ì¨å«¬</quote> ªºUnix¥ØªºÀÉ
+ ®æ¦¡¡C³oºØ®æ¦¡ªºÀɮרϥΤ@ºØµu¥Bºò±KªºÀÉÀY¡A¦P®É¡A¦ñÀHµÛ¤@
+ ­ÓÅ]³N¼Æ¦r¥Î¨Ó¿ëÃѮ榡¡C(°Ñ¦Ò &man.a.out.5; ¦³§ó¦h¸Ô²Óªº»¡
+ ©ú)¡C¥¦¥]§t¦³¤T­Ó¸`°Ï¡G .text .data ¤Î .bss ¥[¤W¤@­Ó²Å¸¹ªí
+ ¤Î¦r¦êªí¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>COFF</acronym></para>
+
+ <para>SVR3¥ØªºÀɮ榡¡CÀÉÀY¥]§t¤F¤@­Ó¸`°Ïªí¡A©Ò¥H¥i¥H¨ã³Æ¤ñ
+ .text .data .bss ÁÙ¦hªº¸`°Ï¡C</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>ELF</acronym></para>
+
+ <para>ELF¬° <acronym>COFF</acronym> ®æ¦¡ªº«áÄ~ªÌ¡A¥D­nªº¯S¼x¬°
+ ¥i¥H¨ã¦³½Æ¼Æ¸`°Ï¬q¡A¨Ã¥i¥H¨Ï¥Î32-bits©Î¬O64-bitsªº¼Æ­È¡C
+ ¥D­nªº¯ÊÂI¬°¡G <acronym>ELF</acronym> ®æ¦¡¬O¦b¨C­Ó¨t²Î¤¤¥u
+ ·|¦³¤@ºØ ABI ªº°²³]¬°«eÃD³Q³]­p¥X¨Óªº¡C¦ý¬O¡A¦b¨Æ¹ê¤W¡A³o­Ó
+ °²³]¿ùªºÂ÷ÃСC¦]¬°¡AÁa¨Ï¦b°Ó¥Îªº SYSV ¥@¬É¸Ì¡A¤]¦Ü¤Ö¦³ SVR4¡A
+ Solaris ©M SCO ¤TºØ ABI¡C</para>
+
+ <para>Ķµù¡GABI(Application Binary Interface)¡C¦pªG¤@©w­n½Ķ¡A
+ ´N¥s¥¦ <emphasis>À³¥Îµ{¦¡¤G¶i¦ì¤¶­±</emphasis> ¦n¤F¡C ABI³Qµo
+ ®i¥X¨Óªº¥Î·N¡A¬O¬°¤F«P¨Ï¦b¬Û¦PCPU©Òµo®i¥X¨ÓªºÀ³¥Îµ{¦¡¡A¯à°÷
+ ¦b¤£¦Pªº¨t²Î¤W¡A§@¨ì¤G¤¸ÀÉ(Binary Code)¬Û®e¡C¤ñ¤è»¡¡A
+ <acronym>Sun</acronym> ©Ò´£¥Xªº <acronym>Solaris ABI</acronym>
+ ¡A«OÃÒ°õ¦æÀɯà°÷¦b¬Û¦P CPU ªº Solaris ¨t²Î¤W°õ¦æ¡A¥t¤@­Ó¨Ò¤l¬O
+ Windows ¨t²Î¡C¦PÄÝ©ó Intel x86 ª©¥»ªº°õ¦æÀɯà°÷¦Û¥Ñªº¦bWindows
+ 9x/me¤ÎWindows NT/2k/XP¤§¶¡°õ¦æ¡C</para>
+
+ <para>FreeBSD´£¨Ñ¤@­Ó¤½¥Îµ{¦¡±Nµ{¦¡©Ò»ÝªºABI¸ê°T¯O¤W¡AÂǦ¹¸ÕµÛ
+ ¥h¸Ñ¨M³o­Ó°ÝÃD¡C½Ð°Ñ¦Ò &man.brandelf.1; ¥H¨ú±o§ó¦h¸ê°T¡Ci
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <para>FreeBSD ¨Ó¦Û <quote>¶Ç²Î</quote> ªº°}Àç¡C¦b¶Ç²Î¤W¡AFreeBSD³£
+ ¨Ï¥Î &man.a.out.5; ®æ¦¡¡A³o¼Ëªº§Þ³N¦b¦n´X¥Nªº BSD ³£³QÃÒ©ú¬O¥i¾aªº¡C
+ ÁöµM¡A¦bFreeBSD¤W¥i¥H«Ø¥ß¥H¤Î¥¿½Tªº°õ¦æ­ì¥Í <acronym>ELF</acronym>
+ ®æ¦¡ÀÉ®×(¥]§t®Ö¤ß)¡CµM¦Ó, FreeBSD¦b¤@¶}©l¤Ï¹ï±N¹w³]®æ¦¡Âà´«¬° ELF¡A
+ ¬°¤°»ò©O¡H·íLinux¶}©lµh­WªºÂà´«¦Ü <acronym>ELF</acronym> ®æ¦¡®É¡A
+ ¨Ã«D¬O¬°¤F­n°kÂ÷ <filename>a.out</filename> ®æ¦¡¡C¬Û¤Ïªº¡A³o¬O¦]
+ ¬°¤§«e Linuxªº¦@¨É¨ç¦¡®w(shared libraries)±Ä¥Î¥H¸õÅDªí®æ
+ (jump-table)¬°°ò¦ªº§Þ³N¥h³]­p¡C³o¬O¤@ºØÅýµo®iªÌ·P¨ì§xÂZ¡A¥B«D±`
+ Ãø¥H¨Ï¥Î¡A¤£¨ã¨¬°÷¼u©Êªº¤èªk¡C¬JµM¡A¤w¸g¦s¦bªº
+ <acronym>ELF</acronym> ¤u¨ã´£¨Ñ¤F¦@¨É¨ç¦¡®w(shared libraries)ªº¸Ñ
+ ¨M¤è®×¡A¦Ó¥B¡A¨º¬Ý°_¨Ó¬O­Ó <quote>«e½Ãªº¤èªk</quote>¡A¦]¦¹¡A©Ò»Ý
+ ªºÂà´«¥N»ù´N¥i±µ¨ü¦]¦ÓÂà´«¡C</para>
+
+ <para>¦bFreeBSDªºª¬ªp¤¤¡A§Ú­Ìªº¦@¨É¨ç¦¡®w(shared libraries)¾÷¨î©M
+ <application>SunOS</application> ªº«¬¦¡«D±`¬Ûªñ¡A¥B©ö©ó¨Ï¥Î¡CµM¦Ó¡A
+ ±q 3.0 ¶}©l¡AFreeBSD ¥¿¦¡±N <acronym>ELF</acronym> §ï¬°¹w³]®æ¦¡¡C
+ ÁöµM¡A<filename>a.out</filename> ®æ¦¡¨Ì¦p¥H©¹¯ëªº¦n¡A¦ý¬O¡A§Ú­Ì
+ ½sĶ¤u¨ãªº¼¶¼gªÌ¡AGNU ªº¦¨­û¡A¥L­Ì¤¤¤î¤F¹ï
+ <filename>a.out</filename> ®æ¦¡ªº¤ä´©»PºûÅ@¡C¦b³oºØª¬ªp¤U¡A­¢¨Ï
+ §Ú­Ì¥²¶·¦Û¦æºûÅ@¥t¤@¥÷ª©¥»ªº compiler ©M linker¡A¤]¨Ï±o§Ú­ÌµLªk
+ ±q³Ì·sªº GNU µo®i¦¨ªG¤¤Àò±o¦n³B¡C¦¹¥~¡A¹ï ISO-C++ ªº»Ý¨D¡A¤×¨ä¬O
+ «Øºc¤l(constructors)©M¸Ñºc¤l(destructors)¡A¤]±a°Ê¥¼¨Óª©¥»¤¤¹ï
+ <acronym>ELF</acronym> ªº­ì¥Í¤ä´©¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="binary-formats">
+ <para>¬Oªº, ¦ý¬O, ¬°¤°»ò·|¦³³o»ò¦h¤£¦P®æ¦¡ªº°õ¦æÀɦs¦b©O?</para>
+ </question>
+
+ <answer>
+ <para>¦b¶Â·t¦Ó»»»·ªº¹L¥h¡A¶È¦³Â²­®ªºµwÅé¦s¦b¡C¦Ó¦]¬°µwÅé²­®¡A·íµM¤]
+ ¥u¯à°õ¦æ¤p¦Ó²³æªº¨t²Î¡Ca.out ®æ¦¡¬O°ò©ó¨º­Ó®É¥N©Ò»Ý­n¡A¦Ó³Q³Ð³y
+ ¥X¨Óªº(¨Ò¦p¹³PDP-11)¡C¦b³o¤§«á¡A³\¦h¤H¸ÕµÛ±N Unix ²¾´Ó¨ì¨ä¥L¥­¥x
+ ®É¡A¥L­Ì¤]«O¯d¤F a.out ®æ¦¡ªº°õ¦æÀÉ¡C¦]¬°¡A³o¹ï¦­´Áªº Motorola 68k¡A
+ VAXen ¤§Ãþªº¨t²Î¤w¸g¨¬°÷¨Ï¥Î¤F¡C</para>
+
+ <para>µM¦Ó¡A¤H¨Ã¤£·|º¡¨¬©ó²{ª¬¡C¤@¨ÇÁo©úªºµwÅé¤uµ{®v·Q¨ì¤F¡A¦pªG¯à
+ Åý³nÅé¦h³B²z¤@¨Ç¨Æ¡A¨º CPU ªº¹q´¹Åé¼Æ´N¯à¤Ö¤@ÂI¡A¨Ã¥B¶]±o§ó§Ö¡C­n
+ ¦b³oºØ·s¦¡ªºµwÅé¤W¤u§@(²{¦bºÙ¬°RISC)¡A<filename>a.out</filename>
+ ³oºØ®æ¦¡´N¤£¦X¾A¤F¡C°ò©ó³o¼Ëªº²{¹ê©Ò»Ý¡A§ó¦hªº°õ¦æÀɮ榡³Qµo®i¥X
+ ¨Ó¡A¥H´£¨Ñ¤ñ²³æ¥B¨ü¨ì³\¦h­­¨îªº <filename>a.out</filename> ®æ¦¡
+ §ó¦nªº®Ä¯à¡C¤ñ¤è¹³¬O <acronym>COFF</acronym>¡A
+ <acronym>ECOFF</acronym>¡A¤w¤Î¤@¨Ç¸û¤£¬°¤H©Ò©Pª¾ªº®æ¦¡¯É¯É³Q³Ð³y
+ ¥X¨Ó¡C¦ý¬O¡A³o¨Ç®æ¦¡³£¤w¹F¨ì¦U¦Ûªº·¥­­¡Aª½¨ì¦³¤@¤Ñ
+ <acronym>ELF</acronym> ªº¥X²{¡C</para>
+
+ <para>¦¹¥~¡A·íµ{¦¡ªºÅé¿n¶V¨Ó¶V¤j¡A¦ÓºÏºÐªÅ¶¡©M¥D°O¾ÐÅé¬Û¹ï¨Ó»¡³£¸û
+ ¤p®É¡A¦@¨É¨ç¦¡®w(shared libraries)ªºÆ[©À³Qµo®i¥X¨Ó¤F¡C¦b³o¦P®É¡A
+ µêÀÀ°O¾ÐÅé¨t²Î(VM System)¤]Åܱo¶V¨Ó¶Vºë¥©¡C·í¨C¤@ºØ¶i¨B³£¦b
+ <filename>a.out</filename>®æ¦¡¤W³Qµo®i¥X¨Ó®É¡A¥¦ªº¥i¥Î©Ê¤]¦P®ÉÅÜ
+ ±o¶V¨Ó¶V§C¡C¥t¥~¡A¤H­ÌÁ٧Ʊæµ{¦¡¯à¦b°õ¦æ´Á¶¡°ÊºA¸ü¤J¡A©Î¬O±N¤w¸g
+ °õ¦æ¹L¥B¨S¦³¥Îªºªì©l¤Æµ{¦¡½X¥á±ó¡AÂÇ¥H¸`¬Ù§ó¦hªº°O¾Ð¡Cµ{¦¡»y¨¥¦b
+ ³o­Ó®É´Á¤]«K±o§óºë¥©¡A¤H­Ì¤]§Æ±æ¦b main ¤§«e¦Û°Êªº°õ¦æ§ó¦hªºªF¦è¡C
+ ¦]¦¹¡A³\¦hÁcÂø¥B¥t¤H¹Ä¬°Æ[¤îªº§Þ¥©³Q¥Î¦b <filename>a.out</filename>
+ ®æ¦¡¤W¥h¸Ñ¨M³o¨Ç°ÝÃD¡C¦ý¬O¡A¥Ñ©ó <filename>a.out</filename> ®æ¦¡
+ ¥ý¤Ñªº­­¨î¡A­n¸Ñ¨M³o¨Ç°ÝÃD¥²»Ý¥I¥X§ó¦hªº¥N»ù¤Î®É¶¡¦¨¥»¡A¨ÃÅýµ{¦¡
+ ªº½ÆÂø«×¤j¬°´£¤É¡C¦Ó <acronym>ELF</acronym> ®æ¦¡¥i¥H¤@Á|¸Ñ¨M³o¤@
+ ¤Á°ÝÃD¡C¦ý¬O¡A­n±N¾ã­Ó¨t²Î±q®Ú¥»Âà´«¹L¥h¡A±N·|¦³¤£µuªº°}µh´Á¡A¦]
+ ¦¹¡A <acronym>ELF</acronym>®æ¦¡±N·|¦³¤@°}¤l»P
+ <filename>a.out</filename> ¨Ã¦s¡C</para>
+
+ <para>µM¦Ó¡AÀHµÛ®É¶¡ªº¹L¥h¡AFreeBSDªº build tools ºt¤Æ¦¨¥­¦æªº¨â­Ó
+ ¤ä½u(¤×¨ä¬O²ÕĶ¾¹©M¸ü¤J¾¹)¡CFreeBSD³o±ø¸ô¥[¶i¤F¦@¨É¨ç¦¡®w
+ (shared libraries)¨Ã­×¥¿¤F¤@¨Ç¿ù»~¡C¦Ó­ì¨Óµo®i³o¨Çµ{¦¡ªº GNU ¦¨­û
+ «h¬°¤F¦]À³²{ªp¡A­«¼g¤F³o¨Çµ{¦¡¡A¥H§ó²³æªº¤è¦¡¹ï¸ó¥­¥x½sĶ
+ (building cross compilers)¡A¥H¤Î¦hºØ®æ¦¡
+ (plugging in different formats) §@¥X¤F¤ä´©¡C³\¦h¤H·Q§@¥X¥H FreeBSD
+ ¬°¥Øªº¥­¥xªº¸ó¥­¥x½sĶ¾¹¡C¦ý¤£©¯ªº¬O¡AFreeBSD ªº as ©M ld ¤£¯à§@
+ ³o¶µ¤u§@¡C·sªº GNU ¤u¨ãµ{¦¡¥[¤J¤F¸ó¥­¥x½sĶ (Cross Compiler)¡A
+ <acronym>ELF</acronym>®æ¦¡¤ä´©¡A¦@¨É¨ç¦¡®w(shared libraries)¡A
+ C++ ªºÂX¥R... µ¥µ¥¡C¦¹¥~¡A³\¦h¼t°Ó¥H <acronym>ELF</acronym> ®æ¦¡
+ µo¦æ¨ä²£«~¡A¦pªG³o¨ÇªF¦è¯à¦b FreeBSD ¤W°õ¦æªº¸Ü·íµM¬O³Ì¦nªº¡C¬JµM¡A
+ ¯à°÷°õ¦æ <acronym>ELF</acronym> ®æ¦¡ªº°õ¦æÀɤF¡A¬°¤°»òÁÙ¶·­n
+ <filename>a.out</filename> ©O¡H¥¦¤w¸g¬O¤@¤Ç««««¦Ñ¨oªº°¨¤F¡A¦bºÜ¤O
+ ºÉ©¾ªº©^Äm³o»ò¦h¦~¤§«á¡A¸Ó¬OÅý¥¦¦bªª³õªÎ¨Uªº¯ó¦a¤W¦n¦n¥ð®§ªº®É­Ô
+ ¤F¡C</para>
+
+ <para><acronym>ELF</acronym> ®æ¦¡¤ñ a.out ¨ã¦³§ó¨}¦nªº®i²{¯à¤O¡A¨Ã
+ ¥B¦b©³¼h¨t²Î¤¤¨ã¦³§ó¦hªº¥iÂX®i©Ê¡C<acronym>ELF</acronym> ¤u¨ãµ{¦¡
+ §ó®e©ö³QºûÅ@¡A¥B´£¨Ñ¸ó¥­¥x½sĶªº¤ä´©¡A³o¤@ÂI¹ï«Ü¦h¤H¨Ó»¡¬O«Ü­«­n
+ ªº¡C<acronym>ELF</acronym> ®æ¦¡¥i¯à¤ñ a.out ºC¤@ÂI¡A¦ý¬O¨ä®t²§«D
+ ±`Ãø´ú¶q¥X¨Ó¡C³o¨âªÌ¶¡ÁÙ¦³³\¦h²Ó¸`¤Wªº¤£¦P¡A¤ñ¤è»¡¤À­¶¹ïÀ³ªº¤è¦¡¡A
+ µ{¦¡½Xªì©l¤Æªº¤èªk...µ¥µ¥¡C³o¨Ç¨Ã¤£¬O«Ü­«­n¡A¦ý¬O¡A¨âªÌ´N¬O¤£¦P¡C
+ ¥H«á¡AGENERIC ®Ö¤ß(kernel)±N·|²¾°£¹ï <filename>a.out</filename>
+ ®æ¦¡¡C·í¤£¦b¦³°õ¦æ¶Ç²Î <filename>a.out</filename> µ{¦¡ªº¶·­n®É¡A
+ ±N·|±q®Ö¤ß(kernel)¤¤²¾°£¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="chmod-symlinks">
+ <para>¬°¬Æ»òchmod¤£·|§ïÅܲŸ¹³sµ²(symlink)ªº¦s¨úÅv­­¡H</para>
+ </question>
+
+ <answer>
+ <para>Symlinks ¥»¨­¨Ã¨S¦³¦s¨úÅv­­¡A¦P®É¡A¦b¹w³]ªºª¬ªp¤U¡A
+ &man.chmod.1; ±N¤£·|¸òÀHµÛ symlinks ¥h§ï«K¥Ø¼ÐÀɮתº¦s¨úÅv­­¡C¦]¦¹¡A
+ ¦pªG§A¦³¤@­ÓÀÉ®× <filename>foo</filename>¡A¦P®É¡A¦³¤@­Ó symlink
+ <filename>bar</filename> «ü¦V³o­ÓÀɮסA¥H¤U³o­Ó©R¥O±N¥Ã»··|¦¨¥\
+ ªº³Q°õ¦æ¡C</para>
+
+ <screen>&prompt.user; <userinput>chmod g-w bar</userinput></screen>
+
+ <para>µM¦Ó¡A¦b <filename>foo</filename> ¤Wªº¦s¨úÅv­­±N¤£·|³Q§ï
+ ÅÜ¡C</para>
+
+ <para>§A¥²»Ý¨Ï¥Î <option>-H</option> ©Î¬O±N <option>-L</option>
+ »P <option>-R</option> ¿ï¶µ¤@°_¨Ï¥Î¡A°Ñ¦Ò &man.chmod.1; ¥H¤Î
+ &man.symlink.7; ¥H¨ú±o§ó¦hªº¸ê°T¡C</para>
+
+ <warning>
+ <para>¨Ï¥Î¿ï¶µ <option>-R</option> ·|Åý &man.chmod.1; ¥H
+ <acronym>»¼°j(RECURSIVE)</acronym> ªº¤è¦¡¤u§@¡C·í§A§â
+ &man.chmod.1; ¥Î¦b¥Ø¿ý©Î¬O³sµ²¨ì¥Ø¿ýªº²Å¸¹³sµ²®É§ó­n¤p¤ß¡C
+ ¦pªG§A­n§ïÅܤ@­Ó²Å¸¹³sµ²°Ñ¦Ò¨ìªº¥Ø¿ý¤§¦s¨úÅv­­ &man.chmod.1; ¡A
+ ¥Bª`·N¤£­n¥[¤W¥ô¦ó¿ï¶µ¡A¨Ã¥B¦b symlink ªºµ²§À¥[¤W±×½u
+ (<filename>/</filename>)¡CÁ|¨Ò¨Ó»¡¡A¦pªG
+ <filename>foo</filename> ³sµ²¨ì¥Ø¿ý <filename>bar</filename>¡A
+ ¦Ó§A­n§ó§ï <filename>foo</filename> (¹ê»Ú¤W¬O
+ <filename>bar</filename>)¡A¨º´N¨Ï¥Î¡G</para>
+
+ <screen>&prompt.user; <userinput>chmod 555 foo/</userinput></screen>
+
+ <para>µ²§Àªº±×½u·|¨Ï±o &man.chmod.1; §ïÅÜ
+ <filename>foo</filename> ©Ò«ü¦Vªº¥Ø¿ý <filename>bar</filename>
+ ªºÅv­­¡C</para>
+ </warning>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="login-8char">
+ <para>¬°¤°»ò¦b FreeBSD 2.2.x ¤Î§ó¦­ªºª©¥»¤¤¡Aµn¤J¦WºÙ(login names)
+ ³Q­­¨î¦b¤K­Ó¦r¤¸¥H¤U©O¡H</para>
+ </question>
+
+ <answer>
+ <para>§A¥i¯à»{¬°­×§ï <literal>UT_NAMESIZE</literal> «á¦b­«·s½sĶ¾ã­Ó
+ ¨t²Î¬O«Ü®e©öªº¨Æ¡C¦Ó¥B¦b³o¤§«á¡A¨C¥ó¨Æ³£¥i¥H¹B§@ªº«Ü¦n¡C¤£©¯ªº¬O¡A
+ ¦³³\¦hªºµ{¦¡©M¤u¨ã(¥]§t¨t²Î¤u¨ã)§â¼Æ¦r¼g¦º¦bµ{¦¡¸ÌÀY(¨Ã«DÁ`¬O
+ <literal>8</literal> ©Î <literal>9</literal>¡A¦³®É¥i¯à¬O¥j©Çªº
+ <literal>15</literal> ©Î <literal>20</literal>)¡C³o¤£¶È¶È¬O·|±N
+ §Aªº¨t²Î°O¿ýÀɧËÃa¦Ó¤w(¨Ó¦Û©óÅܰʪø«×©M©T©wªø«×°O¿ýªº®t²§)¡A¦P®É
+ ¤]·|¯}Ãa Sun ªº NIS Client ªº¹B§@¡C¦P®É¡A©M¨ä¥LªºUnix¨t²Î¤§¶¡¤]
+ ¦³¥i¯à·|²£¥Í¥¼ª¾ªº°ÝÃD¡C</para>
+
+ <para>¦bFreeBSD 3.0 ¤Î¤§«áªºª©¥»¡A±b¸¹ªº³Ì¤jªø«×¼W¥[¨ì16­Ó¦r¤¸¡A
+ ¦P®É¡A¨º¨Ç±Nªø«×¼g¦ºªºµ{¦¡¤]³Q§ä¥X¨Ó¨Ã§@¤F¾A·íªº­×¥¿¡C¥¿¦]¬°¼vÅT
+ ¨t²Îªº½d³ò«Ü¼s¡A©Ò¥Hª½¨ì3.0ª©¤§«á¤~ºâ¤j­P­×¥¿§¹¦¨¡C</para>
+
+ <para>¦pªG§A¦³¦Û«H¦b¥X°ÝÃDªº®É«á¯à¦Û¦æ¸Ñ¨M¡A§A¥i¥H§Q¥Î¤U­±ªº¤èªkÅý
+ ¸û¦­´Áªºª©¥»¤ä´©¸ûªøªº±b¸¹¡C­º¥ý¡A­×§ï
+ <filename>/usr/include/utmp.h</filename> ¤¤ªºUT_NAMESIZE¡C
+ µM«á¡A§A¥²¶·§â <filename>/usr/include/sys/param.h</filename>
+ ¤¤ªº MAXLOGNAME §ï¦¨¸ò UT_NAMESIZE ¬Û¦P¡C³Ì«á¡A¦pªG§A¬O±q­ì©lµ{
+ ¦¡«Ø¥ß¨t²Î, §O§Ñ¤F /usr/include ¨C¦¸³£·|³Q§ó·s¡C
+ ­×§ï /usr/src/.. ¤¤¾A·íªºÀɮסC</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dos-binaries">
+ <para>§Ú¯à¦bFreeBSD¤U°õ¦æDOSµ{¦¡¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Oªº¡A¦Û3.0ª©°_§A¥i¥H¨Ï¥ÎBSDIªº
+ <application>doscmd</application> DOS ¼ÒÀÀ¾¹¡A¦pªG§A¹ï³o­ÓªF¦è
+ ¦³¿³½ì¡A©Î¬O·Q¥[¤Jµo®i¦æ¦C¡A½Ð±H¤@«Ê¹q¤l¶l¥ó¨ì &a.emulation; ¡C
+ </para>
+
+ <para>¹ï©ó3.0¤§«eªº¨t²Î¡A¦b ports ¤¤¦³¤@®M³nÅé¥i¥H¼Òèö 8088¡A¨Ã´£
+ ¨Ñ¨¬°÷ªºBIOS¤¤Â_ªA°È¥H°õ¦æDOS¤å¦r¼Ò¦¡ªºµ{¦¡¡A³o®M³nÅé¥s°µ
+ <application>pcemu</application>¡A¦P®É¡A¹B¦æ¥¦¶·­n
+ X Windows(¥ÑXFree86´£¨Ñ)¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="translation">
+ <para>¦pªG­n§âFreeBSD¤å¥ó½Ķ¦¨§Úªº¥À»y¡A§Ú»Ý­n§@¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>°Ñ¾\FreeBSD¤å¥ó¤¤ªº <ulink
+ url="../fdp-primer/translations.html">½Ķ±`¨£°Ýµª</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="freebsd-mail-bounces">
+ <para>¬°¤°»ò§Ú±H¨ì FreeBSD.org ¬ÛÃö¦a§}ªº¹q¤l¶l¥ó³£³Q°h¦^¤F©O¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD.org ªº¶l¥ó¨t²Î¹ï©ó¶i¨Óªº¶l¥ó±Ä¨úÄY®æªºÀˬd¡A¨Ã¥B°h¦^
+ ©Ò¦³³]©w¤£¥¿½T¡A©Î¬O¼ç¦bªº©U§£¶l¥ó¡C§Aªº¶l¥ó³Q°h¦^¥i¯à¬O¦]¬°¤U¦C
+ ­ì¦]©Ò¤Þ°_¡G</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>³o«Ê¹q¤l¶l¥ó¨Ó¦Û¤wª¾ªº©U§£¶l¥ó°Ï°ì©Î¬OIP¤¤¡C</para>
+
+ <para>FreeBSD¶l¥ó¦øªA¾¹±N©Úµ´±µ¦¬¤wª¾ªº©U§£¶l¥ó¨Ó·½ªº¹q¤l¶l¥ó¡C
+ ¦pªG´£¨Ñ§Aºô¸ôªA°Èªº¤½¥q©Î¬Oºô°ì¤¤¦³²£¥Í¹L©U§£¶l¥ó©Î¬O¦³©U§£
+ ¶l¥óÂ༽¯¸¡A½Ð§A´«¤@­ÓªA°È´£¨ÑªÌ¡A©Î¬O°®¯Ü©ñ±ó¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¹q¤l¶l¥óªº¥»¤å¶È¦³HTML¡C</para>
+
+ <para>¶l¥óÀ³¸Ó¤w¯Â¤å¦r®æ¦¡µo°e¡A½Ð³]©w§Aªº¹q¤l¶l¥ó³nÅé°e¥X¯Â¤å
+ ¦r®æ¦¡¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>FreeBSDªº¶l¥ó³B²zµ{¦¡µLªk¥ÑIP¤Ï¬d°e¥ó¥D¾÷ªºIP¡C</para>
+
+ <para>³]¸m DNS ¤Ï¬d¬O±µ¨ü¤@¥x¥D¾÷¶l¥óªº¤@­Ó¼Ð·Ç­n¨D¡A½Ð¬°±zªº¶l¥ó
+ ¥D¾÷³]¸m DNS ¤Ï¬d¡C³\¦h´£¨Ñ®a®xºô¸ôªA°È (DSL¡Acable¡Adialup µ¥)
+ ªº¤½¥q¨Ã¤£´£¨Ñ³o¼ËªºªA°È¡C¦b³oºØ±¡ªp¤U¡A½Ð³z¹Lºô¸ôªA°È´£¨ÑªÌªº
+ ¶l¥ó¦øªA¾¹°e¥X±zªº¹q¤l¶l¥ó¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>¦b SMTP ¨Ï¥Î EHLO/HELO ©R¥O®É©Òµ¹¤©ªº hostname µLªk³Q¸ÑªR¨ì
+ ¤@­Ó IP ¦ì¸m¡C</para>
+
+ <para>¦b¶l¥ó³Q±µ¨ü¥H«e¡A¤@­Ó¥R¤À¦X®æ¡A¥B¥i³Q¸ÑªRªº¥D¾÷¦WºÙ¦b
+ SMTP ¨ó©wªº¹ï½Í¤¤¬O¥²­nªº¡C¦pªG§A¨S¦³¦b DNS ¦øªA¾¹¤¤µn°O§A
+ ªº¥D¾÷¦WºÙ¡A½Ð³z¹Lºô¸ôªA°È´£¨ÑªÌªº¶l¥ó¦øªA¾¹°e¥X±zªº¹q¤l¶l
+ ¥ó¡C</para>
+ </listitem>
+
+ <listitem>
+ <para>§Aªº°T®§¤¤§¨±aµÛ¤@­Ó message ID ¥H <quote>localhost</quote>
+ ¦r¦êµ²§ô¡C</para>
+
+ <para>¬Y¨Ç¶l¥ó³nÅé²£¥Í¬Y¨Ç¤£¥¿½Tªº message ID¡A³o±N¤£³Q±µ¨ü¡C
+ §A¥²»Ý§ó§ï³]©wÅý§Aªº¶l¥ó³nÅé²£¥Í¥¿½Tªº message ID¡A¦pªG³oµL
+ ªk¸Ñ¨M¡A¦Ò¼{»¡ªA§Aªº¶l¥ó³nÅé§@ªÌ§ó·sµ{¦¡¥H³B²z³o­Ó°ÝÃD¡C</para>
+ </listitem>
+ </itemizedlist>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="free-account">
+ <para>§Ú¥i¥H¦b­þ¸Ì§ä¨ì¤@­Ó§K¶OªºFreeBSD±b¸¹¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSDªº¦øªA¾¹¥»¨­¤£´£¨Ñ¥ô¦ó¹ï¥~ªºªA°È¡A¨ä¥Lªº³æ¦ì¤¤¡A
+ ¦³¤H´£¨Ñ¶}©ñªº Unix ¨t²ÎªA°È¡C¨ä¤¤¦³¨Ç¥i¯à­n¦¬¨ú¨Ç³\¶O¥Î¡C</para>
+
+ <para><ulink url="http://www.arbornet.org/">Arbornet, Inc</ulink>¡A
+ ¤]³QºÙ¬° M-Net¡A¦Û 1983 ¦~°_´N¶}©l´£¨Ñ Unix ¨t²ÎªA°È¡C¤@¶}©l¡A
+ ¥L­Ì¨Ï¥Î Altos ¨Ã°õ¦æ System III¡C¥L­Ì¦b 1991 ¦~Âà´«¨t²Î¦¨¬°
+ BSD/OS¡C¦b 2000 ¦~¤»¤ë¡A¥L­Ì¦A«×§ó´«¦¨¬° FreeBSD¡CM-Net ¯àÅý¨Ï
+ ¥ÎªÌ³z¹L SSH ¤Î telnet ³s½u¨ì¥D¾÷¡A¨Ã´£¨Ñ§¹¾ãªº FreeBSD ³nÅé¥H
+ ¨Ñ¨Ï¥Î¡CµM¦Ó¡AM-Net §@¬°¤@­Ó«D¬Õ§Q²Õ´¹B¦æ¡A¦s¨úÅv¥u­­©ó¦¨­û©M
+ ÃÙ§UªÌ¡AM-Net ¤]´£¨Ñ BBS ¨t²Î©Mºô¸ô²á¤ÑªA°È¡C</para>
+
+ <para><ulink url="http://www.grex.org/">Grex</ulink> ´£¨Ñ¤F«D±`
+ Ãþ¦ü M-Net ªºªA°È¡A¥]¬A¤F BBS ¨t²Î©Mºô¸ô²á¤Ñ¡CµM¦Ó¡A¾÷¾¹¬O¨Ï¥Î
+ Sun 4M¡A¨Ã°õ¦æ SunOS¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sup-define">
+ <para>¤°»ò¬O <command>sup</command>¡A§Ú¸Ó¦p¦ó¨Ï¥Î¥¦¡H</para>
+ </question>
+
+ <answer>
+ <para><ulink url="http://www.FreeBSD.org/cgi/ports.cgi?^sup">
+ SUP</ulink> ªº·N«ä¬O Software Update Protocol¡A¥Ñ CMU µo®i¡A
+ ¥Î¨Óºû«ù¾ã­Óµo®iªº¦P¨B¡C§Ú­Ì§Q¥Î¥¦«O«ù»·ºÝªº¯¸¥x©M­ì©l¯¸¥x¤§¶¡
+ ªº¦P¨B¤u§@¡C</para>
+
+ <para>µM¦Ó¡ASUP ¦bÀW¼eªº¨Ï¥Î¤W¨Ã¤£¤Ó¤Íµ½¡A¦P®É¡A¥Ø«e¤]¤£¦A¨Ï¥Î¤F¡C
+ ¥Ø«e«Øijºû«ù­ì©l½X¦P¨B§ó·sªº¤èªk¬O
+ <ulink url="../handbook/synching.html#CVSUP">CVSup</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="daemon-name">
+ <para>³o­Ó¥i·Rªº¤p¬õ¤H¥s§@¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>¦ü¥G¡A¥L¨Ã¨S¦³¤@­Ó¥¿¦¡ªº¦W¦r¡A©h¥B´NºÙ¨ä¬°
+ <quote>BSD ¤p´cÅ]</quote> §a¡C¦pªG§A°õ·N­n¨Ï¥Î¤@­Ó¦W¦r¡C¨º´N¥s¥L
+ <quote>¤p°Êª«(beastie)</quote> §a¡Cµù¡G<quote>beastie</quote>
+ ¦bŪ­µ¤W¸ò <quote>BSD</quote> «Ü±µªñ¡C</para>
+
+ <para>§A¥i¥H¦bBSD¤p´cÅ]ªº <ulink
+ url="http://www.mckusick.com/beastie/index.html">¥D­¶</ulink>
+ ¤W¨ú±o§ó¦hªº¸ê°T¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="use-beastie">
+ <para>§Ú¯à¨Ï¥Î BSD ¤p´cÅ]¹Ï®×¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¤]³\§a¡A§Ú¤]¤£½T©w¡CBSD¤p´cÅ]¹Ï®×ªºª©Åv¬OÄÝ©ó°¨·²º¸Ä¬®æÄõ±Ð·|ªº
+ Marshall Kirk McKusick ©Ò¾Ö¦³¡C§A¥i¥H¸ÕµÛ¥h¬d¬Ýºô­¶<ulink
+ url="http://www.mckusick.com/beastie/mainpage/copyright.html">Ãö©óBSD¤p´cÅ]¨v¹³</ulink>
+ ¥H¨ú±o§ó¸Ô²Óªº¨Ï¥Î²Ó¸`¡C</para>
+
+ <para>Á`¦Ó¨¥¤§¡A¦pªG§A¯Âºé¬°¤F¦Û¤v·Q­nŲ½à¡A¨º»ò¡A§A¥i¥H¦Û¥Ñªº¨Ï¥Î¨v¹³¡C¦pªG§A¬O­Ó¤H¨Ï¥Î¡A¥u­n±¡ªp¾A·í¡AÀ³¸Ó³£·|³Q³\¥i¡C
+ ¦pªG§A·Q¦b°Ó·~¤W¨Ï¥Î¡A«h§A¥²»ÝÁpôĬ®æÄõ±Ð·|ªº Kirk McKusick ¥H¨ú±o³\¥i¡C
+ ¦pªG§A»Ý­n§ó¶i¤@¨B¸Ô²Óªº¸ê°T¡A½Ð°Ñ¦Ò <ulink
+ url="http://www.mckusick.com/beastie/index.html">BSD¤p´cÅ]ªº­º­¶</ulink>¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="daemon-images">
+ <para>§A¦³¥ô¦óªº BSD ¤p´cÅ]¹Ï®×¥i¥HÅý§Ú¨Ï¥Î¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>§A¥i¥H¦b <filename>/usr/share/examples/BSD_daemon/</filename> §ä¨ì Xfig ¤Î eps ¨âºØ®æ¦¡ªº¹ÏÀÉ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="glossary">
+ <para>§Ú¦b¤å¥ó¡B¶l»¼½×¾Â¤W¡A±`·|¬Ý¨ì¤@¨ÇÁY¼g¦r¡B§Þ³N¦r·J¡A³o¨Ç¥i¥H¥h­þÃä¬d©O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¾\ <ulink
+ url="&url.books.handbook;/freebsd-glossary.html">
+ &os; ¦r·Jªí</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bikeshed-painting">
+ <para>¬°¤°»ò§Ú¸Ó¦b·N¸}½ñ¨®¨®´×ªºÃC¦â¡H</para>
+ </question>
+
+ <answer>
+ <para>³Ìµu³Ìµuªºµª®×¬O¡G¡y¤£¥Î¦b·N¡z¡Cµy·Lªø¤@ÂIªºµª®×¬O¡G¡yÁöµM§A¦³¯à¤O¦Û¤v¥h«Ø³y¤@®y¸}½ñ¨®¨®´×¡A¦ý¬O¡A
+ ³o¤£¥Nªí¦]¬°§A¤£³ßÅw²{¦b³o­Ó¨®´×ªºÃC¦â¡A´N­n¤¤¤î¥Lªº«Ø¿v¡C¡z³o­Ó¤ñ³ëªº·N«ä¬O¡A
+ §A¤£»Ý­n¥hª§½×¨C¤@­Ó²Ó¶µ¯S¼x¡A¥u¦]¬°§A¦³¿ìªk¥h§@¥¦¡C
+ ¬Y¨Ç¤Hªºµû½×¬O¡G¡yÂø­µªºµ{«×¡A»PÅܤƪº½ÆÂø©Ê¬O¦¨¤Ï¤ñ¡z¡C</para>
+
+ <para>§óªø¥B¸û§¹¾ãªºµª®×¬O¡A¦b¸g¹Lªø®É¶¡ª§½×Ãö©ó¬O§_¸Ó±N &man.sleep.1;
+ ªº¬í°Ñ¼Æ²¾°£¡A&a.phk;µoªí¤F¤@½gªø½× <quote><ulink
+ url="http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=506636+517178+/usr/local/www/db/text/1999/freebsd-hackers/19991003.freebsd-hackers">
+ ¦b«C»A¯ó¦a¤Wªº¸}½ñ¨®¨®´×(¥ô¦óÃC¦âªº)...</ulink></quote>¡C¥H¤U¡A¶ÈºK­n¸Ó«h¤å³¹³¡¤À¤º®e¡G</para>
+
+ <blockquote>
+ <attribution>&a.phk; on freebsd-hackers, October
+ 2, 1999</attribution>
+
+ <para><quote>¤°»ò¬OÃö©ó³o­Ó¸}½ñ¨®¨®´×?</quote> ³¡¤Àªº¤H³o¼Ëªº¸ß°Ý§Ú¡C</para>
+
+ <para>³o¬O¤@­Ó«D±`ªø»·ªº¬G¨Æ¡A§_«h´N¬O¤@­Ó¥j¦Ñªº¬G¨Æ¡C¦ý¬O¨Æ¹ê¤W¡A
+ ³o­Ó¬G¨Æ«D±`ªºµu¡CC¡P¿Õ´µ¬ì¯S¡P©¬ª÷´Ë(C. Northcote Parkinson) ¦b 1960
+ ¦~¥Nªì´Á¼g¤F¤@¥»®Ñ¡A®Ñ¦W¬° <quote>Parkinson's Law(¤¤¤å®Ñ¦W¡G¤É©x¦³¹D¡Ð¼ÉÅS¤W¥q¤ßºA¤§©¬ª÷´Ë©w«ß)</quote>
+ ¡A³o¥»®Ñ¥]§t¤F«Ü¦h¨ã¦³¨ô¨£ªº°ÊºAºÞ²z¾Ç¡C</para>
+
+ <para>[¤Þ­z¤@ÂI¦b³o¥»®Ñ¤Wªºµû½×]</para>
+
+ <para>¦b³o­Ó³Q±²¤J¸}½ñ¨®¨®´×®×ªº¯S®í¨Ò¤l¡A¥D­nªº­n¯À¬O®Ö¯àµo¹q³õ¡A§Ú·Q¡A³o¨¬¥H»¡©ú³o¥»®Ñªº¦~ÄÖ¡C</para>
+
+ <para>©¬ª÷´Ë®i¥Ü¤F¸Ó¦p¦ó¦b¸³¨Æ·|¤¤Ä¹±oÃÙ¦P¥h«Ø³y¤@®y¼Æ¦Ê¸U©Î¬Æ¦Ü¤Q»õ¬ü¤¸ªº®Ö¯àµo¹q³õ¡A
+ ¦ý¬O¡A¦pªG§A·Q­n¥h«Ø³y¤@®y¸}½ñ¨®¨®´×¡A§A±N·|³QªÈÄñ¦bµL½aµLºÉªº°Q½×¤§¤¤¡C</para>
+
+ <para>¥L(©¬ª÷´Ë)¨Ã¸ÑÄÀ¡A³o¬O¦]¬°¤@­Ó®Ö¯àµo¹q³õ¬O³o¼Ëªº¼sÁï¡A³o¼Ëªº©ù¶Q¡A¨Ã¥B³o¼Ëªº½ÆÂø¡A
+ ¥H¦Ü©ó¤H­ÌµLªk´x´¤¥¦¡A¦Ó¨Ã«D¹Á¸Õ¡A¥L­Ì«æ¤Áªº§Æ±æ¦³¤H¯à°÷À°¥L­Ì³B²z¨Ã¸Ñ¨M©Ò¦³º¾¸Hªº²Ó¶µ¡C
+ Richard P. Feynmann µ¹¤F¤@¨Ç¦³½ì¡A¥B«D±`¤@°w¨£¦åªº½×ÂI¡A¦b¥Lªº®Ñ´£¨ì¤F Los Alamos ªº¨Ò¤l¡C</para>
+
+ <para>¥t¤@¤è­±¡A¥ô¦ó¤H³£¯à¦Û¤v¦b¶g¥½²Õ¸Ë¤@®y¸}½ñ¨®¨®´×¥X¨Ó¡A¨Ã¥B¤´¦³¶¢²á¥i¥HÆ[½à¹qµø¤Îª±¹CÀ¸¡C
+ ¦]¦¹¡AµL½×§A§@¤F¦h»ò§¹µ½ªº·Ç³Æ¡A¤]¤£ºÞ§A´£¥Xªº¤è®×¬O¦h»òªº§´·í¡A¬Y¨Ç¤H¤´±N§ì¦í¾÷·|¶]¥X¨Ó§i¶D§A¡A
+ ¥L¥¿¦b§@¦P¼Ëªº¨Æ¡A¥¿¦b¥I¥X§V¤O¡A¥L´N¦b <emphasis>³o¸Ì</emphasis>¡C</para>
+
+ <para>¦b¤¦³Á¡A§Ú­ÌºÙ³o­Ó¥s§@¡yªê¦º¯d¥Ö¡z(setting your fingerprint)¡C³oÃö«Y¨ì§A­Ó¤HªºÅº¶Æ©MÁn±æ¡A
+ ³oÃö«Y¨ì§A¬O§_¥i¥H«üµÛ¬Y¦a«á¹ïµÛ§O¤H»¡¡G¡y³o¸Ì! ³o¬O <emphasis>§Ú</emphasis> §@ªº¡C¡z
+ ³o¬O¬Fªv¤Hª««Ü­«­nªº¤@­Ó¯S¼x¡C¦ý¬O¡A®É¾÷¬O¤j¦h¼Æ¤H¥Á©Ò½á»Pªº¡C·Q·Q¨º¨Ç¯d¦b¤ôªd¦a¤Wªº¸}¦L§a¡C</para>
+ </blockquote>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="funnies">
+ <chapterinfo>
+ <author>
+ <firstname>Edward</firstname>
+ <surname>Chuang</surname>
+ <affiliation>
+ <address><email>edwardc@firebird.org.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>FreeBSD §N¯º¸Ü¶°</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="very-very-cool">
+ <para>How cool is FreeBSD¡H</para>
+ </question>
+
+ <answer>
+ <para>°Ý¡G¦³¤H°µ¹L FreeBSD °õ¦æ®Éªº·Å«×´ú¸Õ¶Ü¡H §Úª¾¹D Linux
+ ¤ñ DOS ²D¡A¦ý¨SÅ¥¤H´£¹L FreeBSD¡A¦ü¥G«Ü¼ö¡C</para>
+
+ <para>µª¡G¨S¦³¡A¦ý¬O¦b¨ýı¤W¦³°µ¹LµL¼Æ¦¸´ú¸Õ¡C§Ú­Ìé¤W¦ÛÄ@¨ü¸ÕªÌªº
+ ²´·ú¡A¨Æ¥ý¦Aµ¹¥L­ÌªA¥Î 250 ²@§Jªº LSD-25 °g¤ÛÃÄ¡C35% ªº¨ü¸ÕªÌ»¡
+ FreeBSD ¹Á°_¨Ó¹³¾ï¤l¡A¦Ó Linux «h¬Oµµ¦âªººd¾ðªG¹ê¡C¾Ú§Ú©Òª¾¡A¨S
+ ¦³¤@²Õ´£¨ì·Å«×¤W¯S§Oªº®t²§¡C«á¨Óµo²{¡A¦³¤Ó¦h¨ü¸ÕªÌ¦b´ú¸Õ®É¹Ú¹C¨«
+ ¥X©Ð¶¡¼vÅT¨ì¼Æ¾Ú¡A³Ì«á¥u±o©ñ±ó¾ã­Ó½Õ¬d¡C§Ú·Q¤j³¡¥÷ªº¨ü¸ÕªÌ²{¦b¦b
+ Apple ¤u§@¡AÄ~ Drag and Drop ¤§«á¡A¬ã¨s¥þ·sªº <quote>Scratch and
+ Sniff</quote> ¹Ï§Î¬É­±¡CIt's a funny old business we're in¡I</para>
+
+ <para>¤£¶}ª±¯º¤F¡AFreeBSD ©M Linux ³£¨Ï¥Î <acronym>HLT</acronym>
+ (halt) «ü¥O¡A¥i¦b¨t²Î¶¢¸m®É­°§C¹q¤Oªº¨Ï¥Î¤]´î¤Ö¤F¼öªº²£¥Í¡C¦pªG¦³³]©w APM(Automatic Power Management)
+ ¡AFreeBSD ¤]¥i¥HÅý CPU ¶i¤J¬Ù¹q¼Ò¦¡¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="letmeoutofhere">
+ <para>½Ö¦b§Úªº°O¾ÐÅé´¡¼Ñ¤¤¨F¨F§@ÅT¡H¡H</para>
+ </question>
+
+ <answer>
+ <para>°Ý¡GFreeBSD ½sĶ®Ö¤ß®É¦³°µ¬Æ»ò <quote>©_¯S</quote> ªº¨Æ
+ Åý°O¾ÐÅé¨F¨F§@ÅT¶Ü¡H·í½sĶ®É(ÁÙ¦³¶}¾÷®É½T»{³nºÐ«áªºµu¼È®É¶¡)¡A
+ ¤]ºØ¦ü¥G¨Ó¦Û°O¾ÐÅé´¡¼Ñªº©_©ÇÁn­µ¡C</para>
+
+ <para>µª¡G¬Oªº¡I¦b BSD ªº¤å¥ó¤¤§A·|±`±`¬Ý¨ì <quote>­I«áÆF</quote>¡A
+ ¤j³¡¥÷ªº¤H³£¤£ª¾¹D¨º¬O¤@ºØ¹ê»Ú¦s¦bªººë¯«Åé --- ´x±±µÛ§Aªº¹q¸£¡C
+ §AÅ¥¨ìªºÁn­µ¬O³o¨Ç­I«áÆF¥H°ª­µ¤f­ï¦b·¾³q«ç¼Ë°µ³\¦hªº¨t²ÎºÞ²z¤u
+ §@¡C</para>
+
+ <para>¦pªG³o¨ÇÁn­µ«Ü§xÂZ§A¡A¨Ó¦Û DOS ªº
+ <command>fdisk /mbr</command> ´N¯àÂ\²æ¡A¦ý¦pªG¦³¬Û¤Ïªº®ÄªG
+ ¤]¤£­nÅå³Y¡C¨Æ¹ê¤W¡A¦pªG¦b»ö¦¡¤¤Å¥¨ì Bill Gates ®£©ÆªºÁn­µ±q¤º
+ «Øªº³â¥z¶Ç¨Ó¡A°¨¤W°k¦Ó¥B¤£­n¦^ÀY¡I ±q BSD ­I«áÆF¤£¥­¿Åªº¼vÅT¤¤
+ ¸Ñ©ñ¡ADOS ©M Windows ­I«áÆF³q±`³£¯à­«·s±±¨î¾ã¥x¾÷¾¹¨Ã¹ï§AªºÆF
+ »î¶A©G¡C¦pªG¦³¿ï¾Ü¡A§Ú·Q§Ú¹çÄ@²ßºD©_©ÇªºÁn­µ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="changing-lightbulbs">
+ <para>­n´X­Ó FreeBSD hacker ¤~¯à´«±¼¤@­Ó¹q¿Oªw¡H</para>
+ </question>
+
+ <answer>
+ <para>¤@¤d¤@¦Ê¤C¤Q¤G­Ó¡G</para>
+
+ <para>¤G¤Q¤T­Ó¦b -current ¤W©ê«è¬Ý¤£¨ì¥ú¤F¡F</para>
+
+ <para>¥|­Ó«ÅºÙ³o¬O³]©w¤Wªº°ÝÃD¡A©Ò¥H¹³³o¼Ëªº email À³¸Ó©ñ¦b
+ -questions¡F</para>
+
+ <para>¤T­Ó submit PR¡A¨ä¤¤¤@­Ó°e¿ù¨ì doc ¤U¡A¨Ã¥B¤º®e¥u
+ ¦³¡¨³o¸Ì¦n·t¡¨¡F</para>
+
+ <para>¤@­Ó commit ©|¥¼´ú¸Õªº¹q¿Oªw¡A³y¦¨¤£¯à buildworld¡A
+ ¤­¤ÀÄÁ«á¥L§â­ì¨Óªº¿Oªw´«¦^¨Ó¡F</para>
+
+ <para>¤K­Óº´°_ flame war¡A³d©Ç°e¥X PR ªº¤H¨S¦³¥]¬A patch¡F</para>
+
+ <para>¤­­Ó®I«è buildworld Äê±¼¤F¡F</para>
+
+ <para>¤T¤Q¤@­Ó»¡ buildworld ¥i¥H¥Î¡A¤£¯à¥Îªº¤H¤@©w¬O cvsup ªº
+ ®É¾÷¤£¹ï¡F</para>
+
+ <para>¤@­Ó§â´«¦¨·s¿Oªwªº patch ¥á¨ì -hackers ¤W¡F</para>
+
+ <para>¤@­Ó»¡¥L¤T¦~«e´N°µ¥X¤F patch¡A¦ý°e¨ì -current «á«o³Q©¿²¤±¼¡A
+ ©Ò¥H¥L¹ï¾ã­Ó PR ¨t²Î¦³«Ü¤£¦nªº¦L¶H¡C¦¹¥~¡A¥L¤]»{¬°®³¥Xªº·s¿OªwµL
+ ªk¤Ï¥ú¡F</para>
+
+ <para>¤T¤Q¤C­Ó©H­ý»¡¹q¿Oªw¤£ÄÝ©ó°ò¥»¨t²Îªº¤@³¡¥÷¡A©Ò¥H committer
+ ¤£¯à¤£¥ý¿Ô¸ß¾ã­Ó Community ªº·N¨£´N³o¼Ë°µ¤U¥h¡CÁÙ¦³¡A-core
+ ¨ì©³©M³o¥ó¨Æ¦³¤°»òÃö«Y¡H¡I</para>
+
+ <para>¨â¦Ê¤H©ê«è´«¿Oªw¤§«á¡A¸}½ñ¨®´×ªºÃC¦âÅܱo¦n©_©Ç¡F</para>
+
+ <para>¤T­Ó«ü¥X¡A¥Î¨Ó´«¿Oªwªº patch ¤£²Å¦X &man.style.9; ªº³W©w¡F</para>
+
+ <para>¤Q¤C­Ó®I«è®³¥X¨Óªº·s¿Oªw¬°¤°»ò¬O¥Î GPL¡F</para>
+
+ <para>¤­¦Ê¤K¤Q¤»¤H³´¤J¤@³õ flame war¡A¦b GPL¡BBSD¡BMIT¡BNPL
+ ¦U­Ó license ©M FSF ¬Y¦ì¤£¨ã¦W³Ð¿ì¤H¤h­Ó¤H½Ã¥Í¤§¶¡¡A¤ñ¸û©¼¦¹
+ ªºÀu¶Õ¡F</para>
+
+ <para>¤C­Ó±N³o¤@¦ê°Q½×ªº¤£¦P³¡¥÷¤À§O²¾¨ì -chat ©M -advocacy¡F</para>
+
+ <para>´Nºâ´£¥Xªº·s¿Oªw¤ñªº·t¡AÁÙ¬O¦³¤@­Ó§â¥¦ commit ¶i¨Ó¡F</para>
+
+ <para>¨â­Ó´«¦^­ì¥ýªº¿Oªw¡A¨Ã¥B¯d¤U·¥¬°¼««ãªº commit °T®§¡C¥L­Ì»{¬°
+ »P¨äÅý FreeBSD ¥Î·t¿Oªw¡AÁÙ¤£¦p°®¯Ü«Ý¦b¶Â·t¤¤ºâ¤F¡F</para>
+
+ <para>¥|¤Q¤»¤H¹ï¨ú®ø¤£¥Î·t¿Oªw³o¥ó¨Æ¤jÁn¯e©I¡A­n¨D -core
+ ¥ß¨è´£¥X¼á²M¡F</para>
+
+ <para>¤Q¤@­Ó­n¨D´«¦¨¤p¤@ÂIªº¹q¿Oªw¡A¥H«K¥¼¨Ó FreeBSD ¦pªG²¾´Ó¨ì
+ ¹q¤lÂû¤W«á·|§ó¬°¤è«K¡F</para>
+
+ <para>¤C¤Q¤T¤H©ê«è -hackers ©M -chat ¤Wªº SNR¡AÂÇ unsubscribe
+ ¨Óªí¥Ü§Üij¡F</para>
+
+ <para>¤Q¤T­Ó°e¥X¡¨unsubscribe¡¨¡B¡¨§Ú­n¦p¦ó unsubscribe¡¨©Î¡¨«ô°U§â
+ §Ú±q list ¦W³æ¤¤§R±¼¡¨¡A«Hªº³Ì«á­±«h¬O¤@¯ë¥Ñ majordomo ¥[¤W¥h
+ ªº footer¡F</para>
+
+ <para>·í¨C­Ó¤H¦£©ó©¼¦¹¥s½|®É¡A¦³­Ó³Ã¥ë¶X¨S¤Hª`·N¡A§â¥i¥H¥Îªº¿Oªw°½
+ °½´«¤W¥h¡F</para>
+
+ <para>¤T¤Q¤@­Ó«ü¥X¦pªG¥Î TenDRA ½sĶ·sªº¿Oªw¡A·|¤ñªº¨Ó±o«G
+ 0.364%¡]ÁöµM¿Oªw·|³Q½sĶ¦¨¥¿¤»­±Åé¡^¡A©Ò¥H FreeBSD ¤º©wªº½sĶ¾¹
+ À³¸Ó¬O TenDRA¡A¦Ó¤£¬O EGCS¡F</para>
+
+ <para>¦³­Ó¤H»¡·s¿Oªw¯Ê¥F¬ü·P¡F</para>
+
+ <para>¤E­Ó¤H¡]¥]¬A­ì¥ý°e PR ªº¤H¡^°Ý¡¨¤°»ò¬O MFC¡H¡¨¡F</para>
+
+ <para>¤­¤Q¤C­Ó©ê«è¦Û±q´«¤F¿Oªw«á¡A¨â­Ó¬P´Á³£¨S¦³¥ú¥X²{¡C</para>
+
+ <para><emphasis>&a.nik; ¸Éª`¡G</emphasis></para>
+
+ <para><emphasis>­è¬Ý¨ì®É¡A§Ú§Ö¯ºÂ½¤F¡C</emphasis></para>
+
+ <para><emphasis>µM«á·Q¨ì¡A¡¨µ¥¤@¤U¡A¤£¬OÀ³¸ÓÁÙ¦³¤@­Ó­n±N³o¨Ç°O¦b
+ list ¤W¶Ü¡H¡¨</emphasis></para>
+
+ <para><emphasis>±µµÛ²×©ó¤F¸Ñ§Úªº¨Ï©R :-)</emphasis></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dev-null">
+ <para>¼g¤J <filename>/dev/null</filename> ªº¸ê®Æ¶]¨ì­þ¸Ì¥h¤F¡H</para>
+ </question>
+ <answer>
+ <para>¦b CPU ¤¤¦³¤@ºØ¯S§Oªº¸ê®Æ´²¼ö¾¹¡A§Q¥Î±Æ¥X´²¼ö¤ù/­·®°²Õ¦X®É¡A
+ Âà´«¦¨¼ö¯à¡D³o´N¬O¬°¤°»ò CPU §N«o¤éÁÍ­«­nªº­ì¦]¡F·í¤H­Ì¨Ï¥Î§ó§Ö
+ ªº³B²z¾¹®É¡A¥L­ÌÅܦ¨¤£¦b¥G¦³¶V¨Ó¶V¦h¥L­Ìªº¸ê®Æ³£°e¶i¤F
+ <filename>/dev/null</filename> ¡A¦Ó¨Ïªº¥L­Ìªº CPU ¹L¼ö¡D
+ ¦pªG§A§R°£¤F <filename>/dev/null</filename> (¨º±N·|¦³®ÄªºÃö³¬
+ CPU ªº¸ê®Æ´²¼ö¾¹) §Aªº CPU ¤]³\·|­°§C¤u§@·Å«×¡A¦ý¬O§Aªº¨t²Î±N
+ ·|«Ü§Öªº¹³¬O¿©±w¤F«K¯µ¦ñÀHµÛ©Ò¦³¶W¥Xªº¸ê®Æ¶}©lÅܦ¨¦æ¬°¤£¥¿±`¡C
+ ¦pªG§A¦³§Ö³tªººô¸ô³s½u¡A§A¥i¥H§Q¥ÎŪ¨ú
+ <filename>/dev/random</filename> ¨Ã±N¥LÀH·N¶Ç°e¦Ü¦U³B¡A
+ ¨Ó­°§C§A CPU ªº·Å«×¡FµM¦Ó§A±N³´¤J¨Ï§Aºô¸ô³s½u©Î
+ <filename>/</filename> ¦³¹L¼öªº­·ÀI©Î¬O·S´o§Aªº ISP¡A
+ ¤j³¡¤Àªº¸ê®Æ³Ì²×±N·|¦b¥L­Ìªº³]³Æ¤WÂà´«¦¨¼ö¡A¤£¹L¥L­Ì³q±`³£¾Ö¦³
+ ¦nªº´²¼ö¡A©Ò¥H¦pªG§A°µªº¤£¤Ó¹L¤À¡AÀ³¸Ó¬O¨S¤°»ò¤j¤£¤Fªº¡C</para>
+
+ <para><emphasis>Paul Robinson ¸É¥R¡G</emphasis></para>
+
+ <para>¤¤¤åª© FAQ ª`¡G¥H¤Uµu¤åÄÝ©ó¬ü¦¡«ÕÀq¡A®£Â½Ä¶«á³y¦¨»y²j¤£¸Ô¡A
+ »y·N¤£³qªº±¡§Î¡A¬G«O¯d­ì¥Ä­ì¨ýÅýŪªÌ¦Û¦æ«~À|¡C</para>
+
+ <para>There are other methods. As every good sysadmin knows,
+ it is part of standard practise to send data to the screen
+ of interesting variety to keep all the pixies that make up
+ your picture happy. Screen pixies (commonly mis-typed or
+ re-named as 'pixels') are categorised by the type of hat
+ they wear (red, green or blue) and will hide or appear
+ (thereby showing the colour of their hat) whenever they
+ receive a little piece of food. Video cards turn data into
+ pixie-food, and then send them to the pixies - the more
+ expensive the card, the better the food, so the better
+ behaved the pixies are. They also need constant simulation
+ - this is why screen savers exist.</para>
+
+ <para>To take your suggestions further, you could just throw
+ the random data to console, thereby letting the pixies
+ consume it. This causes no heat to be produced at all,
+ keeps the pixies happy and gets rid of your data quite
+ quickly, even if it does make things look a bit messy on
+ your screen.</para>
+
+ <para>Incidentally, as an ex-admin of a large ISP who
+ experienced many problems attempting to maintain a stable
+ temperature in a server room, I would strongly discourage
+ people sending the data they do not want out to the
+ network. The fairies who do the packet switching and
+ routing get annoyed by it as well.</para>
+ </answer>
+ </qandaentry>
+
+
+ <qandaentry>
+ <question id="pttlz">
+ <para>1993 ¦~´N¦³¡ymake world¡z¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>°Ý¡G®Ú¾Ú jkh ªº <ulink
+ url="http://www.freebsd.org/cgi/cvsweb.cgi/src/Makefile.diff?r1=1.5;r2=1.6;f=h">
+ ³o¥÷ commit</ulink>¡AÀ³¸Ó¬O Aug 13 22:47:28 1994 UTC
+ ¤§«á¤~·|¦³ make world¡A«ç»ò·|¦³¦b¨º¤§«e·|¦³©O¡H</para>
+
+ <para>µª¡G®Ú¾Ú pttlz.bbs@ptt.cc (¤uÃÆ) ©ó Apr 7 17:09:47 2008 CST ¦ÛºÙ¡G
+ ¡ymake world ¬O§Ú¥j¦­ (15 ¦~«e) ®Éª± freebsd ®É¥Îªº¡z¡A©Ò¥H 1993 ¦~´N¦³
+ pttlz ªº¡ymake world¡z¦s¦b¤F¡A½Ðª`·N¤H®a¥i¬O¦ÛºÙ¡y15 ¦~«e¡zªºªø½ú¡A
+ ½Ð¤Å¹ïªø½úÅv«Â¬D¾Ô¡AÁÂÁ¡I</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="advanced">
+ <chapterinfo>
+ <author>
+ <firstname>En-Ran</firstname>
+ <surname>Zhou</surname>
+ <affiliation>
+ <address><email>zhouer@tfcis.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>¶i¶¥¥DÃD</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="learn-advanced">
+ <para>¦p¦ó¯à¾Ç²ß§ó¦h¦³Ãö FreeBSD ¤º³¡ªºªF¦è¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ø«e¥«­±¤WÁÙ¨S¦³±´°Q§@·~¨t²Î¤º³¡ªº®Ñ¬O±M¬° FreeBSD ¦Ó¼g
+ ªº¡CµM¦Ó¡A³\¦h¤@¯ëªº UNIX ª¾Ãѳ£¥i¥Hª½±µÀ³¥Î¦b FreeBSD ¤W¡Cªþ
+ ¥[¤@ÂI¡A¤´µM¦³¬ÛÃöªº®Ñ¬O±M¬° BSD ©Ò¼gªº¡C</para>
+
+ <para>½Ð°Ñ¦Ò Handbook ªº<ulink
+ url="../handbook/bibliography-osinternals.html">§@·~¨t²Î¤º³¡¤§°Ñ¦Ò®Ñ¥Ø</ulink>
+ ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="how-to-contribute">
+ <para>¦p¦ó¯à¬° FreeBSD ¥X¤@¥÷¤O¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò³o½g¤å³¹ <ulink
+ url="../../articles/contributing/article.html">Contributing
+ to FreeBSD</ulink> ¨Ó´£¨Ñ±zªº«Øij¡C¦pªG±z¯àÀ°¦£¨º´N§óÅwªï¤F¡I</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="define-snap-release">
+ <para>SNAP ©M RELEASE ¬O¤°»ò¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ø«e¦³¤T­Ó¬¡ÅD/¥b¬¡ÅDªº¤À¤ä¦b FreeBSD ªº <ulink
+ url="http://www.FreeBSD.org/cgi/cvsweb.cgi">CVS Repository</ulink>
+ (¥j¦­¤À¤ä¤w¸g´X¥G¨S¦b§ó·s¤F¡A¦]¬°³q±`¥u¦³¤T­Ó¬¡ÅDªºµo®i¤À¤ä)¡G
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>RELENG_5</literal> §Y
+ <emphasis>5-STABLE</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><literal>RELENG_6</literal> §Y
+ <emphasis>6-STABLE</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><literal>HEAD</literal> §Y
+ <emphasis>-CURRENT</emphasis> ¤]´N¬O¥Ø«eªº
+ <emphasis>7.X-CURRENT</emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ <para>»P¤W­±¨ä¥L¨â­Ó¤À¤ä¬Û¤ñ¡A¨ä¹ê <literal>HEAD</literal> ¨Ã¤£¬O¯u¥¿
+ ªº branch tag¡A¥¦¥u¬O­Ó symbolic constant¡A¥Nªí <quote><emphasis>current
+ (©|¥¼¤À¤äªºµo®i¤¤ª©¥»)</emphasis></quote>¡A³q±`§Ú­Ì·|²¼g¬° <quote>-CURRENT</quote>¡C</para>
+
+ <para>´N²{¦b¦Ó¨¥¡A<quote>-CURRENT</quote> ´N¬O«ü 7.X ªºµo®i¡F
+ ¦Ó <literal>5-STABLE</literal> ¤À¤ä(<symbol>RELENG_5</symbol>)¬O¦b 2004 ¦~ 10 ¤ë±q
+ <quote>-CURRENT</quote> fork ¥X¨Óªº¡F
+ <literal>6-STABLE</literal> ¤À¤ä(<symbol>RELENG_6</symbol>)¬O¦b 2005 ¦~ 11 ¤ë±q
+ <quote>-CURRENT</quote> fork ¥X¨Óªº¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="custrel">
+ <para>­n«ç»ò§@¥X¦Û¤vªº release¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ·Ó <ulink
+ url="../../articles/releng/article.html">Release ¤uµ{</ulink>
+ ¤å³¹»¡©ú¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="makeworld-clobbers">
+ <para>¬°¦ó <command>make world</command> ·|§â­ì¨Ó¸Ëªº binary Àɳ£´«±¼¤F¡H</para>
+ </question>
+
+ <answer>
+ <para>¨S¿ù¡A´N¬O³o¼Ë¤l¡C¦p¦W¦r©Ò¥Ü¡A<command>make world</command>
+ ·|­«·s½sĶ¨t²Î¤º«Øªº¨C­Ó binary ÀÉ¡A³o¼Ë¦bµ²§ô®É´N¥i½T©w¦³­Ó¤@­P¥B°®²bªºÀô¹Ò(©Ò¥H­nªá¤W¦n¤@¬q®É¶¡)¡C</para>
+
+ <para>¦b°õ¦æ <command>make world</command> ©Î
+ <command>make install</command> ®É¡A¦pªG¦³³]
+ <literal>DESTDIR</literal> ³o­ÓÀô¹ÒÅܼơA·s²£¥Íªº binary ±N·|¸Ë¦b
+ <literal>${DESTDIR}</literal> ¤U¦P¼Ëªº¥Ø¿ý¾ð¤¤¡C¦ý¦b¬Y¨Ç­×§ï
+ shared library ©M­««Ø binary ªºµL¯S©w±¡ªp¤U¡A³o¼Ë°µ¥i¯à·|¨Ï
+ <command>make world</command> ¥¢±Ñ¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="cvsup-round-robin">
+ <para>Why isn't cvsup.FreeBSD.org a round robin DNS entry to
+ share the load amongst the various CVSup servers?</para>
+ </question>
+
+ <answer>
+ <para>While CVSup mirrors update from the master CVSup
+ server hourly, this update might happen at any time during
+ the hour. This means that some servers have newer code
+ than others, even though all servers have code that is
+ less than an hour old. If <hostid role="fqdn">cvsup.FreeBSD.org</hostid> was a round
+ robin DNS entry that simply redirected users to a random
+ CVSup server, running CVSup twice in a row could download
+ code older than the code already on the system.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="bus-speed-defaulted">
+ <para>¦b¨t²Î¶}¾÷®É¡A¥X²{ <quote>(bus speed defaulted)</quote>¡C</para>
+ </question>
+
+ <answer>
+
+ <para>Adaptec 1542 SCSI ¥d¤¹³\¨Ï¥ÎªÌ¥Î³nÅé½Õ¾ã¶×¬y±Æªº¦s¨ú³t«×¡C
+ ¦­´Áªº 1542 ÅX°Êµ{¦¡¸Õ¹Ï±N¥¦³]¦¨¥i¥Îªº³Ì§Ö³t«×¡A¦ý«á¨Óµo²{¦b¤@
+ ¨Ç¾÷¾¹¤W¤£¯à¥Î¡A©Ò¥H²{¦b­n¦b kernel ³]©w¤¤¥[
+ <symbol>TUNE_1542</symbol> ³o­Ó¿ï¶µ¨Ó±Ò°Ê³o­Ó¥\¯à¡C¦b¤ä´©ªº¾÷¾¹
+ ¤W¥Î³o­Ó¿ï¶µ·|¨ÏµwºÐ¦s¨ú§ó§Ö¡A¦ý¦b¤£¤ä´©ªº¾÷¾¹¤W¦³¥i¯à·|·´±¼¸ê®Æ¡C
+ </para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="ctm">
+ <para>¦bºô¸ôÀW¼e¦³­­ªº±¡ªp¤U¡A§Ú¤]¥i¥H¸ò¤W current ªºµo®i¶Ü¡H</para>
+ </question>
+
+ <answer>
+ <para>¬Oªº¡AÂÇµÛ <ulink url="../handbook/synching.html#CTM">CTM
+ </ulink> ±z´N¥i¥H<literal>¤£¥Î</literal>¤U¸ü¥þ³¡ªºµ{¦¡½X¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="split-240k">
+ <para>¬O«ç»ò§âµo¦æª©¥»¤¤ªºÀɮפÁ¦¨¤@­Ó­Ó 240k ªº¤pÀɮתº¡H</para>
+ </question>
+
+ <answer>
+ <para>¥H BSD ¬°°ò¦ªº¸û·s¨t²Î¦³­Ó <option>-b</option> ¿ï¶µ
+ ¥i¥H§âÀÉ®×¥H¥ô·N¼Æ¥Ø byte ¤Á¶}¡C</para>
+
+ <para>³o¸Ì¬O <filename>/usr/src/Makefile</filename> ¤¤ªº¤@­Ó
+ ¨Ò¤l¡G</para>
+
+ <programlisting>bin-tarball:
+(cd ${DISTDIR}; \
+tar cf - . \
+gzip --no-name -9 -c | \
+split -b 240640 - \
+${RELEASEDIR}/tarballs/bindist/bin_tgz.)</programlisting>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="submitting-kernel-extensions">
+ <para>§Ú¦b kernel ¤¤¥[¤F·s¥\¯à¡A§Ú­n§â¥¦±Hµ¹½Ö¡H</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò <ulink
+ url="../../articles/contributing/article.html">Contributing
+ to FreeBSD</ulink> ¤¤ªº¤å³¹¡A¥H¤F¸Ñ­n¦p¦ó´£¨Ñ±zªºµ{¦¡½X¡C</para>
+
+ <para>¦P®É¤]ÁÂÁ±zªºÃö¤ß¡I</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pnp-initialize">
+ <para>ISA ªºÀH´¡§Y¥Î¥d¬O¦p¦ó°»´ú¤Îªì©l¤Æªº¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ñ Frank Durda IV ©Ò¼g¡G
+ <email>uhclem@nemesis.lonestar.org</email></para>
+
+ <para>²³æªº»¡¡A·í¥D¾÷µo¥X¬O§_¦³ PnP ¥dªº¸ß°Ý°T¸¹®É¡A©Ò¦³ªº PnP ¥d
+ ·|¦b´X­Ó©T©wªº I/O port §@¦^À³¡C©Ò¥H·í°»´ú PnP ªºµ{¦¡¶}©l®É¡A¥¦
+ ·|¥ý°Ý¦³¨S¦³ PnP ¥d¦b¡A±µµÛ©Ò¦³ PnP ¥d·|¦b¥¦Åªªº port ¥H¦Û¤vªº
+ «¬¸¹ # §@¦^µª¡A³o¼Ë°»´úµ{¦¡´N·|±o¨ì¤@­Ó wired-OR <quote>yes</quote>
+ ªº¼Æ¦r¡A¨ä¤¤¦Ü¤Ö·|¦³¤@­Ó bit ¬O¥´¶}ªº¡CµM«á°»´úµ{¦¡·|­n¨D«¬¸¹
+ (¥Ñ Microsoft/Intel«ü©w)¤p©ó X ªº¥d<quote>Â÷½u</quote>¡C¦A¥h¬Ý¬O
+ §_ÁÙ¦³¥d¦^µª¦P¼Ëªº¸ß°Ý¡A¦pªG±o¨ì <literal>0</literal>¡A´Nªí¥Ü¨S
+ ¦³«¬¸¹¤j©ó X ªº¥d¡C ²{¦bµ{¦¡·|°Ý¬O§_¦³«¬¸¹¤p©ó <literal>X</literal>
+ ªº¥d¡A¦pªG¦³ªº¸Ü¡Aµ{¦¡¦A­n«¬¸¹¤j©ó X-(limit/4) ªº¥dÂ÷½u¡AµM«á­«ÂÐ
+ ¤W­±ªº°Ê§@¡C¥Î­«½Æ³oºØÃþ¦ü semi-binary search ªº¤èªk¡A¦b¬Y½d³ò¤º
+ §ä­Ó´X¦¸«á¡A´úµ{¦¡³Ì«á·|¦b¾÷¾¹¤¤°Ï¤À¥X©Ò¦³ªº PnP ¥d¡A·j´M¦¸¼Æ¤]
+ »·§C©ó¤@­Ó­Ó§äªº 2^64 ¦¸¡C</para>
+
+ <para>¤@±i¥dªº ID ¥Ñ¨â­Ó 32-bit(©Ò¥H¤W­±¬O 2&circ;64) + 8bit °»¿ù½X
+ ²Õ¦¨¡A²Ä¤@­Ó 32 bits ¬O¥Î¨Ó°Ï¤À¦U®a¼t°Óªº¡C³o¨Ç¼t°Ó±q¨Ó¨S¦³¥X¨Ó¼á
+ ²M¹L¡A¦ý¬Ý¨ÓÀ³°²³]¦P¤@®a¥Xªº¤£¦PºØÃþªº¥dªº¼t°Ó ID ¦³¥i¯à¤£¦P¡C¥Î
+ 32 bits ¥u¨Óªí¥Ü¤£¦P¼t°Óªº·Qªk¹ê¦b¦³ÂI¹LÀY¤F¡C</para>
+
+ <para>²Ä¤G­Ó 32 bits «h¬O«¬¸¹ #¡B¤A¤Óºô¸ô¦ì§}¡B©Î¤@¨Ç¨Ï³o±i¥d¿W¯Sªº
+ ¸ê®Æ¡C°£«D²Ä¤@­Ó 32 bits ¤£¦P¡A§_«h¼t°Ó¤£¥i¯à§@¥X²Ä¤G­Ó 32 bit ¬Û
+ ¦Pªº¨â±i¥d¡C©Ò¥H¦b¤@¥x¾÷¾¹¤¤¥i¥H¦³¦P¼Ëªº¦n´X±i¥d¡AµM¦Ó¥L­Ì¾ã­Ó
+ 64 bits ÁÙ¬O·|³£¤£¤@¼Ë¡C</para>
+
+ <para>³o¨â­Ó 32 bit µ´¹ï¤£¥i¥H¥þ¬°¹s¡A³o¤~¯à¨Ï±o³Ì¶}©l binary search
+ ¤¤ªº wired-OR ·|±o¨ì¤@­Ó«D¹s¼Æ¦r¡C</para>
+
+ <para>¤@¥¹¨t²Î°Ï¤À¥X©Ò¦³¥dªº ID¡A±µµÛ·|¸g¥Ñ¦P¼Ëªº I/O port ¤@­Ó­Ó­«
+ ·s±Ò°Ê¨C±i¥d¡A±µµÛ§ä¥X¤wª¾¤¶­±¥d©Ò»Ýªº¸ê·½¡B¦³­þ¨Ç¤¤Â_¥i¥H¨Ï¥Îµ¥
+ µ¥¡C©Ò¦³¥d³£·|³Q±½´y¤@¦¸¡A¨Ó¦¬¶°³o¨Ç¸ê®Æ¡C</para>
+
+ <para>³o¨Ç¸ê°T±µµÛ©MµwºÐ¤Wªº ECU ÀɮסB©Î MLB BIOS ¸Ìªº¸ê®Æµ²¦X¦b¤@
+ °_¡A³q±`¬Oºî¦X ECU ©M MLB ¸Ìªº BIOS PnP ¸ê®Æ¡A³o¨Ç¶gÃä¨Ã¤£¤ä´©¯u¥¿
+ ªº PnP¡AµM¦Ó°»´úµ{¦¡¦bÀˬd BIOS ©M ECU ¸ê®Æ«á¡A¥¦¥i¥HÁקK PnP ¶gÃä
+ ©M¨º¨Ç°»´ú¤£¨ìªº¬Û½Ä¬ð¡C</para>
+
+ <para>±µµÛ¦A«×«ô³X³o¨Ç PnP ¶gÃä¡A³o¦¸·|§â¥i¥Îªº I/O¡BDMA¡BIRQ ©M°O¾Ð
+ Åé¬M®gªº¦ì§}³£«ü©wµ¹¥¦­Ì¡C³o¨Ç¶gÃä´N·|¥X²{¦b©Ò«ü©wªº¦a¤è¡Aª½¨ì¤U¤@
+ ¦¸­«·s¶}¾÷¬°¤î¡A¤£¹L¤]¨S¦³¤H»¡¤£¯à§â¥¦­ÌÀH®É²¾¨Ó²¾¥h¡C</para>
+
+ <para>¤W­±¦³¬Û·í¦hªºÂ²¤Æ¡A¦ý§AÀ³¸Ó¤w¸g¤F¸Ñ¤j­Pªº¹Lµ{¡C</para>
+
+ <para>Microsoft §âªí¥Ü¦Lªí¾÷ª¬ºAªº´X­Ó¥D­n port ®³¨Ó§@ PnP¡A¥L­Ìªº
+ ÅÞ¿è¬O¨S¦³¤@±i¥d·|¦b³o¨Ç¦a¤è¸Ñ½X§@¬Û¤Ïªº I/O cycles¡C¦ý¬O§Ú§ä¨ì
+ ¤@´Ú¦­´Á¤´¦bµû¦ô PnP ´£®×®Éªº IBM ­ì¼t printer board¡A¥¦ªº½T¥h¸Ñ
+ ¹ï³o¨Çª¬ºA port ªº¼g¤J¸ê®Æ¡A¦ý¬O MS <quote>»¡¤F´Nºâ</quote>¡C©Ò¥H
+ ¥¦­Ìªº½T¦³¹ï¦Lªí¾÷ª¬ºA port ¼g¤J¡AÁÙ¦³Åª¨ú¸Ó¦ì§} +
+ <literal>0x800</literal>¡B©M¥t¤@­Ó¦b <literal>0x200</literal> ¤Î
+ <literal>0x3ff</literal> ¤§¶¡ªº port¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="major-numbers">
+ <para>§Ú¬°¬Y³]³Æ¼g¤FÅX°Êµ{¦¡¡A¯à¤£¯àµ¹¥¦¤@­Ó major number¡H</para>
+ </question>
+
+ <answer>
+ <para>³o­n¬Ý§A¬O§_¥´ºâ±N³o­ÓÅX°Êµ{¦¡¤½¶}¨Ï¥Î¡A¦pªG¬Oªº¸Ü¡A½Ð§â¥¦ªº
+ ­ì©l½X°e¤@¥÷µ¹§Ú­Ì¡AÁÙ¦³ <filename>files.i386</filename> ­×§ïªº
+ ³¡¥÷¡Bkernel ³]©wÀɼ˥»¡B¥H¤Î¥Î¨Ó²£¥Í³]³ÆÀɪº &man.MAKEDEV.8;¡C
+ ¦pªG§A¤£¥´ºâ¤½¶}¡B©Î¦]¬°ª©Åv°ÝÃD¦Ó¤£¯à¤½¶}ªº¸Ü¡A§Ú­Ì¦³¯S¦a«O¯d
+ character major number 32 ©M block major number 8 µ¹³o¤è­±ªº¨Ï¥Î¡A
+ ª½±µ¥Î³o¨â­Ó´N¦n¤F¡C¤£½×¦p¦ó¡A§Ú­Ì³£·|«Ü·P¿E§A¯à¦b &a.hackers;
+ µoªíÅX°Êµ{¦¡ªº®ø®§¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="alternate-directory-layout">
+ <para>Ãö©ó§ó°Ê¥Ø¿ý©ñ¸mªº­ì«h¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b¦^µªÃö©ó§ó°Ê¥Ø¿ý©ñ¸mªº­ì«h¤è­±¡A§Ú¦b 1983 ¦~¼g¦n¥Ø«eªº§@ªk
+ «á´N¨S¦³¦A§ïÅܹL¡A³oºØ¤è¦¡¬O°w¹ï­ì¥ýªº FFS Àɮרt²Î¡A«á¨Ó¤]¨S¦³
+ ¹ï¥¦§@¥ô¦ó§ó°Ê¡C¥¦¦bÁקK cylinder group ³Q¶ñº¡³o¤è­±°µ±o¬Û·í¦¨¥\¡A
+ ¦ý¬O´N¹³¦³¨Ç¤H¤w¸gª`·N¨ì¡A¥¦©M find ´N°t¦X±o¤£¤j¦n¡C¤j³¡¥÷ªºÀÉ®×
+ ¨t²Î¬O¥Ñ¨º¨Ç¥Î depth first search(aka ftw) ²£¥Íªº archive »s³y¥X
+ ¨Ó¡A¸Ñ¥X¨Óªº¥Ø¿ý inode ·|¾î¸ó¦n´X­Ó cylinder group¡A¦pªG¥H«á­n°µ
+ depth first search ªº¸Ü¡A³o¬O³ÌÁV¿|ªº±¡ªp¤§¤@¡C¦pªG§Ú­Ìª¾¹DÁ`¦@
+ ·|²£¥Í¦h¤Ö¥Ø¿ýªº¸Ü¡A¸Ñªk¬O¦b°µ¥ô¦ó¦s¨ú/¼g¤J°Ê§@¤§«e¡A¦b¨C­Ó
+ cylinder group ¤W¥ý³y¥X(©Ò¦³¥Ø¿ý¼Æ/cylinder greoup ªº¼Æ¥Ø)³o»ò¦h
+ ªº¥Ø¿ý¡C«Ü©úÅ㪺¡A§Ú­Ì¥²¶·­n¦³®Ú¾Ú¦a¥h²q³o ­Ó¼Æ¦r¡A´Nºâ¤@­Ó¹³ 10
+ ªº«Ü¤p©T©w¼Æ¥Ø¤]·|¨Ï®Ä²v¥H¯Å¼Æ¦¨ªø¡C°Ï¤À restore (§Y¸Ñ¶}¤W­zªº
+ archive) ©M¤@¯ëÀÉ®×¾Þ§@ªº¤èªk¥i¥H¬O(²{¦b¥Îªººtºâªk¥i¯à­n§ó±Ó·P)¡G
+ ¦pªG¤@¨Ç¥Ø¿ý(³Ì¦h 10 ­Ó)³£¦b 10 ¬í¤º²£ ¥Íªº¸Ü¡A¨º»ò´N§â³o¨Ç¥Ø¿ý
+ »E¶°¦b¦P¤@­Ó cylinder group¡C¤£ºÞ«ç¼Ë¡A §Úªº¸gÅç«ü¥X³o¬O¤@­Ó¤w¸g
+ ¥R¥÷¹êÅç¹Lªº³¡¥÷¡C</para>
+
+ <para>Kirk McKusick, September 1998</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="kernel-panic-troubleshooting">
+ <para>¦p¦ó¦b kernel panics ®É±o¨ì³Ì¦hªº¸ê°T¡H</para>
+ </question>
+
+ <answer>
+ <para><emphasis>[³o¸`¬O±q &a.wpaul; ¦b &os.current; <link
+ linkend="mailing">mailing list</link> ¤Wµoªíªº«H¤¤¸`¿ý¡A
+ &a.des; ­×¥¿¤F¥´¦r¿ù»~¡B¦A¥[¤W¬A©·¸Ìªºª`¸Ñ¡C]</emphasis></para>
+
+ <programlisting>From: Bill Paul &lt;wpaul@skynet.ctr.columbia.edu&gt;
+Subject: Re: the fs fun never stops
+To: Ben Rosengart
+Date: Sun, 20 Sep 1998 15:22:50 -0400 (EDT)
+Cc: current@FreeBSD.org</programlisting>
+
+ <para><emphasis>[Ben µoªí¤F¤U­±ªº panic °T®§]</emphasis></para>
+
+ <programlisting>&gt; Fatal trap 12: page fault while in kernel mode
+&gt; fault virtual address = 0x40
+&gt; fault code = supervisor read, page not present
+&gt; instruction pointer = 0x8:0xf014a7e5
+ ^^^^^^^^^^
+&gt; stack pointer = 0x10:0xf4ed6f24
+&gt; frame pointer = 0x10:0xf4ed6f28
+&gt; code segment = base 0x0, limit 0xfffff, type 0x1b
+&gt; = DPL 0, pres 1, def32 1, gran 1
+&gt; processor eflags = interrupt enabled, resume, IOPL = 0
+&gt; current process = 80 (mount)
+&gt; interrupt mask =
+&gt; trap number = 12
+&gt; panic: page fault</programlisting>
+
+ <para>·í§A¬Ý¨ì¹³³o¼Ëªº°T®§®É¡A¥u§â¥¦«þ¤@¥÷°e¤W¨Ó¬O¤£°÷ªº¡C§Ú¦b¤W­±
+ ¯S¦a¼Ð©úªº instruction pointer ­È¬Û·í­«­n¡A¤£©¯ªº¬O¥¦·|¦]³]©w¦Ó
+ ¤£¦P¡C´«¥y¸Ü»¡¡A³o­Ó­È·|¸ò§A¥Îªº kernel image ÀɦÓÅÜ°Ê¡C¦pªG¬O¥Î
+ ¬Y­Ó snapshot ª©¥»ªº GENERIC kernel¡A¤]³\¨ä¥L¤H¥i¥H°lÂܨì¥X°ÝÃD
+ ªº¨ç¦¡¡A¦ý¦pªG§A¬O¥Î¦Û­qªº kernel¡A¨º»ò¥u¦³
+ <emphasis>§A</emphasis>¤~¯à§i¶D§Ú­Ì°ÝÃD¥X¦b¨º¸Ì¡C</para>
+
+ <para>­n°µªº¨Æ¥]¬A³o¨Ç¡G</para>
+
+ <procedure>
+ <step>
+ <para>§â instruction pointer ªº­È°O¤U¨Ó¡Cª`·N¦b«e­±ªº
+ <literal>0x8:</literal> ¦b³o­Ó±¡ªp¤¤¨Ã¤£­«­n¡A§Ú­Ì­nªº¬O
+ <literal>0xf0xxxxxx</literal>¡C</para>
+ </step>
+
+ <step>
+ <para>·í¨t²Î­«·s¶}¾÷«á¡A°õ¦æ³o¹D©R¥O¡G
+
+ <screen>&prompt.user; <userinput>nm -n /(³y¦¨ panic ªº kernel ÀÉ®×) | grep f0xxxxxx</userinput></screen>
+
+ ¨ä¤¤ <literal>f0xxxxxx</literal> ´N¬O°O¤U¨Óªº
+ instruction pointer ­È¡C¦³¥i¯à¤£·|­è¦n§ä¨ì§¹¾ãªº³o­Ó¦r¦ê¡A
+ ³o¬O¦]¬° kernel symbol table ¸Ìªº¦U­Ó symbol ¥u¬O¨ç¦¡ªº¶i
+ ¤JÂI¡A¦ý instruction pointer ©Ò«üªº¦ì§}¦³¥i¯à¬O¦b¨ç¦¡¤ºªº
+ ¬Y¤@³B¡A¦Ó¤£¤@©w¦b¶}ÀY¡C©Ò¥H¦pªG§ä¤£¨ì¾ã­Ó¦r¦ê¡A¨º»ò§â
+ instruction pointer ­Èªº³Ì«á¤@­Ó¼Æ¦r®³±¼¡A¦A¸Õ¤@¦¸¡G
+
+ <screen>&prompt.user; <userinput>nm -n /(³y¦¨ panic ªº kernel ÀÉ®×) | grep f0xxxxx</userinput></screen>
+
+ ¦pªG³o¼Ë¤]§ä¤£¨ì¡A¨º´N§â¥t¤@­Ó¼Æ¦r¥h±¼¦A§ä¡A¤@ª½­«½Æ¨ì§ä¨ì
+ ¬°¤î¡A µ²ªG¬O¤@¦ê¥i¯à³y¦¨ panic ªº¨ç¦¡¦Cªí¡C³o¼Ë¤ñª½±µ§ä¨ì
+ ¥X°ÝÃDªº¨ç¦¡¨Ó±o®t¡A¦ý¦Ü¤Ö¦n¹L¤°»ò³£¨S¦³¡C</para>
+
+ </step>
+ </procedure>
+
+ <para>§Ú±`±`¬Ý¨ì¤H­ÌÅã¥Ü¤@¤j¤ù panic °T®§¡A¦ý«Ü¤Ö¬Ý¨ì¦³¤Hªá¤@ÂI®É¶¡
+ §â instruction pointer ©M kernel symbol table ¤¤ªº¨ç¦¡¤ñ¸û¤@¤U¡C
+ </para>
+
+ <para>­n°lÂÜ¥X³y¦¨ panic ­ì¦]ªº³Ì¦n¤èªk¬O¥ý°µ¥X crash dump¡AµM«á¥Î
+ &man.gdb.1; ¦b¤W­±°µ stack trace¡C</para>
+
+ <para>¤£ºÞ¬O¨º¤@ºØ¡A§Ú³q±`¬O¥Î³o­Ó¤èªk¡G</para>
+
+ <procedure>
+ <step>
+ <para>¼g¦n kernel ³]©wÀÉ¡C¦pªG§A»Ý­n¥Î kernel debugger¡A¦b³]
+ ©wÀɤ¤¥[¤W <literal>options DDB</literal> ³o­Ó¿ï¶µ¡C
+ (·í§ÚÃhºÃ¦³¥X²{µL½a°j°é®É¡A³q±`·|¥Î³o­Ó¨Ó³]©w¤¤Â_ÂI¡C)
+ </para>
+ </step>
+
+ <step>
+ <para>¥Î <command>config -g
+ <replaceable>KERNELCONFIG</replaceable></command>
+ °µ¥X¥Î¨Ó½sĶªº¥Ø¿ý¡C</para>
+ </step>
+
+ <step>
+ <para><command>cd /sys/compile/
+ <replaceable>KERNELCONFIG</replaceable>; make
+ </command></para>
+ </step>
+
+ <step>
+ <para>µ¥«Ý kernel ½sĶµ²§ô¡C</para>
+ </step>
+
+ <step>
+ <para><command>make install</command></para>
+ </step>
+
+ <step>
+ <para>­«·s¶}¾÷</para>
+ </step>
+ </procedure>
+
+ <para>&man.make.1; ±N·|»s³y¥X¨â­Ó kernel¡C<filename>kernel</filename>
+ ÁÙ¦³ <filename>kernel.debug</filename>¡C
+ <filename>kernel</filename> ±N·|³Q¦w¸Ë¨ì
+ <filename>/kernel</filename>¡A¦Ó <filename>kernel.debug</filename>
+ ¥i¥Î¨Óµ¹ &man.gdb.1; ·í§@ debugging symbols ªº¨Ó·½¡C</para>
+
+ <para>­n½T©w¯à§ì¨ì crash dump¡A¥ý½s¿è
+ <filename>/etc/rc.conf</filename> ±N <literal>dumpdev</literal> «ü
+ ¨ì swap ¤À³Î°Ï¡C³o¼Ë &man.rc.8; ·|¥Î &man.dumpon.8; ¨Ó±Ò°Ê
+ crash dump¡A§A¤]¥i¥H¤â°Ê°õ¦æ &man.dumpon.8; ¦b panic ¤§«á¡A
+ crash dump ¥i¥H¥Î &man.savecore.8; ¦s°_¨Ó¡F¦pªG
+ <filename>/etc/rc.conf</filename> ¸Ì¦³³] <literal>dumpdev</literal>
+ ¨º»ò­«·s¶}¾÷«á &man.rc.8; ·|¦Û°Ê°õ¦æ &man.savecore.8; §â
+ crash dump ¦s¦b <filename>/var/crash</filename>¡C</para>
+
+ <note>
+ <para>FreeBSD ªº crash dump ³q±`©M¾÷¾¹¸Ìªº¹ê»Ú°O¾ÐÅé¤@¼Ë¤j¡A´N
+ ¹³¦pªG¦³ 64MB °O¾ÐÅé¡Acrash dump ¤j¤p´N¬O 64MB¡C©Ò¥H­n½T©w
+ <filename>/var/crash</filename> ¤U¦³¨¬°÷ªºªÅ¶¡¡A©Î¬O¥i¥H¤â
+ °Ê°õ¦æ &man.savecore.8; §â crash dump ©ñ¨ì¥t¤@­ÓªÅ¶¡¸û°÷ªº
+ ¥Ø¿ý¤U¡C¥t¤@ºØ¤]³\¥i¥H­­¨î crash dump ªº¤èªk¡A¬O¦b kernel
+ ³]©wÀɤ¤¥Î <literal>options MAXMEM=(foo)</literal>¡A±N kernel
+ ¥i¥Îªº°O¾ÐÅé­­¨î¦b¦X²zªº¤j¤p¡CÁ|¨Ò¨Ó»¡¡A¦pªG§A¦³ 128MB ªº°O¾Ð
+ Åé¡A¦ý¬O¥i¥H­­¨î kernel ¥u¯à¥Î 16MB ªº°O¾ÐÅé¡A³o¼Ë crash dump
+ ´N¬O 16MB ¦Ó¤£¬O 128MB ¤F¡C</para>
+ </note>
+
+ <para>¤@¥¹µo²{¦³¤F crash dump¡A´N¥i¥H¥Î &man.gdb.1; ¨Ó°µ
+ stack trace ¡A¦p¤U©Ò¥Ü¡G</para>
+
+ <screen>&prompt.user; <userinput>gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0</userinput>
+<prompt>(gdb)</prompt> <userinput>where</userinput></screen>
+
+ <para>­nª`·N¥i¯à·|¥X²{¦n´X­Ó¿Ã¹õªº¥i¥Î¸ê°T¡A§A¥i¥H¥Î &man.script.1;
+ §â©Ò¦³¿é¥X³£¦s°_¨Ó¡C¥Î¥]¬A©Ò¦³ debug symbol ªº kernel ¨Ó°£¿ù¡A³o
+ ¼ËÀ³¸Ó¥i¥Hª½±µÅã¥Ü panic ¬Oµo¥Í¦b¨º¤@¦æ¡C³q±`¬O¥Ñ¤U©¹¤WŪ
+ stack strace¡A³o¼Ë¤~¯à¤@­Ó­Ó°lÂÜ¥X¦³­þ¨Ç°Ê§@¤Þ¨ì crash¡C¤]¥i¥H¥Î
+ &man.gdb.1; §â¦UºØÅܼƩε²ºcªº¤º®e¦L¥X¨Ó¡A¥HÀˬd¨t²Î crash ®Éªº
+ ¹ê»Úª¬ºA¡C</para>
+
+ <para>¦n°Õ¡A¦pªG§A¦³²Ä¤G¥x¹q¸£¦Ó¥B¦³°÷ºÆ¨g¡A¥i¥H±N &man.gdb.1; ³]©w
+ ¦¨»·ºÝ°£¿ù¡C³o¼Ë§A¥i¥H¦b¤@¥x¾÷¾¹¤¤¥Î &man.gdb.1; ¥h°£¿ù¥t¤@¥x¸Ìªº
+ kernel¡A¥i¥H°õ¦æªº¥]¬A³]©w¤¤Â_ÂI¡B¦b kernel ­ì©l½X¤¤¤@¨B¨B°õ¦æµ¥
+ µ¥¡A´N¹³¦b¤@¯ë¨Ï¥ÎªÌµ{¦¡¤W°£¿ù¤@¼Ë¡C¥Ñ©ó¨S¦³¤°»ò¾÷·|¬°°£¿ù¦Ó³]¸m
+ ¨â¥x¨Ã¾F¹q¸£¡A©Ò¥H§ÚÁÙ¨S¦³³o¼Ëª±¹L¡C</para>
+
+ <para><emphasis>[Bill ¸É¥R¡G"§Ú§Ñ¤F´£¨ì¤@ÂI¡G¦pªG§A¦³±Ò°Ê DDB ¦Ó
+ kernel ¤]¤w¸g¶i¤J°£¿ù¾¹¡A¥i¥H¦b DDB ©R¥O¦C¤U¥´ 'panic'¡A±j­¢²£¥Í
+ panic (ÁÙ¦³ crash dump)¡C¤]¦³¥i¯à¦b panic ¶¥¬q®É¦A¶i¤J°£¿ù¾¹¡A
+ ¦pªG³o¼Ëªº¸Ü¡A¿é¤J 'continue'¡A±µµÛ¥¦´N·|§¹¦¨ crash dump¡C" -ed]
+ </emphasis></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="dlsym-failure">
+ <para>¬°¤°»ò dlsym() ¤£¯à¾Þ§@ ELF °õ¦æÀÉ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b ELF ¤@¨t¦Cªº¤u¨ã¤¤¡A¤º©w¬O¤£·|Åý dynamic linker ¬Ý¨ì°õ¦æ
+ Àɸ̩w¸q¤F­þ¨Ç symbol¡C©Ò¥H <function>dlsym()</function> ¨S¦³¿ì
+ ªk¥ÎÂǥѩI¥s <function>dlopen(NULL, flags)</function> ¨ú±oªº
+ handle¡A¥Î¥¦¥h·j´M¦³¨º¨Ç symbol ¤@©w·|¥¢±Ñ¡C</para>
+
+ <para>¦pªG§A·Q­n¥Î <function>dlsym()</function> §ä¥X¬Y­Ó process
+ ªº¥D°õ¦æÀɤ¤¦³­þ¨Ç symbol¡A«h­n¦b link ®É¹ï ELF linker (&man.ld.1;)
+ ¥[¤W <option>-export-dynamic</option> ³o­Ó°Ñ¼Æ¡C</para>
+
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="change-kernel-address-space">
+ <para>§Ú­n¦p¦ó¼W¥[©Î´î¤Ö kernel ¯à©w§}ªºªÅ¶¡¡H</para>
+ </question>
+
+ <answer>
+ <para>¹w³]­È¬O¡AFreeBSD 3.x ªº kernel ¥i¥H©w§}ªºªÅ¶¡¬O 256 MB ¦Ó
+ FreeBSD 4.x ¥i¥H¨ì 1 GB¡C¦pªG¬Oºô¸ô­t²ü¬Û·í­«ªº¦øªA¾¹
+ (¨Ò¦p¤j«¬ FTP ©Î HTTP ¦øªA¾¹)¡A§A¤]³\·|µo²{ 256 MB ¥i¯à¤£¤j°÷¡C
+ </para>
+
+ <para>©Ò¥H¡A­n¦p¦ó¼W¥[©w§}ªÅ¶¡©O¡H­n±q¨â¤è­±µÛ¤â¡C­º¥ý­º¥ý§i¶D
+ kernel ¥»¨­­n«O¯d¸û¤jªÅ¶¡µ¹¦Û¤v¡C¨ä¦¸¡A¬JµM¬O¦b©w§}ªÅ¶¡ªº³Ì¤W
+ ­±¸ü¤J kernel¡A©Ò¥HÁÙ­n½Õ§C¸ü¤Jªº¦ì§}¡A¤~¤£·|©M«e­±©w§}ªº½d³ò
+ ­«Å|¡C</para>
+
+ <para>¼W¥[ <filename>src/sys/i386/include/pmap.h</filename> ¸Ìªº
+ <literal>NKPDE</literal> ´N¥i¥H¹F¦¨²Ä¤@­Ó¥Ø¼Ð¡C1 GB ªº©w§}ªÅ¶¡·|
+ ¹³³o¼Ë¡G</para>
+
+ <programlisting>#ifndef NKPDE
+#ifdef SMP
+#define NKPDE 254 /* addressable number of page tables/pde's */
+#else
+#define NKPDE 255 /* addressable number of page tables/pde's */
+#endif /* SMP */
+#endif</programlisting>
+
+ <para>­nºâ¥X <literal>NKPDE</literal> ªº¥¿½T­È¡A±N·Q­nªºªÅ¶¡¤j¤p
+ (¥H megabyte ¬°³æ¦ì)°£¥H 4¡A±µµÛ³æ CPU ¾÷¾¹´î 1¡A
+ Âù CPU «h¬O´î 2¡C</para>
+
+ <para>­n¸Ñ¨M²Ä¤G­Ó°ÝÃD¡A¥²¶·¦Û¦æºâ¥X kernel ³Q¸ü¤Jªº¦ì§}¡G¨D¥X
+ 0x100100000 ´î±¼©w§}ªÅ¶¡¤j¤pªº­È(¥H byte ¬°³æ¦ì)¡A¦p 1 GB ¤j¤p´N¬O
+ 0xc0100000¡C§â<filename>src/sys/i386/conf/Makefile.i386</filename>
+ ¸Ìªº <symbol>LOAD_ADDRESS</symbol> ³]¦¨³o­Ó­È¡Q±µµÛ¦b
+ <filename>src/sys/i386/conf/kernel.script</filename> ¤¤¡A±N
+ section ¦Cªí³Ì«e­±ªº location counter ³]¦¨¬Û¦Pªº­È¡A¦p¤U¡G</para>
+
+ <programlisting>OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
+OUTPUT_ARCH(i386)
+ENTRY(btext)
+SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/obj/elf/home/src/tmp/usr/i386-unknown-freebsdelf/lib);
+SECTIONS
+{
+ /* Read-only sections, merged into text segment: */
+ . = 0xc0100000 + SIZEOF_HEADERS;
+ .interp : { *(.interp) }</programlisting>
+
+ <para>µM«á­«·s½sĶ±zªº kernel¡C±z¥i¯à·|¦b°õ¦æ &man.ps.1;¡B&man.top.1;
+ ³oÃþªºµ{¦¡®É¸I¨ì°ÝÃD¡Q<command>make world</command> À³¸Ó´N¥i¥H¸Ñ¨M
+ (©Î§â§ï¹Lªº <filename>pmap.h</filename> ½Æ»s¨ì
+ <filename>/usr/include/vm/</filename> ¤U¡A¦A¤â°Ê½sĶ
+ <filename>libkvm</filename>¡A&man.ps.1; ÁÙ¦³ &man.top.1;)¡C</para>
+
+ <para>ª`·N¡Gkernel ©Ò¯à©w§}ªºªÅ¶¡¤j¤p¥²¶·¬O 4 megabytes ªº­¿¼Æ¡C
+ </para>
+
+ <para>[&a.dg; ¸É¥R¡G<emphasis>§Ú»{¬° kernel ©w§}ªÅ¶¡¤j¤pÀ³¸Ó­n¬O 2
+ ªº­¼¾­¡A¦ý¤£¤j½T©w³o¤@ÂI¡Cªº±Ò°Êµ{¦¡·|°Ê¨ì
+ high order address bits¡A°O±o¥¦°²³]¦Ü¤Ö¦³ 256 MB¡C]</emphasis>
+ </para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="acknowledgments">
+ <chapterinfo>
+ <author>
+ <firstname>Vanilla</firstname>
+ <surname>Shu</surname>
+ <affiliation>
+ <address><email>vanilla@FreeBSD.org</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>·PÁÂ</title>
+
+ <blockquote>
+ <attribution>FreeBSD Core Team</attribution>
+
+ <para>°²¦p±z¦b³o¥÷ FAQ ¤¤§ä¨ì¿ù»~ªº¦a¤è¡A©Î¬O±z·Q¼W¥[¨Ç¬Æ»ò¡A
+ ½Ð¼g«Ê«H¨ì &a.faq; ¡C§Ú­Ì«D±`·PÁ±zªº«Øij¡A
+ ¦]¬°±zªº«ØijÅý³o¥÷¤å¥óÅܱo§ó¦n¡I</para>
+ </blockquote>
+
+ <variablelist>
+ <varlistentry>
+ <term>&a.jkh;</term>
+ <listitem>
+ <para>¤£°±ªº§ó·s¹L®Éªº FAQ</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&a.dwhite;</term>
+
+ <listitem>
+ <para>¸g±`¦b freebsd-questions ¤W¦^µª°ÝÃD</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&a.joerg;</term>
+
+ <listitem>
+ <para>¸g±`¦b Usenet ¤W¦^µª°ÝÃD</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&a.wollman;</term>
+
+ <listitem>
+ <para>Networking and formatting</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Jim Lowe</term>
+
+ <listitem>
+ <para>Multicast information</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&a.pds;</term>
+
+ <listitem>
+ <para>FreeBSD FAQ ³o¥÷¤å¥óªº¥´¦r­W¤u</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>The FreeBSD Team</term>
+
+ <listitem>
+ <para>Kvetching, moaning, submitting data</para>
+
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>¹ï©ó¨º¨Ç´¿¸g¹ï³o¥÷ FAQ ´£¨ÑÀ°§U¡A¦Ó§Ú­Ì¨S´£¨ìªº¤H­Ì¡A
+ §Ú­Ì¥Ñ°Jªº·PÁ±z¡I</para>
+ </chapter>
+
+
+ <chapter id="ports">
+ <chapterinfo>
+ <author>
+ <firstname>Yi-Feng</firstname>
+ <surname>Tzeng</surname>
+ <affiliation>
+ <address><email>yftzeng@iis.sinica.edu.tw</email></address>
+ </affiliation>
+ </author>
+ </chapterinfo>
+
+ <title>Ports and Packages ±`¨£°ÝÃD</title>
+
+ <qandaset>
+ <qandaentry>
+ <question id="make-fetch">
+ <para>¦p¦ó¥u§ì¨ú tarball¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG¥u§Æ±æ§ì¨ú tarball ¤U¨Óªº¸Ü¡A¶È»Ý¿é¤J¥H¤U«ü¥O§Y¥i¡G
+ <screen>&prompt.root; <userinput>make fetch</userinput></screen>
+ ¦pªG¬O­n§ì¨ú³æ¤@ªº port¡A¥H
+ <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput>
+&prompt.root; <userinput>make fetch</userinput></screen>
+
+ <para>¨º»ò¡A¹w³]·|±N <filename role="package">editors/joe</filename>
+ ªº tarball ¤U¸ü¦Ü <filename>/usr/ports/distfiles</filename>
+ ¥Ø¿ý¤U¡C</para>
+
+ <para>¦pªG¬O§Æ±æ§ì¨ú¦w¸Ë¦¹ ports ©Ò¦³¬ÛÃö¬Û¨Ì ports ªº tarball¡A¥H
+ <filename role="package">systuils/portupgrade</filename> ¬°¨Òªº¸Ü¡A
+ «h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/systuils/portupgrade</userinput>
+&prompt.root; <userinput>make fetch-recursive</userinput></screen>
+
+ <para>¹w³]·|±N¦¹ port »P©Ò¦³»Ý­nªº¨ä¥L port ªº tarball¡A¤U¸ü¦Ü
+ <filename>/usr/ports/distfiles</filename> ¥Ø¿ý¤U¡C</para>
+
+ <para>¦pªG¬O§Æ±æ§ì¨ú¥þ³¡©Ò¦³ ports ªº tarball ¡A«h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput>
+&prompt.root; <userinput>make fetch</userinput></screen>
+
+ <para>«h·|©Ò±N¥þ³¡©Ò¦³ ports ªº tarball ¤U¸ü¦Ü
+ <filename>/usr/ports/distfiles</filename> ¥Ø¿ý¤U¡C</para>
+
+ <para>¦pªG¬O§Æ±æ§ì¨ú ftp ¤ÀÃþ¤U©Ò¦³ ports ªº tarball ¡A«h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp</userinput>
+&prompt.root; <userinput>make fetch-recursive</userinput></screen>
+
+ <para>«h·|©Ò±N ftp ¤ÀÃþ¤U©Ò¦³ ports ªº tarball ³£¤U¸ü¦Ü
+ <filename>/usr/ports/distfiles</filename> ¥Ø¿ý¤U¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-extract">
+ <para>¦p¦ó¶È°µ¨ì¸Ñ¶} tarballªº¨BÆJ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³®É­Ô²ßºD¦Û¤v patch ­ì©l½Xªº®É­Ô¡A·|«Ü±`¥Î¨ì³o­Ó¥\¯à¡C¥H
+ <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput>
+&prompt.root; <userinput>make extract</userinput></screen>
+
+ <para>·|±N tarball¸Ñ¶}¦Ü
+ <filename>/usr/ports/editors/joe/work</filename> ¥Ø¿ý¤U¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-patch">
+ <para>¦p¦ó¶È°µ¨ì¸Ñ¶} tarball ¨Ã¸É¤W©x¤è´£¨Ñªº patch ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦¹ªk»P <link linkend="make-extract">make extract</link>
+ ªº¤èªk¦³¤@¨ÇÃþ¦ü¡A¤£¦P©ó¬O¥ý¸É¤W©x¤è´£¨Ñªº patch¡A¦A¦æ patch
+ ¦Û¤vªº­×¥¿¡C ¦³®É­Ô²ßºD¦Û¤v patch ­ì©l½Xªº®É­Ô¡A
+ «h³o­Ó¤è¦¡¥¿¦n²Å¦X±zªº»Ý¨D¡C
+ ¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make patch</userinput></screen>
+
+ <para>·|±N tarball¸Ñ¶}¦Ü <filename>/usr/ports/editors/joe/work</filename> ¥Ø¿ý¤U
+ ¡A¨Ã¸É¤W©x¤è´£¨Ñªº patch¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-install">
+ <para>¦p¦ó¦w¸Ë¤@­Ó·sªº port¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG¨t²Î¤W¥¼¦w¸Ë¦¹³nÅé¡A«h¥i¥H¿ï¾Ü¦w¸Ë¤@­Ó·sªº port¡C
+ ¥H <filename role="package">editors/joe</filename> ¬°¨Òªº¸Ü¡A«h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make install</userinput></screen>
+
+ <para>¦p¦¹·|¦b¨t²Î¤W¦w¸Ë¤@­Ó·sªº joe ³nÅé¡C
+ ¦pªG»Ý­n¦b¦w¸Ë§¹¦¨«á¡A¤@¨Ö²M°£½s¿è®É´Á©Ò¯d¤U¨Óªº¼È¦s¥Ø¿ý¡A«h¥i°t¦X <userinput>make clean</userinput> ªº¤èªk¤@°_¨Ï¥Î¡A¦p¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean</userinput></screen>
+
+ <para>¦pªG·Q­n¤@¦¸²M±¼©Ò¦³ ports ²£¥Íªº¼È¦s¸ê®Æ¡A«h¥u­n¦^¨ì ports ªº®Ú¥Ø¿ý°õ¦æ§Y¥i¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-package">
+ <para>¦p¦ó¦w¸Ë¤@­Ó·sªº port¡A¨Ã¥´¥](package)°_¨Ó¡H</para>
+ </question>
+
+ <answer>
+ <para>±N¦w¸Ë§¹¦¨ªº³nÅ饴¥]°_¨Ó¡A¦³³\¦h«K§Q©Ê¡G¥]¬A¦bÂO¶°¨t²Î¤¤¡A¥i¨Ñ¨ä¥¦¾÷¾¹¨Ï¥Î¡A
+ ©Î±N¥¼¨Ó¦¹³nÅé¥X°ÝÃD¥i­«·s§Q¥Î¦¹ package ­«·s§Ö³t¦w¸Ë¡C
+ ¥H <filename role="package">editors/joe</filename> ¬°¨Òªº¸Ü¡A«h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make package</userinput></screen>
+
+ <para>¦p¦¹·|¦b¨t²Î¤W¦w¸Ë¤@­Ó·sªº joe ³nÅé¡A¨Ã±N¦¹³nÅ饴¥](package)°_¨Ó¡C
+ package ¹w³]·|¦b <filename>/usr/ports/editors/joe</filename> ¥Ø¿ý¤U¡A¦pªG§Æ±æ¶°¤¤ºÞ²zªº¸Ü¡A«Øij°µ¦p¤Uªº¨BÆJ¡G</para>
+
+ <screen>&prompt.root; <userinput>mkdir -p /usr/ports/packages</userinput></screen>
+
+ <para>¥H«á¥´¥]ªº packages ³£·|¦s©ñ¦b¦¹¥Ø¿ý¤U¡A¨Ã¥B¨t²Î·|¦Û°Ê°µ¤ÀÃþ¡A¥H¤è«KºÞ²z¡C
+ ¦pªG»Ý­n¦b¦w¸Ë§¹¦¨«á¡A¤@¨Ö²M°£½s¿è®É´Á©Ò¯d¤U¨Óªº¼È¦s¥Ø¿ý¡A«h¥i°t¦X make clean ¤@°_¨Ï¥Î¡A¦p¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make package clean</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-depend-package">
+ <para>¦p¦ó¥´¥]¤@­Ó port¡A¨Ã±N¨ä©Ò¦³¬Û¨Ìªº ports ¤]¥´¥]°_¨Ó¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬° <link linkend="make-package">make package</link> ¥u¦³¥´¥]³æ¤@®M¥ó¡A
+ ¤¤¶¡¨Ì¿àªº ports ¨Ã¨S¦³¤@°_¥´¥]¡A³o·|¥X²{¤@­Ó±`¹J¨ìªº°ÝÃD¡G
+ ´N¬O¦pªG¤@­Ó port »Ý­n¨Ì¿à¨ä¥¦ªº ports¡A¨º»ò¥²¶·±N¨ä¥¦ ports ¤]¤@°_¥´¥]¡A§_«h¦w¸Ë packages ·|¦³¬Û¨Ì©Êªº°ÝÃD¡C
+ ¥H <filename role="package">sysutils/portupgrade</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/portupgrade</userinput></screen>
+ <screen>&prompt.root; <userinput>make DEPENDS_TARGET=package package</userinput></screen>
+
+ <para>¦p¦¹·|¹ï©Ò¦³ portupgrade ©Ò¬Û¨Ì¿àªº ports ³£¤@¨Ö¥´¥]¡A¤]¥]¬A¦Û¤v¥»¨­¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-create">
+ <para>¦p¦ó¹ï¤@­Ó¤w¸g¦w¸Ëªº port ¥´¥]¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG¦w¸Ë¦n¤@­Ó®M¥ó¡A¨Æ«e¨Ã¥¼¥´¥]¡A¨Æ«á·Q¥´¥]ªº¸Ü¡A«h¡G
+ ¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /var/db/pkg</userinput></screen>
+ <screen>&prompt.root; <userinput>pkg_create -b joe-{ª©¥»¸¹}</userinput></screen>
+
+ <para>·|±N¤w¦w¸Ëªº port ¥´¥]°_¨Ó¡A©ñ¦b <filename>/var/db/pkg</filename> ¥Ø¿ý¤U¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-clean">
+ <para>¦p¦ó²M²z ports ½s¿è´Á¶¡©Ò²£¥Íªº¼È¦s¸ê®Æ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b¦w¸Ë port ªº®É­Ô¡A·|¦³½sĶ´Á¶¡©Ò»Ý­nªº¤u§@¥Ø¿ý(work)¡A¦]¦¹³q±`¦w¸Ë¦n¤@­Ó®M¥ó«á¡A·|²M°£¦¹¼È¦s¥Ø¿ý¡A¥H¸`¬ÙµwºÐªÅ¶¡¡C
+ ¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean</userinput></screen>
+
+ <para>¦pªG¬O§Æ±æ²M°£©Ò¦³ ports ªº¼È¦s¥Ø¿ý¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean</userinput></screen>
+
+ <para>¦pªG¬O§Æ±æ²M°£©Ò¦³ ftp ¤ÀÃþªº¼È¦s¥Ø¿ý¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-distclean">
+ <para>¦p¦ó²M²z ports ½s¿è´Á¶¡©Ò²£¥Íªº¼È¦s¸ê®Æ¡A¥H¤Î tarball ÀÉ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b <link linkend="make-clean">make clean</link> ¶È¥u¬O²M°£½s¿è´Á¶¡©Ò»Ý­nªº¤u§@¥Ø¿ý(work)¡A¨Ã¨S¦³±N½sĶ
+ ports ®É¤@¨Ö¤U¸üªº tarball §R°£(¬Û¹ïÀ³¤§ tarball ¹w³]·|¦s©ñ¦b <filename>/usr/ports/distfiles</filename>)
+ ¦pªG·Q§â tarball ¤@¨Ö²M°£ªº¸Ü¡A¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make distclean</userinput></screen>
+
+ <para><userinput>make distclean</userinput> ªº¨BÆJ¥]§t¤F <userinput>make clean</userinput>
+ ªº¥\¯à¡A¤]´N¬O»¡°£¤F·|§R°£ tarball ¥~¡AÁÙ·|¤@¨Ö²M°£½sĶ®Éªº¼È¦s work ¥Ø¿ý¡C</para>
+
+ <para>¦pªG¬O§Æ±æ²M°£©Ò¦³ ports ªº¼È¦s work ¥Ø¿ý¤Î tarball¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make distclean</userinput></screen>
+
+ <para>¦Ó¦pªG¬O§Æ±æ²M°£©Ò¦³ ftp ¤ÀÃþªº work ¥Ø¿ý¤Î tarball¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp</userinput></screen>
+ <screen>&prompt.root; <userinput>make distclean</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-depends-list">
+ <para>¦p¦ó¦b¦w¸Ë ports «e¬d¸ß©Ò¨Ì¿àªº¬ÛÃö®M¥ó¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b¦w¸Ë ports «e¡A¥i¥H¬d¸ß©Ò¨Ì¿àªº¬ÛÃö®M¥ó¡C
+ ¥H <filename role="package">mail/p5-Mail-SpamAssassin</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/mail/p5-Mail-SpamAssassin</userinput></screen>
+ <screen>&prompt.root; <userinput>make all-depends-list</userinput></screen>
+ <para><userinput>make all-depends-list</userinput> Åã¥Ü¦¹®M¥ó©Ò¦³¬Û¨Ìªº®M¥ó¡C</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/mail/p5-Mail-SpamAssassin</userinput></screen>
+ <screen>&prompt.root; <userinput>make pretty-print-build-depends-list</userinput></screen>
+ <para><userinput>make all-depends-list</userinput> Åã¥Ü¦¹®M¥ó¦b½sĶ´Á¶¡©Ò»Ý­nªº®M¥ó¡C</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/mail/p5-Mail-SpamAssassin</userinput></screen>
+ <screen>&prompt.root; <userinput>make pretty-print-run-depends-list</userinput></screen>
+ <para><userinput>make all-depends-list</userinput> Åã¥Ü¦¹®M¥ó­n°õ¦æ®É©Ò»Ý­nªº®M¥ó¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-deinstall">
+ <para>¦p¦ó²¾°£¤w¦w¸Ëªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make deinstall</userinput></screen>
+
+ <para>©Î¬O¨Ï¥Î <userinput>pkg_delete</userinput>¡G</para>
+ <screen>&prompt.root; <userinput>pkg_delete joe-{version}</userinput></screen>
+
+ <para>¦³®É­Ô®M¥ó¤§¶¡ªº¬Û¨Ì©Ê·|¾É­PµLªkª½±µ²¾°£¡A¦pªG­n±j¨î²¾°£ªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>pkg_delete -f joe-{version}</userinput></screen>
+ <para>¦ý½Ðª`·N¡G«Ü¦³¥i¯à·|¾É­P¨ä¥¦¬Û¨Ì¨ì³o³nÅ骺®M¥ó°õ¦æ°_¨Ó¥X²{°ÝÃD¡C</para>
+ <para>¦Ü©ó¤GªÌªº®t§O¡A½Ð°Ñ¦Ò <link linkend="deinstall-vs-pkg-delete">make deinstall »P pkg_delete ¦³¤°»ò¤£¦P</link></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-deinstall-depends">
+ <para>¦p¦ó¤@¨Ö²¾°£©Ò¬Û¨Ìªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>¥H <filename role="package">sysutils/portupgrade</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/portupgrade</userinput></screen>
+ <screen>&prompt.root; <userinput>make deinstall-depends</userinput></screen>
+
+ <para>°õ¦æ¦¹¨BÆJ«e¡A½Ðª`·N¬O§_·|²¾°£¨ä¥L®M¥ó¤]¦³¦@¦P¬Û¨Ìªº³¡¤À¡C«Øij¥ý°Ñ¦Ò
+ <link linkend="make-depends-list">make-depends-list</link> ªº¤èªk¨ÓÀˬd¡C</para>
+
+ <para>©Î¬O¨Ï¥Î</para>
+ <screen><userinput>pkg_delete</userinput></screen>
+ <para>³o¼Ë­Y¤´¦³¬Û¨Ì¸Ó®M¥óªº¸Ü¡A·|¥ýĵ§i¦Ó¤£·|²¾°£¡C°£«D¦³¥t¥~¥[¤F -f °Ñ¼Æ¨Ó±j¨î²¾°£¡C</para>
+ <screen>&prompt.root; <userinput>pkg_delete -r portupgrade-{version}</userinput></screen>
+ <para>¦Ü©ó¤GªÌªº®t§O¡A½Ð°Ñ¦Ò <link linkend="deinstall-vs-pkg-delete">make deinstall »P pkg_delete ¦³¤°»ò¤£¦P</link></para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-reinstall">
+ <para>¦p¦ó­«·s¦w¸Ë¤w¦w¸Ë¹Lªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>­«·s¦w¸Ëªº«e´£¬O¡G¤§«e¦³¦w¸Ë¹L©Î¥Ø«e¤w¦w¸Ë¡C¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make deinstall clean install</userinput></screen>
+
+ <para>©Î¬O</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make reinstall</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-search">
+ <para>¦p¦ó¥HÃöÁä¦r·j´M ports¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG­n±q¥þ³¡ªº ports collection ¤¤§ä´M»PÃöÁä¦r "ldap" ¦³Ãöªº ports¡A«h¡G</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make search key=ldap</userinput></screen>
+
+ <para>¦pªG¥u­n±q»P ftp ¬ÛÃöªº ports ¤U§ä´M»PÃöÁä¦r "ldap" ¦³Ãöªº ports¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp</userinput></screen>
+ <screen>&prompt.root; <userinput>make search key=ldap</userinput></screen>
+
+ <para>ÁÙ¦³¥t¤@­Ó¥Îªk¡A¤èªk¥u¬O±N key ´«¦¨ name¡C¦pªG¤w¸gª¾¹D­n·j´M ports ªº¦WºÙ¡A©Î¥u·Q§ä¦WºÙ¬ÛÃöªºÃöÁä¦r "ldap"¡A «h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make search name=ldap</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="upgrade-ports">
+ <para>¦p¦ó¤É¯Å¤w¦w¸Ëªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG¤w¸g¦w¸Ë®M¥ó¡A¨Æ«á±ý¤É¯Åªº¸Ü¡A¥²¶·¥ý²¾°£Âª©ªº port¡C¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make clean reinstall</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-info">
+ <para>¦p¦ó¬d¸ß¥Ø«e¨t²Î¦w¸Ë¤F­þ¨Ç®M¥ó¡H</para>
+ </question>
+
+ <answer>
+ <para>¬d¸ß¥Ø«e¨t²Î¤w¦w¸Ëªº¥þ³¡®M¥ó¡G</para>
+
+ <screen>&prompt.root; <userinput>pkg_info</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-info-grep">
+ <para>¦p¦ó¬d¸ß¥Ø«e¨t²Î¦³¨S¦³¦w¸Ë³o­ÓÃöÁä¦rªº®M¥ó¡H</para>
+ </question>
+
+ <answer>
+ <para>°²³]­n§äªºÃöÁä¦r¬O joe ªº¸Ü¡G</para>
+ <screen>&prompt.root; <userinput>pkg_info | grep joe</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-info-W">
+ <para>¦p¦ó¬d¸ß¬Y­ÓÀɮ׬OÄÝ©ó­þ¨Ç®M¥ó¡H</para>
+ </question>
+
+ <answer>
+ <para>¦pªG·Q¬d¸ß <filename>/usr/local/bin/joe</filename> ¬OÄÝ©ó­þ­Ó®M¥óªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>pkg_info -W /usr/local/bin/joe</userinput></screen>
+ <para>¦pªG¨S¦³¦^¶Ç¥ô¦ó¸ê°Tªº¸Ü¡A¥NªíµÛ³o­ÓÀɮ׬O¥Ñ FreeBSD ¤º«Øªº¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-info-L">
+ <para>¦p¦ó¬d¸ß¬Y­Ó®M¥ó¦w¸Ë¤F­þ¨ÇÀɮסH</para>
+ </question>
+
+ <answer>
+ <para>¦pªG·Q¬d¸ß¥Ø«e¨t²Î©Ò¦w¸Ëªº <filename role="package">joe</filename> ¥]§t¤F­þ¨ÇÀɮסA«h¡G</para>
+ <screen>&prompt.root; <userinput>pkg_info -L /var/db/pkg/joe-{version}</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="reinstall-upgrade">
+ <para>¦p¦ó¦w¸Ëª©ªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³®É­Ô·|¦]¬°¬Û¨Ì©Ê¡A©Î¬O·sª©¦³°ÝÃD¡A¦Ó·|·Q¸Ëª©¥»ªº®M¥ó¡C
+ ³o¸Ì¤¶²Ðªº¤èªk¬O§Q¥Î CVS ªº¦n³B¡A¦^Âk¨ì¥H«eª©¥»¦s¦bªº¤é¤l¡A¥H¦w¸Ëª©¥»ªº®M¥ó¡C</para>
+
+ <para>­º¥ý¡A­Y§Ú­Ì­n¦^´_¨ì¬Y¤@­Ó®M¥óªºª©¥»®É¡A»Ý­n¥h¬d¸ß FreeBSD ports CVS repository¡C
+ ³Ì±`¨£ªº´N¬O <ulink url="http://www.freshports.org/">Freshports</ulink> ºô¯¸¡B FreeBSD ªº
+ <ulink url="http://lists.freebsd.org/pipermail/cvs-all/">Mailing FreeBSD cvs</ulink> ©Î¬O FreeBSD
+ <ulink url="http://www.freebsd.org/cgi/cvsweb.cgi/ports/">ports cvsweb</ulink>¡C</para>
+
+ <para>¬d¨ì¸Ó®M¥óª©¥»©Ò¨Ì¦sªº¤é¤l«á¡A´N­×§ï CVS tag¡C¤@¯ë¹w³] ports ªº CVS tag ·|¼g¦b <filename>/usr/share/examples/cvsup/ports-supfile</filename>
+ ¡A¦p­n¦^·¹¨ì 2002/10/05 ¸¹ªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>vi /usr/share/examples/cvsup/ports-supfile</userinput></screen>
+ <screen>*default date=2002.10.05.00.00.00 #±N date §ï¦¨·í¤é</screen>
+
+ <para>µM«á«ö·Ó¤@¯ë CVSup ©Î csup ªº®É­Ô¤@¼Ë¡A°õ¦æ CVSup ©Î csup (make update)¡A¦¹®Éªº
+ ports collections ´N·|¦^¨ì·í®Éªº±¡§Î¡A¨º»ò¸Ó®M¥óªºÂª©¤]·|¥X²{¦b ports collections ¤¤¡A¥u­n¦w¸Ë§Y¥i¡C</para>
+
+ <para>¦pªG¶È¬O·Q¦^·¹¬Y³¡¥÷ªº ports¡A«h¥²¶·¥[¤WÃB¥~ªº¸ê°T¡A¦p¶È§Æ±æ§â <filename role="package">lang/perl5.8</filename> ¦^·¹¡A
+ ¦Ó§Ú­Ì±oª¾¦¹ÄÝ©ó lang ¤¤ªº¤@¤ä¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>vi /usr/share/examples/cvsup/ports-supfile</userinput></screen>
+ <screen>#ports-all #±N ports-all ¼Ð¥Ü°_¨Ó</screen>
+ <screen>ports-lang #¥[¤J³o¦æ</screen>
+ <para>³Ì«á¡A°õ¦æ CVSup ©Î csup ¡A¨Ã¦w¸Ë§Y¥i¡C¥Ø«e­Y§Æ±æ³æ¿W¦^·¹³æ¤@ªº port¡A«h¤ñ¸û³Â·Ð¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="upgrade-ports-mk">
+ <para>¦p¦ó§ó·s ports Mk¡H</para>
+ </question>
+
+ <answer>
+ <para>Mk (<filename>/usr/ports/Mk</filename>) ¬O½sĶ ports ®É©Ò°Ñ¦Òªº³]©w¡A¦³®É­Yµo¥Í ports collections ¤Ó·s¡A¦Ó¾É­P Mk ªº¤º®e¤£²Å¡A¦¹®É´N¬OÀ³¸Ó§ó·s Mk ªº®É­Ô¤F¡C</para>
+ <screen>&prompt.root; <userinput>cd /usr/src</userinput></screen>
+ <screen>&prompt.root; <userinput>make update</userinput></screen>
+ <screen>&prompt.root; <userinput>cd /usr/src/share/mk</userinput></screen>
+ <screen>&prompt.root; <userinput>make install</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-use-sed-inplace">
+ <para>¦p¦ó¸Ñ¨M¦w¸Ë ports ®É¥X²{ sed -i ªº¿ù»~¡H</para>
+ </question>
+
+ <answer>
+ <para>¦]¬° BSD style ªº sed ¡A¤]´N¬O BSD ¥»¨­¦Û¦³ªº sed ¡A»P¤@¨Ç ports ½sĶ´Á¶¡©Ò°õ¦æªº sed ¤£¤@­P¡A©Ò¥H·|¾É­P¤@¨Ç»yªk¿ù»~¡C¦¹®É¥ý¦w¸Ë sed_inplace (<filename role="package">textproc/sed_inplace</filename>)¡AµM«á¦A¦w¸Ë­ì¥»µLªk¦w¸Ëªº ports¡G</para>
+ <screen>&prompt.root; <userinput>make -DUSE_REINPLACE install</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-version">
+ <para>¦p¦ó¦C¥X©Ò¦³¥i¥H¤É¯Åªº ports¡H</para>
+ </question>
+
+ <answer>
+ <para>ports collection ªº§ó·s³t«×«Ü§Ö¡A¦b¨C¦¸§ó·s ports collections «á¡A©¹©¹·|¥X²{¤ñ¥Ø«e²{
+ ¦b¦w¸Ëªº®M¥óÁÙ·sªºª©¥»¡A¥i¥H¥O¨t²Î¦Û¦æ¾ã²z¨Ã´£¨Ñ¥i¤É¯Å®M¥óªº¦Cªí¡G</para>
+ <screen>&prompt.root; <userinput>pkg_version -c</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="grep-defined-makefile">
+ <para>¦p¦ó±oª¾ ports ©Ò´£¨Ñªº½sĶ°Ñ¼Æ¡H</para>
+ </question>
+
+ <answer>
+ <para>©Ò¦³ªº ports collections ¤¤©Ò´£¨Ñªº½sĶ°Ñ¼Æ³£·|¦b¹ïÀ³ªº Makefile Àɮפº¸Ô­z¡A
+ ¦p <filename role="package">sysutils/portupgrade</filename> ªº¸Ü¡A«h¬O¦ì¦b <filename>/usr/ports/sysutils/portupgrade/Makefile</filename>
+ ÀɮפU¡C</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/portupgrade</userinput></screen>
+ <screen>&prompt.root; <userinput>make -DNOPORTDOCS install</userinput></screen>
+
+ <para>¨º»ò¦w¸Ë¦¹ ports ®É¡A·|±N NOPORTDOCS ©Ò¹ïÀ³ªº¬ÛÃö°Ñ¼Æ«ü©w¶i¥h¡C</para>
+ <para>¦³®É­Ô³]©w¸û¤H©Ê¤Æªº ports ·|¦b¦w¸Ë«e´£¨Ñ°Ñ¼Æ¨Ñ¿ï¾Ü¡A¦ý¬O¨ä¹ê¤j³¡¥÷ªº ports ³£¨S¦³´£
+ ¨Ñ¡A¦]¦¹¥²¶·¦Û¦æ¥h·j´M¥i½sĶªº°Ñ¼Æ¡A¦b¦¹§Ú´£¨Ñªº¤è¦¡¦p¤U¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/portupgrade</userinput></screen>
+ <screen>&prompt.root; <userinput>grep defined Makefile</userinput></screen>
+
+ <para>¦p¦¹´X¥G¥i¥Hª¾¹D©Ò¦³´£¨Ñªº¥i½sĶ°Ñ¼Æ¡AÁöµM¦³®É·|¦h¥X¨ä¥¦ªº¸ê®Æ¡A¤£·|³o­Ó½T¹ê¬O¤@­Ó¤£
+ ¿ù¥i°Ñ¦Òªº¤è¦¡¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-configure-args">
+ <para>¦p¦ó¤â°Ê¥[¤J½sĶ ports ªº°Ñ¼Æ¡H</para>
+ </question>
+
+ <answer>
+ <para>¦b <link linkend="grep-defined-makefile">«e­±©Ò­z</link> ªº¤èªk¡A¬O ports collections ¦³´£¨Ñªº«e´£¤§¤U¡A¦³®É­Ô¨Ã¤£¬O©Ò¦³¸Ó³nÅé©Ò¤ä´©ªº°Ñ¼Æ³£·|¦¬¯Ç¦b ports collections ¤¤¡A¦]¦¹¦³®É­Ô·|»Ý­n¤â°Ê¥[¤J½sĶªº°Ñ¼Æ¡C</para>
+ <para>¦p ftp/pure-ftpd ¤¤¡A¦pªG¤£·Q§â inetd ªº¤ä´©½s¤Jªº¿ï¶µ¡A¨Ã¨S¦³³Q ports collections ©Ò¯Ç¤J¡A¦]¦¹¥²¶·¤â°Ê¥[¤W³o­Ó½sĶ°Ñ¼Æ¡A¦p¤U¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp/pure-ftpd</userinput></screen>
+ <screen>&prompt.root; <userinput>make CONFIGURE_ARGS+="--without-inetd" install</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-prefix">
+ <para>¦p¦ó«ü©w ports ªº¦w¸Ë¸ô®|¡H</para>
+ </question>
+
+ <answer>
+ <para>¹w³] ports collecions ¤w¦w±Æ¦w¸Ëªº¸ô®| (<filename>/usr/local/</filename>)¡A¦pªG¤£·Q±N®M¥ó¦w¸Ë¦b¹w³]¸ô®|ªº¸Ü¡A¥i¥H¤â°Ê«ü©w¦w¸Ë¸ô®|¡C¥H <filename role="package">editors/joe</filename> ¬°¨Ò¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/editors/joe</userinput></screen>
+ <screen>&prompt.root; <userinput>make PREFIX=/usr install</userinput></screen>
+ <para>¨º»ò joe ´N·|±NÀÉ®×¹ïÀ³¦b /usr ¥Ø¿ý¤U¡A¦Ó¤£¬O¹w³]ªº /usr/local ¥Ø¿ý¤U¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="force-pkg-register">
+ <para>¦w¸Ë ports ¥X²{ FORCE_PKG_REGISTER ªº¿ù»~°T®§</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò Ohaha ªº <ulink url="http://ohaha.ks.edu.tw/faq-0003.htm">FAQ</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="shared-object-not-found">
+ <para>¦w¸Ë ports ¥X²{ Shared object libintl.so.X not found ªº¿ù»~°T®§</para>
+ </question>
+
+ <answer>
+ <para>½Ð°Ñ¦Ò Ohaha ªº <ulink url="http://ohaha.ks.edu.tw/faq-0004.htm">FAQ</ulink>¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-add">
+ <para>¦p¦ó¦w¸Ë packages¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ø«e FreeBSD ªº packages ¬O¥Ñ .tgz ©Ò¥´¥]¡C¦pªG·Q¦w¸Ë¤@­Ó packages ¡A¥i¨Ï¥Î pkg_add¡A¦p¦w¸Ë¤@­Ó joe ªº tgz¡G</para>
+ <screen>&prompt.root; <userinput>pkg_add joe-{version}.tgz</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-add-force">
+ <para>¦p¦ó±j¨î¦w¸Ë packages¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ñ©ó¦³¨Ç packages ·|¦³»P¨ä¥L packages ¬Û¨Ì©ÊªºÃö«Y¡A©Ò¥H¥²¶·¥ý¦æ¦w¸Ë¨º¨Ç packages ¤~
+¯à¥¿±`¦w¸Ë¡C</para>
+ <para>¦pªG¶·­n±j¨î¦w¸Ë packages ¡A¥i¥H¤£¶·¦w¸Ë¨º¨Ç¦³¬Û¨Ì©Ê packages ¡A¦ý­nª`·Nªº¬O±j¨î¦w¸Ë
+ªºµ²ªG¥i¯à·|¾É­P°õ¦æ©Î¹B§@ªº¤£¥¿±`¡C±j¨î¦w¸Ë packages ªº«ü¥O¦p¤U¡A¦p±j¨î¦w¸Ë¤@­Ó joe ªº tgz¡G</para>
+ <screen>&prompt.root; <userinput>pkg_add -f joe-{version}.tgz</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-info-r">
+ <para>¦p¦ó¬d¸ß packages »P¨ä¥L packages ¤§¶¡ªº¬Û¨Ì©Ê¡H</para>
+ </question>
+
+ <answer>
+ <para>¥Ñ©ó¦³¨Ç packages ·|¦³»P¨ä¥L packages ¬Û¨Ì©ÊªºÃö«Y¡A©Ò¥H¥²¶·¥ý¦æ¦w¸Ë¨º¨Ç packages ¤~
+¯à¥¿±`¦w¸Ë¡C</para>
+ <para>¬d¸ß packages »P¨ä¥L packages ¤§¶¡ªº¬Û¨Ì©Êªº«ü¥O¦p¤U¡A¦p¬d¸ß»P portupgrade ¬Û¨Ìªº¨ä¥L packages¡G</para>
+ <screen>&prompt.root; <userinput>pkg_info -r portupgrade-{version}.tgz</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="pkg-add-r">
+ <para>¦p¦ó¦w¸Ë»·ºÝªº packages¡H</para>
+ </question>
+
+ <answer>
+ <para>¦³¨âºØ³]©w¤è¦¡¡A­º¥ý¬O PACKAGEROOT¡A¦p¡G</para>
+ <screen>&prompt.root; <userinput>setenv PACKAGEROOT ftp://ftp.tw.freebsd.org</userinput></screen>
+
+ <para>¥t¤@ºØ¤è¦¡¬O³]©w PACKAGESITE¡A¦n³B¬O­Y¸Ó¯¸¥xªº packages ­ÜÀx¨Ã¤£¬O²Å¦X©x¤èªº³]©w©Î§A
+·Q¦Û¤v«ü©w¤@­Ó¸ô®|¡C</para>
+ <para>¥H ftp.tw.freebsd.org i386 ªº current pakcages ¬°¨Ò¡G</para>
+ <screen>&prompt.root; <userinput>setenv PACKAGESITE ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/i386/packages-current/Latest/</userinput></screen>
+
+ <para>¨âºØ¤è¦¡¿ï¾Ü¨ä¤¤¤@ºØ¬Ò¥i¡A±µ¤U¨Óªº¨BÆJ³£¤@¼Ë¡C</para>
+ <para>©¹«á­n¦w¸Ë packages ªº®É­Ô¡A¦p portupgrade ªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>pkg_add -r portupgrade</userinput></screen>
+
+ <para>«h¨t²Î·|¦Û°Ê©ó ftp.tw.freebsd.org §ì¨ú©Ò¦³»P portupgrade ¬Û¨Ìªº packages ¨Ã¦w¸Ë¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-index">
+ <para>¦p¦ó§ó·s INDEX ¹ï·Óªí¡H</para>
+ </question>
+
+ <answer>
+ <para>4.x ªº INDEX ¦ì©ó <filename>/usr/ports/INDEX</filename>¡A5.x ¦ì©ó <filename>/usr/ports/INDEX-5</filename>¡A¥H¦¹Ãþ±À¡C</para>
+ <para>INDEX ¬O¹ï·Ó ports ©Ò¦³¬Û¨Ìµ¥¸ê°Tªº¹ï·Óªí¡A­Yªø´Á¥¼§ó·sªº¸Ü¡A·|¾É­P ports ¹ï·Ó¥¢±Ñ¡C
+©x¤è¦³©w´Á§ó·s INDEX¡A¦pªG·Q¦Û¦æ§ó·sªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make index</userinput></screen>
+
+ <para>¦pªG·Qª½±µ¤U¸ü©x¤è³Ì·sªº INDEX¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make fetchindex</userinput></screen>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="make-readmes">
+ <para>¦p¦ó§ó·s INDEX HTML¡H</para>
+ </question>
+
+ <answer>
+ <para>FreeBSD ´£¨Ñ¤F¥Îºô­¶ªº¤è¦¡¨ÓÆ[¬Ý ports collection¡A§Y¥i¨Ï¥Î lynx, w3m, links ©Î¨ä¥¦¥iÂsÄýºô­¶ªºµ{¦¡¨Ó¬d¾\¡C»s§@¥þ³¡ ports collection ªº¤è¦¡¦p¤U¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports</userinput></screen>
+ <screen>&prompt.root; <userinput>make readmes</userinput></screen>
+
+ <para>¦pªG¬O¶È¶·­n°µ¥Ø«e¥Ø¿ý¤Uªº¸ê°T¡A©Î³æ¤@§ó·s¬Y¤@¤ÀÃþ¤Uªº¸ê°T¡A¦p /usr/ports/ftp ªº¸Ü¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /usr/ports/ftp</userinput></screen>
+ <screen>&prompt.root; <userinput>make readme</userinput></screen>
+ <para>«h¶È·|§ó·s /usr/ports/ftp ³o­Ó¥Ø¿ýªº¸ê°T¡A¨ä¤W»P¨ä¤Uªº¥Ø¿ý¬Ò¤£·|§ó°Ê¨ì¡C°õ¦æ¦¨¥\«á¡A·|¦b¬Û¹ïÀ³ªº¥Ø¿ý¤U²£¥Í README.html ªºÀɮסC</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="sup-refuse">
+ <para>¦p¦ó°w¹ï¬Y¨Ç ports ¤£°µ ports update¡H</para>
+ </question>
+
+ <answer>
+ <para>­Y ports ©³¤Uªº¬Y¨Ç¤ÀÃþ§¹¥þ¥Î¤£¨ì¡A«h¥i¥H¦b ports update ®É¡A¤£°µ§ó·s¡A¥H¸`¬Ùºô¸ôÀW¼e»P®É¶¡¡C¥u­n­×§ï <filename>/usr/sup/refuse</filename> ³o­ÓÀÉ¡C</para>
+ <screen>&prompt.root; <userinput>ports/french</userinput></screen>
+ <screen>&prompt.root; <userinput>ports/german</userinput></screen>
+ <screen>&prompt.root; <userinput>ports/lang/perl5.8</userinput></screen>
+ <para>«h¤W¦C¥Ø¿ý±N¤£·|§ó·s¡C</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question id="deinstall-vs-pkg-delete">
+ <para>make deinstall »P pkg_delete ¦³¤°»ò¤£¦P¡H</para>
+ </question>
+
+ <answer>
+ <para>²³æ¨Ó»¡¡Amake deinstall ·|²¾°£¸Ó port¡A¨Ã¥B¤£·|°Ñ·Ó¨ä¬Û¨Ìªº¬ÛÃö®M¥ó¡C</para>
+ <para>pkg_delete ¦b²¾°£¸Ó port «e¡A·|°Ñ·Ó¨ä¬Û¨Ìªº¬ÛÃö®M¥ó¡A¨Ã¥B pkg_delete ¦³¤ä´© wild card ¡A¦p­n²¾°£©Ò¦³ p ¶}ÀYªº ports¡A«h¡G</para>
+ <screen>&prompt.root; <userinput>cd /var/db/pkg</userinput></screen>
+ <screen>&prompt.root; <userinput>pkg_delete p*</userinput></screen>
+
+ <para>­nª`·Nªº¬O¡A¦pªG¨Ï¥Î make deinstall¡A«h³Ì¦n½T©w¨t²Î¥Ø«e©Ò¦w¸Ëªºª©¥»¡A»P ports collection ¤¤Åã¥Üªºª©¥»²Å¦X¡A§_«h¦³¥i¯à·|¥X²{«D¹w´Á©Ê¿ù»~¡F¦Ó pkg_delete ¬O¦]¬°ª½±µ
+§R°£¨t²Î¤¤©Ò¦w¸Ëªºª©¥»¡A©Ò¥H¨S¦³¦¹°ÝÃD¡C</para>
+ <para>¦]¦¹¡A´«¥y¸Ü»¡¡A·í¨t²Î©Ò¦w¸Ëªºª©¥»²Å¦X ports collections ¤¤ªºª©¥»¡A«h¥i¥H¨Ï¥Î make deinstall ©Î pkg_delete¡A§_«hªº¸Ü³Ì¦n¥Î pkg_delete¡C</para>
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+ </chapter>
+
+ &bibliography;
+</book>