Ubuntu Server 22.04.1 LTSにswap領域を追加する手順です。
swap領域を追加方法
VPSって月額料金が安めのプランを選ぶと、メモリサイズが1Gぐらいになってしまいます。
この場合swapのサイズもメモリサイズの倍ぐらいで設定されていて、場合よってはswapが足りなくなってしまうことが有ります。
そこで、今回はswap領域用のファイルを作成し、それをswap領域として追加する方法を説明していきます。
ちなみに私が使用しているConoHaのVPSメモリ1Gプラン(Ubuntu 22.04.1 LTS)の場合は、初期のswapサイズは2Gに設定されていました。
$ free -m total used free shared buff/cache available Mem: 969 544 69 12 354 258 Swap: 2047 633 1414
swapon -sコマンドで確認してみると、/swap.imgというファイルをswap領域として使用しているようですね。
$ swapon -s Filename Type Size Used Priority /swap.img file 2097148 65356 -2
swap用のファイル作成
まずは、ddコマンドを使用してswap用のファイルを作成します。
今回は「/」ディレクトリに「swaparea」という名前で、2Gのファイルを作成していきます。
$ sudo dd if=/dev/zero of=/swaparea bs=1M count=2048 $ sudo chmod 600 /swaparea
既存のファイルと重複しなければ作成するファイル名は特に決まりがないので、お好きなファイル名を設定してもらっても問題ありません。
作成するファイルのサイズは、bsでブロックサイズを1M、countでブロック数を2048と指定して2Gのファイルを作成しています。
count部分の数字を変更することで、作成するファイルのサイズを変更することができます。
swap用ファイルに変換
mkswapコマンドでswap領域として使用できる形式に変換します。
$ sudo mkswap /swaparea
swap領域としてマウント
swaponコマンドでswap領域としてマウントします。
$ sudo swapon /swaparea
swap領域の確認
最後にswap領域が増えていることをfreeコマンドやswapon -sコマンドで確認してください。
freeコマンドで確認
はじめは2Gだったswap領域のサイズが4Gに増えています。
$ free -m total used free shared buff/cache available Mem: 969 539 77 12 352 263 Swap: 4095 634 3461
swapon -sコマンドで確認
swapareaファイルがswapとして認識されていることが確認できます。
$ swapon -s Filename Type Size Used Priority /swap.img file 2097148 271804 -2 /swaparea file 2097148 0 -3
サーバ起動時にswap領域をマウントさせる方法
サーバ起動時にswap領域としてファイルをマウントさせるために、/etc/fstabを編集していきます。
$ sudo vi /etc/fstab
追加する設定は下記のとおりとなります。
/swaparea none swap sw 0 0
サーバを再起動して、swap領域が追加されることを確認してください。
$ sudo reboot
追加したswapファイルの無効化
追加したswapファイルを直ぐに無効化したい場合はswapoffコマンドを使用します。
$ sudo swapoff /swaparea
freeコマンドで確認すると、swapのサイズが減って初期設定のサイズに戻っていることが確認できます。
$ free -m total used free shared buff/cache available Mem: 969 723 72 12 172 85 Swap: 2047 309 1738
swapon -sコマンドで確認すると、/swapareaファイルがswapとしてマウントされていないことが確認できます。
$ swapon -s Filename Type Size Used Priority /swap.img file 2097148 317372 -2
fstabの編集
/ets/fstabを編集してある場合は、追加した設定を削除するなりコメント化するなりしてください。
設定を変更したあとにサーバを再起動して、swap領域の確認を行ってください。
コメント