<!-- $FreeBSD$ -->
<!-- The FreeBSD Documentation Project -->
<!-- Translate into Chinese by foxfair@FreeBSD.org -->
<!-- English Version: 1.18 -->

  <sect>
    <heading>安裝 FreeBSD<label id="install"></heading>

    <sect1>
      <heading>我該下載哪些檔案以取得 FreeBSD？</heading>

      <p>通常你只需要一張軟碟 image 檔，<em>floppies/boot.flp</em>，把它拷
	貝到 1.44MB 軟碟片上然後啟動它，再去下載其他的部份(安裝程序會管
	理你的 TCP/IP 連線，以及 tapes，光碟機，軟碟機，DOS 分割區，及
	其他只要是安裝過程中需要用到的事物)。

      <p>若你只需要自己下載 distributions(可迅速的由 DOS 檔案系統來安裝)
	，以下是我們建議你抓來安裝的 distributions：

      <itemize>
      <item> bin/<newline>
      <item> manpages/<newline>
      <item> compat*/<newline>
      <item> doc/ <newline>
      <item> src/ssys.* <newline>
      </itemize>

      <p>安裝程序的完整指令，以及更多普遍性安裝時會碰到的問題可以在
	<url url="../../handbook/install.html" 
	name="Handbook entry on installing FreeBSD.">這裡找到。

    <sect1>
      <heading>救命！啟動的軟碟 image 檔無法塞到一片單獨的軟碟片裡！
      </heading>
      
      <p>一張 3.5 英吋(1.44MB)軟碟片可以容納 1474560 位元組的資料。
	啟動的 image 檔就剛好是這個大小。
      <p>在準備啟動軟碟片時常見的錯誤有：
      <itemize>
      <item>使用 <tt>FTP</tt> 時沒有使用 <tt>binary</tt> 模式下載軟碟
	image。
	<p>某些 FTP client 軟體它們內定的傳輸模式是 <tt>ascii</tt> 
	並且試著更改任何的 end-of-line 字元，以符合這個 client 系統
	本身的轉換。大部分情形下這必然會毀損啟動 image 檔，檢查一下
	你下載的啟動 image 檔大小：如果這不是<em>完全地</em>與 server 
	端上的大小相同，那麼你的下載程序就有問題。
	<p>解決方法：在你連接上 server 但尚未開始下載映像檔之前，
	看到 FTP 命令提示號時打 <tt>binary</tt>。

      <item>使用 DOS 的 <tt>copy</tt> 命令(或等效的 GUI 工具)來把啟
	動 image 檔傳送到軟碟片。
	<p>類似像 <tt>copy</tt> 的程式，在啟動 image 檔被建立並且直接
	開機後並沒有功用。映像檔裡有完整的磁碟內容，磁軌對磁軌，這代
 	表著你無法用磁片上固定的檔案去取代它。
	你必須把它傳送到軟碟片的``raw''上，使用低階化工具(像是 
	<tt>fdimage</tt> 或 <tt>rawrite</tt>)，這些在 
	<url url="../../handbook/install.html" name="installation guide to
	FreeBSD">裡面多有描述。
      </itemize>

    <sect1>
      <heading>安裝 FreeBSD 的指令在哪裡？</heading>

      <p>你可以在這裡找到安裝指令。
      <url url="../../handbook/install.html" 
	name="Handbook entry on installing FreeBSD.">

    <sect1>
      <heading>要執行 FreeBSD 我還需要什麼？</heading>

      <p>你需要一台 386 或更好的 PC，包含 5MB 或更多的 RAM 以及至少 60MB
	的磁碟空間。可以僅使用一個低階的 MDA 圖形卡，如果你要執行 X11R6
	，就需要 VGA 或更好的視訊卡。

      <p>亦參考這個章節 <ref id="hardware" name="Hardware compatibility">

    <sect1>
      <heading>我只有 4MB RAM，那我能安裝 FreeBSD 嗎？</heading>

      <p>FreeBSD 2.1.7 是最後一個可在 4MB 系統上被安裝的版本。新版的 
	FreeBSD，像是 2.2，需要至少 5MB 來安裝它在一個全新的系統上。

      <p>FreeBSD 的所有版本，包括 3.0，都能在 4MB 的記憶體下執行，不
	過安裝時不能只用 4MB。如果你想這樣，你可以在安裝時加入額外的
	記憶體，然後等系統可以執行後，換回 4MB。或是你可以把你的磁碟
	機切出一個 4MB 以上置換空間，安裝好系統後再把置換空間砍掉。

      <p>FreeBSD 2.1.7 也有不能在 4MB 安裝的情形。正確的說，應該是指
	不能在基本的 640kB 加上 3MB 延伸記憶體裡安裝。如果你的主機板
	可以重新找回在 640kB 到 1MB 範圍中那些``遺失''的記憶體，那麼
	或許你還是可以把 FreeBSD 2.1.7 裝起來。

      <p>試著進入你的 BIOS 設定選單並找一個``remap''選項，把它打開。
	你或許也該把 ROM shadowing 給關掉。

      <p>只在安裝時使用 4MB 可能容易一點，建立一個只有你需要的選項的
	核心程式，然後就可以只用 4MB。

      <p>你也可以安裝 2.0.5 然後再把你的系統用 2.1.7 安裝程式裡
	``upgrade''的選項升級到 2.1.7 版本。

      <p>安裝後如果你建立一個自訂的核心，這將會在 4MB 下執行。曾有
	人成功的用 2MB 開機(不過系統幾乎不能用 :-))。

    <sect1>
      <heading>
	我該怎麼製作自訂的安裝軟碟片？
      </heading>

      <p>目前你無法*只*製作一個自訂的安裝軟碟片。你必須做出整個全新的
	release 系統，這裡面就包括你的安裝軟碟片。某些在
	<tt>/usr/src/release/floppies/Makefile</tt> 裡的程式碼假設能讓
	你*只*做出那些軟碟片，但是事實上還不行。

      <p>要做出自訂的 release 版本，請遵循 <ref id="custrel" name="here">
	的指令。

    <sect1>
      <heading>我可以在我的 PC 上擁有超過一個以上的作業系統嗎？</heading>

      <p>請參考 <url url="../tutorials/multios/multios.html"
      name="The multi-OS page.">

    <sect1>
      <heading>Windows 95 可以跟 FreeBSD 並存嗎？</heading>

      <p>先安裝 Windows 95，然後再裝 FreeBSD。FreeBSD 的啟動管理員
	會接著管理啟動 Win95 和 FreeBSD 的工作。假使你第二個才去裝 
	Win95，它將會問都不問的粗魯地把你的啟動管理員覆寫過去。假
	如這已經發生，請看下一節。

    <sect1>
      <heading>
	Windows 95 把我的啟動管理員殺掉了！我該怎麼把它救回來？
      </heading>

      <p>你可以用以下兩種方法之一來重新安裝 FreeBSD 的啟動管理員：

      <itemize>
        <item>執行 DOS，進入你的 FreeBSD distributions 的 tools/ 目錄
	並找到 <bf>bootinst.exe</bf>。你可以這樣執行它：

        <p><bf>bootinst.exe boot.bin</bf>

        <p>這樣啟動管理員將會再次被安裝。

        <item>用 FreeBSD 啟動軟碟片再次開機然後進入 Custom 安裝選單
	項目，選擇 Partition，選擇那個包含啟動管理員的磁碟機(大多是
	第一個)，然後當分割區編輯器(partition editor)出現時，第一件
	事(意思就是：不要做任何更改) 先選擇 (W)rite。會出現確認的詢
	問，回答 yes，然後當你看到 Boot Manager 的選擇提示時，確定
 	你選的是"Boot Manager"這項。
	這會把啟動管理員重新寫回磁碟裡。跳離安裝選單然後就跟正常情形
	一樣重新啟動硬碟。
      </itemize>

    <sect1>
      <heading>我可以在一個有壞軌(bad blocks)的磁碟上進行安裝嗎？</heading>

      <p>FreeBSD 的 bad block (<htmlurl 
      url="http://www.FreeBSD.org/cgi/man.cgi?bad144" name="bad144">
      命令) 處理並非 100&percnt 完全(用圖形化來看)，而且很不幸我要告
	訴你假如你有一個 IDE 或 ESDI 裝置包含大量的 bad blocks，那麼
	FreeBSD 可能不適合你！這表示，對其他大多數的 IDE 系統可能有
	用，你可能想在放棄前先嘗試看看。

      <p>如果你有一個有 bad blocks 的 SCSI 裝置，請看 <ref id="awre"
      name="this answer">.

    <sect1>
      <heading>當我啟動安裝軟碟片時，奇怪的事情發生了！</heading>

      <p>如果你看到奇怪的事情，像是機器停住了或是當你試著從安裝磁片起
	動時突然自動重新開機了，這裡有三個問題你該先問問自己:-

      <enum>
        <item>你是否使用一個新的，剛格式化過，沒有任何錯誤的軟碟片(可
	以是一張全新剛拆封的，而非是那種已經你的床下躺了三年，是雜誌贈
	送的封面磁片)？

        <item>你是否用 binary 模式下載軟碟映像檔？
	(不用不好意思，就算是我們之中最好的一個人也曾意外的把 binary
	檔用 ASCII 模式下載至少一次！)

        <item>如果你正在使用像是 Windows95 或 Windows NT 這幾種新型的
 	作業系統，你有沒有把系統關機然後啟動到最原始狀態，只有 DOS？
	這些 OS 看起來會阻礙那些直接操作硬體的程式，像是建立磁碟的程式
	，只要在 GUI 環境下的 DOS shell 就會導致這個問題。
      </enum>

      <p>也有過報告有關 Netscape 會導致下載啟動軟碟的問題，因此如果你
	可以，最好使用別種不同的 FTP client 。

    <sect1>
      <heading>救命！我不能從 tape 安裝！</heading>

      <p>如果你從 tape 安裝 2.1.7，你必須用每個 tar blocksize 是 10
	(5120 bytes)建立這個 tape。內定的 tar blocksize 是 20(10240
	bytes)，然而用這種內定大小建立的 tape 無法用來安裝 2.1.7R；
	如果你用這種 tapes，你會看到有關資料記錄區大小過大的抱怨訊
	息。

    <sect1>
      <heading>用一條並聯線(PLIP)連接兩台 FreeBSD。
	</heading>

      <p>找一條 laplink 線，確定兩邊電腦的核心都支援 lpt 驅動程式。

      <verb>
      $ dmesg | grep lp
      lpt0 at 0x378-0x37f irq 7 on isa
      lpt0: Interrupt-driven port
      lp0: TCP/IP capable interface
      </verb>

      <p>把 laplink 線插入並聯界面上。

      <p>用 root 身分在兩台電腦上設定 lp0 的網路界面參數。舉例，如果
	你想用 max 連接 moritz：

      <verb>
                 max <-----> moritz
IP Address    10.0.0.1      10.0.0.2
      </verb>

     max 端應該這樣開始：
     <verb>
	# ifconfig lp0 10.0.0.1 10.0.0.2
     </verb>

     moritz 則這樣：

     <verb>
	# ifconfig lp0 10.0.0.2 10.0.0.1
     </verb>

     <P>好了！也請你看看 lp(4) 和 lpt(4) 的 manpages。

     <P>你也該把這些主機加到 /etc/hosts 裡面。

     <verb>
     127.0.0.1               localhost.my.domain localhost 
     10.0.0.1                max.my.domain max
     10.0.0.2                moritz.my.domain moritz
     </verb>

     <P>用以下方法檢查是否有正常動作：

     on max:

<verb>
$ ifconfig lp0
lp0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet 10.0.0.1 --> 10.0.0.2 netmask 0xff000000 
</verb>

<verb>
$ netstat -r
Routing tables

Internet:
Destination        Gateway            Flags     Refs     Use     Netif Expire
moritz              max              UH          4   127592       lp0
</verb>

<verb>
$ ping -c 4 moritz
PING moritz (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.774 ms
64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.530 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.556 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=255 time=2.714 ms

--- moritz ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms
</verb>

    <sect1>
      <heading>
	我可以在我的膝上型電腦用 PLIP(Parallel Line IP)安裝嗎？
      </heading>

      <p>用 laplink 並聯線連接兩台電腦以使用這個特性：

      <verb>
            +----------------------------------------+
            |A-name A-End   B-End   Descr.  Port/Bit |
            +----------------------------------------+
            |DATA0  2       15      Data    0/0x01   |
            |-ERROR 15      2               1/0x08   |
            +----------------------------------------+
            |DATA1  3       13      Data    0/0x02   |
            |+SLCT  13      3               1/0x10   |
            +----------------------------------------+
            |DATA2  4       12      Data    0/0x04   |
            |+PE    12      4               1/0x20   |
            +----------------------------------------+
            |DATA3  5       10      Strobe  0/0x08   |
            |-ACK   10      5               1/0x40   |
            +----------------------------------------+
            |DATA4  6       11      Data    0/0x10   |
            |BUSY   11      6               1/0x80   |
            +----------------------------------------+
            |GND    18-25   18-25   GND -            |
            +----------------------------------------+
      </verb>

      <p>請參考 Mobile Computing 網頁的 <ref id="pao" name="this note">。

    <sect1>
      <heading>
	我該怎麼使用一個磁碟裝置的 geometry？<label id="geometry">
      </heading>

      <p>(一台磁碟的"gromrtry"，我們指的是這台磁碟上 cylinders, heads 
	和 sectors/track 的數目 - 為了方便且稱之為 C/H/S。這是 PC 的
	BIOS 用來讀/寫磁碟的依據)。

      <p>為了某些理由，這似乎會導致很多困擾。首先，一台 SCSI 裝置的
	<tt /physical/ geometry 跟 FreeBSD 在使用的 disk blocks 是完
	全無關的。事實上，並沒有所謂"physical geometry"這種東西，這
	是指磁碟機上磁區密度的變化 - 製造商要求是"真實的"physical
	geometry 通常是指，他們所能找出浪費最少空間的 geometry 結果。
  	對 IDE 磁碟來說，FreeBSD 使用 C/H/S 方式工作，但是所有現在
	的磁碟已經在內部參考時把它轉換成 block 了。

      <p>另外就是所謂的<tt /logical/ geometry - 這是當 BIOS 問"你的
	geometry 是什麼？"的時候，所得到的答案並且把它用來存取磁碟。
	當開機時 FreeBSD 使用 BIOS 資料，讓這個正確是相當重要的。另外
	，如果你在同一個磁碟機上有一個以上的作業系統，他們必須都同意
	grometry，否則你在開機時會有大問題！

      <p>對 SCSI 磁碟機來說，geometry 的使用是依靠啟動控制器來支援 
        extended translation (這通常稱之為"對&gt;1GB DOS 磁碟機
        的支援或"類似的稱呼)。如果不支援，那麼使用 N cylinders，64 
        heads 和 32 sectors/track，這裡'N'是指磁碟機的 MB 容量。舉例
        來說，一個 2GB 的磁碟機應該假設它有 2048 cylinders，64 heads
        和 32 sectors/track。

      <p>如果它確定<tt /是/ 打開的(通常提供這種方法在 MSDOS 下有某些限
        制)，並且磁碟容量超過 1GB，使用 M cylinders, 每個 track 63 sectors
	(*而非* 64)，以及 255 heads，這裡 'M' 是每 MB 的磁碟容量除以
	7.844238 (!)。所以我們的這個範例，2G 磁碟機就有 261 cylinders, 
	每個 track 63 sectors 以及 255 heads。

      <p>如果你不確定以上這個，或是 FreeBSD 在安裝過程中要偵測 geometry
	的正確性時失敗了，最簡單的解決方法通常是在磁碟上建立一個小的 DOS
	分割區。正確的 geometry 應該能被偵測到（而且如果你不想保留它，
	你總是可以在分割區編輯器裡把這個 DOS 分割區移除掉，或是把它留下
        來，給程式化網路卡使用或隨你高興怎麼用它）。

      <p>另外，有一個免費而有用的公用程式叫  ``<tt/pfdisk.exe/'' 隨著
        FreeBSD 散播出來（位於 FreeBSD CDROM 的 <tt>tools</tt> 子目錄
        下或是在大多數的 FreeBSD ftp 站台內可找到），這個程式可用來找
	出另一作業系統正在使用磁碟機上的哪塊 geometry。然後你就可以在
	分割區編輯器裡面輸入它。

    <sect1>
      <heading>當我分割磁碟機時有任何限制嗎﹖</heading>

      <p>是的。你必須確認你的 root 分割區是在 1024 cylinders 之內，讓
        BIOS 可以從其中啟動核心。(注意：這是 PC 的 BIOS 功能限制，而不
        是 FreeBSD 的)

      <p>對 SCSI 裝置來說，這通常暗示著 root 分割區將放在開始的 1024
        MB(或是開始的 4096MB，如果 extended translation 是打開的 - 請
        參考前一節)。對 IDE 來說，相關的部份是 504MB。

    <sect1>
      <heading>
        可以使用磁碟管理程式(disk managers)嗎﹖或是，我有一個巨大的磁碟機！
      </heading>

      <p>FreeBSD 認識 Ontrack Disk Manager 並且允許使用它，其他的 disk
	managers 則不在支援之列。

      <p>如果你只想在磁碟機上使用 FreeBSD 那麼你根本不需要 disk manager。
	只要把磁碟設定成 BIOS 能抓到的最大空間(通常是 504 megabytes)，那麼
	FreeBSD 應該就可以算出你事實上擁有多少空間。如果你正使用一個 MFM
 	控制器來控制的老磁碟，你可能需要明白的告訴 FreeBSD 要使用多少個
	cylinders。

      <p>如果你想在磁碟上使用 FreeBSD 和另一個作業系統，你可能不需要
	disk manager：只要確定 FreeBSD 的啟動分割區跟其他作業系統的 
	slice 都位於開始的 1024 cylinders 內。如果你相當地小心，一個
	20 megabytes 的啟動分割區應該就夠了。

    <sect1>
      <heading>
	當我啟動 FreeBSD，我看到 ``Missing Operating System''
        <label id="missing_os">
      </heading>

      <p>這是一個典型的情形，有關 FreeBSD 以及 DOS 或其他在磁碟處理方法
	上有衝突的 OS <ref id="geometry" name="geometry.">。你需要重新
	安裝 FreeBSD，但是請遵照上面所提到的指令應該就可以了。

    <sect1>
      <heading>我看不到 boot manager 的 'F?' 提示號。</heading>

      <p>這是前一頁所描述問題的另一個徵兆。你的 BIOS geometry 和 FreeBSD
	的 geometry 設定不相同！如果你的控制器或 BIOS 支援 cylinders 
	translation (通常被標示成``&gt;1GB drive support'')，試著把這個
	設定打開然後重新安裝 FreeBSD。

    <sect1>
      <heading>
	我有 &gt;16MB RAM。這會導致任何問題嗎﹖<label id="bigram">
      </heading>

      <p>從效能的角度來看，不會。FreeBSD 2.X 內含 bounce buffers，這允許
	你的 bus mastering controller 存取超過 16MB。(注意如果你正使用
	ISA 裝置這應該是必需的，儘管一個或兩個更早的 EISA 和 VLB 裝置也
	可能需要它)。

      <p>也請參考 <ref id="reallybigram" name="&gt;64M machines"> 
	這節，假如你有這麼多記憶體，或你使用的是 Compaq 或是其他能處理
	這麼多有用記憶體的機器。

    <sect1>
      <heading>我需要安裝完整的原始程式(sources)嗎﹖</heading>

      <p>通常是不需要。然而，會強烈建議你至少安裝 ``<tt/base/'' 這個
	source kit，這包含數個這裡簡單描述過的檔案，還有 ``<tt/sys/''
	(kernel) source kit，這包含核心程式的 sources。系統裡面不需
	要有 sources 才能操作，然而，除了 kernel-configuration 程式
	<htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?config"
	name="config">以外。缺少核心的 sources，我們的建築架構是設定
	成讓你可以從別處如 NFS 來掛上唯獨的原始程式，因此還是可以製
	作新的 binaries。（因為 kernel-source 的限制，我們建議你不要
	直接把它掛在 <tt>/usr/src</tt> 下，最好用其他適合的符號性重
	複連結到 source tree 的上層架構。）

      <p>線上擁有 sources 並知道如何建立一個系統，將會讓你在升級今後
	FreeBSD 的 releases 版本更容易一點。

      <p>要實際的選擇 sources 的一個子集合，在你在系統安裝工具的
	Distributions 選單時，使用 Custom 選單項目。<tt>src/install.sh</tt>
	script 將會把 sources distribution 的部份安裝進去，主要是看
	你傳入哪些參數。

    <sect1>
      <heading>我需要建立一個核心嗎﹖</heading>

      <p>建立一個新的核心在 FreeBSD 安裝過程中是絕對必需的一個步驟。
	但新版 releases 帶來一個更友善的核心設定工具指令的好處。在
	FreeBSD 啟動提示號(boot:)時，使用 "-c" flag 你就會進入一個設
	定螢幕，這允許你做常見 ISA 卡的核心設定。

      <p>仍然建議你最後建立一個核心，只包含你需要的驅動程式，這是為了
	節省一點 RAM，但是對大多數的系統來說這卻不是嚴格的要求。

    <sect1>
      <heading>我不是住在美國，那我可以使用 DES 嗎﹖</heading>

      <p>如果對你來說使用 DES 格式的加密技術不是絕對需要的，你可以使
	用 FreeBSD 的內定加密技術，有<bf/更好/ 的安全性，並且沒有額外
	的限制。FreeBSD 2.0 的密碼現在使用內定的 <bf/MD5/-based 加以
	混合，要用自動破解密碼的程式去破解它，比起 DES 需要使用更多
	CPU 強化性以便用自動密碼破解器，它還允許更長的密碼。今日不使
	用 <bf/MD5/-based 加密技術的唯一理由是在 FreeBSD 和非 FreeBSD
	系統上使用相同的密碼項目。

      <p>因為 DES 加密演算法不能由 US 合法輸出到國外，非 US 使用者不
	應該從 US FTP 站台下載這個軟體(<tt/secrdist/的任一部份)。

      <p>然而另外還有個有效的 libcrypt，原始程式基本上由澳洲的
	David Burren 寫成。這個程式碼目前在某些非 US FreeBSD mirror
	站台上可以找到。這個沒有限制的 libcrypt 原始程式，以及使用它
	的 binaries 程式，可以在以下 FTP 站台獲得：

      <descrip>
        <tag/South Africa/
          <tt>ftp://ftp.internat.FreeBSD.org/pub/FreeBSD</tt><newline>
          <tt>ftp://storm.sea.uct.ac.za/pub/FreeBSD</tt>

        <tag/Brazil/
          <tt>ftp://ftp.iqm.unicamp.br/pub/FreeBSD</tt>

        <tag/Finland/
          <tt>ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt</tt>
      </descrip>

      <p>非 US 的 <tt/securedist/ 可以當限制性 US <tt/securedist/ 
	的完全替代。這個 <tt/securedist/ package 安裝方法跟 US 
	package 完全一樣(細節請參考安裝須知)。如果你要裝 DES 加密法
	你應該儘可能地在安裝其他軟體之前先裝好它，再裝其他軟體。

      <p>非 US 使用者請勿從 USA 下載任何加密軟體。這會導致站台的管理
	者因為被下載的軟體惹上數個法律性的困難。

      <p>一個非 US 的 Kerberos distribution 亦正在發展中，現行版本通
	常可由匿名 FTP <tt>braae.ru.ac.za</tt> 來獲得。

      <p>也有一個 <ref id="mailing" name="mailing list"> 專門用來討論
	非 US 加密軟體。欲獲得更多資訊，寄一封內含單獨一行訊息說
	``<tt/help/'' 的 email 給：

          <tt>&lt;majordomo@braae.ru.ac.za&gt;</tt>.

   <sect1>
    <heading>
	啟動軟碟開始讀了可是卻停在``Probing Devices...''螢幕。
    </heading>

    <p>如果你安裝了 IDE Zip 或 Jaz 裝置，移除它並重新試一遍。
	啟動軟碟片可能會被這些裝置混淆了。當系統安裝好以後你可以再
	把它接回來。希望這在之後的 release 版本可以被修正。

   <sect1>
    <heading>當我安裝好重新啟動系統後，我看到``panic: cant mount root'' 
	的錯誤訊息。
    </heading>

    <p>這個錯誤是因為啟動區塊跟核心程式對磁碟裝置的認知不相同。通常這個
	錯誤會出現在雙磁碟的 IDE 系統，硬碟放在 master，或是在分離的
	IDE 控制器上只有單一磁碟機，但是 FreeBSD 裝在 secondary IDE 上
        。當核心指定第二個磁碟控制器的第一個磁碟機 wd2 時，啟動 block 
        卻認為系統裝在 wd1(第二個 BIOS 磁碟機)。偵測完裝置後，核心程式
        試著把啟動 block 認為的啟動磁碟(wd1) mount 起來，事實上卻是 wd2
        ，所以失敗了。

    <p>要修正這個問題，以下幾種方法之一都可以解決：

    <enum>
     <item>當 Boot: 提示號出現時，輸入： <tt>1:wd(2,a)kernel</tt>
	然後按 Enter。如果系統開始了，就執行以下命令：
<verb>
echo "1:wd(2,a)kernel" > /boot.config
</verb>
     讓它變成內定的 boot string。
     <item>把 FreeBSD 磁碟機移到 primary IDE controller，因此硬碟機是
	連續的。
     <item><url url="../../handbook/kernelconfig.html" name="Rebuild
	your kernel,"> 修改有關 wd 設定的行數：

<verb>
controller      wdc0    at isa? port "IO_WD1" bio irq 14 vector wdintr
disk            wd0     at wdc0 drive 0
# disk            wd1     at wdc0 drive 1 # comment out this line

controller      wdc1    at isa? port "IO_WD2" bio irq 15 vector wdintr
disk            wd1     at wdc1 drive 0 # change from wd2 to wd1
disk            wd2     at wdc1 drive 1 # change from wd3 to wd2
</verb>

	安裝新的核心程式。
	如果你移動你的磁碟機，並希望把先前的設定恢復，只要把磁碟用預期
	的設定置換回來然後重新開機。你的系統應該就能成功的啟動。
    </enum>

   <sect1>
     <heading>記憶體的限制是什麼﹖</heading>
     
     <p>對記憶體來說，(理論上)限制是 4 gigabytes。1 gigabytes 已被測試
	過；一般你不可能買到可以支援超過這個數目的 i386 PC。

     <sect1>
     <heading>ffs 檔案系統的限制是什麼﹖</heading>
     
     <p>對 ffs filesystems 而言，最大理論值限制在 8 terabytes(2G blocks
	)，或當使用內定 8K block 大小時，限制是 16TB。還有，軟體限制是
	1 terabytes，但如果是經過修改的檔案系統上 4 terabytes 是可能(並
	且存在)的。

     <p>單一 ffs 檔案的大小最大是趨近 1G blocks(4TB) - 假如 block 大小是
	4K。

     <verb>
                           maxfilesize
                ----------------------------------
                2.2.7    3.0
fs block size   -stable  -current  works  should-work
-------------   -------  --------  -----  -----------
4K              4T-1       4T-1    4T-1   4+T
8K              32+G       8T-1    32+G   16T-1
16K             128+G      16T-1   128+G  32T-1
32K             512+G      32T-1   512+G  64T-1
64K             2048+G     64T-1   2048+G 128T-1
     </verb>

     <p>當 fs block 大小是 4K，triple indirect block 運作並且所有的事情
	都應該以表示成使用 triple indirect block 的最大 fs block 來作限
	制(近似於 1K^3 + 1K^2 + 1K)，但在 fs block 數目上卻有一個(錯誤)
	的 1G-1 限制。對 fs block 數目的限制應該是 2G-1。在 fs block 
	數目接近 2G-1 時有點錯誤，但當 fs block 大小是 4K 時這個 block
	數目是不能達到的。

     <p>block 大小如果是 8K 或更大，fs block 數目應該限制在 2G-1，但實
	際 fs block 數目卻限制在 1G-1，除了在 -stable 時 triple indirect
	blocks 是無法達到的，所以最多 fs block 數目的限制可以表示成用
	double indirect blocks(近似於(blocksize/4)^2 + (blocksize/4))
	，且在 -current 下超過這個限制可能會導致問題產生。使用正確的
	2G-1 block 限制的確會導致問題發生。

     <sect1>
     <heading>我該怎麼在軟碟上放入 1TB 檔案？</heading>

     <p>我自己就在軟碟片上放好幾個 :-)。檔案的最大容量事實上跟磁碟最大
 	的容量並沒有密切相關。磁碟的最大容量是 1TB，這是一個檔案大小可
	以超過磁碟容量的一個特色。

     <p>以下範例會在一個使用整個 32K 空間這樣小的 root partition 磁碟
	上建立一個大小是 8T-1 的檔案(3 indirect blocks and 1 data block
	)。dd 指令需要讓 dd 能在一個大檔案下執行。

<verb>
ttyv0:bde@alphplex:/tmp/q> cat foo
df .
dd if=/dev/zero of=z bs=1 seek=`echo 2^43 - 2 | bc` count=1
ls -l z
du z
df .
ttyv0:bde@alphplex:/tmp/q> sh foo
Filesystem  1024-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a         64479    27702    31619    47%    /
1+0 records in
1+0 records out
1 bytes transferred in 0.000187 secs (5346 bytes/sec)
-rw-r--r--  1 bde  bin  8796093022207 Sep  7 16:04 z
32	z
Filesystem  1024-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a         64479    27734    31587    47%    /
ttyv0:bde@alphplex:/tmp/q> exit
</verb>

<p>Bruce Evans, September 1998

  <sect1>
    <heading>在啟動新的 kernel 時，看到 "archsw.readin.faild" 這個錯誤訊息
    </heading>

    <p>在啟動 loader 之前會看到 "|" 這個符號在轉，這時可以按任何鍵中斷，然
    後再指定要載入那個 kernel。仔細來說，你已經更新 kernel 的原始碼、也用它
    做了新的 kernel，但卻 *沒有重新 make world*。我們不支援這麼做，請先
    make world，再更新 kernel。

  </sect>  

