web-dev-qa-db-ja.com

2TBのMBRパーティション制限を理解する

MBRパーティションテーブルは、4,294,967,295セクターの「パーティションサイズ」をサポートします。標準の512バイトセクターを想定すると、これは合計制限が2,199,023,255,040バイト= 2TiB、つまり2.2TBをわずかに下回ることになります。

一部のソースではこれを参照しています 「パーティションサイズ」として:

マスターブートレコード(MBR)ディスクのパーティションテーブルは、最大2TBのパーティションサイズのみをサポートするため...

...一方 他の人はそれを参照します ボリュームまたはディスクの総容量として、その制限を克服するためにGPTとしてフォーマットする必要があると主張します:

オペレーティングシステムが2テラバイト(2 TB、または2兆バイト)を超える容量のストレージデバイスを完全にサポートするには、GUIDパーティションテーブル(GPT)を使用してデバイスを初期化する必要があります。 )パーティショニングスキーム。

上記を念頭に置いて:

  1. 2TiBの制限はパーティションの制限ですか、それともディスク/ボリュームの合計の制限ですか?前者の場合、ディスクの使用可能スペースを増やすことは可能ですか?その上に2TiB未満のパーティションをさらに作成することによって?そうでない場合は、なぜですか?

  2. 2TiBの制限が従来の512バイトのセクターに基づいており、セクターサイズを大きくすると最大パーティションサイズが大幅に大きくなることを考えると、制限をバイパスするための標準的なアドバイスをGPTにアップグレードする理由より大きなセクターサイズでフォーマットするだけで問題をより簡単に解決できるのはいつですか?このアプローチが代わりに採用されない理由はありますか?


N.B. SUのオンとオフの両方で、現在そこにある情報を読むのにかなりの時間を費やしました。つまり、Googleで上位の結果のほとんどを消化し、これらの質問に対する回答を見つけることができませんでした。 、それが私がここで尋ねている理由です。そのため、単にその結果を引用するような回答は避けたいと考えており、主に技術の仕組みをよく理解している方からの回答を求めています。

8
Hashim

2TiBの制限はパーティションの制限ですか、それともディスク/ボリュームの合計の制限ですか?前者の場合、2TiB未満のパーティションをさらに作成することで、ディスクの使用可能スペースを増やすことは可能ですか?そうでない場合は、なぜですか?

パーティションは、ドライブの先頭からのoffsetとパーティションのsizeによって定義されます。理論的には、2 TB)のすぐ下のセクターで開始し、サイズが2 TBのパーティションを定義して、ほぼ 4TBにすることができます。 、サポートはOSによって異なります。


2TiBの制限が従来の512バイトのセクターに基づいており、セクターサイズを大きくすると最大パーティションサイズが大幅に増えることを考えると、フォーマットするだけで問題をより簡単に解決できる場合に、制限をバイパスするための標準的なアドバイスをGPTにアップグレードするのはなぜですか。より大きなセクターサイズで?このアプローチが代わりに採用されない理由はありますか?

より大きなセクターサイズで単純に「フォーマット」することはできません(この回答の次のセクションを参照してください)。これは、工場出荷時のドライブ(物理)レイアウトとドライブファームウェアの両方に大きく依存しています。 「低レベルフォーマット」は、ドライブが複雑になり始めて以来、10年以上もの間実際には問題になりませんでした。

MBRの「仕様」を純粋に考慮している場合、実際に4kを報告する4kドライブを使用して、MBRでより多くのデータをアドレス指定できると思います。ただし、これにはオペレーティングシステムからのサポートが必要です。最近はおそらく機能しますが、マザーボードのサポートに問題があるため(ブートドライブの場合)、推奨されないことがよくあります。

GPTは標準であり、十分にサポートされているため、推奨されます。これは、更新を受信しなくなった、おそらく奇妙なマザーボードファームウェア、変更できないハードウェアなどの変数を削除します。また、ほぼすべての点で優れています。おそらく、「なぜnot GPTを使用するのか?」と自問する必要があります。通常、古いOSをサポートするか、古いハードウェアでドライブを起動する必要があります。


ドライブを最初にフォーマットするとき、セクターサイズは簡単に変更できるという印象を常に持っていました。たとえば、Windowsのディスクフォーマットには、imgur.com/a/rL6REがあります。それはセクターと同じではありませんか?

物理ディスクセクター(現在は通常4k/AF)と論理ディスクセクター(LBAを参照、下位互換性については512bとして報告されることが多い)と-を混同しています。 ファイルシステムアロケーションユニット。

物理セクターは、実際にディスク上にあるものです。これらはアライメントの理由で重要になる可能性がありますが(たとえば、物理セクターの途中でパーティションを開始するのは非効率的です)、それ以外の場合はディスク使用量にそれほど影響しません。これらは、ドライブの製造元に役立つ実装の詳細とほぼ見なすことができます。

論理セクターは、OSがドライバーと通信し、コントローラーがディスクと通信する方法です(たとえば、AHCI/SATAを介して)。これは、ドライブファームウェアが報告する内容によって異なります。最近では、ネイティブ4kを報告するものもありますが、多くの(ほとんど?)は、古いシステムとの互換性のために512b(エミュレートされた場合は「512e」と呼ばれます)を報告します。

ファイルシステムアロケーションユニット(例:そのNTFSフォーマットダイアログでは、物理セクターまたは論理セクターとはほとんど関係ありません。これらはファイルシステム内の記録保持にのみ使用され、それでも固定アロケーションユニットサイズを使用しないファイルシステムがあります。一部のファイルシステムは、それらを複数の論理セクターで指定します。

9
Bob

2TiBの制限は実際にはパーティションの制限ですか、それともディスク/ボリュームの合計の制限ですか?

同じようなものです。ディスク全体が2TiBを超えて正しく認識されない場合、そのサブパーツ(パーティション)は自動的に失敗します。

2TiBの制限が従来の512バイトのセクターに基づいており、セクターサイズを大きくすると最大パーティションサイズが大幅に増えることを考えると、フォーマットするだけで問題をより簡単に解決できる場合に、制限をバイパスするための標準的なアドバイスをGPTにアップグレードするのはなぜですか。より大きなセクターサイズで?

それはそれを解決するでしょう。残念ながら、ほとんどのハードドライブではセクターサイズを変更できません。前回、低レベルのセクターを再フォーマットしたのは、4GBのSCSIドライブ(セクターあたり522バイトのメインフレームストアからセクターあたり512バイトのPCスタイルのストレージ)でした。そして、その時(最後の千年紀)以来、ディスク上のメーカー設定の構成を変更することは難しくなっています。

これは、多くの場合、次のいずれかで立ち往生していることを意味します。

  • セクターディスクあたり512バイト
  • 512バイトのセクターを使用していると主張するセクターディスクあたり4096バイトであり、それについて尋ねても嘘をつきます。

回避策:-4kセクターのディスクと、をサポートするOSとファームウェアを使用します。 -ドライブが存在することを認識している4kセクターディスクとOSを使用します。 -数十年前ではないパーティションスキームを使用します。 (例:GPT、スライス、Macフォーマット... MBRスタイル以外)。

3
Hennes