スワップパーティションとスワップファイル


47

Ubuntu 17.04の新しい変更を読んでいて、典型的なスワップパーティションモデルから新しいインストール用の新しいスワップファイルモデルに移行していることに気づきました。

スワップパーティションとは対照的に、これを使用する利点はありますか?おそらくパフォーマンスやスペースの節約、またはSSDやNVMeなどの今日のハードウェアと関連しているか、またはそれに関してですか?

別の関連する質問は、スワップパーティションからスワップファイルに移行する方法です。私はddを使用していると推測していますが、今までスワップファイルスキームについて知らなかったので確認したいです。

そして最後に、ハイバネーションはスワップファイルの問題になりますか?

もちろん、これらの質問は、ユーザーに大量のRAMがあり、スワップがほとんど使用されない場合に関連する可能性があります(推測しています)。ですから、この情報が私と同じ疑問を持つ他の人たちに役立つことを確認するだけです。


関連する質問について:askubuntu.com/questions/903414/…(回答がある場合)
-muru

digitalocean.com/community/tutorials/…-違いを生んだとは言えませんが、本当にできません。システムは以前と同様に正常に動作しています(スワップはめったに使用されませんでした)。

fileにスワップ追加する方法は次のとおりです。17.04では、ファイルです/swapfile。休止状態が問題になる場合があります。
Takkat

muru @CelticWarrior Takkatはリンクと情報を提供してくれてありがとう。本当にとても助かりました。可能であればケルト語、もし可能であれば、念のためAskUbuntuに特定の回答を追加してください。すべての人にとって、答えが最新のものであることを確認すること(2012年ではなく、実際にはスワップファイル全体が開始された2016年から2017年)は、多くの助けとなり、その期間中に起こった変化を避けることができます。
ルイスアルバラード

1
ルートパーティションが暗号化されている場合、スワップファイルも自動的に暗号化されます。特別なことをする必要はありません。そのため、スワップの暗号化を忘れる可能性のある一般ユーザーにとっては改善です。
マリスB.

回答:


34

スワップファイルの唯一の利点は、サイズ変更が簡単なことです。したがって、スワップパーティションのサイズに不満がない限り、移行する意味はあまりありません。

従来、swapfileはいくつかの理由で推奨されていませんでした。Linux v2.4より前はスワップファイルが低速でした、断片化されたファイルシステムでスワップファイルを作成する場合は、まだ遅いかもしれません。スワップファイルでメモリのバグに遭遇する可能性が少し高いかもしれません。たとえば、一部をスワップアウトするまでこれ以上メモリを割り当てることができないcatch-22sですが、スワップアウトする前にファイルシステムを割り当てる必要があります。数年前のスワップファイルへの冬眠は、同様の理由で議論の余地のある新機能でした。何年も前、ファイルシステムがまだ少しバグがあり(ジャーナリングされていなかった)、重要なファイルシステムを大量に作成するのは賢明ではありませんでした。従来のデフォルトとして、スワップパーティションはスワップファイルよりもテストされています。おそらくCanonicalは、これらの問題はもう心配する価値はないと考えています。

スワップファイルに切り替えない最大の理由は、「壊れていないものを修正する理由」です。メインパーティションをバックアップせず/home、スワップファイルの代わりに誤って削除してしまうと、元に戻すのが面倒になります。

スワップファイルに切り替えないもう1つの理由は、まだスワップファイルをサポートbtrfsいない(低速ループバックファイルを除く)を使用している場合です


スワップファイルを選択したとしても、スペースが不足していない限り、スワップパーティションを削除する必要はありません。必要に応じて、両方を同時に使用できます。スワップパーティションを削除することに決めた場合は、まずUbuntu LiveCDで起動してからに進みtry without installingます。次に、ターミナルを実行してgparted、スワップパーティションを削除し、残りのパーティションのサイズを変更します(最初にバックアップを行うことをお勧めします)。

次に、通常のUbuntuインストールで再起動し、swapfileを作成します。スワップファイルの利点はサイズ変更が簡単であるため、SwapSpaceを使用してスワップファイルのサイズを管理することができます。

sudo apt install swapspace

https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04の手順に従って、スワップファイルを手動で作成することもできます。

簡単に言えば、以下を端末に貼り付けて1Gスワップファイルを作成できます

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show

それが機能する場合は、次のようにして永続化できます。

sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

うーん、引用が必要です。...バグのあるファイルシステムの引数については、どこまでさかのぼりますか?...?....小さな割り当てが小さなキルを引き起こしているはず、とFSを経由して交換することは、このような不測の事態のために準備でおしっこバッファを持っていなかった場合、私は驚かれることでしょう-キャッチ22についてoomkillerは程度に出ていることにソートしているだろう
タイフワ

5
10年以上前の一般的なアドバイスは、スワップ、/ usr / home、および/ varをすべて異なるパーティションに配置し、それらのいずれかが破損した場合に他のパーティションから回復できるようにすることでした。それはおそらくジャーナリングが一般的になる前でした。ファイルシステムにはまだバグがありますが、ランサムウェアが到達できない場所でのバックアップの作成には、おそらく偏執狂の方が適しています。
-gmatht

1
@taifwa高速スワップファイルアクセスをサポートしていないbtrfs FAQへのリンクを追加しました(破損なしでそれを実装する方法がわからないため)、そして切り替えない最大の理由は何を修正しないことであることに注意してください壊れません。これは役立ちますか?
-gmatht

1
@gmathtまあ、とても素敵な方法ですべてをカバーしました。スワップファイルに付属する今後数か月または数年の間に新しい情報を見つけた場合は、この回答を更新してお知らせください。称賛と優れた作品。
ルイスアルバラード

3
@PabloBianchiそれはできますが、私は最近SSDでのスワップを好むでしょう。回転ディスクにスワップを置くと、摩耗も増加します。最新のSSDは、回転ディスクよりもはるかに速く摩耗する傾向はありません。
-gmatht
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.