Linux交换空间
交换空间是什么
Linux 中的交换空间(Swap space)在物理内存(RAM)被充满时被使用。如果系统需要更多的内存资源,而物理内存已经充满,内存中不活跃的页就会被移到交换空间去。虽然交换空间可以为带有少量内存的机器提供帮助,但是这种方法不应该被当做是对内存的取代。交换空间位于硬盘驱动器上,它比进入物理内存要慢。
交换空间可以是一个专用的交换分区(推荐的方法),交换文件,或两者的组合。
增加SWAP分区
有时,你会有必要在安装后添加更多的交换空间。例如,你把系统内存从 64 MB 升级到 128 MB,但是你只有 128 MB 的交换内存。如果你执行的是大量使用内存的操作或运行需要大量内存的程序,把交换区增加到 256 MB 可能会对你有利。
你有两种选择:添加一个交换分区或添加一个交换文件。
推荐你添加一个交换分区,不过,若你没有多少空闲空间可用,创建交换分区可能会不大容易。
如果不使用LVM,那么可以使用下面的方法来增加swap分区
首先,新建一个空白文件:
dd if=/dev/zero of=/var/swapfile bs=1024 count=2097152
然后格式化成swap格式:
mkswap /var/swapfile
加载swap文件:
swapon /var/swapfile
编辑/etc/fstab,增加如下内容:
/var/swapfile none swap sw 0 0
然后查看一下:
#swapon -s Filename Type Size Used Priority /dev/sda2 partition 2008116 22940 -1 /var/swapfile file 2097144 2049384 -1
删除交换空间
删除交换分区
硬盘驱动器不能在被使用(分区不能被挂载,交换分区不能被启用)。要达到这一目的的最简单方法 是在救援模式下引导你的系统。请参阅第9章 来获得将系统引导入救援模式的说明。当提示挂载文件系统时,选择 「跳过」。
如果驱动器不包含任何被使用的分区,你还可以卸载这些分区,使用 swapoff 命令来关闭硬盘驱动器上的所有交换空间。
- 在 shell 提示下以根用户身份键入以下命令来确定交换分区已被禁用(这里的 /dev/hdb2 是交换分区):
swapoff /dev/hdb2
- 从 /etc/fstab 文件中删除这个项目。
- 使用 parted 或 fdisk 来删除分区。
删除交换文件
- 在 shell 提示下以根用户身份执行以下命令来禁用交换文件(这里的 /swapfile 是交换文件):
swapoff /swapfile
- 从 /etc/fstab 中删除该项目。
- 删除实际文件:
rm /swapfile
移动交换空间
要把交换空间从某处移到另一处,请首先遵循删除交换空间的说明,再遵循添加交换空间的说明。