web-dev-qa-db-ja.com

Ubuntu 17.04 Zesty Swapのファイルサイズを変更するには?

昨夜、私は映画をハンドブレーキで変換していました。バックグラウンドで実行されているSteamとUbuntuソフトウェアセンターがありました。目が覚めたとき、「Ubuntuが内部エラーに直面した......」というメッセージが表示され、ハンドブレーキがクラッシュしました。だから、スワップメモリ​​(2GBのスワップファイル)の不足が原因だと思います。スワップファイルのサイズを増やす方法を知っている人はいますか? (私のPCには4GBのRAMがあります)

1
Edwin PJ

文字通りサイズを変更しようとはしません。おそらくそれは可能です-多分それは可能だったかもしれません-しかし、私は気にする理由を考えることはできず、新しいものを作成する方が迅速で簡単です。最初に現在のものをオフにします:swapoff -a古いものを削除してから、必要な大きさの新しいものを作成し、オンにします。同じ/ path/nameを指定すると、fstabを変更する必要すらなくなり、文字通りではないにしても効果的にスワップファイルを拡大できます。ここRedhatの誰か:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/s2-swap-creating-file.html

これを書いた(私は引用による引用による組み込みに眉をひそめているが、ブロック引用ボタンはフォーマットを台無しにしているので、これを編集して単純に貼り付ける):

###見積りフォロー###

スワップファイルを追加するには:

新しいスワップファイルのサイズをメガバイト単位で決定し、1024を掛けてブロック数を決定します。たとえば、64 MBのスワップファイルのブロックサイズは65536です。

シェルプロンプトでルートとして、目的のブロックサイズに等しいカウントで次のコマンドを入力します。

dd if=/dev/zero of=/swapfile bs=1024 count=65536

Change the persmissions of the newly created file:

chmod 0600 /swapfile

Setup the swap file with the command:

mkswap /swapfile

To enable the swap file immediately but not automatically at boot time:

swapon /swapfile

ブート時に有効にするには、/ etc/fstabを編集して次のエントリを含めます。

/swapfile          swap            swap    defaults        0 0

次回のシステム起動時に、新しいスワップファイルが有効になります。

新しいスワップファイルを追加して有効にした後、コマンドcat/proc/swapsまたはfreeの出力を表示して、有効になっていることを確認します。

###見積り終了###

既にスワップファイルがある場合は、おそらくそのほとんどを既に知っているでしょう。とにかく、それは提起された質問に対する文字通りの答えに近いと思います。

しかし、この1つのコンテキストでのみ大きなスワップが必要であり、頻繁に発生しない場合、ドライブスペースが不足している場合は、スワップファイルを交換する代わりに、追加のスワップを作成してマウントすることを検討してくださいあなたがそれを必要とする前に。それらは累積的です。好きなだけ持つことができます。完了したら、マウントを解除して削除できます。

Raveryが触れたスワップファイルとスワップパーティションの問題については、その主題について読むものの多くは古くなっています。スワップパーティションが別のドライブ上にない限り(そして別のドライブコントローラーと言うべきかもしれません)、スワップファイルよりも高速になることはほとんどありません。そして、それは間違いなく柔軟性が低いです。別のドライブにない限り、スワップパーティションを使用する多くの理由がわかりません。

1