Ändern Sie die Größe der Partition und des Dateisystems im Disk Image

1241
Duncan X Simpson

Ich habe ein RAW-Image mit zwei Partitionen und einem ext2- bzw. ext3-Dateisystem. Ich möchte die Größe der letzten Partition um ein Gigabyte erweitern und die Größe des Dateisystems ändern. Wie kann ich das machen?

1
Hallo. Ich habe gerade Ihre vorgeschlagene Bearbeitung an [Asterisk / FreePBX hinter pfSense - kein Audio ein- / ausgegeben] (https://superuser.com/q/1251829/150988) aus zwei Gründen abgelehnt: (1) Die Frage scheint mehr auf Asterisk zu sein Da es sich um FreePBX handelt, schien das Löschen des Tags [tag: asterisk] durch [tag: freepbx] unangemessen. Ich weiß gar nicht, was FreePBX mit der Frage zu tun hat - es wird * nur * im Titel erwähnt, nicht im Fragenkörper. (Vorschlag: Wenn Sie einer Frage ein Tag hinzufügen möchten, das bereits fünf relevante Tags enthält,… (Fortsetzung)) Scott vor 5 Jahren 0
(Forts.)… Erwägen Sie in diesem Fall das * allgemeine * Eins - [Tag: Networking] zu löschen.) (2) Sie haben einige Probleme in der Frage ignoriert. Wenn Sie einen Beitrag bearbeiten möchten (eine Frage oder Antwort), versuchen Sie, ihn so gut wie möglich zu verbessern. Scott vor 5 Jahren 0
@Scott Danke für das Feedback. Der Teil, der besagt "Dies sind die begleitenden Einstellungen, die ich auf Asterisk habe:" ist falsch, da dies ein FreePBX-Screenshot ist. Wenn Sie FreePBX verwenden, sind Asterisk-Antworten wahrscheinlich weniger hilfreich, da die Benutzeroberfläche von FreePBX lächerliche Dinge an den Konfigurationsdateien anstellt. Alle Änderungen, die Sie direkt an Asterisk vornehmen, werden bei der nächsten Anwendung von FreePBX überschrieben. Der Grund, weshalb ich mich für das Löschen eines Sterns entschieden habe, ist, dass die Frage meistens die Vernetzung ist. Davon abgesehen, kann ich sehen, dass Antworten mit Sternchen dort anwendbar sind, also werde ich eine andere Bearbeitung vornehmen. Duncan X Simpson vor 5 Jahren 0

1 Antwort auf die Frage

1
davidgo

Erstens besteht in diesem Prozess ein Risiko, und die Dinge können sich leicht unterscheiden, je nachdem, welche Annahmen ich getroffen habe und die falsch sein könnten. Sichern Sie Ihre Daten, bevor Sie dies versuchen.

Hinweis zu den folgenden Hinweisen: Die Schritte 3 - 6 sind möglicherweise zu vermeiden, wenn Sie gparted verwenden, um diese Schritte über eine GUI zu automatisieren.

Nach dem Backup sind die Schritte:

  1. Stellen Sie sicher, dass das Bild nicht bereitgestellt ist und nicht verwendet wird.

  2. Erweitern Sie die Größe des Images der virtuellen Festplatte. Normalerweise verwende ich dafür qemu-resize. Sie können wahrscheinlich nur dd -bs = X count = y >> iso.img verwenden, um das Bild zu erweitern. Der Doppelpfeil ist sehr wichtig, ein einzelner Pfeil wird Ihr vorhandenes Bild nuken.

  3. Abhängig von Ihren Tools müssen Sie möglicherweise ein Loopback-Gerät erstellen, um das RAW-Image in eine virtuelle Festplatte zu konvertieren. Dazu können Sie losetup / dev / loop0 / path / to / block verwenden. Dies erstellt / dev / loop0, das Sie verwenden können, anstatt auf die zugrunde liegende Datei zu verweisen.

  4. Verwenden Sie Ihren Partitionsmanager, um die Größe der Festplatte zu ändern. Normalerweise verwende ich fdisk. Der erste Schritt besteht darin, die Informationen der Partitionen auszugeben. Der zweite Schritt besteht darin, die letzte Partition zu löschen und sie unter Verwendung des identischen Startblocks neu zu erstellen und sicherzustellen, dass das Attribut des Dateisystemtyps korrekt ist und das startfähige Flag korrekt gesetzt ist (wahrscheinlich deaktiviert). Sie können dies dann auf die Festplatte schreiben.

  5. Geben Sie kpartx / dev / loop0 ein. Dadurch wird / dev / mapper / loop0pX erstellt, sodass Sie direkt auf die Partitionen zugreifen können.

  6. Verwenden Sie resize2fs / dev / mapper / loop0pX, um die Größe zu ändern. Beachten Sie, dass dieser Befehl möglicherweise als etwas anderes bezeichnet wird. resize4fs ist eine gängige Alternative.

  7. Verwenden Sie ggf. dmsetup remove / dev / mapper / loop0pX

  8. Verwenden Sie losetup -D / dev / loop0, um das Blockgerät zu entfernen.

Vielen Dank! Das kpartx-Tool ist der Schlüssel, den ich vermisst habe. Upvoted, und ich akzeptiere einmal getestet. Duncan X Simpson vor 7 Jahren 0
Am Ende fand ich heraus, wie man losetup auf eine andere Art und Weise nutzte, um Partitionierungsgeräte herzustellen (ich konnte kpartx nicht auf meiner Arch-Box bekommen), aber das brachte mich zur Antwort. Duncan X Simpson vor 7 Jahren 0