二度忘れた事を三度忘れないようにする

しがないフリーランスIT系エンジニア

CentOS 7 でswap領域を追加する

AWSで小さいインスタンスを使っていると、updateなり一時的作業なりでメモリ不足のエラーが出ることがままあるのでそういう時用に。

参考

dev.classmethod.jp

#!/bin/sh

SWAPFILENAME=/swap.img
MEMSIZE=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`

if [ $MEMSIZE -lt 2097152 ]; then
        COUNT=$[${MEMSIZE} / 512]
elif [ $MEMSIZE -lt 8388608 ]; then
        COUNT=$[${MEMSIZE} / 1024]
elif [ $MEMSIZE -lt 67108864 ]; then
        COUNT=$[${MEMSIZE} / 2048]
else
        COUNT=4096
fi

dd if=/dev/zero of=${SWAPFILENAME} bs=1M count=${COUNT} && chmod 600 ${SWAPFILENAME} && mkswap ${SWAPFILENAME} && swapon ${SWAPFILENAME}

CentOS7の場合、ddコマンドでファイルを作る必要がるので、その辺を弄ったスクリプト担ってます。