Ubuntu: Ändern Sie die Größe der Root-LVM-Partition (2?)


10

Ich habe eine virtuelle Ubuntu-Maschine, die in VirtualBox 2.2.4 ausgeführt wird, und ich habe sie auf einer virtuellen 8-GB-Festplatte erstellt, die zu klein ist.

Also versuche ich, die Festplatte zu vergrößern. Bisher habe ich Folgendes getan:

  1. Erstellt eine neue größere virtuelle Festplatte
  2. Die 2. Festplatte wurde zur Maschine hinzugefügt
  3. Mit CloneZilla wurde die erste Festplatte auf die zweite Festplatte geklont
  4. Die erste Festplatte wurde entfernt
  5. Von der 2. (größere Festplatte) hochgefahren

Aber jetzt stecke ich immer noch mit einer 8-GB-Partition auf meiner neuen virtuellen 100-GB-Festplatte fest.

Was ist der einfachste Weg von hier zu einer 100-GB-Partition? :) Ich nehme an, GPart kann die Größe von Partitionen ändern, aber es scheint keine LVM2-Partitionen zu unterstützen, was meine zu sein scheint.

Danke

  • Alex

Antworten:


5

Im Allgemeinen erfahren Sie hier, wie Sie die Größe von LVM-Volumes ändern:

Sagen wir /mountpointist an /dev/VolGroup00/mountpoint. Sie können dies herausfinden, indem Sie auschecken /etc/fstaboder ausführen mount -l.

Abhängig von Ihrem Setup müssen Sie möglicherweise auch die Größe des tatsächlichen physischen Volumes ändern. Verwenden pvdisplaySie diese Option , um herauszufinden, ob sie groß genug ist, und verwenden Sie sie pvresize(ähnlich wie lvresizeunten), falls erforderlich.

umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint

Dies entspricht dem Umounting, der Größenänderung des zugrunde liegenden LVM und der Größenänderung der tatsächlichen ext3-Partition.

Ein paar Dinge, auf die Sie achten sollten:

  1. Offensichtlich unterscheidet sich das Spielen mit /einer Datenpartition. Sie können eine Bootdiskette wie müssen Sysrescuecd statt es zu leben zu tun. Siehe auch Kristofs Kommentar unten - möglicherweise können Sie dies tatsächlich tun, ohne die Montage aufzuheben /.
  2. lvresize bietet einige verschiedene Syntaxoptionen. Wenn Sie ein logisches Volume reduzieren, wird die überlagerte Partition wahrscheinlich beschädigt. Weitere Informationen finden Sie in Ihren lokalen Manpages .

Vielen Dank, das sieht vielversprechend aus. Können Sie mir eine LiveCD vorschlagen, die möglicherweise LVM-Tools enthält?
user12259

Sysrescuecd ist nett ( sysresccd.org )
Zoredache

5
ext2 / 3/4 unterstützt das Live-Wachstum Ihres Dateisystems. Sie müssen Ihre Partitionen nicht aushängen oder e2fsck. resize2fs ist auch clever genug, um die Größe der Partition (oder des logischen Volumes) herauszufinden, auf der es sich befindet. Wenn Sie keine Größe angeben, wird diese nur vergrößert, um den gesamten verfügbaren Speicherplatz auszufüllen.
Kristof Provost

Ich habe versucht, "sudo resize2fs / dev / sda1" und es antwortete: "resize2fs: Gerät oder Ressource beschäftigt beim Versuch, pen / dev / sda1 konnte keinen gültigen Dateisystem-Superblock finden"
user12259

1
lvresize ändert die Größe des physischen Volumes nicht. Muss ich das nicht zuerst tun?
user12259

2

Es gab einen (und nur einen) Weg, dies zu tun, und ich habe eine Vielzahl von Möglichkeiten ausprobiert.

Klonen Sie zunächst die Ubuntu-Gast-VM in die Virtualbox, indem Sie mit der rechten Maustaste darauf klicken und auf "Klonen" klicken. Wenn der Klon fertig ist, erweitern Sie den geklonten vdi mithilfe von (Auf dem Host-Betriebssystem).

VBoxManage modifyhd "name_of_cloned_vdi" - Größe "size_of_new_root_partition_in_MB" ändern

Dann - befolgen Sie die Schritte in diesem Beitrag bis zum Brief (er bezeichnet VMware als Plattform, ignoriert dies jedoch)

http://blog.campodoro.org/?p=36

Dadurch wird ein weiteres Level erstellt, das genau der Größe des zusätzlichen Speicherplatzes entspricht, den Sie hinzugefügt haben, und an das Ende des vorhandenen angeheftet.

Sobald Sie überprüft haben, dass alles in Ordnung ist, können Sie die ursprüngliche VM löschen und Ihren Klon hochstufen!

Sie müssen nicht mit fdisk herumspielen und müssen sich keine Gedanken über das Löschen oder Versauen der falschen Partition machen.

Ich muss ungefähr 4 geklonte Betriebssysteme kaputt gemacht haben, bis ich diese Lösung gefunden habe!


2

Ich habe dies gerade getan und hatte die gleiche Frage wie Sie, aber anstatt ein neues LVM zu erstellen und es der Volume-Gruppe hinzuzufügen, wollte die OCD-Seite von mir die Größe meines aktuellen LVM ändern und so eine einzelne Partition im Namen der Einfachheit beibehalten. Hinweis: Ich glaube nicht, dass dies möglich ist, wenn der freie Speicherplatz nicht unmittelbar auf die Partition folgt, deren Größe Sie ändern!

Dazu benötigen Sie ein Tool, mit dem Sie Partitionstabellen löschen und erstellen können. Da ich GPT verwende, brauchte ich gdisk . Sie müssen dies auch bei nicht gemounteter Partition tun, daher möchten Sie möglicherweise von einer Ubuntu LiveCD booten und diese von dort aus ausführen.

Die folgenden fett gedruckten Schritte sind ein Beispiel für LVM / dev / mms / root auf Gerät / dev / sda , bei dem ich die Partition / dev / sda3 erweitern wollte, um meinen neu gefundenen freien Speicherplatz zu belegen.

HINWEIS : Diese sind möglicherweise sehr zerstörerisch. Stellen Sie daher sicher, dass Ihre Eingaben korrekt sind!

  1. gdisk / dev / sda (stellen Sie sicher, dass Sie das richtige Gerät eingeben!) Dies bringt Sie zu gdisk, wo Sie die folgenden Schritte der Reihe nach ausführen können
    1. p - druckt Ihre aktuellen Partitionsinformationen aus (als Referenz)
    2. d - zum Löschen einer Partitionstabelle
    3. 3 - die Gerätenummer, die die Partitionstabelle darstellt, die Sie löschen möchten (wichtig!)
    4. n - zum Erstellen einer Partitionstabelle
    5. 3 - Die Gerätenummer, die die Partitionstabelle darstellt, die Sie erstellen möchten (wahrscheinlich möchten Sie dieselbe verwenden, die Sie in Schritt 3 gelöscht haben).
    6. p - druckt Ihre aktuellen Partitionsinformationen aus (vergleichen Sie sie erneut als Referenz mit dem, womit Sie begonnen haben!)
    7. w - speichert Ihre Änderungen auf der Festplatte (sind Sie sicher?!)
  2. pvresize / dev / sda3 - Möglicherweise müssen Sie vorher einen Neustart durchführen, damit Ihr Betriebssystem die neue Partitionsgröße erkennt
  3. pvdisplay - druckt Ihre aktuellen Informationen aus (es sollte zeigen, dass jetzt der gesamte Speicherplatz belegt ist!)
  4. lvresize -l + 100% FREE / dev / mms / root - ändert die Größe meines LVM so, dass es 100% meines neu gefundenen Speicherplatzes belegt
  5. e2fsck -f / dev / mms / root - führt eine Integritätsprüfung durch
  6. resize2fs -p / dev / mms / root - Ändert die Größe des Dateisystems, um Ihr gesamtes LVM zu belegen

Nachdem ich die oben genannten Schritte ausgeführt und das Betriebssystem mit geänderter Größe neu gestartet hatte, funktionierte alles wie erwartet und ich hatte all meinen zusätzlichen freien Platz zur Verfügung!

Zusätzliche Referenzen, mit denen ich das alles herausgefunden habe:

http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html


1

Eine entsprechende Antwort finden Sie hier.

(Auszug)

Größe des physischen Volumens ändern:

pvresize --verbose --test /dev/md0

Ändern der Größe des logischen Volumes:

lvresize --verbose -L <SIZE> --test /dev/VG1/LV1

Und schließlich die Größe von ext3 FS ändern:

resize2fs /dev/VG1/LV1

Wenn ich lvresize mache, erhalte ich die Fehlermeldung "Root konnte nicht
angehalten werden

Ich habe versucht: "sudo lvresize --verbose -L 40G / dev / ubuntu / root"
user12259

ok, ich habe das mit "sudo modprobe dm-mod" behoben, jetzt kann ich erfolgreich lvresize
user12259

fdisk -lzeigt, dass ich 54 GB zur Verfügung habe, aber nach dem Ausführen wird pvresize /dev/sda2; lvresize -L 50G /dev/mapper/VolGroup-lv_rootdie Fehlermeldung "Unzureichender freier Speicherplatz: 588 Speicherplätze erforderlich, aber nur 0 verfügbar" angezeigt . pvdisplayzeigt an, dass die Größe meines physischen Volumes nicht geändert wurde.
Cerin

Sie sollten wirklich eine neue Frage stellen. Die Kommentare einer alten Frage sind nicht der beste Weg, um Hilfe zu bekommen.
Zoredache

1

Beachten Sie, dass Sie hier kein Klontool wie CloneZilla verwenden müssen. Sie können eine Partition auf die neue virtuelle Festplatte (optional) legen und diese (oder die virtuelle Festplatte selbst) mit dem pvcreateBefehl in LVM initialisieren . Verwenden vgextendSie dann, um dies der Volume-Gruppe hinzuzufügen, die Ihr logisches Volume unterstützt, und verwenden Sie dann vgreduce, um die ursprüngliche virtuelle Festplatte aus der Volume-Gruppe zu entfernen. Dies führt eine Migration durch und kann live durchgeführt werden, während das logische Volume verwendet wird. Dies ist das Schöne an der Speichervirtualisierung. Sobald es fertig ist, müssen Sie nur noch das logische Volume wie oben erweitern, was auch live mit moderneren Dateisystemen als ext3 möglich ist.


1

I. Wenn Ihre virtuelle Festplatte eine feste Größe hat, können Sie sie nicht vergrößern. In diesem Fall müssen Sie es zuerst klonen.

(1) Klonen Sie die Festplatte über die VB-Benutzeroberfläche: File -> Virtual Media Manager... -> [tab] Hard Drives -> select your HDD -> [button] Next -> [button] Next -> select "Dynamically allocated" on the step "Storage on physical hard drive"-> ...

oder in der Kommandozeile:

# VBoxManage clonehd "/path/to/the/HDD.vdi" "/path/to/the/HDD_NEW.vdi"

(2) Fügen Sie die neue Festplatte zur Liste der bekannten Festplatten hinzu.

(3) Entfernen Sie in den VB-Geräteeinstellungen die alte Festplatte aus der VDI-Liste unter dem Controller und fügen Sie stattdessen die neue hinzu.

II. Ändern Sie die Größe der Festplatte

(1) Ändern Sie die Größe der neuen Festplatte.

# VBoxManage modifyhd 463c7bd4-9b9c-4cf8-bee4-e14e10c0d462 --resize 25600

Sie erhalten den Schlüssel mit dem VBoxManage list hddsBefehl.

III. Fügen Sie neuen zugewiesenen Speicherplatz hinzu.

(1) Fügen Sie eine GParted ISO als neues Medium hinzu Machine Settings -> Storage -> [rightclick] Controller IDE -> Add CD / DVD Device -> ...und aktivieren Sie das Live CD/DVDKontrollkästchen.

(2) Starten Sie die VM und fügen Sie den nicht zugewiesenen freien Speicherplatz zu Ihrer Arbeitspartition hinzu.

(3) Stoppen Sie die VM.

(4) Nehmen Sie die GParted ISO ab.

Genießen! :) :)



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.