ウェブサイト検索

Ubuntu Linuxでスワップメモリを増やす方法


アプリケーションのメモリ不足の問題を監視する最も簡単な方法の 1 つは、サーバーのスワップ サイズを増やすことです。この記事では、 スワップ ファイルをUbuntuサーバーに追加する方法を説明します。

ステップ 1: スワップ情報の確認

始める前に、次の swapon コマンドを実行して、 システムに利用可能なスワップ スペースがすでにあるかどうかを確認してください。

sudo swapon --show

出力が表示されない場合は、現在システムに利用可能なスワップ領域がないことを意味します。

また、free コマンドを使用して、使用可能なスワップ領域がないことを確認することもできます。

free -h

上記の出力から、システム上にアクティブなスワップがないことがわかります。

ステップ 2: パーティション上の利用可能なスペースを確認する

スワップ スペースを作成するには、まず現在のディスク使用状況をチェックし、システム上にスワップ ファイルを作成するのに十分なスペースがあることを確認する必要があります。

df -h

/ を含むパーティションには、スワップ ファイルを作成するのに十分な空き領域があります。

ステップ 3: Ubuntu でスワップ ファイルを作成する

ここで、fallocate コマンドを使用して、Ubuntu root (/) ディレクトリに "swap.img" という名前のスワップ ファイルを作成します。サイズは次のとおりです。 1GB (必要に応じてサイズを調整できます) に設定し、次のように ls コマンドを使用してスワップのサイズを確認します。

sudo fallocate -l 1G /swap.img
ls -lh /swap.img

上記の出力から、正しい容量、つまり1 GB のスワップ ファイルが作成されたことがわかります。

ステップ 4: Ubuntu でスワップ ファイルを有効にする

Ubuntu でスワップ ファイルを有効にするには、まずファイルに正しいアクセス許可を設定して、root ユーザーのみがファイルにアクセスできるようにする必要があります。

sudo chmod 600 /swap.img
ls -lh /swap.img

上記の出力から、root ユーザーのみが読み取りおよび書き込み権限を持っていることがわかります。

次に、次のコマンドを実行してファイルをスワップ領域としてマークし、スワップ ファイルがシステム上で利用できるようにします。

sudo mkswap /swap.img
sudo swapon /swap.img

次のコマンドを実行して、スワップ領域が利用可能であることを確認します。

sudo swapon --show
free -h

上記の出力から、新しいスワップ ファイルが正常に作成され、Ubuntu システムが必要に応じてその使用を開始することは明らかです。

ステップ 5: Ubuntu でスワップ ファイルを永続的にマウントする

スワップ スペースを永続的にするには、スワップ ファイル情報を /etc/fstab ファイルに追加し、次のコマンドを実行して確認する必要があります。

echo '/swap.img none swap sw 0 0' | sudo tee -a /etc/fstab
cat /etc/fstab

ステップ 6: Ubuntu でのスワップ設定の調整

スワップ使用時の Ubuntu のパフォーマンスに影響を与える設定がいくつかあります。

スワッピー値の調整

スワッピーネスは、システムが RAM からスワップ領域にデータをスワップする量 (および頻度) を指定する Linux カーネル パラメーターです。このパラメータのデフォルト値は「60」で、「0」から「100」までの値を使用できます。値が大きいほど、カーネルによるスワップ領域の使用量が多くなります。

まず、次のコマンドを入力して、現在のスワッピー値を確認します。

cat /proc/sys/vm/swappiness

現在のスワップネス値 60 はデスクトップでの使用に最適ですが、サーバーの場合はそれより低い値、つまり 10 に設定する必要があります。

sudo sysctl vm.swappiness=10

この設定を永続的にするには、次の行を /etc/sysctl.conf ファイルに追加する必要があります。

vm.swappiness=10

キャッシュプレッシャー設定の調整

変更できるもう 1 つの同様の設定は、vfs_cache_pressure です。この設定は、システムが inodedentry の詳細をどれだけキャッシュするかを指定します。他のデータ。

現在の値は、proc ファイルシステムにクエリを実行することで確認できます。

cat /proc/sys/vm/vfs_cache_pressure

現在の値は 100 に設定されています。これは、システムがキャッシュから i ノード情報を急速に削除することを意味します。これを50 などのより安定した設定に設定することをお勧めします。

sudo sysctl vm.vfs_cache_pressure=50

この設定を永続的にするには、次の行を /etc/sysctl.conf ファイルに追加する必要があります。

vm.vfs_cache_pressure=50

完了したら、ファイルを保存して閉じます。

ステップ 7: Ubuntu でスワップ ファイルを削除する

新しく作成したスワップ ファイルを削除するには、次のコマンドを実行します。

sudo swapoff -v /swap.img
sudo rm -rf /swap.img

最後に、/etc/fstab ファイルからスワップ ファイル エントリを削除します。

それだけです!この記事では、Ubuntu ディストリビューションでスワップ ファイルを作成する方法を説明しました。この記事に関してご質問がある場合は、以下のコメント欄でお気軽にご質問ください。