序文
スワップは、ディスク上にある特別なファイル(またはパーティション)であり、「仮想メモリ」の一部です。人気のポイントは、メモリのスペアタイヤです。メモリが十分な場合、基本的にスワップするものはありません(設定に関連します)。メモリが不足している場合、システムはメモリ内のデータの一部を移動してスワップし、実行中のプログラムのためにメモリを解放します。 。
スワップを使用すると、システムはより多くのまたはより大きなプログラムを実行できますが、スワップの読み取りおよび書き込み速度はメモリの速度よりもはるかに遅いため、スワップを頻繁に使用すると、システムおよびプログラムで遅延が発生する可能性があります。
**大容量メモリのコンピュータスワップは必要ですか? ****
メモリの少ないコンピュータの場合、スワップが非常に必要です。スワップの存在は、メモリを消費するプログラムを実行することを可能にし、実行が遅いことは、実行またはクラッシュしないよりも優れています。ただし、最近のコンピューターには8Gを超えるメモリが搭載されていることが多く、大規模なソフトウェアやプロ仕様のソフトウェアを実行していない場合は、メモリで十分に日常的に使用できます。この場合、スワップは必要ですか?
答えは使用シナリオによって異なります。デスクトップ版のLinuxがパーソナルコンピュータで実行されていて、休止機能がオンになっている場合は、メモリ以上のスワップパーティションに分割する必要があります。十分なメモリがあり、一年中シャットダウンしないサーバーの場合は、スワップなしで問題はありません。
**ssdハードディスクのスワップを設定する必要がありますか? ****
以前のssdハードディスクには読み取りと書き込みの寿命の問題があるため、スワップファイルまたはパーティションをssdハードディスクに配置することはお勧めしません。
現在のssdハードディスクテクノロジーはアップグレードされ、よりスマートになっています。スワップ要求がある場合は、ssdハードディスクに配置しても問題ありません。
**スワップ設定の大きさはどれくらいですか? ****
休止機能が有効になっている場合は、スワップパーティションを分割する必要があり、パーティションサイズをメモリより小さくすることはできません。推奨値は「メモリサイズ+ 2G」です。
休止機能のないサーバーの場合、スワップはファイルにすることができます。スワップサイズを決定する実際的な方法は、1Gメモリ以下の場合、スワップサイズはメモリの2倍、2〜4Gメモリ、メモリと同じサイズ、5〜16Gメモリ、スワップです。 4Gに固定可能、17-32Gメモリ、8Gスワップ、33G以上、16Gスワップに固定。
上記の方法は絶対的なものではなく、特別なニーズに応じてスワップサイズを増減できます。
**スワップを増やす方法は? ****
オペレーティングシステムをインストールするときに、パーティション(個別のマウントポイント)の形式でスワップを指定するか、システムのインストール後に動的に追加および削除することができます。
スワップを表示
freeコマンドは、次のようなシステムアクティビティのスワップ情報を表示できます。
$ free -m
# 出力は次のとおりです
# total used free shared buff/cache available
# Mem:7976497932812426692703
# Swap:000
2行目はスワップ情報で、アクティブなスワップがないことがわかります。
また、swaponコマンドを使用して、アクティブなスワップを表示することもできます。次に例を示します。
$ swapon -s
# スワップ情報がないため、出力はありません
# スワップ付きの出力は
# Filename Type Size Used Priority
# /swap file 2097148281052-2
スワップを増やす
大量のメモリを使用するプログラムを実行する予定で、8Gの物理メモリでは不十分である場合、スワップを使用してシステムで使用可能な仮想メモリを増やすことができます。操作方法は以下のとおりです。
1、 スワップとしてファイルを選択または作成します(パーティションも使用できます)。指定されたサイズのファイルを作成するために一般的に使用されるコマンドは、fallocateとddです。たとえば、8Gファイルを作成するには:
# fallocate
sudo fallocate -l 8G /swap
# dd
sudo dd bs=1GB count=8if=/dev/zero of=/swap
ddコピープロセスの実行が遅いため、実際にはfallocateをお勧めします。
2、 スワップファイルはデータをメモリに保存します。セキュリティ上の理由から、他のユーザーのアクセスを制限する必要があります: sudo chmod 0600 / swap;
3、 ファイルをスワップファイルとしてフォーマットします: sudo mkswap / swap;
4、 スワップファイルを有効にします: sudo swapon / swap;
スワップを使用したくない場合は、swapoffコマンドでアンインストールできます: sudo swapoff / swap;
5、 システムの起動後にスワップファイルを自動的にロードする場合は、/ etc / fstabファイルに「/ swapswap swap sw00」という行を追加します。
スワップが追加された後、swapon-sまたはfree-mを使用してスワップ情報を表示できます。
関連する設定を交換する
スワップとシステムパフォーマンスに影響を与える設定パラメータに最も直接関連するのはvm.swappinessです。その値は0〜100の整数で、スワップの開始に使用されるメモリの割合を示します。 100は可能な限りスワップを使用することを意味し、0は物理メモリが十分でない場合にのみスワップスペアタイヤを使用することを意味します。サーバーの場合、10〜30を推奨します。
スワップピネスを設定および変更するコマンドは、 sudo sysctl vm.swappiness = 10
です。このコマンドは現在のシステムでのみ有効であり、システムの再起動後にデフォルト値が復元されます。設定を永続的に有効にする場合は、/ etc / sysctl.confの対応する設定行を追加または変更します: vm.swappiness = 10
。
参照
https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-centos-7
総括する
上記はこの記事の全内容です。この記事の内容があなたの研究や仕事のために一定の参考値を持っていることを願っています。ZaLou.Cnへのご支援に感謝します。
Recommended Posts