【CentOS Stream 9】スワップ領域を作成する

この記事は約5分で読めます。

Linuxシステムで物理メモリが足りなくなったとき、スワップ領域があると役立ちます。
スワップ領域はディスク上の一部を仮想メモリとして使用することで、システムのメモリ容量を拡張します。
この記事はスワップ領域を作成する方法の覚え書きとなります。

スワップ領域の確認

まず、現在のスワップ領域の状況を確認します。
以下のコマンドを実行して、スワップ領域の情報を表示します。

Bash
free -h
              total        used        free      shared  buff/cache   available
Mem:          7.5Gi       1.9Gi       4.9Gi        28Mi       1.0Gi       5.6Gi
Swap:            0B          0B          0B

スワップファイルの作成

ddコマンドを使用して、スワップファイルを作成します。
このコマンドは、/dev/zeroからゼロバイトのデータを読み取り、/swapfileに書き込むことで、1GB(1024MB)のスワップファイルを作成します。
仮にスワップを2GB追加したい場合は、1024を2048(1024*2=2048MB)に変更します。

Bash
dd if=/dev/zero of=/swapfile bs=1M count=1024
1024+0 records in1024+0 records out1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.800713 s, 1.3 GB/s

スワップファイルのアクセス権の変更

スワップファイルのアクセス権限を変更します。
スワップファイルはセキュリティ上の理由から、他のユーザーにアクセスされないようにする必要があります。

Bash
chmod 600 /swapfile

スワップファイルをスワップ領域として設定

mkswapコマンドを使用して、スワップファイルをスワップ領域として設定します。

Bash
mkswap
/swapfileSetting up swapspace version 1, size = 1024 MiB (1073737728 bytes)no label, UUID=eb1ac6cf-9ef8-450d-b2ef-d15c0cf0b4b7

スワップファイルの有効化

作成したスワップファイルをシステムに有効化させるにはswaponコマンドを使用して、システムにスワップファイルを使用するように指定します。

Bash
swapon /swapfile

スワップファイルの永続化

システム起動時にスワップファイルが自動的に有効化されるように、/etc/fstabファイルにエントリを追加します。
スワップファイルが永続化できていないと、サーバを再起動した際などにメモリ不足に気づかずアプリのクラッシュやデータの損失などが発生する可能性があるので、必ず永続化させる必要があります。

Bash
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab/swapfile none swap sw 0 0

最終確認

新しく作成されたスワップ領域が正しく設定されているか、スワップ領域の情報を表示して確認します。

Bash
free -h
               total       used         free      shared  buff/cache   available
Mem:           7.5Gi      1.9Gi        3.6Gi        28Mi       2.3Gi       5.6Gi
Swap:          1.0Gi         0B        1.0Gi

これでスワップ領域が作成され、システムがスワップ領域を使用するように設定されました。
今回の操作によりシステムのメモリ容量が拡張され、より多くのアプリケーションやプロセスを同時に実行できるようになります。
設定は以上です。お疲れ様でした。

コメント

タイトルとURLをコピーしました