記事ディレクトリ
CentOSの仮想メモリ SWAP スワップ ファイルとパーティションを手動で追加/削除する方法は?
スワップパーティションとは何ですか? SWAP はスワップ領域であり、SWAP スペースの役割は次のとおりです。Linuxシステムの物理メモリが不足すると、物理メモリの一部が解放されて不足する物理メモリが補われ、現在実行中のソフトウェアプログラムの使用。
スワップ パーティションにスワップを使用する利点
SWAP 最適化設定の調整は、Web サーバーのアプリケーションのパフォーマンスにとって非常に重要です.物理メモリが不足している場合、仮想メモリ SWAP パーティションを設定することで、LINUX システムのアップグレードのコストを効果的に節約できます.
スワップ パーティションのサイズはどのくらいにする必要がありますか?
SWAP スワップ パーティションのサイズは、実際のシステム メモリのサイズと使用するソフトウェアによって決まります。
CentOS と RHEL6 の推奨事項は次のとおりです.特定の状況に応じて適切な最適化調整を行ってください:
- 4GB の RAM には、最低 2GB のスワップ領域が必要です
- 4GB から 16GB の RAM には、最低 4GB のスワップ領域が必要です
- 16GB から 64GB の RAM には、最低 8GB のスワップ領域が必要です
- 64GB から 256GB の RAM には、最低 16GB のスワップ領域が必要です
現在のメモリとスワップ領域のサイズを表示します (デフォルトの単位は k、-m 単位は M):
free -m
表示される結果は次のとおりです(例)。
キャッシュされた使用済み空き共有バッファの合計
Mem:498 347 151 0 101
-/ +バッファ/キャッシュ:108 390
スワップ:0 0 0
Swap が 0 の場合、いいえを意味し、SWAP スワップ パーティションを手動で追加する必要があります。
(注: OPENVZ アーキテクチャの VPS は、SWAP スワップ パーティションの手動追加をサポートしていません)
SWAP スワップ領域の追加には 2 つのタイプがあります。
- 1. SWAP スワップ パーティションを追加します。
- 2. SWAP スワップ ファイルを追加します。
SWAP スワップ パーティションを追加することをお勧めします。空き容量があまりない場合は、スワップ ファイルを追加します。
SWAP 情報を表示します (SWAP スワップ ファイルとパーティションの詳細を含む):
swapon -s
または
cat /proc/swaps
(SWAP値が表示されない場合は、SWAPスペースが追加されていないことを意味します)
SWAP ファイルの作成方法の例を次に示します。
1. 1GB スワップを作成する
dd if=/dev/zero of=/home/swap bs=1k count=1024k
mkswap /swapfile
swapon /swapfile
echo "/home/swap swap swap default 0 0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
2. 2GB スワップを作成する
dd if=/dev/zero of=/home/swap bs=1k count=2048k
mkswap /home/swap
swapon /home/swap
echo "/home/swap swap swap default 0 0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
(終了)
以下は、追加の詳細な参考資料です。
1. dd コマンドを使用してスワップ ファイルを作成します。
1Gメモリ
dd if=/dev/zero of=/home/swap bs=1024 count=1024000
2G メモリ:
dd if=/dev/zero of=/home/swap bs=1k count=2048k
このように、/home/swap ファイルが作成され、1024000 のサイズは 1G、2048k のサイズは 2G になります。
2. スワップ形式でファイルを作成します。
mkswap /home/swap
3. swapon コマンドを使用して、ファイル パーティションをスワップ パーティションにマウントします。
/sbin/swapon /home/swap
free -m コマンドで見てみましょう。すでにスワップ ファイルがあることを確認してください。
free -m
しかし、システムを再起動すると、スワップ ファイルは再び 0 になります。
4. 再起動後にスワップ ファイルが 0 にならないように、/etc/fstab ファイルを変更します。
/etc/fstab ファイルの末尾 (最後の行) に次を追加します。
/home/swap swap swap default 0 0
(そのため、システムが再起動されても、スワップ ファイルは依然として価値があります)
または、次のコマンドを直接使用して、再起動自動マウント構成コマンドを追加します。
echo "/home/swap swap swap default 0 0
" | sudo tee -a /etc/fstab
VPS はどのような状況で SWAP 交換スペースを使用しますか?
SWAP スワップ空間を使用する前にすべての物理メモリが消費された後ではなく、swappiness のパラメーター値によって決定されます。
[root@~]#cat /proc/sys/vm/swappiness
60
(この値のデフォルト値は 60 です)
- swappiness=0 は、物理メモリを最大限に使用し、次に SWAP 交換用のスペースを使用することを意味します。
- swappiness=100 は、スワップ領域がアクティブに使用され、メモリ内のデータが時間内にスワップ領域に転送されることを示します。
swappiness パラメータの設定方法
一時的な変更:
[root@~]#sysctl vm.swappiness=10
vm.swappiness = 10
[root@~]#
cat /proc/sys/vm/swappiness
10
(この一時的な変更は有効ですが、システムを再起動するとデフォルト値の 60 に戻ります)
恒久的な変更:
次のパラメーターを /etc/sysctl.conf ファイルに追加します。
vm.swappiness=10
(保存、再起動後に有効になります)
または、次のコマンドを直接入力します。
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
SWAP スワップ ファイルを削除します。
1.最初にスワップパーティションを停止します
/sbin/swapoff /home/swap
2.スワップパーティションファイルを削除します
rm -rf /home/swap
3. 自動マウント設定コマンドの削除
vi /etc/fstab
次の行を削除します。
/home/swap swap swap default 0 0
(これにより、手動で追加されたスワップ ファイルが削除されます)
注:
- 1. スワップ操作の追加または削除に使用できるのは root ユーザーのみです。
- 2. VPSシステムのインストール時に割り当てたswapパーティションが削除できないようです。
- 3. スワップ パーティションは通常、メモリのサイズの 2 倍です。
Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ ) 共有 "CentOS 仮想メモリ SWAP スワップ ファイルとパーティションを手動で追加/削除する方法は? 、 あなたを助けること。
この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-158.html
Chen WeiliangのブログのTelegramチャンネルへようこそ。最新のアップデートを入手できます!
📚 このガイドには非常に価値のある内容が含まれています。🌟これはめったにない機会です、お見逃しなく! ⏰⌛💨
気に入ったらシェア&いいね!
あなたの共有といいねは、私たちの継続的な動機です!