FreeBSD管理交換設備

【FreeBSD管理交換設備】1 2 下一頁
在FreeBSD系統中,交換設備的作用非常大,需要為FreeBSD留下足夠的交換空間 。在系統負載非常大的時候,交換空間不夠也會影響系統的執行進程 。通常應該將系統交換空間的大小設置為物理內存的1-2.5倍 。由于交換空間是用作虛擬存儲器,和物理內存進行交換數據的,因此應該設置到高速硬盤上,或者將交換空間分布到多個硬盤中,以均衡負載 。FreeBSD是以交錯的方式使用各個不同的交換分區,因此如果在不同的硬盤上分布交換分區,就能提高交換設備的存取速度 。通常FreeBSD使用disklabel為b的設備用做交換設備,在系統運行過程中可以為FreeBSD 增加其他磁盤上的交換設備,或者使用文件用做交換 。要增加交換設備,首先要沿著上面的過程創建一個新的disklabel,按照習慣做法,使用b作交換空間的 disklabel 。再修改/etc/fstab文件,加入一行有關這個交換設備的描述 ?;蛘呤褂胹wapon立即使分配的交換空間生效 。
如果要使用文件來用做交換空間,首先要在系統中產生一個用作交換的文件,然后更改/etc/rc.conf,將swapfile參數指向這個文件即可 。
# dd if=/dev/zero of=swapfile bs=10240 count=1024事實上,交換文件要首先映射為偽存儲設備vn,然后才能安裝到系統中的 。因此要使用交換文件,就需要內核支持偽存儲設備vn,缺省內核支持一個vn設備vn0 ??梢灾苯釉L問這個偽存儲設備,手工完成增加交換文件的工作 。首先要將交換文件和偽設備相聯系,然后就能像處理真實設備一樣處理這個偽設備了 。將文件和偽設備聯系起來需要使用vncon fig命令 。
# vnconfig /dev/vn0c swapfile
# vnconfig -u /dev/vn0c可以再次使用使用-u參數的vnconfig將已經與文件相聯系的偽存儲設備,脫離與現有文件的聯系,首先要求這個偽設備不被系統使用,如vn0c沒有用作交換設備或已經從系統中卸載了 。通過在vnconfig命令中使用-e 參數,就可以直接使用vnconfig加入交換,而沒有必要再次使用swapon命令:
# vnconfig -e /dev/vn0c swapfile swap偽存儲設備的用處不止用于交換文件,也可以用來安裝虛擬文件系統 。因此就可以使用它來管理軟盤或光盤的鏡象文件 。
# dd if=/dev/rfd0 of=imgfile
# vnconfig vn0c imgfile
# mount -t msDos /dev/vn0c /mnt如果不是象上面例子那樣從軟盤中生成的鏡象文件,而是而是要重新建立文件系統,那么需要注意的是磁盤的類型 。由于偽設備的大小是由生成的文件決定的,那么這個偽設備對應的磁盤種類顯然不是標準磁盤種類,系統顯然也無法從偽設備中檢測到磁盤類型,因此在生成磁盤的disklabel和進行newfs格式化時就需要指定磁盤類型 。一般由于鏡象文件的大小與標準磁盤數據對應的大小不一定一致,那么為了充分利用偽設備的大小,就需要在/etc/disktab中生成新磁盤類型的數據 。

    推薦閱讀