Partitionen verschieben ohne Datenverlust

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
ralfi
Beiträge: 285
Registriert: 02.06.2011 11:16:11
Wohnort: Brandenburg

Partitionen verschieben ohne Datenverlust

Beitrag von ralfi » 09.07.2014 14:26:16

Hallo allesamt,

ich habe da ein Partitionierungsproblem, welches ich mit eurer Hilfe evtl. lösen könnte. Es geht um die Debian Installation auf einem Server aus dem Jahre 2008, welcher mit der damals üblichen automatischen Partitionsmethode der Debian Installationsroutine eingerichtet wurde. Die Partitionen sind wie folgt eingerichtet:

Code: Alles auswählen

Disk /dev/sda: 586.4 GB, 586363699200 bytes
255 heads, 63 sectors/track, 71287 cylinders, total 1145241600 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
Disk identifier: 0x0005a379

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63      546209      273073+  83  Linux
/dev/sda2          546210  1145225654   572339722+   5  Extended
/dev/sda5          546273    10313729     4883728+  83  Linux
/dev/sda6        10313793    16177454     2931831   83  Linux
/dev/sda7        16177518    21478904     2650693+  82  Linux swap / Solaris
/dev/sda8        21478968    22266089      393561   83  Linux
/dev/sda9        22266153    23246054      489951   83  Linux
/dev/sda10       23246118    24226019      489951   83  Linux
/dev/sda11       24226083  1145225654   560499786   83  Linux
Es ist leicht zu erkennen, wo hier das Problem liegt: Die root-Partition ist schlicht und einfach zu klein geworden, um mehr als einen Kernel mit Header-Dateien und ein bisschen weiteres Geraffel aufzunehmen denn sie ist nur 259MB gross. Das zeigt auch ein "df -h":

Code: Alles auswählen

Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/sda1       259M    158M   87M   65% /
udev             10M       0   10M    0% /dev
tmpfs           405M    1,2M  404M    1% /run
tmpfs           5,0M       0  5,0M    0% /run/lock
tmpfs           1,3G       0  1,3G    0% /run/shm
/dev/sda9       479M     33M  446M    7% /home
/dev/sda10      479M     33M  447M    7% /opt
/dev/sda11      535G    138G  397G   26% /srv
/dev/sda8       385M     33M  353M    9% /tmp
/dev/sda5       4,7G    1,7G  3,1G   35% /usr
/dev/sda6       2,8G    790M  2,1G   28% /var
Nun könnte man natürlich mit einer Live-CD das System booten (es handelt sich um einen wichtigen Server, dessen Ausfallzeit möglichst sehr klein gehalten werden sollte ...) und die Partitionen manipulieren.

Hier stellt sich aber für mich die Frage ob das funktionieren würde, denn bereits ab Zylinder 546210 beginnt die erweiterte Partition, die alle weiteren Systempartitionen enthält. Man müsste also alle Partitionen in der erweiterten Partition verkleinern und den Startzylinder aller Partitionen so verändern, dass man letztendlich die Partition sda1 dadurch vergößern kann, indem man den Startzylinder der erweiterten Partition verschiebt.

Jo, geht das so überhaupt? Oder gibt es da einen anderen Lösungsansatz mit geringer Ausfallzeit?
Viele Grüße, ralfi

Niveau sieht von unten oft wie Arroganz aus ...

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: Partitionen verschieben ohne Datenverlust

Beitrag von hikaru » 09.07.2014 14:40:07

Im Grunde musst du nur sda5 verkleinern. Da scheint es genug Reserven zu geben. Die anderen logischen Partitionen brauchst du nicht anfassen, du musst sie lediglich vor dem Verkleinern der erweiterten Partition unmounten falls sie vorher gemountet waren.

Soweit ich weiß wird im Zuge des Verkleinerns der erweiterten Partition aber trotzdem ein fsck aller logischen Partitionen gemacht - und das kostet viel Zeit (zumindest bei Partitionen die vermutlich historisch bedingt ext3-formattiert sind).
Vielleicht lässt sich dieser fsck abschalten, denn mit etwas Mut zum Risiko sollten ja nur sda1 und sda5 von möglichen Problemen betroffen sein, aber ich weiß nicht wie.

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: Partitionen verschieben ohne Datenverlust

Beitrag von uname » 09.07.2014 15:11:23

Du könntest auch einfach / mit auf /dev/sda5 (/usr) oder /dev/sda6 (/var) packen wenn es dich nicht stört. Ich empfehle mal die /usr-Partition es sei denn du mountest /usr aus Sicherheitsgründen nur Read-Only. Die Daten per "rsync" rüberkopieren, /etc/fstab anpassen und irgendwie GRUB neu schreiben. Vielleicht kann jemand ein paar Tipps geben. Aber booten wirst du wohl einmal müssen ;-)

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: Partitionen verschieben ohne Datenverlust

Beitrag von hikaru » 09.07.2014 15:18:56

uname hat geschrieben:irgendwie GRUB neu schreiben.
Ich boote in solchen Fällen von einer Supergrub-Scheibe in das Zielsystem und schreibe dann von dort Grub neu.
uname hat geschrieben:Vielleicht kann jemand ein paar Tipps geben.
Gerade von dir altem grml-chroot-Hasen hätte ich da was erwartet. ;)
Ich selbst stelle mich dabei irgendwie zu blöd an. Das chroot vom Live-System auf das HDD-System kriege ich noch hin, aber irgendwas muss dann noch fehlen um tatsächlich von dort Grub neu zu schreiben.

ralfi
Beiträge: 285
Registriert: 02.06.2011 11:16:11
Wohnort: Brandenburg

Re: Partitionen verschieben ohne Datenverlust

Beitrag von ralfi » 09.07.2014 15:21:03

Hi hikaru & uname,

vielen Dank für die Hinweise.

Nur die root-Partition ist übrigens ext3, die anderen Partitionen sind reiserfs. Manchmal sieht man den Wald vor Bäumen nicht, denn die Verkleinerung von sda5, das anschliessende Verschieben des Startzylinders für die erweiterte Partition und letztlich das Vergößern von sda1 über eine Live-CD ist nach meiner jetzigen Meinung die "sicherste" Lösung. Ich werde mir als Test mal eine VM anlegen und das mit ReiserFS und Ext3-Partitionen testen.
Viele Grüße, ralfi

Niveau sieht von unten oft wie Arroganz aus ...

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: Partitionen verschieben ohne Datenverlust

Beitrag von uname » 09.07.2014 16:16:39

hikaru hat geschrieben:Gerade von dir altem grml-chroot-Hasen hätte ich da was erwartet
Eigentlich hatte ich mir eine elegante Lösung ohne Live-CD/USB und/oder chroot direkt im laufenden System erhofft. Also Daten rüberkopieren, /etc/fstab anpassen, GRUB neu konfigurieren, in den MBR schreiben und nach dem Booten hoffen, dass alles läuft ;-) Würde die Downtime massiv minimieren ... oder vielleicht das System zerlegen.

KP97
Beiträge: 3762
Registriert: 01.02.2013 15:07:36

Re: Partitionen verschieben ohne Datenverlust

Beitrag von KP97 » 09.07.2014 18:04:01

Sowas wäre mit einer Installations-CD im Rescue Modus möglich.
Da kann man ja eine Shell auf der gewünschten Partition öffnen und alles das ausführen, ganz ohne chroot.
Aber ein Backup ist natürlich Pflicht, da man bei solchen Aktionen vorher nie so ganz genau weiß, ob alles klappt.

Antworten