sword

linux系统swap虚拟内存添加与删除配置
前言最近剁手了一个5刀年付的KVM机器,但是内存只有128M,随便跑个命令就不下来,于是想到通过增加SWAP来增强...
扫描右侧二维码阅读全文
11
2018/08

linux系统swap虚拟内存添加与删除配置

前言

最近剁手了一个5刀年付的KVM机器,但是内存只有128M,随便跑个命令就不下来,于是想到通过增加SWAP来增强一下。
SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的。它类似于Windows中的虚拟内存。在Windows中,只可以使用文件来当作虚拟内存。而linux可以文件或者分区来当作虚拟内存。SWAP的值都是安装系统的时候设置好的,一般设置为内存的两倍大小,使用过程中发现过小可以自行添加,但是不支持openVZ的机器。

查看SWAP分区信息

1、首先查看当前的内存和swap 空间大小(默认单位为k, -m 单位为M):

free -m

请输入图片描述

此处可以看到总内存是112M,SWAP为127M

2、查看swap信息,包括文件和分区的详细信息

swapon -s
或cat /proc/swaps

请输入图片描述

添加SWAP交换文件

添加交换空间有两种选择:添加一个交换分区或添加一个交换文件。建议添加交换文件,简单方便

一、增加swap交换文件
1、使用dd命令创建一个swap交换文件

dd if=/dev/zero of=/home/swap bs=1024 count=129000

这样就在/home/swap建立了一个分区文件,大小为129M。

2、制作为swap格式文件:

mkswap -f /home/swap

3、再用swapon命令把这个文件分区挂载swap分区

/sbin/swapon /home/swap

我们用free -m命令看一下,发现已经有交换分区了。
请输入图片描述
但是重启系统后,swap分区又变成0了

4、为防止重启后swap分区变成0,要修改/etc/fstab文件

vi /etc/fstab

在文件末尾(最后一行)加上

/home/swap swap swap default 0 0

这样重启系统后,swap分区值就不会清零了

二、删除swap交换文件

1、先停止swap分区

/sbin/swapoff /home/swap

2、删除swap分区文件

rm -rf /home/swap

3、删除自动挂载配置命令

vi /etc/fstab

删除这行

/home/swap swap swap default 0 0

这样就能把手动增加的交换文件删除了。
注意:
a、增加删除swap的操作只能使用root用户来操作。
b、装系统时分配的swap分区貌似删除不了。
c、swap分区一般为内存的2倍,但最大不超过2G

添加SWAP交换分区

一、使用分区来做SWAP(虚拟内存)
1、使用fdisk来创建交换分区(假设 /dev/sdb3 是创建的交换分区,自行百度如何分区)
2、使用 mkswap 命令来设置交换分区:

mkswap /dev/sdb3

3、启用交换分区:

swapon /dev/sdb3

4、写入/etc/fstab,以便在引导时启用:

/dev/sdb3 swap swap defaults 0 0

二、删除交换分区

1、先停止swap分区

/sbin/swapoff /dev/sdb3

2、删除自动挂载配置命令

vi /etc/fstab

删除这行

/dev/sdb3 swap swap defaults 0 0

这样就能把手动增加的交换分区删除了

Last modification:August 19th, 2018 at 04:27 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment