Den Kuchen neu verteilen

resize_reiserfs

01.12.2003
Nach der Installation stellen Sie oft fest, dass das Installationsprogramm die gesamte Distribution auf eine einzige Root-Partition installiert hat. Diese Anleitung beschreibt, wie Sie eine ReiserFS-Partition verkleinern, um Platz für neue zu gewinnen.

Einige Distributionen wie Knoppix [1] oder kmLinux [2] verwenden in der Standardinstallation den gesamten freien Festplattenplatz für eine große Root-Partition und eine Swap-Partition, oder man hat es beim Installieren unbedacht selbst so gewählt. Nicht immer ist dies erwünscht: Wenn Sie /etc/ als unbeschreibbar mounten, pfuscht niemand an Ihren Systemeinstellungen herum, und /home/ ist auf einer eigenen Partition vor Schäden am restlichen Dateisystem sicher. Also alle Einstellungen und privaten Daten sichern, alles löschen und bei einer Neuinstallation versuchen, den Distributions-Installer auszutricksen?

Schneller zum Ziel führt resize_reiserfs aus dem Paket reiserfs (SuSE) oder reiserfsprogs. Ein vorheriges Backup ist aber bei allen Festplattenoperationen – auch mit resize_reiserfs – zu empfehlen.

Das Root-Dateisystem ist im laufenden Betrieb nicht auszuhängen. Falls Sie dieses verändern, booten Sie deshalb ein unabhängiges System wie Knoppix von CD oder die SuSE-Rettungs-CD [3] (Kasten 1).

Kasten 1: Szenario

Im Beispiel verkleinerten wir mit einem von CD laufenden Knoppix [1] (Version 3.2-2003-05-03-DE) eine 70 GB-Partition mit einem installierten kmLinux [2] (Version 3.2). Auch bei einer Festplatteninstallation von Knoppix auf einem ReiserFS war das Verkleinern bei uns kein Problem.

Alternativ zu Knoppix verwenden Sie ein CD-Image einer SuSE-Rettungs-CD von [3] (ca.13 MB), das Sie mit dem Befehl

cdrecord -v dev=0,0,0 speed=4 /pfad/zum/image

brennen. Die Parameter passen Sie an Ihr System an.

Überblick verschaffen

Einen Überblick über die Partitionen von hda verschafft der Befehl

fdisk -l /dev/hda

Arbeitet Ihr Linux nicht auf der ersten Festplatte, ersetzen Sie hda beispielsweise durch hdb.

df -t reiserfs

zeigt den freien Platz auf den eingehängten ReiserFS-Dateisystem in 1-kB-Blöcken (Listing 1). Bevor Sie eine Partition (im Beispiel /dev/hda8) verändern, hängen Sie sie mit

umount /dev/hda8

aus.

Listing 1

Platteninformation vor dem Eingriff

root@linuxspider:/ # fdisk -l /dev/hda
Festplatte /dev/hda: 255 Köpfe, 63 Sektoren, 9964 Zylinder
Einheiten: Zylinder mit 16065 @L: * 512 Bytes
    Gerät boot.  Anfang      Ende    Blöcke   Id  Dateisystemtyp
[…]
/dev/hda8   @L: *       937      9964  72517378+  83  Linux
root@linuxspider:/ # df -t reiserfs
Dateisystem          1k-Blöcke    Benutzt  Verfügbar Ben% montiert auf
/dev/hda8             72515156  12750512   59764644  18% /mnt/hda8

Im Beispiel sind auf /dev/hda8 von 70 GB noch 57 GB frei. 7 GB freier Speicher reichen uns, also schrumpfen wir das Dateisystem um 50 GB:

resize_reiserfs /dev/hda8 -s -50G

Neben G für Gigabyte sind auch die Einheiten M für Megabyte und K für Kilobyte möglich. Der Vorgang braucht seine Zeit, in unserem Test blieb der Zähler zwei Minuten lang auf 0% stehen, wodurch der falsche Eindruck entstand, der Prozess hänge fest (Listing 2).

Listing 2

Verkleinern

root@linuxspider:/ # resize_reiserfs /dev/hda8 -s -50G
Are you ready (y/n) y
Resizing /dev/hda8
shrinking: 0%            # Zwei Minuten Kaffeepause
syncing … done

Hängen Sie anschließend die veränderte Partition mit

mount -t reiserfs /dev/hda8 /mnt/hda8

in ein beliebiges Verzeichnis ein, hier /mnt/hda8. fdisk -l /dev/hda zeigt nun an, dass sich die Partitionsgröße nicht verändert hat. df -t reiserfs gibt allerdings ein wesentlich kleineres Dateisystem auf dieser Partition an (Listing 3). Diese Differenz von 52,4 Millionen Kilobytes hätte vor 20 Jahren umgerechnet einen Wert von schätzungsweise 25 Millionen Euro gehabt; auch wir wollen auf die rund 50 GB nicht verzichten.

Listing 3

Platteninformation nach dem Verkleinern

root@linuxspider:/ # fdisk -l /dev/hda
Festplatte /dev/hda: 255 Köpfe, 63 Sektoren, 9964 Zylinder
Einheiten: Zylinder mit 16065 @L: * 512 Bytes
    Gerät boot.  Anfang      Ende    Blöcke   Id  Dateisystemtyp
[…]
/dev/hda8   @L: *       937      9964  72517378+  83  Linux
root@linuxspider:/ # df -t reiserfs
Dateisystem          1k-Blöcke    Benutzt Verfügbar Ben% montiert auf
/dev/hda8             20087956  12750512   7337444  64% /mnt/hda8

Kopfrechnen

In Listing 1 zeigte fdisk für /dev/hda8 eine Größe von 72517378 Blöcken von je 1 kB. df gab jedoch nur 72515156 Blöcke im Dateisystem an, eine Differenz von 2222 Blöcken: Das Dateisystem benötigt diesen Platz für Verwaltungsinformationen.

Da im Beispiel das Dateisystem geschrumpft ist, reichen diese 2222 Blöcke auch künftig für die Verwaltungsdaten. 2222 addiert zu den 20087956 Blöcken des neuen Dateisystems ergibt die benötigte Partitionsgröße in 1-kB-Blöcken.

Für die Partitionierung brauchen Sie die Größenangabe jedoch in Zylindern. Auskunft zur Umrechnung gibt in der Ausgabe von fdisk -l /dev/hda die Zeile

Einheiten: Zylinder mit 16065 @L: * 512 Bytes

Ein Zylinder enthält demnach 16065 @L: * 512 Bytes = 8225280 Bytes. Das entspricht genau 8032,5 kB (1 kB = 1024 Bytes). Teilen Sie nun die benötigte Partitionsgröße (20087956 kB + 2222 kB = 20090178 kB) durch diese Zahl, und Sie kommen auf die Anzahl der benötigten Zylinder; im Beispiel 2502: Da Sie nur ganze Zylinder verwenden können, runden Sie das Ergebnis auf (Listing 4).

Wollen Sie den Platzbedarf der Verwaltungsinformationen genauer errechnen, teilen Sie die Größe des Dateisystems durch 32000. Um Platz zu sparen, teilen Sie vorsichtig durch etwas höhere Zahlen als 32000. Die Erfahrung zeigt jedoch, dass schon ein 32768tel (1 / 2

15) der Dateisystemgröße zu wenig Platz für die Verwaltung bietet. Zuviel Geiz kann zu einem zerstörten Dateisystem führen!

Listing 4

Berechnung der Mindestgröße der wiederanzulegenden Partition

Größe alt (Partition)   72517378 Blöcke
 - Größe alt (Dateisystem) 72515156 Blöcke
 —————————————–
 = Verwaltungsplatz            2222 Blöcke
   Größe neu (Dateisystem) 20087956 Blöcke
 + Verwaltungsplatz            2222 Blöcke
 —————————————–
 = Größe neu (Partition)   20090178 Blöcke
 8032,5 Blöcke = 1 Zylinder
     20090178 Blöcke
 ———————- = 2501,11 Zylinder
 8032,5 Blöcke/Zylinder

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Mit Tar eine Linux-Installation für den Notfall präparieren
    Wer seine Daten schlau sichert, den schockt selbst ein Festplattencrash nicht sonderlich: Auch ohne Neuinstallation restauriert er sein System im Handumdrehen.
  • Mit dd_rescue defekte Partition wiederherstellen
    Wer regelmäßig seine Daten sichert, braucht vor Platten-Versagen keine Angst zu haben – doch manchmal vergisst man die regelmäßigen Backups. Verabschiedet sich dann die Festplatte mit einem Lesefehler, ist guter Rat teuer. Oder umsonst, wenn Sie "dd_rescue" verwenden.
  • Platten partitionieren mit QtParted
    Um Festplatten zu partitionieren, verwendet man unter Linux klassisch das Kommandozeilen-Tool fdisk – Größenveränderungen vorhandener Partitionen sind damit aber nicht möglich. Wer bisher das kommerzielle Partition Magic einsetzte, findet in QtParted einen freien Clone für Linux.
  • Das passende Dateisystem wählen
    Die wenigsten Benutzer machen sich während der Installation Gedanken über das Dateisystem, sondern übernehmen die Grundeinstellung der Distribution. Dieser Artikel zeigt Ihnen, wann Sie davon abweichen sollten.
  • Flexibler mounten mit Dateisystemnamen
    Wer mehrere Linux-Systeme parallel installieren oder einfach auf einen neuen Computer umziehen möchte, hat viel zu tun: Dateien kopieren, Bootloader und Kernel-Parameter anpassen, und bloß die Zuordnung der Mount-Punkte nicht vergessen. Machen Sie es sich doch einfach und nennen Sie die Dateisysteme beim Namen.
Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

WLAN-Signalqualität vom Treiber abhängig
GoaSkin , 29.10.2014 14:16, 0 Antworten
Hallo, für einen WLAN-Stick mit Ralink 2870 Chipsatz gibt es einen Treiber von Ralink sowie (m...
Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...