起因
在阿里云搞了台ECS,但是内存就1个G,操作总是悲剧的卡卡卡,于是就想着增加一点交换文件来缓解一下。
快速添加交换文件
step 1. 生成文件
先填充一个大文件,等会儿当做交换文件用:
1
|
dd if=/dev/zero of=/var/swap bs=1024 count=4096000
|
这里会稍微卡上一会儿,是dd在填充文件。
step 2. 格式化交换文件
将文件格式化为交换文件:
1
|
mkswap /var/swap
|
step 3. 加载交换文件
加载这个交换文件:
1
|
swapon /var/swap
|
同时将其设置为每次开机就挂载,在/etc/fstab追加一行:
1
|
/var/swap swap swap defaults 0 0
|
step 4. 测试是否加载成功
搞一个吃内存的小脚本执行一下来测试是否使用到的交换文件:
1
2
3
4
5
6
7
8
|
#!/bin/bash
mkdir
/tmp/memory
mount
-t tmpfs -o size=1024M tmpfs
/tmp/memory
dd
if
=
/dev/zero
of=
/tmp/memory/block
sleep
3600
rm
/tmp/memory/block
umount
/tmp/memory
rmdir
/tmp/memory
|
根据自己的情况调整size=1024M,不然很可能一不小心就把系统搞挂了…
查看内存,交换文件被使用,说明交换文件已经加载成功了:
相关命令详解
mkswap
用于将一个文件或分区格式化为交换文件格式。
swapon
查看当前加载的交换文件信息:
1
|
swapon -s
|
等价于:
1
|
cat /proc/swaps
|
swapoff
使用swapoff来卸载已经挂载的交换文件,卸载的同时将/etc/fstab中对应的挂载项删除。
1
|
swapoff /var/swap
|