So ändern Sie die Größe einer GPT-Partition mit dem Parted-Befehlszeilentool. (Mithilfe der SSH-Rettungsumgebung.)

So ändern Sie die Größe einer GPT-Partition mit dem Parted-Befehlszeilentool. (Mithilfe der SSH-Rettungsumgebung.)

Ich habe einen Remote Dedicated Server ohne Online-Kontrollfeld, um die Größe der Partitionen nach der ersten Betriebssysteminstallation zu ändern. Daher verwende ich die auf Debian basierende Rettungsumgebung, um die nicht gemounteten Partitionen zu manipulieren. Das Problem ist, dass ich ein bisschen dumm bin, wenn es um die Manipulation von Partitionen auf Remote-Laufwerken geht. Ich habe versucht, das Befehlszeilentool GNU Parted zu verwenden, da GParted keine Option ist und fdisk nutzlos ist, da das Laufwerk mit GPT formatiert ist, nur um herauszufinden, dass der Befehl zur Größenänderung ab Version 2.4 entfernt wurde. Nachfolgend finden Sie eine Liste meiner Partitionen aus dem Druckbefehl von Parted:

Number  Start   End     Size    File system     Name     Flags
1      20.5kB  1049kB  1029kB                  primary  bios_grub
2      2097kB  21.0GB  21.0GB  ext4            primary
3      21.0GB  2000GB  1979GB  ext4            primary
4      2000GB  2000GB  536MB   linux-swap(v1)  primary

Ich muss herausfinden, wie ich Partition Nr. 3 auf etwa 1,2 TB verkleinern und dann Partition Nr. 2 erweitern kann, um das zu füllen, was verschoben wurde, als Partition Nr. 3 verkleinert wurde. Meine Partition Nr. 2 ist voll und die Partition Nr. 3 hat noch Platz übrig.

Antwort1

Das gewünschte Ergebnis ist möglicherweise möglich oder nicht, je nachdem, was derzeit gemountet ist (und sein muss) und ob Sie von einem anderen Medium booten können, um Mount-Probleme zu umgehen. Folgende Faktoren sind hierbei zu berücksichtigen:

  • Denken Sie immer an den Unterschied zwischen einemPartition(eine einfache Datenstruktur, die den Start- und Endpunkt eines Speicherplatzblocks definiert, normalerweise zusammen mit anderen Dingen wie einem Typcode) und einemDateisystem(eine komplexere Datenstruktur, die in einer Partition oder einem anderen Container gespeichert ist, wie z. B. ein logisches Volume eines LVM). Wenn Sie diesen Unterschied noch nicht vollständig verstehen, halten Sie jetzt inne und informieren Sie sich darüber.
  • Sie können die Größe eines gemounteten ext2/3/4-Dateisystems vergrößern, aber meines Wissens nach können Sie die Größe eines gemounteten ext2/3/4-Dateisystems nicht verkleinern. Das resize2fsDienstprogramm erledigt diese Aufgabe über die Befehlszeile.
  • Um die Größe einer Partition zu ändern, müssen Sie die Partition möglicherweise löschen und an ihrer Stelle eine neue erstellen. Die Start- und Endpunkte müssen möglicherweise mit Sektorgenauigkeit angegeben werden, was partedstandardmäßig nicht der Fall ist. Sie müssen festlegen, unit sum dies zu erreichen; oder Sie können verwenden gdisk, was standardmäßig Sektorgenauigkeit bietet. ( gdiskAber selbst richtet Partitionen standardmäßig automatisch auf 2048 Sektorwerte aus, daher müssen Sie die Ausrichtung möglicherweise mit der dOption im Expertenmenü anpassen.)
  • Bei Dateisystemgrößenänderungen bleibt der Startpunkt des Dateisystems normalerweise unverändert. Wenn Sie also den Startpunkt einer Partition verschieben müssen, müssen Sie dies mit ddoder einem anderen Tool tun, um den gesamten Inhalt des Dateisystems zu verschieben. Abhängig von der Richtung der Verschiebung muss dies möglicherweise vor oder nach dem Löschen der ursprünglichen Partition erfolgen, und die neue Partition muss möglicherweise vor oder nach dem Verschieben erstellt werden. Wenn der Verschiebevorgang den ursprünglichen Speicherort überlappt, müssen SiesehrGehen Sie dabei vorsichtig vor, damit Sie keine Partitionsdaten zerstören!
  • Seien Sie sehr vorsichtig mit den Endpunkten von Partitionen und Dateisystemen. Wenn Sie ein Dateisystem verkleinern und dann eine neue Partition erstellen, die nur ein wenig zu klein ist, können Sie wichtige Daten verlieren. Ich empfehle, das Dateisystem kleiner als beabsichtigt zu verkleinern, eine neue Partition zu erstellen und resize2fsdas Dateisystem dann auf die Größe der neuen umgebenden Partition zu vergrößern. Dieses Verfahren minimiert die Wahrscheinlichkeit einer Größeninkongruenz.
  • Denken Sie daran, dass Sie nach der Änderung der Partitionstabelle möglicherweise einen Neustart durchführen müssen, damit der Kernel die neue Tabelle verwendet.

Aufgrund dieser Probleme kann der Versuch, das Gewünschte ohne die Hilfe von GParted oder einem anderen Tool zur Koordination von Partitions- und Dateisystemänderungen zu erreichen, äußerst riskant sein. Esdürfenkann gemacht werden, aber ein Fehler bei der Angabe eines Sektorwerts kann dazu führen, dass Ihre Festplatte völlig wertlos ist. Die Tatsache, dass Sie diesbezüglich um Hilfe bitten, macht mich vorsichtig, Ihnen überhaupt den Versuch vorzuschlagen; das Risiko, ein Produktionssystem zu zerstören, ist für jemanden, der so etwas noch nie gemacht hat, einfach zu groß. Wenn Sie keine andere Möglichkeit haben, empfehle ich Ihnen dringend, Ihren Server lokal neu zu erstellen und an der Kopie zu üben, bevor Sie es auf Ihrem Remote-Server versuchen.

Möglicherweise möchten Sie einige Alternativen in Betracht ziehen:

  • Verwenden Sie GParted-- Wenn Sie von einem externen Medium booten können, können Sie GParted verwenden. Sie sagen, dies sei ein Remote-Server. Viele dieser Systeme bieten einen BMC, mit dem Sie virtuelle USB-Laufwerke anschließen und über ein Java-Applet eine virtuelle Konsole anzeigen können. Die Verwendung dieser Funktion ist extrem langsam, sollte es Ihnen jedoch ermöglichen, GParted auszuführen und Ihre Änderungen viel einfacher und sicherer vorzunehmen.
  • Erstellen zusätzlicher Partitionen-- Sie können möglicherweise eine Partition verkleinern und dann, anstatt die andere zu verschieben und zu vergrößern, eine neue Partition erstellen. Sie verschieben dann Daten aus einem Unterverzeichnis in die neue Partition und mounten sie an Stelle dieses Unterverzeichnisses. Dieser Ansatz teilt im Grunde den Unterschied; Sie müssen immer noch eine Partition verkleinern, vermeiden aber die gefährlichere und schwierigere Verschiebungsoperation.
  • Symlinks verwenden-- Sie können Ihr Ziel möglicherweise erreichen, indem Sie einige Dateien von Ihrer zu vollen Partition auf die weniger volle Partition verschieben und sie dann mithilfe symbolischer Links über die gewünschten Pfade zugänglich machen. Dies ist wahrscheinlich der sicherste Ansatz.
  • Neu installieren-- Wenn Sie über eine entsprechende Sicherung verfügen, können Sie das System sichern, mit einem besseren Setup neu installieren und Ihre Originaldaten wiederherstellen.
  • Machen Sie es vor Ort-- Wenn Sie physischen Zugriff auf Ihre Server haben oder Hilfe vor Ort haben, können Sie (oder Ihre Hilfe) dies persönlich erledigen, genau wie bei einem Desktop-System, indem Sie einen USB-Stick zur Ubuntu-Installation verwenden. Je nachdem, wie wichtig dies ist und wo sich der Server in Bezug auf Sie befindet, kann es sogar eine Reise wert sein, um die Arbeit zu erledigen.
  • Hinzufügen eines Datenträgers-- Sie könnten, sofern möglich, das Hinzufügen einer Festplatte in Erwägung ziehen und einen Teil Ihrer Daten darauf verschieben.

In Zukunft möchten Sie vielleicht in Betracht ziehen,Logische Datenträgerverwaltung (LVM),wodurch derartige Manipulationen viel einfacher und sicherer werden. LVM erfordert eine beträchtliche Lernkurve, aber wenn Sie die Grundlagen erst einmal verstanden haben, ist es eine große Hilfe, da Sie sich keine Gedanken über das Verschieben von Partitionen machen müssen. Dateisysteme werden wie Dateien in einem Dateisystem gespeichert. Wenn Sie also eins verkleinern, können Sie ein anderes in den freien Speicherplatz erweitern, ohne den Startpunkt zu ändern. LVM hilft Ihnen auch dabei, Speicherplatz in Form neuer Festplatten hinzuzufügen.

Antwort2

Als vorübergehende Lösung habe ich einen Artikel gelesen, in dem es hieß, dass 70 % des belegten Speicherplatzes vom Webserver stammten, genauer gesagt von /var/www. Also habe ich Folgendes getan:

cd /var
mv www /home
ln -s /home/www www
ll
lrwxrwxrwx  1 root root      9 Oct 18 12:33 www -> /home/www/

Wie gesagt, eine vorübergehende Lösung, aber mein Stammverzeichnis ist jetzt nur noch zu 30 % statt zu 100 % voll. Bis ich die Partitionsgröße ändern kann, wird das also funktionieren.

verwandte Informationen