チームメンバーがより多くのスワップを必要とするシステムの1つにスワップファイルを作成しました。彼はSSDのファイルシステムでそれを作成しました。私たちのサーバーは、スワップを実行せずに書き込みサイクルが制限されたSSDにスワップファイルを保持するのは安全ですが、スワップを使用しているサーバー(スワップドライブなど)が死んだ場合はどうなりますか?
実行中のシステムでSWAPパーティションエラーが発生すると、致命的な結果が発生しますか?または、
swapoff -a
すべてのバッファとキャッシュがフラッシュされていなくても、誰かがコマンドを発行したかのように処理されます。ページがSWAP内のプログラムがクラッシュする可能性があるとします。
スワップが失敗したシステムを再起動した場合、fstabでスワップエントリをコメントアウトすると、起動時にハングするのを防ぎますか?新しいスワップパーティションを追加してfstabエントリを更新すると、何も起こらなかったかのように再起動できますか?
答え1
部分的に言及されているので、ここではLinuxを使用しているとします。swapoff -a
ただし、質問テキストおよび/またはタグで明示的に言及することをお勧めします。
スワップ障害は、メモリをスワップデバイスにページングするプロセスでメモリエラーを生成します。つまり、プロセスは終了します。
失敗したスワップデバイスを持つシステムを再起動すると、実行時にのみエラーが発生しますが、swapon
システムはスワップデバイスなしで実行を続けます。その後、他のスワップデバイスを直接使用しswapon /dev/whatever
たり、編集して再/etc/fstab
起動したりできますswapon -a
。
ファイルをスワップデバイスとして使用することもできます。
# create a large enough file (1GB here)
dd if=/dev/zero of=/var/SWAPFILE bs=1024k count=1024
# write swap signature to the file so that the kernel recognizes it
mkswap /var/SWAPFILE
# activate it
swapon /var/SWAPFILE