Mit können Sie parted -lden Typ der Partitionstabelle bestimmen. Z.B:
$ sudo parted -l
Model: ATA TOSHIBA THNSNS25 (scsi)
Disk /dev/sda: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 4194kB 32.2GB 32.2GB primary ext4 boot
2 32.2GB 256GB 224GB primary ext4
Model: ATA Hitachi HDT72101 (scsi)
Disk /dev/sdb: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 32.2GB 32.2GB primary ext4 boot
2 32.2GB 996GB 964GB primary ext4
3 996GB 1000GB 4295MB primary linux-swap(v1)
Das Partition TableFeld zeigt, dass ich msdosauf beiden Festplatten eine MBR-Partitionstabelle verwende (die noch immer für Linux und Windows üblich ist). Auf dieser manSeite partedkönnen Sie die folgenden Arten von Partitionstabellen erstellen (und somit hoffentlich identifizieren) (oder allgemeiner: Datenträgerbezeichnung):
bsd
dvh
gpt - this is a GPT partition table
loop - this is raw disk access without a partition table
mac
msdos - this is a standard MBR partition table
pc98
sun
Aktualisieren
Es lohnt sich, den Befehl zum Auflisten einer einzelnen Partition hinzuzufügen, da dies ohne etwas Wissen nicht offensichtlich ist partedund es schwierig sein kann, die benötigten Daten zu finden, wenn mehrere Laufwerke vorhanden sind. Denn /dev/sdadu würdest tun:
Das ist ein großartiger Befehl, Graeme. Obwohl ich seit mehreren Jahren Linux benutze, hatte ich es nie wirklich bemerkt. Vielen Dank!
Tim
3
parted /dev/sda pwird auch tun.
So
ich musste "sudo parted -l" machen
Santropedro
33
Unter Linux können Sie dies mit dem gdiskTool überprüfen , das für jede Distribution verfügbar sein sollte.
gdisk -l /dev/sda
Hier /dev/sdaist der Geräteknoten des physischen Laufwerks , nicht eine Trennwand ( /dev/sda1, /dev/sda2usw. sind Partitionen).
Wenn Sie etwas sehen, das Folgendes beinhaltet:
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory.
***************************************************************
Sie haben eine MBR-Festplatte. Keine Sorge, das hat nicht geschadet.
Wenn diese Warnung nicht angezeigt wird, verfügen Sie über einen GPT-Datenträger oder einen Hybrid-GPT / MBR- Datenträger. Letztere werden hauptsächlich auf Apple-Computern verwendet, die zum Dual-Booten von MS Windows-Versionen vorgesehen sind, die GPT nicht unterstützen. gdiskwird dies anzeigen mit:
Found valid GPT with hybrid MBR; using GPT
Sie können auch in anderen Situationen verwendet werden, in denen Unterstützung für beide Stile erforderlich ist.
Oder der umgekehrte Versuch, cfdiskeine GPT-Partition zu verwenden, führt ebenfalls zu einer Warnung.
Orion
Wenn es nicht installiert und nicht in einem gdiskPaket enthalten ist, befindet es sich im gptfdiskPaket ... zumindest auf Gentoo.
2
@orion würde ich nicht empfehlen, da einige Versionen von Tools GPT mögen fdiskoder cfdiskunterstützen und daher keinen Fehler anzeigen .
Goldlöckchen
Bei mir gdiskerkennt GPT eine hybride + MBR Partitionstabelle und gibt Found valid GPT with hybrid MBR; using GPT.. Dies scheint die einzige Methode zu sein, die eine Hybridtabelle erkennt.
Graeme
@Graeme: Danke. Mir war dies nicht bekannt (die ursprüngliche Hybridreferenz wurde von Stephane Chazelas herausgegeben), aber ich las ein bisschen und fügte einige Details hinzu.
Goldlöckchen
17
Da das Betriebssystem nicht spezifiziert wurde, sehen Sie hier die Vorgehensweise von FreeBSD .
Alles geschieht über den gpartBefehl (kurz für GEOM Partioner - nichts mit GNU zu tun).
Ein einfaches Beispiel gpart showwürde Ihnen alle verfügbaren Partitionen aller Festplatten anzeigen, Sie können jedoch das Gerät angeben, um eine genauere Übersicht zu erhalten:
Legacy - Partitionslayout mit MBR (auch bekannt als „MS - DOS“) und BSD Partitionsschemas (a 2-Level - Partitionierung wurde in der Regel für BSD - Systeme erforderlich, es sei denn , die vollständige Platte verwendet wird ):
$ sudo /lib/udev/udisks-part-id /dev/sda
using device_file=/dev/sda syspath=/sys/devices/pci0000:00/0000:00:0b.0/ata1/host0/target0:0:0/0:0:0:0/block/sda, offset=0 ao=0 and number=0 for /dev/sda
Entering MS-DOS parser (offset=0, size=500107862016)
MSDOS_MAGIC found
found partition type 0xee => protective MBR for GPT
Exiting MS-DOS parser
Entering EFI GPT parser
GPT magic found
partition_entry_lba=2
num_entries=128
size_of_entry=128
Leaving EFI GPT parser
EFI GPT partition table detected
UDISKS_PARTITION_TABLE=1
UDISKS_PARTITION_TABLE_SCHEME=gpt
UDISKS_PARTITION_TABLE_COUNT=4
Oben habe ich ein Laufwerk mit hybrider GPT + MS-DOS-Partitionierung. In diesem Fall ignoriert der Linux-Kernel die MS-DOS-Partitionierung, weshalb udisksUDISKS_PARTITION_TABLE_SCHEME auf gpt gesetzt wird.
Das Tool udisks-part-id wird zum Auffüllen der udev-Datenbank verwendet. Wenn Sie also udisksinstalliert haben, sollten Sie in der Lage sein, diese Informationen auch als nicht privilegierter Benutzer abzufragen:
Beachten Sie, dass Sie eine ähnliche Ausgabe erhalten, unabhängig davon, ob es eine hybride GPT + MBR gibt oder nicht. GPT erfordert einen gefälschten MBR mit einer einzelnen vollständigen Festplattenpartition des Typs 0xee. In einem Hybrid ist dies ein normaler MBR mit einer 0xeePartition (und möglicherweise größeren Problemen, wenn die MBR-Daten nicht mehr mit den GPT-Daten synchron sind).
Graeme
6
Verwenden
$ sudo fdisk -l
Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x987c1a05
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 999423 997376 487M 83 Linux
/dev/sda2 1001470 250068991 249067522 118.8G 5 Extended
/dev/sda5 1001472 250068991 249067520 118.8G 8e Linux LVM
Siehe Disklabel-Typ: dos . Wenn dos angezeigt wird, handelt es sich um ein MBR-Schema, ansonsten um ein GPT-Schema
Antworten:
Mit können Sie
parted -l
den Typ der Partitionstabelle bestimmen. Z.B:Das
Partition Table
Feld zeigt, dass ichmsdos
auf beiden Festplatten eine MBR-Partitionstabelle verwende (die noch immer für Linux und Windows üblich ist). Auf dieserman
Seiteparted
können Sie die folgenden Arten von Partitionstabellen erstellen (und somit hoffentlich identifizieren) (oder allgemeiner: Datenträgerbezeichnung):Aktualisieren
Es lohnt sich, den Befehl zum Auflisten einer einzelnen Partition hinzuzufügen, da dies ohne etwas Wissen nicht offensichtlich ist
parted
und es schwierig sein kann, die benötigten Daten zu finden, wenn mehrere Laufwerke vorhanden sind. Denn/dev/sda
du würdest tun:quelle
parted /dev/sda p
wird auch tun.Unter Linux können Sie dies mit dem
gdisk
Tool überprüfen , das für jede Distribution verfügbar sein sollte.Hier
/dev/sda
ist der Geräteknoten des physischen Laufwerks , nicht eine Trennwand (/dev/sda1
,/dev/sda2
usw. sind Partitionen).Wenn Sie etwas sehen, das Folgendes beinhaltet:
Sie haben eine MBR-Festplatte. Keine Sorge, das hat nicht geschadet.
Wenn diese Warnung nicht angezeigt wird, verfügen Sie über einen GPT-Datenträger oder einen Hybrid-GPT / MBR- Datenträger. Letztere werden hauptsächlich auf Apple-Computern verwendet, die zum Dual-Booten von MS Windows-Versionen vorgesehen sind, die GPT nicht unterstützen.
gdisk
wird dies anzeigen mit:Sie können auch in anderen Situationen verwendet werden, in denen Unterstützung für beide Stile erforderlich ist.
quelle
cfdisk
eine GPT-Partition zu verwenden, führt ebenfalls zu einer Warnung.gdisk
Paket enthalten ist, befindet es sich imgptfdisk
Paket ... zumindest auf Gentoo.fdisk
odercfdisk
unterstützen und daher keinen Fehler anzeigen .gdisk
erkennt GPT eine hybride + MBR Partitionstabelle und gibtFound valid GPT with hybrid MBR; using GPT.
. Dies scheint die einzige Methode zu sein, die eine Hybridtabelle erkennt.Da das Betriebssystem nicht spezifiziert wurde, sehen Sie hier die Vorgehensweise von FreeBSD .
Alles geschieht über den
gpart
Befehl (kurz für GEOM Partioner - nichts mit GNU zu tun).Ein einfaches Beispiel
gpart show
würde Ihnen alle verfügbaren Partitionen aller Festplatten anzeigen, Sie können jedoch das Gerät angeben, um eine genauere Übersicht zu erhalten:Legacy - Partitionslayout mit MBR (auch bekannt als „MS - DOS“) und BSD Partitionsschemas (a 2-Level - Partitionierung wurde in der Regel für BSD - Systeme erforderlich, es sei denn , die vollständige Platte verwendet wird ):
$
gpart show
modernes Partitionslayout mit GPT :
$
gpart show /dev/ada2
Weitere Informationen finden Sie im
gpart
Handbuch .quelle
Mit
udisks
unter Linux:Oben habe ich ein Laufwerk mit hybrider GPT + MS-DOS-Partitionierung. In diesem Fall ignoriert der Linux-Kernel die MS-DOS-Partitionierung, weshalb
udisks
UDISKS_PARTITION_TABLE_SCHEME auf gpt gesetzt wird.Das Tool udisks-part-id wird zum Auffüllen der udev-Datenbank verwendet. Wenn Sie also
udisks
installiert haben, sollten Sie in der Lage sein, diese Informationen auch als nicht privilegierter Benutzer abzufragen:quelle
0xee
. In einem Hybrid ist dies ein normaler MBR mit einer0xee
Partition (und möglicherweise größeren Problemen, wenn die MBR-Daten nicht mehr mit den GPT-Daten synchron sind).Verwenden
Siehe Disklabel-Typ: dos . Wenn dos angezeigt wird, handelt es sich um ein MBR-Schema, ansonsten um ein GPT-Schema
quelle
In meinen Alpine Linux Partition-Skripten verwende ich:
quelle
fdisk -l /dev/sda | grep -i disklabel
gibt es nichts zurück ( GNU Fdisk 1.3.0a ).Sie können verwenden
blkid
.Beispiele mit Ausgabe:
Oder in einem Skript mit der
-o value
Option:quelle