ä¸è¦å²ç¬æåçæ§
目次:
スワップは、物理RAMメモリの容量がいっぱいになったときに使用されるディスク上のスペースです。 LinuxシステムのRAMが不足すると、非アクティブなページがRAMからスワップスペースに移動します。
スワップ空間は、専用のスワップパーティションまたはスワップファイルのいずれかの形式をとることができます。 ほとんどの場合、仮想マシンでLinuxを実行する場合、スワップパーティションは存在しないため、唯一のオプションはスワップファイルを作成することです。
このチュートリアルは、Ubuntu 18.04およびCentOS 7を搭載したLinuxシステムでテストされましたが、他のLinuxディストリビューションでも動作するはずです。
スワップファイルを追加する方法
次の手順に従って、サーバーに1GBのスワップを追加します。 1 GBではなく2 GBを追加する場合は、
1G
を
2G
に置き換えます。
-
スワップに使用されるファイルを作成します。
sudo fallocate -l 1G /swapfile
faillocate
がインストールされていない場合、またはfallocate failed: Operation not supported
示すエラーメッセージが表示される場合は、次のコマンドを使用してスワップファイルを作成できます。sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
正しい許可を設定してください。
スワップファイルを読み書きできるのは、rootユーザーのみです。 正しい許可タイプを設定するには:
sudo chmod 600 /swapfile
Linuxスワップ領域をセットアップします。
mkswap
ユーティリティを使用して、ファイルをLinuxスワップ領域として設定します。sudo mkswap /swapfile
スワップを有効にします。
次のコマンドでスワップファイルをアクティブにします。
sudo swapon /swapfile
変更を永続的にするには、
/ etc / fstab/etc/fstab
ファイルを開き、次の行を追加します。/swapfile swap swap defaults 0 0
スワップステータスを確認します。
スワップがアクティブであることを確認するには、以下に示すように、
swapon
またはfree
コマンドを使用できます。sudo swapon --show
NAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1
sudo free -h
total used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M
swappiness値を調整する方法
Swappinessは、システムがスワップスペースを使用する頻度を定義するLinuxカーネルプロパティです。 Swappinessの値は0〜100です。値を小さくすると、カーネルは可能な限りスワッピングを回避しようとしますが、値を大きくすると、カーネルはスワップスペースをより積極的に使用します。
デフォルトのswappiness値は60です。現在のswappiness値を確認するには、次のコマンドを入力します。
cat /proc/sys/vm/swappiness
60
60のswappiness値はほとんどのLinuxシステムでは問題ありませんが、実稼働サーバーではより低い値を設定する必要がある場合があります。
たとえば、swappiness値を10に設定するには、次のように入力します。
sudo sysctl vm.swappiness=10
このパラメーターを再起動後も持続させるには、次の行を
/etc/sysctl.conf
ファイルに追加します。
vm.swappiness=10
最適な交換可能性の値は、システムのワークロードとメモリの使用方法によって異なります。 最適な値を見つけるには、このパラメーターを少しずつ調整する必要があります。
スワップファイルを削除する方法
何らかの理由でスワップファイルを無効にして削除する場合は、次の手順を実行します。
-
まず、次のように入力してスワップを無効にします。
sudo swapoff -v /swapfile
/etc/fstab
ファイルからスワップファイルエントリ/swapfile swap swap defaults 0 0
を削除します。最後に、
rm
コマンドを使用して実際のスワップファイルを削除します。sudo rm /swapfile
結論
Linuxシステムでスワップファイルを作成し、スワップスペースをアクティブにして構成する方法を学習しました。
交換ラム