Frequently Asked Questions for FreeBSD 2.X : 系統管理 : 我如何能加入更多的置換空間(swap space)﹖
Previous: 一個所謂``危險奉獻(dangerously dedicated)''的磁碟有害嗎﹖
Next: 我不會設定我的印表機。

8.11. 我如何能加入更多的置換空間(swap space)﹖

最好的方法是增加你 swap 分割區的大小,或利用這個方便理由的好處去 增加另一個硬碟。慣例算法是用主記憶體的兩倍當置換空間(swap space) ,然而如果你只有很少量的主記憶體,你可能想另外設定 swap。設定足夠 的置換空間,並為以後記憶體擴充預作準備可能是個好主意,這樣以後就 不需要再做一次置換空間的設定。

在分散的磁碟上增加置換空間會比單純地在同一個磁碟加入置換空間 讓效率來的快一點。舉一個例子來說,如果你正在一個磁碟裡編譯來 源程式,而置換空間在另一個磁碟,這會比置換空間跟編譯程式都在 同一個磁碟時來得快。這對 SCSI 磁碟機特別正確。

當你有好幾個磁碟機時,在每個磁碟上設定一個 swap 分割區是有 利的,甚至最後使用一整個磁碟機當置換空間。一般來說,每個系統 上的快速磁碟都應設定某些 swap,FreeBSD 內定支援最多四個交錯式 swap 裝置。通常設定多重 swap 分割區時你會想讓它們都使用同樣大 小,但有時我們會想讓主要 swap 分割區(primary swap partition) 更大一點以容納核心程式的 core dump。你的 primary swap partition 至少必須和主記憶體一樣大,以能容納一個 kernel core。

IDE 磁碟並不允許同時在同一通道裡存取兩個裝置(FreeBSD 不支援 mode 4,因此所有的 IDE 磁碟 I/O 是``可程式化的'')。然而我仍 會建議你把置換空間放在分別的磁碟。磁碟機這麼便宜,實在沒什麼 好擔心的。

在 NFS 上做置換僅在以下情形被建議使用:你沒有自己的磁碟可 以使用。FreeBSD 4.0 以前 release 的版本在 NFS 上做置換是相當 緩慢而無效率的,但在等於 4.0 或之後的 release 版本就有合理的 速度了。即使如此,還是受到網路有效頻寬和在 NFS server 上額外 裝載的限制。

這裡有個範例是用 64MB vn-swap (/usr/swap0,當然你能用 任何你想用的名字)。

確定你的核心程式建立時有包含以下這行:

        pseudo-device   vn 1   #Vnode driver (turns a file into a device)
      

在你的設定檔中。GENERIC 這個核心已經包含這項了。

  1. 建立一個 vn-device
              cd /dev
              sh ./MAKEDEV vn0
            
    
  2. 建立一個置換檔 (/usr/swap0)
              dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
            
    
  3. /etc/rc.conf 中啟動置換檔
              swapfile="/usr/swap0"   # Set to name of swapfile if aux swapfile desired.
            
    
  4. 重新開機。

要馬上啟動置換檔,鍵入:

        vnconfig -ce /dev/vn0c /usr/swap0 swap
      


Frequently Asked Questions for FreeBSD 2.X : 系統管理 : 我如何能加入更多的置換空間(swap space)﹖
Previous: 一個所謂``危險奉獻(dangerously dedicated)''的磁碟有害嗎﹖
Next: 我不會設定我的印表機。