スワップは、システムRAMがいっぱいになったときに使用されるディスク上の物理スペースです。システムのメモリ使用量が使用可能なRAMを超えると、カーネルはアイドル状態のページをスワップメモリに移動します。スワップスペースは、別のパーティションまたはスワップファイルに作成できます。サーバーがVPSで実行されていて、スワップパーティションが存在しない場合は、スワップファイルを作成する必要があります。
この投稿では、Linuxでスワップスペースを作成および管理する方法を示します。
前提条件
- Atlantic.Netクラウドプラットフォーム上の新しいUbuntu/CentOSサーバー
- サーバーで構成されているrootパスワード
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてUbuntu/CentOSを選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
Ubuntu / CentOSサーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
apt-get update -y
または
yum update -y
ステップ2–スワップパーティションを確認する
開始する前に、システムでスワップが有効になっているかどうかを確認する必要があります。
次のコマンドで確認できます:
swapon --show
出力が空の場合は、システムでアクティブなスワップスペースがないことを意味します。
ステップ3–スワップファイルを作成する
ご覧のとおり、システムでアクティブなスワップスペースはありません。そのため、システムに新しいスワップファイルを作成する必要があります。
まず、次のコマンドを使用して、サイズ4GBのスワップファイルを作成します。
dd if=/dev/zero of=/swapfile bs=4096 count=1048576
次の出力が表示されます。
1048576+0 records in 1048576+0 records out 4294967296 bytes (4.3 GB, 4.0 GiB) copied, 9.47796 s, 453 MB/s
次に、次のコマンドを使用して、swapfileに正しい権限を設定します。
chmod 600 /swapfile
次に、次のコマンドを使用して、スワップファイルにスワップ領域を作成します。
mkswap /swapfile
出力:
Setting up swapspace version 1, size = 4 GiB (4294963200 bytes) no label, UUID=035ada64-2c1a-407d-9f1a-c0dd02b8dcd4
次に、次のコマンドを使用してスワップスペースをアクティブにします。
swapon /swapfile
上記のコマンドは、スワップスペースを一時的にアクティブにします。
永続的に設定するには、/ etc/fstabファイルを編集します。
nano /etc/fstab
次の行を追加します:
/swapfile swap swap defaults 0 0
Save and close the file then verify the swap partition with the following command:
swapon --show
次の出力が表示されます。
NAME TYPE SIZE USED PRIO /swapfile file 4G 0B -2
ステップ4–スワップの使用状況を確認する
スワップの使用情報を確認するには、次のコマンドを実行します。
free -m
次の出力が表示されます。
total used free shared buff/cache available Mem: 1987 74 69 0 1843 1745 Swap: 4095 0 4095
次のコマンドで確認することもできます:
cat /proc/swaps
次の出力が表示されます。
Filename Type Size Used Priority /swapfile file 4194300 0 -2
topコマンドを使用して、スワップの使用状況をリアルタイムで確認することもできます。
top
次の出力が表示されます。
Tasks: 84 total, 1 running, 83 sleeping, 0 stopped, 0 zombie %Cpu(s): 5.9 us, 5.9 sy, 0.0 ni, 88.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 1987.7 total, 68.0 free, 74.8 used, 1844.9 buff/cache MiB Swap: 4096.0 total, 4096.0 free, 0.0 used. 1745.5 avail Mem
vmstatコマンドを使用して、スワップの使用状況を確認することもできます。
vmstat 2 6
次の出力が表示されます。
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 3 0 0 69356 12096 1877228 0 0 35 652 31 59 0 0 99 0 0 0 0 0 69420 12096 1877228 0 0 0 0 24 42 0 0 100 0 0 0 0 0 69388 12096 1877228 0 0 0 0 22 40 0 0 100 0 0
ステップ5–スワップスペースを削除する
スワップスペースを削除するには、最初にスワップスペースを非アクティブ化する必要があります。次のコマンドで実行できます:
swapoff -v /swapfile
次に、/ etc / fstabファイルを編集して、次の行を削除します。
nano /etc/fstab
次の行を削除します:
/swapfile swap swap defaults 0 0
次に、次のコマンドを使用してスワップファイルを削除します。
rm -rf /swapfile
次に、次のコマンドを使用して、スワップスペースが削除されているかどうかを確認します。
swapon --show
結論
上記のガイドでは、Linuxでスワップスペースを確認および作成する方法を学習しました。また、さまざまなコマンドを使用してスワップスペースを監視する方法も学習しました。 Atlantic.NetのVPSを今すぐ始めましょう。