Partitionierung KVM-Server

Aus netcup Wiki
Zur Navigation springen Zur Suche springen

Hinweis: Diese Anleitung ist ausschließlich bei KVM-Servern gültig und kann nicht bei den klassischen vServern angewendet werden.

Hinweis: Sollten Sie keine Erfahrung mit der Partitionierung von Servern besitzen, können Sie alternativ die GParted Live CD nutzen, die Sie im Servercontrolpanel unter Medien -> DVD Laufwerk starten können. Mit dieser können Sie die Partitionierung über den Bildschirm im SCP mit einer grafischen Benutzeroberfläche durchführen. Die folgende Anleitung bezieht sich auf die Durchführung der Partitionierung per CLI.

Hinweis: Eine Anleitung für Systeme mit eingerichteten LVM finden Sie hier: Partitionierung KVM-Server (LVM)

Warnung: Prüfen Sie, ob sich die Anleitung für Ihr System anwenden lässt. Fehler bei der Modifikation der Partitionierung können zu Datenverlust führen. Bitte legen Sie vorher unbedingt ein aktuelles Backup Ihres Systems an.

Grundlegendes

Achtung: Die Durchführung dieser Schritte ist notwendig, um festzustellen, ob Sie im Folgenden fdisk oder gdisk verwenden müssen.

Je nach ausgewählter Installationsart ist Festplattenkapazität als weitere Partition partitioniert, allerdings nicht in Benutzung. Um die Ihnen zugewiesenen Ressourcen komplett zu nutzen müssen Sie der vorhandenen Partition mehr Speicherplatz zuweisen oder eine neue Partition erstellen.

Welche Partitionstabelle aktuell genutzt wird lässt sich mit fdisk -l auslesen.

Festplatte /dev/Xda: 488,3 GiB, 524288000000 Bytes, 1024000000 Sektoren
Einheiten: Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes
E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Festplattenbezeichnungstyp: dos

oder

Disk /dev/Xda: 117 GiB, 125627793408 bytes, 245366784 sectors 
Units: sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disklabel type: gpt 

Im folgenden zeigen wir auf wie Sie die vorhandene Partition vergrößern.

Partitionierung mit FDISK und MBR Partitionstabelle

Warnung: Prüfen Sie, ob sich die Anleitung für Ihr System anwenden lässt. Fehler bei der Modifikation der Partitionierung können zu Datenverlust führen. Legen Sie vorher unbedingt ein aktuelles Backup an. Die folgenden Schritte beziehen sich auf Systeme mit MBR Partitionstabelle. Verwenden Sie gdisk für Systeme mit GPT Partitionstabelle, wie hier beschrieben.


Gerät finden

Als erstes muss geprüft werden, wie die verwendete Festplatte genau heißt, dies kann mit folgenden Befehlen einfach überprüft werden:

ls -la /dev/vda

oder

ls -la /dev/sda

Bei einem der beiden Befehle kommt ein entsprechender Fehler, dass die Datei nicht gefunden wurde.

Im weiteren Artikel ist die Festplatte mit dem Namen Xda gekennzeichnet. Bitte das X entsprechend je nach Festplatte mit s oder v ersetzen. Somit ergibt sich dann entweder sda (wenn die datei /dev/sda existiert) oder vda (wenn die Datei /dev/vda existiert).


Ausgangssituation

Ein neu ausgelieferter KVM-Server hat folgende Konfiguration:

root@v123:~# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/volume-root
                       39G  707M   36G   2% /
tmpfs                 7.9G     0  7.9G   0% /lib/init/rw
udev                  7.9G  116K  7.9G   1% /dev
tmpfs                 7.9G     0  7.9G   0% /dev/shm
/dev/Xda1             248M   26M  210M  11% /boot

Mit Hilfe von fdisk erhalten Sie Auskunft über den tatsächlich verfügbaren Speicherplatz:

root@v123:~# fdisk -l

Disk /dev/Xda: 251.3 GB, 251255586816 bytes
[...]

   Device Boot      Start         End      Blocks   Id  System
/dev/Xda1   *           3         523      262144   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/Xda2             523       83221    41679872   8e  Linux LVM
Partition 2 does not end on cylinder boundary.

Disk /dev/dm-0: 42.2 GB, 42165338112 bytes
[...]

Partitionierung

Rettungssystem

Um die Partitionierung der Festplatte zu ändern, müssen Sie das System im Rettungssystem hochfahren.

Ändern Sie hierzu die Boot-Reihenfolge des KVM-Servers so, dass zuerst über das Netzwerk gebootet wird. Diese Einstellungen nehmen Sie im SCP im Menü Einstellungen -> Boot Reihenfolge vor.
Daraufhin aktivieren Sie das Rettungssystem im Menü Medien -> Rettungssystem und folgen den weiteren Anweisungen zum Neustart des Systems.

Nun verbinden Sie sich mit den angezeigten temporären Passwort mit dem Rettungssystem.

Partition vergrößern

Und starten dann fdisk und beantworten das Setup wie folgt: [u], [c], [d], [2], [n], [p], [2], [Enter], [Enter], [w]
Achtung: Setzen Sie den DOS-Kompatibilitätsmodus nur wenn dieses erforderlich ist. Andernfalls stimmt die Zuordnung der Sektoren nicht mehr.

root@v123:~# fdisk /dev/Xda

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): u
Changing display/entry units to sectors

Command (m for help): c
DOS Compatibility flag is not set

Command (m for help): d
Partition number (1-4): 2

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First sector (526336-490733567, default 526336): 
Using default value 526336
Last sector, +sectors or +size{K,M,G} (526336-490733567, default 490733567): 
Using default value 490733567

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Des weiteren:

root@v123:~# fsck -C0 -y -f /dev/Xda2

[...]

/dev/Xda2: 53498/1242480 Dateien (0.1% nicht zusammenhängend), 313172/5065216 Blöcke
root@v123:~# resize2fs -p /dev/Xda2
resize2fs 1.41.12 (17-May-2010)
Die Grösse des Dateisystems auf /dev/Xda2 wird auf 30641664 (4k) Blöcke geändert.

Start von Durchgang 1 (max = 781)
Vergrößere die Inode-TabelleXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Das Dateisystem auf /dev/Xda2 ist nun 30641664 Blöcke groß.

Abschluss

Daraufhin starten Sie das System neu und verbinden sich mit dem Produktivsystem.

Die Ausgabe des verfügbaren Speicherplatzes sollte nun wie folgt aussehen:

root@v123:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/Xda2       117G  2.6G  109G   3% /
udev            2.0G  4.0K  2.0G   1% /dev
tmpfs           791M  240K  791M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
/dev/Xda1       112M   32M   75M  30% /boot

Partitionierung mit GDISK und GPT Partitionstabelle

GPT bietet Ihnen den Vorteil, dass Sie Partitionen mit einer Kapazität von mehr als 2TB verwalten können. Der folgende Artikel bezieht sich auf die Nutzung von GDISK im Rettungssystem.

Warnung: Prüfen Sie, ob sich die Anleitung für Ihr System anwenden lässt. Fehler bei der Modifikation der Partitionierung können zu Datenverlust führen. Legen Sie vorher unbedingt ein aktuelles Backup an. Die folgenden Schritte beziehen sich auf Systeme mit GPT Partitionstabelle. Verwenden Sie fdisk für Systeme mit MBR Partitionstabelle, wie hier beschrieben.


Gerät finden

Als erstes muss geprüft werden, wie die verwendete Festplatte genau heißt, dies kann mit folgenden Befehlen einfach überprüft werden:

ls -la /dev/vda

oder

ls -la /dev/sda

Bei einem der beiden Befehle kommt ein entsprechender Fehler, dass die datei nicht gefunden wurde.

Im weiteren Artikel ist die Festplatte mit dem Namen Xda gekennzeichnet. Bitte das X entsprechend je nach Festplatte mit s oder v ersetzen. Somit ergibt sich dann entweder sda (wenn die datei /dev/sda existiert) oder vda (wenn die Datei /dev/vda existiert).

Vorhandene Partitionen

Unser Beispiel geht von einer Installation mit kleiner Systempartition aus, also genau so, wie ein neu installierter und bereit gestellter vServer.

Die Ausgabe von df -h zeigt in unserem Fall folgendes:

Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf 
/dev/Xda3       5,3G    1,2G  3,9G   23% / 
udev             10M       0   10M    0% /dev 
tmpfs           1,2G    8,4M  1,2G    1% /run 
tmpfs           3,0G       0  3,0G    0% /dev/shm 
tmpfs           5,0M       0  5,0M    0% /run/lock 
tmpfs           3,0G       0  3,0G    0% /sys/fs/cgroup

Die Ausgabe von fdisk -l zeigt Informationen über die verwendete Partitionstabelle und die verfügbaren Devices:

Disk /dev/Xda: 117 GiB, 125627793408 bytes, 245366784 sectors 
Units: sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disklabel type: gpt 
Disk identifier: 2AE9B363-C537-4A7A-814E-E2ADBB5FA4BC

Device        Start       End   Sectors   Size Type 
/dev/Xda1        34     19531     19498   9,5M BIOS boot 
/dev/Xda2     19584   8006783   7987200   3,8G Linux swap 
/dev/Xda3   8006784  19530879  11524096   5,5G Linux filesystem 
/dev/Xda4  19530880 245366719 225835840 107,7G Microsoft basic data

Zum Vergrößern der Rootpartition unter /dev/Xda3 booten wir den Server ins Rettungssystem.

Rettungssystem

Um die Partitionierung der Festplatte zu ändern, müssen Sie das System im Rettungssystem hochfahren.

Ändern Sie hierzu die Boot-Reihenfolge des KVM-Servers so, dass zuerst über das Netzwerk gebootet wird. Diese Einstellungen nehmen Sie im SCP im Menü Einstellungen -> Boot Reihenfolge vor.
Daraufhin aktivieren Sie das Rettungssystem im Menü Medien -> Rettungssystem und folgen den weiteren Anweisungen zum Neustart des Systems.

Nun verbinden Sie sich mit den angezeigten temporären Passwort mit dem Rettungssystem.

Partition vergrößern

Aufrufen von GDISK per gdisk /dev/Xda

Alle Eingaben in GDISK sind abschließend mit <ENTER> zu bestätigen.

Anzeigen der vorhandenen Partitionen mit der Taste „p“:

Disk /dev/Xda: 245366784 sectors, 117.0 GiB 
Logical sector size: 512 bytes 
Disk identifier (GUID): 2AE9B363-C537-4A7A-814E-E2ADBB5FA4BC 
Partition table holds up to 128 entries 
First usable sector is 34, last usable sector is 245366750 
Partitions will be aligned on 2-sector boundaries 
Total free space is 83 sectors (41.5 KiB) 

Number  Start (sector)    End (sector)  Size       Code  Name 
   1              34           19531   9.5 MiB     EF02  primary 
   2           19584         8006783   3.8 GiB     8200  primary 
   3         8006784        19530879   5.5 GiB     8300  primary 
   4        19530880       245366719   107.7 GiB   0700  primary 

Während der Installation eines unserer vorgefertigten Images wird für den vom Betriebssystem nicht benötigten Speicherplatz eine eigene Partition angelegt, in diesem Beispiel ist dies die Partition Nummer 4. Bei anderen Images kann die Partitionsnummer jedoch abweichen.

Löschen der Partition Nummer 4 (nicht genutzter Speicherplatz in unserem Beispiel):

Command (? for help): d 
Partition number (1-4): 4 

Danach löschen wir die Partition, die wir vergrößern möchten:

Command (? for help): d 
Partition number (1-3): 3

Nun legen wir die Partition 3 mit der neuen Größe an:

Command (? for help): n 
Partition number (3-128, default 3):

Eingabe: <ENTER>

First sector (19532-245366750, default = 8006784) or {+-}size{KMGTP}: 

Eingabe: <ENTER>

Last sector (8006884-245366750, default = 245366750) or {+-}size{KMGTP}: 

Eingabe: +50G <ENTER>

Die Partition wird somit 50 GB groß. Alternativ können Sie die vorgeschlagenen Default Values wählen, um die komplette Festplattenkapazität zu partitionieren.

Current type is 'Linux filesystem' 
Hex code or GUID (L to show codes, Enter = 8300): 

Eingabe: <ENTER>

Changed type of partition to 'Linux filesystem' 

Mit erneuten Druck der Taste „p“ sehen wir nun den neu partitionierten Bereich:

Disk /dev/Xda: 245366784 sectors, 117.0 GiB 
Logical sector size: 512 bytes 
Disk identifier (GUID): 2AE9B363-C537-4A7A-814E-E2ADBB5FA4BC 
Partition table holds up to 128 entries 
First usable sector is 34, last usable sector is 245366750 
Partitions will be aligned on 2-sector boundaries 
Total free space is 152 sectors (76.0 KiB)  

Number  Start (sector)    End (sector)  Size       Code  Name 
   1              34           19531   9.5 MiB     EF02  primary 
   2           19584         8006783   3.8 GiB     8200  primary 
   3         8006884       245366750   50 GiB   8300  Linux filesystem

Mit Druck der Taste „w“ schreiben wir die Änderungen in die Partitionstabelle.

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING 
PARTITIONS!! 
Do you want to proceed? (Y/N):

Eingabe: y <ENTER>

Reboot ins lokale System

Hier muss nun noch das Filesystem angepasst werden:

resize2fs /dev/Xda3  <ENTER>

Die erneute Eingabe von df -h zeigt uns nun die erfolgreiche Vergrößerung von /dev/xda3:

Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf 
/dev/Xda3        50G    1,2G   46G    3% / 
udev             10M       0   10M    0% /dev 
tmpfs           1,2G    8,4M  1,2G    1% /run 
tmpfs           3,0G       0  3,0G    0% /dev/shm 
tmpfs           5,0M       0  5,0M    0% /run/lock 
tmpfs           3,0G       0  3,0G    0% /sys/fs/cgroup