Auf meinem Server, von dem ich hier schonmal berichtet hatte, läuft unter anderem Synology’s Virtual Machine Manager, der als Host für mehrere virtuelle Maschinen arbeitet. Da kann man natürlich viel herumspielen und ausprobieren. Unter anderem hatte ich mir mal eine Testmaschine aufgesetzt, in der Ubuntu 17.10 und ioBroker laufen. Aus dem anfänglichen Test hat sich mittlerweile eine Produktivumgebung entwickelt, der so langsam der Speicher ausgeht, denn ursprünglich hatte ich der Maschine nur 10GB Festplattenspeicher zugewiesen. In diesem Beitrag geht es nun darum, der Maschine mehr Speicher zu geben, indem die virtuelle Festplatte vergrößert, und Partition und Dateisystem entsprechend angepasst werden.
Zuerst der Blick in den Virtual Machine Manager. Er zeigt schon eine recht hohe Speichernutzung: knapp 79%.
Innerhalb der Maschine zeichnet sich ein etwas anderes Bild. Es sind derzeit etwa 42% des Speicherplatzes in Verwendung. Allerdings sind trotzdem nur 5,6GB frei. Das reicht gerade mal für ein DVD-Image und noch ein klein wenig Luft. Deswegen schiebe ich das nicht vor mir her und werde lieber jetzt aktiv, bevor ich das aus den Augen verliere und das System wegen mangelndem Speicherplatz vielleicht irgendwann nicht mehr läuft.
Vorbereitungen im VMM
Als allererstes: ein Backup muss her! In die Maschine und die gesamte Konfiguration habe ich echt viel Zeit investiert. Wenn das weg wäre würde mich das sehr schmerzen. Also, zuerst die Maschine sauber herunterfahren. Anschließend im VMM die Maschine auswählen und über Aktionen -> Einen Schnappschuss machen einen Wiederherstellungspunkt erzeugen. Alternativ (oder zusätzlich) kann man auch die Maschine klonen.
Anschließend bearbeiten wir die Einstellungen der Maschine und weisen ihr mehr Speicher zu. Dazu gehen wir auf Bearbeiten, wählen im neuen Fenster den Tab Speicher und passen den Wert für Virtuelle Festplatte nach dem Bedarf an. Für mich reichen vorerst 50GB.
Wir bestätigen das mit OK und die darauf folgende Sicherheitsabfrage mit Ja. Nun zeigt VMM zwar einen deutlich geringeren Speicherverbrauch an, allerdings ist das nur die halbe Wahrheit, denn der Platz steht jetzt zwar innerhalb der Linux-Maschine zur verfügung, ist aber derzeit ungenutzt.
Partition unter Ubuntu vergrößern
Um die (bei mir erste und einzige) Partition innerhalb der Maschine vergrößern zu können, starten wir die Maschine und stoppen eventuell vorhandene Dienste, die viel Aktivität erzeugen können. Dieser Schritt ist nicht unbedingt notwendig, schadet jedoch sicherlich auch nicht.
Wir verändern jetzt die Partitionstabelle. Das sollte man wirklich nur machen, wenn man ein Backup besitzt!
Alle nun vorgenommenen Änderungen werden erst zum Schluss auf einen Schlag auf die Festplatte geschrieben. Man muss also nicht hektisch werden und kann sich alles nochmal ganz genau anschauen, bevor tatsächlich etwas passiert.
Wir rufen nun den Partitionsmanager fdisk
auf…
$ sudo fdisk /dev/sda
…und lassen uns mit dem Befehl p
die aktuell vorhandenen Partitionen anzeigen.
Wir notieren uns nun den Startsektor der Partition /dev/sda1
. In meinem Fall ist das 2048
. Diesen Wert benötigen wir gleich noch. Anschließend löschen wir die Partition mit dem Befehl d
.
Mit n
erzeugen wir eine neue Partition, wählen als Partition type p
(primary) und als Partitionsnummer 1
. Anschließend sollen wir bei Erster Sektor angeben, wo die Partition auf der Festplatte beginnen soll. Hier wählen wir den Wert, den wir uns zuvor notiert haben. In meinem Fall ist das 2048
. Für Last sector wählen wir default
(einfach Enter drücken), denn mit diesem Wert wird der gesamte zur Verfügung stehende Platz genutzt. Die Frage, ob die ext4-Signatur entfernt werden soll, beantworten wir mit Nein.
Wenn wir jetzt den Befehl p
absetzen bekommen wir schon die vergrößerte Partition angezeigt. Allerdings müssen wir diese noch als bootfähig markieren: Befehl a
. Bei einem erneuten Auflisten der Partitionen (p
) sieht man nun auch den *
in der Spalte Boot.
Nun kontrollieren wir nochmal ganz genau, was wir da gemacht haben. Sind wir uns sicher, schreiben wir die Änderungen mit dem Befehl w
auf die Festplatte.
Es erfolgt eine Fehlermeldung, dass der Kernel die Partitionstabelle nicht neu einlesen konnte, weil die Ressource belegt ist. Das ist normal. Der Kernel verwendet bis zum nächsten Neustart die alte Partitionstabelle.
Also ein Neustart:
$ sudo reboot
Dateisystem erweitern
Nach dem Neustart ist zwar die Partition größer, jedoch das Dateisystem noch nicht. Das muss entsprechend erweitert werden (kennt man ja von frisch geflashten SD-Karten für den Raspberry Pi). Also, neu einloggen und folgenden Befehl absetzen:
$ sudo resize2fs /dev/sda1
Nun nutzt das Dateisystem die volle Größe der Partition und wir sind fertig.
Weblinks
- https://askubuntu.com/questions/116351/increase-partition-size-on-which-ubuntu-is-installed/116367#116367
- https://askubuntu.com/questions/109215/resize-disk-partition-on-remote-vm-server/109224#109224
- Proxmox: „Failed to connect to Server“ mit Safari auf MacOS - 28. Januar 2023
- Loxone: Benachrichtigung per Telegram - 15. Januar 2022
- Telegram: Nachrichten per Bot von der Heimautomation aufs Handy - 2. Januar 2022
2 Comments