web-dev-qa-db-ja.com

/ bootパーティションは常に必要ですか?

Linuxディストリビューションをインストールするたびに/bootパーティションを作成する必要がありますか?

/bootパーティションを作成することと/パーティションをブート可能にすることには違いがありますか?

34
user1301428

完全な質問に答えるために、noの場合、/bootの個別のパーティションが必ず必要になるわけではありません。

ただし、他に何も分割しない場合でも、//boot、およびスワップ用に個別のパーティションを用意することをお勧めします。また、ファイルシステム階層をさらに分割しない場合でも、/homeを別のパーティションに配置することも強く推奨します

通常のルートファイルシステムとは別のパーティションに/ bootを配置する理由は、ディスク上のファイルシステムの複雑さを軽減できるためです。これにより、ブートローダーへの要求がbootstrapカーネルお​​よび初期RAMディスク。これは、重要なセットアップを実行している場合に特に興味深いものになります。おそらく、RAID、またはルートパーティション上のZFSなどの異常なファイルシステム、または暗号化されたルートを実行しています。パーティション。/bootのパーティションは、たとえばプレーンext2fsを使用してフォーマットできます。パーティションは小さければ十分です(数百メガバイトで十分です。現在のシステムの/ bootは100 MBであり、とにかく、ext2などのジャーナル化されていないファイルシステムの欠点はそれほど大きくなくてもかまいません。ファイルシステムが比較的単純であるだけでなく、静的であるため、検出されない破損が発生する可能性が低くなります。ブートローダーはエキゾチックなファイルをネイティブに理解する必要はありませんシステムまたはディスクのセットアップは、もう1つの考えられる利点です。

/ homeを別のパーティションに置く理由は、何かが不正になり、それがいっぱいになり始めたとしても(または自分でそうする場合)、それが非ユーザープロセス(めったに/で実行されない)に問題を引き起こすリスクがないということです。 home)またはブートプロセス自体。また、/ homeをそのままにして/を再フォーマットし、独自のファイルで埋めるようにインストーラーに指示するだけで、OSの再インストールやディストリビューションの切り替えがはるかに簡単になります。何かが本当にソフトウェア的にうまくいかなかった場合の最後の回復作業として、これは大きな違いを生むことができます。

スワップファイルを実行することは、Linuxでの推奨セットアップではありません。また、最も一般的なディストリビューションのストックカーネルsupport(または許可)ファイルもわかりません-ベースのスワップ。これには複数の理由があります。1つの大きな理由はパフォーマンスです(主に断片化のリスクが原因です)。スワップはすでにRAM(修正よりも一時的な措置のようです)に比べて非常に遅くなっています)ので、断片化の危険を冒してさらに遅くする理由はほとんどありません。マルチブート環境のLinuxディストリビューション間で共有されます。おそらく一般的なケースでは考慮されませんが、いくつかの考慮事項は確かです。スワップパーティションは、異なる特性を持つ別の物理ディスクに配置することもできます。個別のコントローラーチャネルで実行されている10krpmドライブ(これは、すべてのSATAディスクが個別のチャネル上にある場合、今日ではあまり考慮されませんが、PATAの時代には違いが出る可能性があります)。

個人的には、最近、/、/ boot、swapを分離しています。現在のシステムの/は100 GBです(現在のところ、そのすべてを使用しているわけではありません。現在の使用量は8.9 GBです。これにより、ソフトウェアといくつか)。プライマリディスクの残りの部分は単一のファイルシステムで構成されており、個人的な慣習により/ da(disk a)にマウントします。 2番目のディスクは/ db、次に/ dcのようになります。 (FHSがこのスキームを本当に承認するかどうかは疑問ですが、実際には私にとってはうまく機能します。)次に、/ homeを/ daにバインドマウントします。/homeのディスク領域が少し不足していることに気付いたからといって、パーティションを再作成したりします。

32
a CVn

もう義務ではないと思います。以前は、BIOSの制限のために必要でした。 8または64 Go後にブート可能なパーティションを作成することは不可能でした(正確には覚えていません)。次に、デュアルブートを使用する場合は、最初の小さなパーティション(/ boot)とブート可能なWindowsパーティションを配置し、その後に他のLinuxパーティションを配置します。長い間、/ bootディレクトリがまったくありませんでした。カーネルは直接/にありました。

3
Thierry Chich

違いはファイルシステムの最適化です。通常、各パーティションには、ファイル、記述子などの独自のテーブルがあります。Linuxは、「/ boot」、「/ swap」、/ usrなどなしで単一の「/」パーティションにインストールできますが、この単一パーティションの内部テーブルは間もなく巨大になります一部の操作は少し遅くなります。そのため、さまざまなパーティションを使用して、さまざまな種類のタスク用に分離され、最適化されたコンテナーを提供します。

2
grigoryvp

いいえ、/ bootパーティションはいくつかの理由で必要ないと思います:

  • / bootフォルダが小さすぎないようにして、/に含めることをお勧めします
  • / bootのファイルとフォルダーは頻繁に更新およびアクセスされないため、パーティションを作成する必要はありません。/tmpや/ swapフォルダのようなものではありません。プログラムは/ bootに書き込みません。
  • / bootは、起動時と、initramfsイメージが更新されるカーネル更新時にのみ使用されます。
  • / bootから/ rootを1つのRAID 5アレイに含めることができ、それはGRUB2で動作します。すべてのドライブのMBRにGRUB2を追加します。 2番目、3番目のドライブから起動できます... 1番目のドライブが停止している場合はドライブ。
  • マウントが少ない= uuidが少ない=視認性が高い=シンプルさ
0