web-dev-qa-db-ja.com

Linuxパーティションテーブル

Linuxはデフォルトでどのような種類のパーティションテーブルを作成しますか?それはmsdosですか?使用しているLinuxディストリビューション(Ubuntuを使用しています)によって異なりますか?その情報を見つけるために使用できるコマンドラインユーティリティはありますか?

3
celavek

Linuxにはデフォルトのパーティション形式はありません。人気のあるフォーマットとあまり人気のないフォーマットの多くを処理できます。

タイプは、使用しているツールによって決まります。 fdiskは標準のMS-DOSパーティションテーブルを処理でき、partedはGUIDパーティションテーブルも処理できます。他のツールは、任意の形式で作成できます。

ほとんどのディストリビューションは、標準のPCでMS-DOSパーティションを作成し、単純な理由でEFIシステム(Macなど)でGUIDテーブルを使用する可能性があります-WindowsはGUID BIOSを備えたパーティションテーブル(標準PC上にあります)-EFIのみ。

2番目の部分に関しては-fdisk -lは標準パーティションを印刷します(MS DOSで使用されます)。 parted -lは、たとえばLVM論理ボリュームを含むすべての「パーティション」を表示します。

EDIT:パーティションテーブル(バイナリ)をダンプする場合は、dd if=/dev/your_disk count=1を使用します。

3

LinuxをPCにインストールする場合、インストールプログラムは、DOS、OS/2、およびWindowsと互換性のある形式で1つ以上のパーティションを作成します。これは、PC上のパーティションの事実上の標準であるためです。

Linuxを他の種類のハードウェアにインストールする場合、インストールプログラムは異なるパーティションスキームを使用する場合があります。 Linuxは多くの異なるスキームをサポートしています(それらはすべてカーネル構成で確認できます— search CONFIG_.*_PARTITION in /boot/config-*)。

PCでも、さまざまな理由で他のパーティションタイプが表示される場合があります。作成に支障をきたしたため、他のアーキテクチャからディスクを挿入したため、異なるパーティションタイプを使用する別のオペレーティングシステムがあるため(例:* BSD、Solaris)。

ターミナルを開き、最初にドライブを一覧表示します。

Sudo fdisk -l

これに似た出力:

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x2bd2c32a

Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        6375    51200000    7  HPFS/NTFS
/dev/sda2   *        6375        6400      204800   83  Linux
/dev/sda3            6400       19457   104883521   8e  Linux LVM

Disk /dev/dm-0: 103.2 GB, 103238598656 bytes
255 heads, 63 sectors/track, 12551 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

Disk /dev/dm-0 doesn't contain a valid partition table

Disk /dev/dm-1: 4160 MB, 4160749568 bytes
255 heads, 63 sectors/track, 505 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

Disk /dev/dm-1 doesn't contain a valid partition table

Disk /dev/sdb: 2003 MB, 2003828736 bytes
255 heads, 63 sectors/track, 243 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1         243     1951866    c  W95 FAT32 (LBA)

これから、ディスク/ dev/sdbと/ dev/sdaをディスクとして見ることができます。

1つのパーティションテーブルを表示するには、次のようにします。

Sudo fdisk /dev/sda 

Then see the following: 


The number of cylinders for this disk is set to 19457.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): 

「p」を押してパーティションを一覧表示するか、mを押してヘルプを表示します。ここからパーティションテーブルを変更できます。すべて終了したら、「w」を押して変更をディスクに書き込みます。次に、新しいパーティションを作成する場合、たとえばext3の場合、mkfsやGUIベースのツールなどを使用してext3パーティションを作成する必要があります。

1
Chris

Microsoft Windowsのドライブ文字(C:、D:など)とは異なり、Linuxのパーティションは デバイスファイル (/ dev/sda1、/ dev/sda2、/ dev/sdb1など)として表示されます。ルートディレクトリは、パーティションのいずれか1つに作成するか(パーティションが十分に大きい限り)、複数のパーティションに分散させることができます(推奨)。

最新のLinuxディストリビューションでは、ほとんどの場合、ファイルシステムはext2とext3です。ただし、NTFSおよびFAT32からの読み取り/書き込みもサポートします。実行fdisk -l rootとして、ディスクがどのように分割されているかを確認します。

0
qxgzys