CentOS增加/删除虚拟内存SWAP

首先确认是否添加过swap分区

为了防止出现任何以外,请先看一下内存中是否已经有swap:

free -m

一般情况下运行命令后会出现如下的内容:

total              used       free     shared    buffers     cached
Mem:               1840       1614     226       15          36       1340
-/+ buffers/cache:            238      1602
Swap:              0          0        0

如果你看到 Swap 分区中是0的话,那么就可以接着看第二步

如果不是的话说明你已经有了swap分区,你可以通过下面的命令查看swap文件:

swapon -s

第二步,创建Swap分区

swap空文件建议放到数据盘 /home 或 / 根目录

使用dd来创建一个空的swap文件(4G为例):

dd if=/dev/zero of=/swapfile bs=1G count=4

例如我将在/home分区里添加那么:

dd if=/dev/zero of=/home/swapfile bs=1G count=4

其中 dd 命令的内容可以按自己的需求修改:

if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。
cbs = byte 一次转换bytes字节。
count=blocks 只拷贝输入的blocks块。

然后你应该会看到如下的反馈:

2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s

然后我们来验证一下是否已经生成完成:

ls / | grep swapfile

第三步,激活Swap分区

Swap分区需要读写的权限,所以运行命令授权:

chmod 0600 /swapfile

查看授权是否成功:

ls -lh /swapfile

如果成功的话你可以看到如下反馈:

-rw------- 1 root root 4.0G Oct  2 18:47 /swapfile

然后挂载Swap分区:

mkswap /swapfile

你应该能看到如下的反馈:

Setting up swapspace version 1, size = 41944304 KiB
no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e

 

Step 4: 打开交换内存

完成之前的步骤之后你的swap分区已经可以使用了,现在只要打开它就好:

swapon /swapfile

这时候你可以用 free 命令再次查看Swap分区是否已经开始运行

free -m

total       used       free     shared    buffers     cached
Mem:          1840       1754         86         16         23       1519
-/+ buffers/cache:        210       1630
Swap:         2047          0       2047

如果 Swap 空间不是 0 就说明你成功了

第五步,开机启动设置

一般而言Swap是没有开机启动的,所以你需要编辑/etc/fstab 文件,我一般用 nano,你也可以用vi或者vim达到同样的效果

vi /etc/fstab

在末尾加上如下内容:

echo "/swapfile swap swap defaults    0  0" >> /etc/fstab
运维技巧

Linux下使用virsh指令批量关闭或开启KVM虚拟机

2021-7-2 11:18:43

运维技巧

CentOS下e2fsck修复下受损的硬盘文件命令详解

2021-7-2 13:42:26

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索