精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>网络书籍>>《FreeBSD使用大全》>>FreeBSD连载(21):管理交换设备

主题:FreeBSD连载(21):管理交换设备
发信人: Hopper()
整理人: hahalee(2000-02-28 20:01:29), 站内信件
http://www.sina.com.cn 1999年11月23日 13:03 王波

管理交换设备
  在FreeBSD系统中,交换设备的作用非常大,需要为FreeBSD留下足够的交换
空间。在系统负载非常大的时候,交换空间不够也会影响系统的执行进程。通常
应该将系统交换空间的大小设置为物理内存的1-2.5倍。由于交换空间是用作虚拟
存储器,和物理内存进行交换数据的,因此应该设置到高速硬盘上,或者将交换
空间分布到多个硬盘中,以均衡负载。FreeBSD是以交错的方式使用各个不同的交
换分区,因此如果在不同的硬盘上分布交换分区,就能提高交换设备的存取速度
。通常FreeBSD使用disklabel为b的设备用做交换设备,在系统运行过程中可以为
FreeBSD 增加其他磁盘上的交换设备,或者使用文件用做交换。

  要增加交换设备,首先要沿着上面的过程创建一个新的disklabel,按照习惯
做法,使用b作交换空间的 disklabel。再修改/etc/fstab文件,加入一行有关这
个交换设备的描述。或者使用swapon立即使分配的交换空间生效。

  如果要使用文件来用做交换空间,首先要在系统中产生一个用作交换的文件
,然后更改/etc/rc.conf,将swapfile参数指向这个文件即可。 

# dd  if=/dev/zero of=swapfile bs=10240 count=1024
 
 

  事实上,交换文件要首先映射为伪存储设备vn,然后才能安装到系统中的。
因此要使用交换文件,就需要内核支持伪存储设备vn,缺省内核支持一个vn设备
vn0。可以直接访问这个伪存储设备,手工完成增加交换文件的工作。首先要将交
换文件和伪设备相联系,然后就能像处理真实设备一样处理这个伪设备了。将文
件和伪设备联系起来需要使用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中生成新磁盘类
型的数据。 

# vnconfig /dev/vn0c imgfile
# disklabel -r -w vn0 fd1440
# newfs -T fd1440 vn0c
# mount /dev/vn0c /mnt

 
 

未完,待续。。。  



--
小多子:你知道我们佟家百年不衰的道理么?
        那就是,不要一条路走到黑!

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.190.123]

[关闭][返回]