Was ist das Äquivalent zum Linux-Befehl "sudo fdisk -l" unter MacOS?

41

Unter Linux sudo fdisk -lerzeugt der Befehl eine Ausgabe, die alle Festplatten und Partitionen im Computer auflistet. Hier ist ein Beispiel:

Beispiel für die Ausgabe von fdisk -l

Wenn ich versuche, sudo fdisk -lMacOS X 10.7.5 zu verwenden, ist die Ausgabe die folgende:

fdisk: illegal option -- l
usage: fdisk [-ieu] [-f mbrboot] [-c cyl -h head -s sect] [-S size] [-r] [-a style] disk
    -i: initialize disk with new MBR
    -u: update MBR code, preserve partition table
    -e: edit MBRs on disk interactively
    -f: specify non-standard MBR template
    -chs: specify disk geometry
    -S: specify disk size
    -r: read partition specs from stdin (implies -i)
    -a: auto-partition with the given style
    -d: dump partition table
    -y: don't ask any questions
    -t: test if disk is partitioned
`disk' is of the form /dev/rdisk0.
auto-partition styles:
  boothfs     8Mb boot plus HFS+ root partition (default)
  hfs         Entire disk as one HFS+ partition
  dos         Entire disk as one DOS partition
  raid        Entire disk as one 0xAC partition

Gibt es in MacOS einen Befehl, um das Verhalten von fdisk -lLinux zu replizieren ?

Vito Gentile
quelle

Antworten:

55

Dazu können Sie das 'diskutil'-Tool verwenden:

% diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage                         499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *498.9 GB   disk1
Teun Vink
quelle
1
@VitoShadow - Stellen Sie sicher, dass Sie die richtige Antwort akzeptieren (ich denke, Sie können auf Ihrem Niveau).
Nerdwaller
Aber was ist, wenn ich den Endblock einer Partition wissen möchte?
Johnboiles
6

Soweit ich mich erinnern kann...

Für Mac OS X:

  1. diskutil( manpage ) ist ein Befehlszeilentool für alles, was Mac OS X kann, dh es bietet so viel oder mehr, als das Festplatten-Dienstprogramm grafisch kann.
  2. Verwenden Sie fdisk( manpage ) für partitionierte MS-DOS-MBR-Laufwerke (Master Boot Record ).
  3. Verwenden Sie für mit Apple APM (Apple Partition Map) partitionierte Laufwerke pdisk( manpage ).
  4. Verwenden Sie für partitionierte Laufwerke von Apple und (U) EFI GPT (GUID Partition Table) gpt( manpage ).

Wenn Sie einen fdisk-ähnlichen GPT-Befehl möchten, sollten Sie gdisk"GPT fdisk" von Rod Smith ausprobieren . Hier finden Sie (wichtige) zugehörige Informationen und hier können Sie Informationen herunterladen .

Für Linux:

Modernes Linux wird partedfür die Partitionierung verwendet, fdiskkann also immer noch vorhanden sein, aber Sie möchten es wirklich partedstattdessen verwenden.

  • GNU Parted parted unterstützt alle gängigen Partitionstabellen, einschließlich MBR, APM und GPT. Die meisten Linux-Distributionen haben gute Handbücher für die Verwendung parted, dh während der Installation, aber ich empfehle immer, die Wikipages von ArchLinux zu lesen - IMHO, sie sind die besten, mit der Ausnahme, dass diese gerade nicht sehr aktuell ist (30.12.2016). !
  • fdiskist nur für MBR-Partitionen. Wenn Sie versuchen, die Partitionstabelle auf einer mit GPT partitionierten Festplatte zu ändern, beschädigen Sie stattdessen den "Schutz-MBR", der Teil der GPT-Spezifikation ist. partedwird dich daran hindern!
  • pdiskwurde von Darwin (der BSD-Basis von Mac OS X) nach Linux portiert, sodass Sie auch pdiskeine APM-Partitionstabelle erstellen und deren Partitionen verwalten können. Das Problem ist, dass moderne Linux-Distributionen kein vorkompiliertes Paket pdiskmehr enthalten. Status der Festplatte
  • mac-fdiskist der Weg, um auf Linux / PowerPC zu gehen. Die meisten x86- (und x64-) Distributionen sind nicht enthalten, mac-fdiskda es sich nur um Big-Endian handelt. Wenn Sie sich Debian ansehen, sehen Sie, dass nur powerpc / powerpc64-Pakete verfügbar sind, mit Ausnahme von experimentellen Paketen für m68k, aber nicht für x86. Das einzige Linux, von dem ich weiß, dass es mac-fdiskauf x86 / amd64 läuft, ist Gentoo Linux .
  • Für GPT-Partitionen partedmacht das einen tollen Job. Wenn Sie ein fdisk-ähnliches Befehlszeilentool möchten, können Sie entweder gptoder verwenden gdisk, obwohl es möglicherweise mehr gibt ...

Zur Beantwortung Ihrer Frage:

fdisk Unter macOS (früher OS X, ursprünglich Mac OS X) verhält es sich genauso, aber Sie sollten nach dem verwendeten Partitionsschema suchen:

  1. x86-PCs (16-Bit, 32-Bit "i386" und 64-Bit "x64") mit BIOS verwenden (d) Master Partition Record (MBR).
  2. Intel Itanium (IA-64), x86-PCs (IA-32, einschließlich 64-Bit, dh amd64, dh x64, dh x86-64 ) mit UEFI und Intel-Macs, die alle EFI / UEFI ( Universal Extensible Firmware Interface) verwenden ), verwenden Sie die GUID-Partitionstabelle (GPT).
  3. Apple Macintosh mit m86k (Motorola 68000-Prozessorserie) und PowerPC verwenden Apple Partition Map (APM).

Dies schränkt das Partitionsschema externer Laufwerke natürlich nicht ein, da alle diese Computer jedes Partitionsschema auf externen Datenträgern verwenden können, wenn das Betriebssystem dies unterstützt. Bei internen Laufwerken, genauer gesagt bei Startlaufwerken, kann nur das eine Partitionierungsschema verwendet werden.

Daher: Wenn Sie fdiskeinen Mac auf einem internen Laufwerk verwenden, haben Sie kein Glück, da sich auf diesem Laufwerk kein MBR befindet. Es ist entweder APM oder GPT. Wenn Sie fdiskauf einem modernen PC mit UEFI (oder einem Intel Mac mit EFI) arbeiten, wird nur der schützende MBR des GPT angezeigt, nicht die tatsächliche Partitionstabelle.

Das Erstellen / Verwalten von Partitionen fdiskauf einem externen Laufwerk mit MBR-Partitionierung funktioniert unter macOS genauso wie unter Linux.

Verwenden Sie zum Auflisten vorhandener Partitionen unter macOS (Mac OS X) sudo diskutil list(siehe auch diesen großartigen Artikel auf OSXDaily.com ). Unter Linux ist der equivilant sudo parted -l, oder wenn Sie nur ein bestimmtes Laufwerk wollen, sudo parted /dev/sda print.

luttztfz
quelle
Und vergessen wir nicht den CoreStorage Logical Volume Manager.
Daniel B
Wenn ich das alles noch einmal durchlese, wird mir klar, dass die kurze Antwort auf die Frage wirklich zu verwenden ist diskutil. Was ich darauf hinweisen wollte, war, dass fdiskPartitionen unter Linux und offensichtlich nicht unter macOS aufgelistet werden können, aber die Verwendung fdiskist riskant, da sie auf MBR-Partitionen beschränkt ist. Moderne Laufwerke sind GPT-partitioniert fdisk- veraltet und daher gefährlich, da nur der schützende MBR-Teil der GPT aufgeführt wird. Linux - Versionen fdiskwurden geändert , als auch GPT - Partitionen zu zeigen, aber macOS Anwendungen diskutil, so dass es scheint nie wirkliche Notwendigkeit zu verwenden war -lmit fdisksowieso.
Luttztfz
Es wird noch verwirrender, weil es GPT-fähige Versionen fdiskfür Linux gibt. Persönlich denke ich, dass es auch weit überlegen partedist.
Daniel B
@DanielB: Ja, wie ich bereits erwähnte, wurden einige Linux-Versionen fdiskfür die Verwendung mit GPT geändert. gdiskMeiner Meinung nach ist das einzige wirklich großartige Tool für GPT unter Linux und MacOS zB "gpt-fdisk", es gptwird aber auch funktionieren und nur unter Linux partedwird die Arbeit richtig machen. Mit BootCamp oder anderen Multiboot-Setups wird es noch komplizierter, ganz zu schweigen von der Standardausrichtung und 4k-Sektoren, auch bekannt als „Advanced Format“. Ich finde es einfach interessant, dass - fdiskeindeutig ein MS-DOS-Protokollname für ein Partitionierungstool - immer noch in den Köpfen der Leute ist, um Partitionen aufzulisten, selbst auf modernen Systemen.
Luttztfz
3

Verwenden Sie einfach fdisk / dev / rdisk0, um CHS und den Endblock einer Partition abzurufen

LiuJianweis-iMac:~ liujianwei$ sudo fdisk /dev/rdisk0
Password:
Disk: /dev/rdisk0   geometry: 15566/255/63 [250069680 sectors]
Signature: 0xAA55
        Starting       Ending
 : id  cyl  hd sec -  cyl  hd sec [     start -       size]
1: EE 1023 254  63 - 1023 254  63 [         1 -  250069679] <Unknown ID>
2: 00    0   0   0 -    0   0   0 [         0     -      0] unused      
3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
4: 00    0   0   0 -    0   0   0 [         0 -          0] unused 
Messerkopf
quelle
1
Ich habe fdisk: /dev/rdisk0: Operation not permittedauch, wenn sudo Passwort gegeben wird
Chang Qian
Funktioniert bei mir. Vielleicht funktioniert es nur für MBR-Partitionen? Eigentlich habe ich nur /dev/disk0eher als /dev/rdisk0. Ich bin nicht sicher, was der Zusatz rimpliziert; Ich habe es nie benutzt.
Eingebildet