640 lines
		
	
	
	
		
			23 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			640 lines
		
	
	
	
		
			23 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| <!-- $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 (這通常稱之為"對>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 (通常被標示成``>1GB drive support''),試著把這個
 | ||
| 	設定打開然後重新安裝 FreeBSD。
 | ||
| 
 | ||
|     <sect1>
 | ||
|       <heading>
 | ||
| 	我有 >16MB RAM。這會導致任何問題嗎﹖<label id="bigram">
 | ||
|       </heading>
 | ||
| 
 | ||
|       <p>從效能的角度來看,不會。FreeBSD 2.X 內含 bounce buffers,這允許
 | ||
| 	你的 bus mastering controller 存取超過 16MB。(注意如果你正使用
 | ||
| 	ISA 裝置這應該是必需的,儘管一個或兩個更早的 EISA 和 VLB 裝置也
 | ||
| 	可能需要它)。
 | ||
| 
 | ||
|       <p>也請參考 <ref id="reallybigram" name=">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><majordomo@braae.ru.ac.za></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>  
 | ||
| 
 |