it-swarm-ja.tech

いいえの限界は何ですか。私が持つことができるパーティションの?

Linuxを実行しているx86_64 PCで作成できるPrimaryおよびExtended Partitionsの数を教えてください。


更新
パーティションの数に制限がある場合、なぜその制限があるのですか?

6
Sen

制限は元のBIOS設計によるものです。当時、1つのディスクに4つ以上の異なるOSをインストールすることは考えられていませんでした。 OSの実装者、特にMicrosoftとLinuxによる標準の誤解もありました。これは、本来の目的であるBSDやSolarisのようなスライスに独自のパーティションを分割するのではなく、誤ってファイルシステムを(プライマリ)パーティションにマッピングします。

論理パーティションの最大数は規格によって制限されていませんが、到達可能なパーティションの数はOSによって異なります。 Windowsはアルファベットの文字数によって制限され、LinuxはIDEドライバ(hda1からhda63))で63スロットを使用していましたが、最新のリリースはデフォルトで15スロットをサポートするsdドライバで標準化しています(sda1からsda15)いくつかの調整により、この制限は克服できますが、ツールを混乱させる可能性があります( http://www.justlinux.com/forum/showthread.php?t=152404 を参照)

いずれにせよ、これはEFI/GPTの歴史になりつつあります。最近のLinuxではGPTがサポートされており、デフォルトで128のパーティションを作成できます。大きなディスク(2TB以上)を完全に使用するには、とにかくGPTが必要です。

10
jlliagre

Sen、@ jlliagreへの応答として、一部のオペレーティングシステムは単一のパーティションを作成しますが、基本的にそのスペース内にサブパーティションを作成することに注意してください。

これは、次のことと似ていますが、等しくはありません。

 parted rm 1 /dev/sda
 ...
 parted rm 7 /dev/sda
 parted mkpart primary $start $end /dev/sda
 parted mkpart primary $start1 $end1 /dev/sda1

次に、kpartxを使用して、これらのサブパーティションにアクセスできます。

 kpartx -a /dev/sda1

サブパーティションは次のように表示されます。

 /dev/sda1p1

もちろん、これはFreeBSDや類似のシステムが正確にスライスする方法ではありませんが、基本的には同じです。

3
ewindisch

パーティションは、ディスクタイプのフォーマットに完全に依存しています。

LinuxでMBRディスクタイプを使用する場合、次のような合計4つのパーティションを作成できます。

1)4つのパーティションはすべてプライマリのみです。

2)3つのパーティションがプライマリで、残りの1つは拡張されています。

上記の2つのステップを検討すると、拡張パーティションでほぼ65536の新しい論理パーティションを作成して使用できますが、使用できるこの論理パーティションには制限があり、OSによって異なります。

拡張パーティションの下に作成できるパーティションの数は?

回答:MBRの最後のパーティションを拡張パーティションとして作成し、その下に1GBのパーティションを論理パーティションとして作成するとします。

その構造は次のとおりです。

[root @ localhost〜]#fdisk -l/dev/sdb

ディスク/ dev/sdb:21.5 GB、21474836480バイト、41943040セクター

単位= 1 * 512のセクター= 512バイト

セクターサイズ(論理/物理):512バイト/ 512バイト

I/Oサイズ(最小/最適):512バイト/ 512バイト

ディスクラベルタイプ:dos

ディスク識別子:0x4bc89c19

デバイスブートスタートエンドブロックIDシステム

/dev/sdb1 2048 2099199 1048576 83 Linux

/dev/sdb2 2099200 2293759 97280 83 Linux

/dev/sdb3 2293760 2488319 97280 83 Linux

/dev/sdb4 2488320 41943039 19727360 5拡張<br />

[root @ localhost〜]#fdisk/dev/sdb

fdiskへようこそ(util-linux 2.23.2)。

変更を書き込むことを決定するまで、変更はメモリに残ります。

書き込みコマンドを使用する前に注意してください。

コマンド(ヘルプはm):n

すべてのプライマリパーティションが使用中です

論理パーティションの追加5

最初のセクター(2490368-41943039、デフォルトは2490368):

デフォルト値2490368を使用

最後のセクター、+セクターまたは+ size {K、M、G}(2490368-41943039、デフォルト41943039):+ 1G

タイプがLinuxでサイズが1のパーティション5 GiBが設定されています

コマンド(m for help):p

ディスク/ dev/sdb:21.5 GB、21474836480バイト、41943040セクター

単位= 1 * 512のセクター= 512バイト

セクターサイズ(論理/物理):512バイト/ 512バイト

I/Oサイズ(最小/最適):512バイト/ 512バイト

ディスクラベルタイプ:dos

ディスク識別子:0x4bc89c19

デバイスブートスタートエンドブロックIDシステム

/dev/sdb1 2048 2099199 1048576 83 Linux

/dev/sdb2 2099200 2293759 97280 83 Linux <

/dev/sdb3 2293760 2488319 97280 83 Linux

/dev/sdb4 2488320 41943039 19727360 5拡張

/dev/sdb5 2490368 4587519 1048576 83 Linux

ここで、1GBの論理パーティションを作成したら、拡張パーティションの下の論理パーティションの総数を計算できます。

MBRは1セクタースペース= 512バイトをサポートすることを知っています

/ dev/sdb5と/ dev/sdb4の開始セクター値の違いは次のとおりです2490368-2488320 = 2048

2048は、その下の論理パーティションの情報を格納するための拡張パーティションの予約スペースである差分値です。

2048に512バイトを掛けると、論理パーティションをサポートするために拡張パーティションに存在する合計バイト、つまり2048 * 512 = 1048576バイト

MBRでは、64バイトの合計サイズを使用して、パーティションテーブルにパーティション情報が格納されます。つまり、パーティションテーブルには、各パーティションサイズが16バイトの各パーティション情報が格納されます。各パーティションは16バイトのスペースを使用できるため、それに応じて、拡張を含む合計4つのパーティションがMBRで提供されます。拡張パーティションである最後のパーティションサイズが表示される場合、それらは16バイトのスペースを使用します。

つまり、1048576バイトを16に分割すると、拡張パーティションの下にある論理パーティションの合計数、つまり1048576/16 = 65536(最大論理パーティション)が得られます。

その下で最大65536の論理パーティションを使用できます。ただし、このパーティションの使用はOSによって異なります。 Linuxでは、MBRは拡張パーティションの下で最大60の論理パーティションを使用します。

したがって、MBRの下で作成できるパーティションの合計数は3(プライマリ)、1(拡張)、60(論理)= 64です。

ただし、拡張パーティションではなく、プライマリおよび論理パーティションのみがLinuxデータのフィードに使用されるため、データをパーティションにフィードするのに役立つパーティションは63のみです。



最大60のパーティションのみがMBRで作成され、それ以下であると言えるのはなぜですか?

できるだけ多くの論理パーティションを作成し、60番目の論理パーティションを作成すると、このメッセージが表示されます。

コマンド(ヘルプはm):n

すべてのプライマリパーティションが使用中です

論理パーティションの追加60

最初のセクター(23013477-41943039、デフォルトは23031808):

デフォルト値23031808を使用

最後のセクター、+セクターまたは+ size {K、M、G}(23031808-24035327、デフォルトは24035327):+100

タイプLinuxおよびサイズ50.5 KiBのパーティション60が設定されています

コマンド(ヘルプはm):n

最大数のパーティションが作成されました

0
Ankit Garg

4つのプライマリパーティション、または3つのプライマリパーティションと1つの拡張パーティション。

拡張パーティションは、複数の論理パーティションに分割できます。

0
jet

ハードディスクでは、4つのプライマリパーティション、または3つのプライマリパーティションと1つの拡張パーティションを作成できます。プライマリ+拡張パーティションは63の論理パーティションに分割できます

0
Ajay Chaurasiya