banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

[Linux]创建和启用Swap交换区

如果你的服务器的总是报告内存不足,并且时常因为内存不足而引发服务被强制 kill 的话,在不增加物理内存的情况下,启用 swap 交换区作为虚拟内存是一个不错的选择,我购买的 DigitalOcean VPS 512M 内存基本不够用的,好在 VPS 的母鸡使用的 SSD,正常读写速度都在 300MB/s 以上,启用 swap 后性能提高了不少,特别是在处理消耗大内存的脚本方面

创建交换区原则: 1. 创建的 swap 交换区大小应该大于实际物理内存的容量大小,但是不要过大,以免造成硬盘空间浪费。 2. 如果内存 IO 请求频繁,而单一 swap 交换区 IO 队列等待时间过长的话,可以多创建几个 swap 交换区。 3. 原则上优先在 IO 速度最快的设备上创建。 创建步骤: 1. 创建 swap 交换区硬盘存储用的空白文件。

#创建一个 1 个 G 的 SWAP 交换区空白文件
dd if=/dev/zero of=/swap bs=1M count=1024

通常创建物理内存 2~2.5 倍大小的文件作为交换区。

2. 使用 mkswap 格式化文件为 swap 文件系统

mkswap -f /swap
#-f 使用文件作为 swap 交换区

3. 启用刚才创建的 Swap 文件

swapon /swap

4. 如果有必要可以设置开机自动启用 swap 文件交换区,修改 /etc/fstab,增加一行

/swap swap swap defaults 0 0 #启动即启用 swap

5. 如果不需要启用 swap 或需要调整 swap 大小,可以使用 swapoff 命令关闭 swap。

swapoff /swap

关闭 swap 后删除对应的 swap 文件即可删除 swap 交换区,如需要调整 swap 交换区大小,从第一部开始重新创建即可。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。