Wie kann ich die primäre Partition mit „Free Space“ zusammenführen, wenn sich zwischen ihnen eine Linux ext4-Partition befindet?

Früher hatte ich nur eine 500-GB-SSD für mein MacBook Pro, stieß aber später auf eine 1-TB-SSD, auf die ich umsteigen wollte. pv /dev/rdisk0 > /dev/rdisk(x)Anstatt die "empfohlene" Methode zu verwenden, habe ich mich für die schmutzige Route entschieden und einfach einen anderen MBP im Target Disk Mode über Thunderbolt angeschlossen und x = welche Festplatte auch immer für die 1 TB zu der Zeit verwendet .

Bevor ich jedoch den gesamten Inhalt auf die 1-TB-SSD kopierte, habe ich rEFInd verwendet und eine Kopie von Kali Linux als Dual-Boot installiert, das ich seit geraumer Zeit mit ... minimalen Problemen ausführe.

Die „schmutzige“ Kopie funktionierte also wie geplant, die 1-TB-SSD bootet einwandfrei und nach einer schnellen Neuinstallation von rEFInd läuft alles perfekt wie immer – außer dass ich jetzt ganz am Ende zusätzliche 500 GB „freien Speicherplatz“ habe 1 TB SSD.

Ich habe versucht, von einem externen OS X-Laufwerk zu booten und das Festplatten-Dienstprogramm (sowohl vom Yosemite-Festplatten-Dienstprogramm als auch vom El Capitan-Festplatten-Dienstprogramm) zu verwenden, um alles zu erweitern/zusammenzuführen/zu löschen/zu erstellen, was mit diesem „freien Speicherplatz“ zu tun hat – ohne funktionierende Ergebnisse .

Meine Frage lautet also: Wie kann ich diese 500 GB Speicherplatz am ENDE meiner 1-TB-SSD zurückgewinnen, ohne die anderen Partitionen (einschließlich primäres OS X, Wiederherstellung, rEFInd, Kali Linux und Linux Swap) zu gefährden, und sie mit meiner zusammenführen primäre Partition, damit ich diesen Speicherplatz tatsächlich nutzen kann?

Hier sind einige Bilder meines Partitionslayouts und andere verschiedene Informationen, um zu verstehen, was ich meine ...

Festplattendienstprogramm Yosemite

Festplattendienstprogramm El Capitan

Diskutil-Liste

Antworten (2)

Wenn Sie zögern, ddIhre Daten mit Time Machine zu partitionieren oder zu sichern und wiederherzustellen, können Sie die erste OS X-Partition Ihrer Festplatte in ein physisches Volume konvertieren und eine logische Volume-Gruppe erstellen. Nachdem Sie eine zweite Partition im freien Speicherplatz erstellt haben, können Sie diese zu Ihrem LVG hinzufügen und Ihr aktuelles logisches Volume erweitern.

Der Ansatz ähnelt einem Fusion Drive (zwei physische Volumes -> eine logische Volume-Gruppe/logisches Volume), verwendet jedoch nur eine Festplatte.

  • Booten Sie auf Macintosh HD
  • Schließen Sie ein Backup-Laufwerk an und verwenden Sie Time Machine, um Macintosh HD zu sichern.
  • Trennen Sie das Sicherungslaufwerk
  • Öffnen Sie das Festplattendienstprogramm und fügen Sie eine JHFS+-Partition im freien Speicherplatz hinzu (~500 GB)
  • Geben Sie ein diskutil list, um alle Partitionen aufzulisten
  • Geben Sie ein diskutil cs convert /dev/disk0s2, um Ihr Hauptvolume in CoreStorage zu konvertieren
  • Geben Sie ein diskutil cs list, um alle CoreStorage-Elemente zu erhalten
  • Geben Sie ein diskutil cs addDisk lvgUUID diskYsZ, um die neue leere 500-GB-Partition als physisches Volume zur logischen Volume-Gruppe hinzuzufügen.

    lvgUUID ist die UUID der Logical Volume Group, diskYsZ ist die Festplattenkennung der leeren Partition mit 500 GB (wahrscheinlich disk0s6). Der Inhalt der Partition wird zerstört!

  • Geben Sie ein diskutil cs resizeVolume lvUUID size, um Macintosh HD zu erweitern.

    lvUUID ist die UUID des Logical Volume, size : Größe in t, g, m, k oder b (in Ihrem Fall ~850g. Wenn Sie eine Fehlermeldung bezüglich fehlenden Speicherplatzes erhalten, verwenden Sie eine etwas kleinere Größe wie 849g).

  • Geben Sie diskutil verifyDisk disk0und ein diskutil verifyVolume disk0s2.

Die Profis:

Es ist schnell; es dauert ungefähr 3 minuten.

Die Nachteile:

Ihr CoreStorage LVG ist nicht zusammenhängend und „fragmentiert“.

Das Festplatten-Dienstprogramm kann Ihnen nicht dabei helfen, die Größe Ihrer ursprünglichen Partition zu ändern, indem es sie mit freiem Speicherplatz zusammenführt, wenn sich in der Mitte eine andere Partition befindet.

Sie müssen zuerst die Rescue- und Linux-Partitionen an das Ende der Festplatte verschieben – zum Glück haben Sie dafür genügend freien Speicherplatz. Beginnen Sie damit, zwei neue Partitionen am Ende des Laufwerks zu erstellen, die genau die gleichen Größen wie Ihre Wiederherstellungs- und Linux-Partitionen haben. Verwenden Sie dann dd, um die beiden Dateisysteme an ihren neuen Speicherort zu verschieben.

Danach können Sie die ursprüngliche Wiederherstellungs- und Linux-Partition entfernen und die Größe der Macintosh-Partition ändern. Dann müssen Sie schließlich die Größe des Dateisystems ändern, das in der Macintosh-Partition enthalten ist.

Es ist eine komplizierte Route, aber dies ist der richtige Weg, wenn Sie alles auf derselben Festplatte erledigen möchten.

Wenn Sie eine separate USB-Festplatte oder ähnliches mit ausreichend Speicherplatz haben, ist es viel einfacher, einfach alles auf deren zu sichern und dann Ihre neue 1-TB-SSD von Grund auf neu zu partitionieren und neu zu formatieren.