在 Sun 计算机上安装扩展存储器后,需要增加交换空间。SUN 建议将交换空间设置为存储容量的两倍。- 如果不想重新加载整个软件,在 Solaris 2.x 系统上请使用下列程序:

以“root”身份登录,针对以下选项使用“swap”命令:

# swap -s [ show the actual swap space and its usage ] 
total:17888k bytes allocated + 10560k reserved = 28448k used,55804k available
# swap -l [ list all presently used swap space ] 
swapfile dev swaplo blocks free
/dev/dsk/c0t3d0s1 32,25 8 132592 115800
# swap -a [ add new swap space ]

为此,需要首先找出能够增加扩展交换空间的位置。使用 "df -ak" 命令显示文件系统:

# df -ak
Filesystem kbytes 旧的 avail capacity Mounted on
/dev/dsk/c0t3d0s0 17063 9885 5478 64% /
/dev/dsk/c0t3d0s6 373502 144266 191886 43% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
/dev/dsk/c0t3d0s4 28823 2092 23851 8% /var
swap 53776 20 53756 0% /tmp
/dev/dsk/c0t0d0s2 963662 306875 560427 35% /export/home
/dev/dsk/c0t3d0s5 8383 6129 1424 81% /opt
-hosts 0 0 0 0% /net
auto_home 0 0 0 0% /home
g2000:vold(pid167) 0 0 0 0% /vp¤
#

我们适当使用了 /export/home 的一些空间,结果导致您的主目录 (/export/home/vnmr1) 减少了相等的容量。在这一特定的示例中,还可使用 /usr 的一部分,因为仍然拥有 191886 kbyte 的可用空间,即使将来扩展,也不可能使用那么大的空间。

我们首先必须创建新的交换文件,这里将其称为 'swapexpand',并针对该文件使用命令 'mkfile'(10m 意味着我们占用 10 MB):

# mkfile -v 10m /export/home/swapexpand
/export/home/swapexpand 10485760 bytes

Do "df -ak" again to see how much is left in /export/home.

# df -ak
Filesystem kbytes 旧的 avail capacity Mounted on
/dev/dsk/c0t3d0s0 17063 9885 5478 64% /
/dev/dsk/c0t3d0s6 373502 144266 191886 43% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
/dev/dsk/c0t3d0s4 28823 2092 23851 8% /var
swap 53744 20 53724 0% /tmp
/dev/dsk/c0t0d0s2 963662 317124 550178 37% /export/home
/dev/dsk/c0t3d0s5 8383 6129 1424 81% /opt
-hosts 0 0 0 0% /net
auto_home 0 0 0 0% /home
g2000:vold(pid167) 0 0 0 0% /vol
#

现在需要激活该交换文件:使用

# swap -a /export/home/swapexpand

并再次运行:

#swap -1
swapfile dev swaplo blocks 免费
/dev/dsk/c0t3d0s1 32,25 8 131592 115800
/export/home/swapexpand - 8 20472 20472

Swapexpand has now become the new swap space expansion. However,this is now available only until the next boot. To make it available permanently, you need to make a new entry in vfstab:

# more /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type 合格 at boot 选件
#
#/dev/dsk/c1d0s2 /dev/rdsk/c1d0s2 /usr ufs 1 -
/proc - /proc proc - -
fd - /dev/fd fd - -
swap - /tmp tmpfs - -
/dev/dsk/c0t3d0s0 /dev/rdsk/c0t3d0s0 / ufs 1 -
/dev/dsk/c0t3d0s6 /dev/rdsk/c0t3d0s6 /usr ufs 2 -
/dev/dsk/c0t3d0s4 /dev/rdsk/c0t3d0s4 /var ufs 4 -
/dev/dsk/c0t0d0s2 /dev/rdsk/c0t0d0s2 /export/home ufs 5 -
/dev/dsk/c0t3d0s5 /dev/rdsk/c0t3d0s5 /opt ufs 6 -
/dev/dsk/c0t3d0s1 - - swap - -
#

在该文件中添加一行:键入 'vi /etc/vfstab' 并添加:

/export/home/swapexpand    -    -    swap    -    no   -

Note: there are 7 entries per line! After rebooting the new swap space is available permanently.- If you lateron want to delete the swap expansion again, use:

# swap -d /export/home/swapexpand