ホームページ >運用・保守 >Linuxの運用と保守 >Linuxのスワップパーティションは必要ですか?
Linux スワップ パーティションは必要ありません。Linux システムはスワップ パーティションなしでも完全に実行できます。組み込みソリューションなどの場合によっては、Linux はスワップなしで実行でき、スワップ パーティションにはすべての利点があります。できるだけ多くの物理メモリスワップを避けるための最良の解決策です。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
Linux システムは、スワップ パーティションがなくても完全に実行できます。
Linux をインストールする場合、インストール プロセスにより、Linux パーティション自体だけでなく、ハード ドライブにスワップ パーティションも追加される場合があります。しかし、このスワップ パーティションは何に使用されるのでしょうか?また、本当に必要なのでしょうか?
交換とは何ですか?
マルチタスク オペレーティング システムで物理メモリが不足すると、新しいプロセスを開始したり、既存のプロセスに追加のメモリを割り当てたりすることができなくなります。この問題を解決するために、ローカル ストレージ (通常はハード ドライブ) 上の特別な領域ブロックがオペレーティング システムの一時保持領域として確保され、新しい作業のためにメモリが解放されます。非アクティブなプロセスが再びアクティブになると、ローカル ストレージからメモリにスワップバックされます。このプロセスはスワッピングと呼ばれます。
スワップ領域は本当に必要ですか?
スワップ領域は技術的に必要ですか? ######いいえ。 Linux はスワップなしでも動作し、組み込みソリューションのように、場合によってはスワップなしで実行できます。オペレーティング システムが十分な物理 RAM を持たない状況に陥った場合でも、マシンは問題なく実行されます。
スワップ領域は実際に必要ですか?スワップによってコンピューターの速度が低下しますが (ハード ドライブへの読み取りと書き込みは RAM へのアクセスよりもはるかに遅いため)、スワップを回避するにはできるだけ多くの物理メモリを搭載することが最善の解決策です。法的な状況では交換が必要です。たとえば、システムの起動中、いくつかのプロセスが実行されている (したがってシステム メモリを消費している) ものの、実質的には長期間スリープしている可能性があります。または、メモリが割り当てられ、書き込まれた後、再度使用されることはありません。このような場合、スワップ アルゴリズムはそのメモリをハード ドライブに移行し始め、貴重なシステム メモリを解放します。これにより、常に最大量の RAM が利用可能となり、パフォーマンスが向上します。
知識を広げる
マシン上で
完全を期すために、Linux について言及する価値があります。また、メモリ不足 (OOM) と呼ばれるサブシステムは、メモリが使い果たされたときにカーネルを停止する代わりに、リソースを解放するためにプロセスを強制終了し始めます。そのアクションは構成可能です。
どのくらいのスワップ領域を割り当てる必要がありますか?
絶対的なルールはありません。ハード ディスクのスペースは安価 ($/ギガビット) であるため、多めのスペースを割り当てることが最善です。経験則として、物理メモリの 2 ~ 3 倍のスワップ領域が必要です。
スワップ パーティションを拡張せずにスワップを追加する
既存のスワップ パーティションを変更せずにシステムにスワップ領域を追加するには、2 つの方法があります。 1 つは別のドライブのスワップ パーティションを使用する方法で、もう 1 つはスワップ ファイルを使用する方法です。
別のハード ドライブを使用するには、次のタイプのパーティションを作成します。スワップ スペースをすぐに使用するにはシステムにスワップ スペースを永続的に追加するには、/etc/fstab ファイルを編集して次のような内容を追加する必要があります。
Line no swap for /dev/sdb2 0 0
システムが一意の識別子を使用してディスクに名前を付けている場合は、blkid コマンドを使用してデバイス ID のリストを取得します。 /etc/fstab にスワップ領域をマウントする行は次のようになります。 :
UUID = 036da155-1ea1-4392-b8d4-700f65aa1ead none swap sw 0 0
スワップにファイルを使用するには、使用するファイルの上に大きな空のファイル (dd を使用) を作成します。ファイルシステムを交換します。たとえば、1 GB のファイルを作成するには、「= 10mh1112
dd if = / dev / zero of = / store / swapfile bs = 1024 count = 1048576
」と入力します。ここで、/store/swapfile は、目的のファイル システム上のスワップ ファイルへのパスです。
添付されたスワップ パーティションと同様に、ファイルは mkswap で使用し、次に swapon で使用できるように準備する必要があります。 /etc/fstab ファイルにも追加する必要があります。プロセスは上記とまったく同じですが、スワップ スペース パラメーターとして /dev/sdb2 の代わりに /store/swapfile を使用する必要があります。
スワッピーネスLinux カーネルを調整して、メモリからプロセスをどの程度積極的にスワップするかを定義できます。この傾向は、swappiness と呼ばれるカーネル変数によって制御されます。 0 はカーネルが可能な限りスワップを回避することを意味し、100 はカーネルがスワップ領域を積極的に使用することを意味します。多くの Linux ディストリビューションのデフォルト設定は 60 です。この数値は、このコマンドを使用して動的に変更できます。:
sudo sysctl vm。swappiness = 10
値を永続的に設定するには、スワッピーを変更する (まだ設定していない場合は追加する) 必要があります。 /etc/sysctl 内の変数。 conf ファイル。
推奨学習:
Linux ビデオ チュートリアル以上がLinuxのスワップパーティションは必要ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。