staging.inyokaproject.org

"LVM Partition" verkleinern

Status: Ungelöst | Ubuntu-Version: Ubuntu 18.04 (Bionic Beaver)
Antworten |

Deli28

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Hallo liebe Forengemeinde,

ich möchte die "LVM Partition" auf der ich mein Ubuntu 18.04 installiert habe ca. um die Hälfte verkleinern, um ebenfalls Windows 10 zu installieren. Dazu habe ich Ubuntu 18.04 per Live-Stick gestartet, KVPM installiert und versucht die "LVM Partition" zu verkleinern. Leider bekomme ich dann die Benachrichtigung, dass die Verkleinerung einer "LVM Partition" in der aktuellen KVPM Version aufgrund von immer wieder auftretenden Fehlern deaktiviert wurde. Leider habe ich herausgefunden, dass system-config-lvm mittlerweile veraltet ist und nicht mehr zur Reduzierung einer "LVM Partition" verwendet werden kann.

Nun weiß ich als Ubuntu-Neuling nicht mehr weiter. Ich habe auch aus diesem Grund Begrifflichkeiten bei denen ich mir nicht sicher bin, ob ich sie richtig verwendet habe, in Anführungszeichen gesetzt. Das macht es für euch wahrscheinlich schwerer das Problem einzukreisen, aber so hoffe ich, dass man durch Nachfragen vermeiden kann, dass man aneinander vorbeispricht.

Kennt ihr ein Programm (vorzugsweise mit GUI) mit der ich meine "LVM Partition" verkleinern kann? Gerne bin ich bereit euch weitere Informationen bereitzustellen, um das Problem einzukreisen.

Viele Grüße Deli

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

Willkommen im Forum. ☺

Äh, bescheidene Frage: Warum machst du dir als Neuling das Leben so schwer und verwendest LVM? Doch nicht etwa, weil du während der Installation "Festplatte verschlüsseln" gewählt hast? Das würde die Sachlage ungemein verändern.

Gerade wenn du erst vor kurzem installiert hast, könnte eine Neuinstallation ohne LVM dein eigentliches Ziel deutlich näher bringen. Ansonsten steht im Wiki einiges, über den Umgang zu LVM. Die Lektüre empfiehlt sich insbesondere daher, weil es hier ohne Fachbegriffe absolut nicht möglich ist sich zu verständigen, geschweige denn eine kurze Erklärung zu geben. Wenn noch konkrete Fragen sind, gerne her damit. 😉

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Ich glaube, das ist eher unabsichtlich passiert. Ich bin bei der Installation einer Anleitung gefolgt, bei der eine extra Swap Partition, eine für /root und eine für Musik, Dokumente,... erstellt wurde. Das fand ich sinnig, da ich das ähnlich aus Windowszeiten kannte. Das Einrichten einer Partition für Musik, Dokumenten und ähnlichem hat leider schon bei der Installation schon nicht geklappt, weshalb ich aktuell eine Swap Partition habe und eine für alles andere habe.

Ich vermute mal du sprichst von diesem Wikiartikel: https://wiki.ubuntuusers.de/Logical_Volume_Manager/

Den habe ich auch schon angelesen und vermute, dass es in diese Richtung geht...

sudo lvreduce --resizefs -L 5G /dev/GROUP/VOLUME 

, war mir aber noch zu unsicher. Wenn ich den Artikel durch habe, melde ich mich nochmal.

Achja, das System würde ich nur ungern neu aufsetzten, da ich wichtige Dokumente drauf habe und lang gebraucht hatte bis ich die dazu notwendige Software installiert hatte.

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Also ich habe mich da mal durchgearbeitet:

1. Meine Physical Volumes:

sudo pvs 
  PV         VG        Fmt  Attr PSize    PFree 
  /dev/sda2  ubuntu-vg lvm2 a--  <223.07g 16.00m

bzw.

sudo pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               ubuntu-vg
  PV Size               <223.07 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              57105
  Free PE               4
  Allocated PE          57101
  PV UUID               wVUFC6-Whx8-Gwpr-IIks-izJv-feK2-1lJSUx

2. Meine Volume Groups:

sudo vgs 
  VG        #PV #LV #SN Attr   VSize    VFree 
  ubuntu-vg   1   2   0 wz--n- <223.07g 16.00m

Das hat mich schon vorher irritiert. GParted hatte mir als ich per Live-USB gebootet hatte, angezeigt, dass ich nur 16 MB freien Speicher hätte. Nach ein bisschen googlen habe ich herausgefunden, dass GParted nicht mit LVMs umgehen kann und deshalb eine falsche Speicherbelegung anzeigt. Ich habe unter Files 195,9 GB von 233,7 GB in Verwendung. Ist das so korrekt oder habe ich da falsche Annahmen getroffen?

sudo vgdisplay 
  --- Volume group ---
  VG Name               ubuntu-vg
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <223.07 GiB
  PE Size               4.00 MiB
  Total PE              57105
  Alloc PE / Size       57101 / 223.05 GiB
  Free  PE / Size       4 / 16.00 MiB
  VG UUID               2zaaNP-06zH-l3Mu-btno-jNav-pjh5-ONiOTh

3. Meine Logical Volumes:

sudo lvs 
  LV     VG        Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   ubuntu-vg -wi-ao---- <222.10g                                                    
  swap_1 ubuntu-vg -wi-ao----  976.00m   
sudo lvdisplay 
  --- Logical volume ---
  LV Path                /dev/ubuntu-vg/root
  LV Name                root
  VG Name                ubuntu-vg
  LV UUID                5lXfZl-gL0X-xwvU-qi3D-qnzG-CKxW-44t07G
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2019-06-29 21:53:27 +0200
  LV Status              available
  # open                 1
  LV Size                <222.10 GiB
  Current LE             56857
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/ubuntu-vg/swap_1
  LV Name                swap_1
  VG Name                ubuntu-vg
  LV UUID                lBy13r-gCg4-n0cj-sWbF-BINe-kcGv-vGd4c5
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2019-06-29 21:53:27 +0200
  LV Status              available
  # open                 2
  LV Size                976.00 MiB
  Current LE             244
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   

Da ich, wenn ich alles richtig verstanden habe, meine Logical Volume root der Volume Group ubuntu-vg etwa vom Speicherplatz halbieren möchte, müsste man untenstehenden Code

sudo lvreduce --resizefs -L 5G /dev/GROUP/VOLUME 

folgendermaßen anpassen

sudo lvreduce --resizefs -L 100G /dev/ubuntu-vg/root

.

Würde das so funktionieren? Also per Live-USB booten, root mit GParted "deaktivieren",SWAP "deaktivieren" mit

sudo swapoff -a

und dann

sudo lvreduce --resizefs -L 100G /dev/ubuntu-vg/root

eingeben.

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

… das System würde ich nur ungern neu aufsetzten, da ich wichtige Dokumente drauf habe …

Also zunächst einmal: Wichtige Daten gehören auf ein externes Medium gesichert. Die Aktion, die du vorhast kann auch zu Datenverlust führen. Du musst nämlich nach dem logical volume die volume group verkleinern, anschließend das physical volume und schlusssendlich die Partition.

Die Liste der installierten Programme lässt sich auch sichern. Entweder komplett ▶ Paketverwaltung/Tipps oder gezielt nur die Liste der nachträglich installierten Pakete ▶ https://forum.ubuntuusers.de/post/8901018/

Ob das Kommando so funktioniert? Ui! 😕 Ausprobieren? Kann sein, dass es auch etwas mit ubuntu--vg-root ist (Habe dunkel in Erinnerung, dass aus dem einen Bindestrich zwei wurden – immerhin macht man das nicht jeden Tag und kein Testsystem verwendet derzeit LVM).

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Also per Live-USB booten, ...

1. root mit GParted "deaktivieren",

2. SWAP "deaktivieren" mit

sudo swapoff -a

3. Logical Volume (LV) verkleinern mit

sudo lvreduce --resizefs -L 100G /dev/ubuntu-vg/root

4. Volume Group (VG) verkleinern mit

sudo modprobe dm-mirror
sudo pvmove /dev/PARTITION
sudo vgreduce GROUP /dev/PARTITION 

Müssen die 2. und 3. Zeile für mein System angepasst werden bzw. PARTITION ersetzt werden? Falls ja, wie finde ich heraus, wie meine PARTITION heißt?

Edit: Mmh, nachdem ich meinen vorherigen Post überflogen habe vermutlich ubuntu-vg, richtig? Der Programmcode würde dann dementsprechend

sudo modprobe dm-mirror
sudo pvmove /dev/ubuntu-vg
sudo vgreduce GROUP /dev/ubuntu-vg

lauten.

5. Physical Volume (PV) verkleinern mit

Dazu habe ich noch keine Befehle gefunden. Was müsste ich hier eingeben?

6. Partition verkleinern mit

Da fehlt mir auch noch der Befehl. Und in welchem Bezug steht der Begriff Partition zu den Begriffen

"Physical Extent"

"Physical Volume"

"Volume Group" und

"Logical Volume"?

Uiuiui, das wird noch was. Aber danke für die bisherige Hilfe. 👍

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

wie finde ich heraus, wie meine PARTITION heißt?

Sollte sich auch mit dem grafischen Dateimanager finden lassen. Möchte man den Computer die Suche erledigen lassen, so lassen sich ggf. Tools nachinstallieren (ich weiß nicht was bei Gnome schon dabei ist).

Für das Terminal muss man sich in der manpage zu find schlau machen, dann kommt man zu so etwas:

find /dev -name 'ubuntu*' 

Solltest du unter /dev/mapper fündig werden, so ist diese Angabe ebenso gültig.

6. Partition verkleinern mit

Da muss ich mich entschuldigen. Ich hatte den umgekehrten Fall und wollte LVM vergrößern und musste von außen nach innen vordringen und daher mit der Partition anfangen. Aus der Erinnerung habe ich dann angenommen man müsste in deinem Fall an die Partition selbst Hand anlegen. Ich habe mir die Anleitung nun nochmal angeschaut und dem ist nicht so und das wird beim Verkleinern des PV erledigt.

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Da muss ich mich entschuldigen.

Nein auf keinen Fall! Ist der absolute Wahnsinn, dass du mich hier durchlotst.

Also

find /dev -name 'ubuntu*'

gibt mir

/dev/ubuntu-vg
/dev/mapper/ubuntu--vg-swap_1
/dev/mapper/ubuntu--vg-root

aus. Da ich ubuntu--vg-root verkleinern möchte, ergänze ich

sudo modprobe dm-mirror
sudo pvmove /dev/PARTITION
sudo vgreduce GROUP /dev/PARTITION 

zu

sudo modprobe dm-mirror
sudo pvmove /dev/ubuntu--vg-root
sudo vgreduce GROUP /dev/Pubuntu--vg-root

,korrekt? Ich frage mich ob ich GROUP noch durch ubuntu-vg ersetzen muss?

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

Doch, doch, wenn ich einen Fehler mache, gebe ich es zu und entschuldige ich mich. Zumindest habe ich das so gelernt und werde das zeitlebens nicht ändern wollen.

Apropos, Fehler: Liest hier denn keiner mit um mich zu korrigieren? Also: die Volume Group muss nicht verkleinert werden. Diese ist wie eine Umzugskiste, die beschriftet ist mit "ubuntu-vg". Auf dem Packzettel steht, dass zwei kleinere Kisten namens "swap" und "root" darin enthalten sein sollen. Selbst wenn die Kiste "root" in der Größe geändert wird, ändert sich nichts an der Packliste. Einen weiteren Zweck hat die Volume Group nicht.

Zum Glück sind Sicherungsmechanismen eingebaut. Bei der Ausführung vom pvremove hättest du bereits eine Fehlermeldung erhalten, dass der Inhalt von "root" nicht auf "swap" verschoben werden könne, weil – mmh – entweder swap kein richtiges Dateisystem ist oder die Kiste "swap" zu klein für den Inhalt von "root" ist. Im weiteren erwartet vgreduce, dass das zu entfernende LV leer ist.

Ich habe hier mal eine Übersicht kopiert, die ich aus der Anleitung für vollverschlüsselte Systeme angepasst habe, da die Verschlüsselung nicht interessiert.

  1. Boot the desktop, live CD. Install & configure the tools (lvm2).

  2. Reduce the (root) file system with resize2fs.

  3. Reduce the (root) (LVM) Logical Volume with lvreduce.

  4. Reduce the (LVM) Physical Volume with pvresize.

  5. Reboot to reduce the Partition storing the crypt with fdisk.

  6. Reboot to hard drive ~ You should always reboot after changing your partition table with fdisk.

Also, nochmals Entschuldigung. Ich hatte schludrig gelesen oder übersetzt (konmmt auf's selbe raus). Für das abschließende Verkleinern der Partition kann statt fdisk auch parted verwendet werden.

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Doch, doch, wenn ich einen Fehler mache, gebe ich es zu und entschuldige ich mich. Zumindest habe ich das so gelernt und werde das zeitlebens nicht ändern wollen.

Ja, da hast du Recht.

Ich versuche hier mal deine Anleitung zu konkretisieren.

  1. Boot the desktop, live CD. Install & configure the tools (lvm2).

- root mit GParted "deaktivieren", - SWAP "deaktivieren" mit

sudo swapoff -a

2. Reduce the (root) file system with resize2fs.

sudo e2fsck -f /dev/mapper/ubuntu--vg-root
sudo resize2fs -p /dev/mapper/ubuntu--vg-root 111g

-Überprüfen, ob noch file system noch intakt ist mit

sudo e2fsck -f /dev/mapper/ubuntu--vg-root

3. Reduce the (root) (LVM) Logical Volume with lvreduce.

Schauen, um wie viele GB Logical Volume root verkleinert werden muss:

sudo lvdisplay

Logical Volume root dementsprechend verkleinern...

sudo lvreduce -L -xxx.xG /dev/ubuntu--vg/root

Kontrolle, ob Schritt 3 funktioniert hat mit...

sudo lvdisplay

Für die Schritte 4. - 6. muss ich mir nochmal Zeit nehmen, um diese zu verstehen und umzusetzen. Ich werde das dann in einem weiteren Beitrag machen. Danke!

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

Ich habe heute auch ein wenig mit der Verkleinerung eines LVM gebastelt und bin halb wahnsinnig geworden. Meine Meinung, dass LVM auf einem Desktop-System nichts zu suchen hat, hat sich bekräftigt. Wer sich so einen Knopf an die Backe näht muss entweder von Beruf aus täglich mit LVM umgehen oder ist ein extrem großer Masochist. 😈

Beim Verkleinern des physical volume und der Partition kommt man in die gefährliche Falle des Unterschiedes zwischen Gigabyte und Gibibyte, sonst ist die Partition kleiner als das PV und wird angemeckert. Aber schlussendlich habe ich es mit den Angaben hinbekommen.

Übrigens prüft und verkleinert lvreduce auch das innerhalb des logical volume liegende Dateisystem. So hattest du es in post/9111406 schon geschrieben. Das vereinfacht die Sache schon ein wenig. Das LV der swap musste ich löschen; Vermutlich weil es hinter dem für root lag und der freie Platz sonst nicht genutzt werden konnte. Wenn ich das jetzt so weiter denke, müsste es nur irgendwie reichen, das LV nach vorne zu schieben.

Deli28

(Themenstarter)

Anmeldungsdatum:
11. November 2019

Beiträge: 7

Das LV der swap musste ich löschen; Vermutlich weil es hinter dem für root lag und der freie Platz sonst nicht genutzt werden konnte.

Ich denke, das stimmt. Zumindest habe ich das bereits mehrmals bei meinen Googleausflügen in die LVM Welt so gelesen. Kann ich aus der Reihenfolge, die mir

sudo lvs 

ausgibt

  LV     VG        Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   ubuntu-vg -wi-ao---- <222.10g                                                    
  swap_1 ubuntu-vg -wi-ao----  976.00m   

folgern, dass auch bei mir swap_1 hinter root liegt und ich um ein Verschieben/löschen & neu erstellen der swap_1 LV nicht herum komme?

Ich versuche mal die Schritte weiter für den Fall "löschen & neuerstellen zu konkretisieren", da in der von dir geposteten Anleitung folgendes geschrieben wird.

The physical volume used by LVM can become "fragmented" in that the (LVM) Logical Volumes within the (LVM) Physical Volume are not always in order. There is no defragmentation tool, so if you may need to manually move the logical partitions (back up the data, delete the (LVM) Logical Volume, re-create a replacement (LVM) Logical Volume, restore data from backup).

4a. Reduce the (LVM) Physical Volume with pvresize.

-Größe der PV ausgeben lassen mit

pvdisplay

-swap_1 LV löschen mit

lvremove /dev/ubuntu--vg/swap_1

-Um die PV zu verkleinern schlägt die Anleitung folgenden Befehl vor

sudo pvresize --setphysicalvolumesize 5.6G /dev/mapper/crypt1

Ist es richtig, wenn ich den Befehl folgendermaßen anpasse, um meine PV /dev/sda2 zu verkleinern? Das /mapper irritiert mich.

sudo pvresize --setphysicalvolumesize 112G /dev/sda2

-Swap_1 wiederherstellen. Dazu zuerst "Set permissions of (LVM) Physical Volume to allow allocation (if needed)" (Konnte ich nicht sinnig übersetzen, da ich nicht verstehe was in diesem Kontext allocation bedeutet)

sudo pvchange -x y /dev/mapper/crypt1

bzw. auf mein System angepasst (vermutlich)

sudo pvchange -x y /dev/sda2

-Swap_1 nach Löschen neu erstellen

sudo lvcreate -L 1024m -n swap_1 ubuntu--vg
sudo mkswap -L swap_1 /dev/ubuntu--vg/swap_1

4b. Neue UUID in der Datei fstab ergänzen

- LV root mounten mit

 sudo mount /dev/ubuntu--vg/root /mnt

-/etc/fstab editieren (Würde ich mal brav machen, aber verstehe den Grund nicht.)

gksu gedit /mnt//etc/fstab

-Copy-paste the new uuid from the terminal to fstab, updating the uuid for your swap partition. Save and exit gedit. Also in der fstab datei gibt es nur einmal UUID und diesen Wert würde ich dann dementsprechend ergänzen, aber bei solchen Aktionen bekomme ich Bauchschmerzen.

-LV root unmounten mit

sudo umount /mnt

-PV "re-lock"en nachdem das LV swap_1 erstellt wurde

sudo pvchange -x n /dev/mapper/crypt1

bzw. angepasst an mein System (vermutlich)

sudo pvchange -x n /dev/sda2

to do: (in einem folgenden Post)

5. Reboot to reduce the Partition storing the crypt with fdisk.

Für das abschließende Verkleinern der Partition kann statt fdisk auch parted verwendet werden.

Da werde ich mir mal anschauen, ob und wie das mit GParted funktioniert.

6. Reboot to hard drive ~ You should always reboot after changing your partition table with fdisk.

Das ist doch mal was für mich. ☺

Wer sich so einen Knopf an die Backe näht muss entweder von Beruf aus täglich mit LVM umgehen oder ist ein extrem großer Masochist. 😈

Ja, das ist echt eine Aktion. 👿 👿 👿

fleet_street

Top-Wikiautor
Avatar von fleet_street

Anmeldungsdatum:
30. August 2016

Beiträge: 1901

Hast du mittlerweile neu installiert? Einfacher ist es nach wie vor. Ich würde gerne eine klare Anleitung geben, aber am letzten Punkt, der Verkleinerung der Partition, kämpfe ich selbst noch. Gerät diese kleiner als das Physical Volume, dann bleibt der Bootvorgang im initramfs stecken. Wird anschließend die Partitionsgröße korrigiert, klappt es dann auch mit dem Booten.

Aus der Anleitung zum Verkleinern der verschlüsselten Installation kannst du schon mal alles mit crypt vergessen, da es für dich nicht zutrifft.

allocate – musste ich bei mir nicht. Es war aber auch eine frische Installation. Das könnte ein Grund sein.

In der /etc/fstab dürfte auch nichts zu bearbeiten sein. Trotzdem der Hinweis, dass es gksu/gksudo nicht mehr gibt. Alternativen: mit Root-Rechten arbeiten

Antworten |