• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] SW-Raid 1, Platten vergrößern

deadkenny

Member
hallo,

mal eine allgemeine Frage:

ich habe einen SuSE 10.0 als server auf 2 sata-platten mit sw-raid 1 laufen.
leider sind die platten jetzt voll und ich möchte auf 2x500GB "upgraden".
wie stelle ich das am besten an?

meine idee:

eine "alte" platte raus, neue 500gig rein, syncen lassen (wobei die 500er dann nur auf 160 ausgelegt sein wird), und danach evtl. mit partition magic die partitionen auf 500gig aufschrauben, 2. alte platte raus und dann die 2, 500er rein und syncen lassen

ist das wohl so sinnvoll oder gibt es bessere/einfachere möglichkeiten?

vielen dank für eure tips!!!

gruß
kenny

ps: hoffe mal, daß ich keine wichtigen angaben vergessen habe
 
A

Anonymous

Gast
deadkenny schrieb:
meine idee:

eine "alte" platte raus, neue 500gig rein, syncen lassen (wobei die 500er dann nur auf 160 ausgelegt sein wird), und danach evtl. mit partition magic die partitionen auf 500gig aufschrauben, 2. alte platte raus und dann die 2, 500er rein und syncen lassen

besser, weil sicherer :
eine alte Platte raus (besser vorher im Raid auf failed setzen), neue 500gig rein, die neue 500 eventuell passend partitionieren. auf der neuen Platte dann neue Raid 1 mit jeweils Einer "missing" erzeugen. Neue Filesysteme auf die neuen Raiddevices anlegen, und diese Filesysteme temporär mounten. Die ganzen Dateien vom System dort hinkopieren. Im jetzt zukünftige neuen System die fstab, mdadm.conf ändern, neue initrd erstellen.
Versuchen ob man vom altem grub aus oder von einer CD das neue System auf der 500 sauber zum booten bekommt. Wenn ja, dann grub auf der neuen Platte anlegen, im Bios dafür sorgen, dass er zuerst von dieser versucht zu booten. Das System sollte jetzt von der 500 sauber booten.
Jetzt die alte Platte raus, und die andere 500 rein und ins Raid integieren.
Jetzt nur noch mal Grub auf beide Platten so konfigurieren das er auch sauber von beiden Platten booten kann.

Hilfe zu den einzelnen Schritten könntest du hier finden. http://wiki.linux-club.de/NonRaid_zu_(software)Raid1_SuSE_10_1

Achtung Link wir eventuell im Forum nicht sauber erkannt, (zB. bricht an Sonderzeichen ab) dann Link kopieren oder manuell im Browser eingeben.


robi
 
alte1 raus, neue rein, 500G-Partition, syncen;
alte2 raus, neue rein, 500G-Partition, syncen;
MD-Device auf 500G setzen.
Da braucht man kein komisches Partition Magic.
 
A

Anonymous

Gast
jengelh schrieb:
MD-Device auf 500G setzen.
Schon mal probiert ? ext2/3 (online oder offline) vergrößert ? Hut ab - ich habs mir noch nicht getraut. Bin ich wahrscheinlich zu feige zu.

robi
 
OP
deadkenny

deadkenny

Member
also, schonmal vielen dank für eure tips.
ich werde das mal so machen und das ergebnis posten!
 
robi schrieb:
jengelh schrieb:
MD-Device auf 500G setzen.
Schon mal probiert ? ext2/3 (online oder offline) vergrößert ? Hut ab - ich habs mir noch nicht getraut. Bin ich wahrscheinlich zu feige zu.

robi
Wieso offline? Nicht mal rebooten braucht man (sofern man nicht durch IDE-Elektronik dazu gezwungen wird)
1. neue Platte sda
2. fdisk /dev/sda - sda1 500G Partition
3. mdadm /dev/md0 -a /dev/sda1
4. neue Platte sdb
5. fdisk /dev/sdb - sdb1 500G Partition
6. mdadm /dev/md0 -a /dev/sdb1
7. mdadm -G /dev/md0
8. xfs_growfs /mountpt
 
Das trägt doch gar nicht zur Sache - geht bei modernen, von SUSE unterstützten Filesystemen gleich. ext3, reiser3, xfs.
 
OP
deadkenny

deadkenny

Member
so, platten endlich da.

nur nochmal zur rückversicherung:

- platte sda im laufenden betrieb rausnehmen
- fdisk /dev/sda (500 GB Partition erstellen)
- ins Raid einbinden mit: mdadm /dev/md0 -a /dev/sda1
- was ist mit dem sync?

dann das gleiche mit sdb?

wie aber vergrößert der auf die 500gig?

-mdadm -G /dev/md0???
 
OP
deadkenny

deadkenny

Member
so,

jetzt habe ich gemerkt, daß ich auf sda gar keine partition erstellen kann, da er ja noch die "alte" platte im raid drin hat.

wie wärs denn damit?:

root@server ~# raidhotremove /dev/md0 /dev/sda1
- neue platte rein
- partition sda1 erstellen
root@server ~# raidhotadd /dev/md0 /dev/sda1
der sync läuft automatisch und das gleiche mit sdb.
danach ein
was käme hierher? das FS ist ja "Linux Raid (0x83)"?

gruß
kenny
 
Wie du siehst gibt es raidhotremove nicht (mehr).

Was genau hast du denn bisher so partitioniert und/oder wovon läuft dein System?
 
OP
deadkenny

deadkenny

Member
habe folgendes gemacht:

root@server ~# raidhotremove /dev/md0 /dev/sda1
- alte 160gb raus
- neue 500 gb platte rein
- partition sda1 erstellen

server:~ # mdadm -D /dev/md0
/dev/md0:
Version : 00.90.02
Creation Time : Fri Feb 24 22:03:41 2006
Raid Level : raid1
Array Size : 155838400 (148.62 GiB 159.58 GB)
Device Size : 155838400 (148.62 GiB 159.58 GB)
Raid Devices : 2
Total Devices : 1
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Mon Jan 28 13:53:15 2008
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0

UUID : b594609e:03e10e2c:5d4b3a5e:af5ddbde
Events : 0.52066976

Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 0 0 - removed
server:~ #

das problem ist nur, daß er bei "root@server ~# raidhotadd /dev/md0 /dev/sda1" die platte immer noch als maxtor 160 gb erkennt.

btw, wieso
Wie du siehst gibt es raidhotremove nicht (mehr).
 
deadkenny schrieb:
btw, wieso
Wie du siehst gibt es raidhotremove nicht (mehr).
Weil ich diesen Befehl nicht habe. Der gehörte zu den steinalten "raidtools". Ehrlich gesagt brauch ich den auch nicht, weil es ja mdadm gibt.
habe folgendes gemacht:
root@server ~# raidhotremove /dev/md0 /dev/sda1
- alte 160gb raus
- neue 500 gb platte rein
- partition sda1 erstellen
server:~ # mdadm -D /dev/md0
/dev/md0:
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 0 0 - removed
server:~ #
Genau, und dann machste...
Code:
mdadm /dev/md0 -a /dev/sda1
mdadm -G /dev/md0
xxxxx_growfs /dev/md0
Goaannzz oinfach! (Bzw bringt -G und growfs erst was, wenn auch sdb 500GB ist)
 
OP
deadkenny

deadkenny

Member
danke,

aber wie kommts, daß er das neue device als alte platte erkennt?
sync war fertig und ich habe vorsichtshalber mal nen reboot gemacht (bitte nicht hauen!) und siehe da:

er hat angezeigt, daß device 1 removed ist. also wech. die neue platte hat er mit 500 gig nun auch erkannt (auch mit einer ca. 160 gig großen partition, wahrscheinlich aus dem sync vorher).

jetzt synce ich wieder, in der hoffnung, daß es klappt.

nächster schritt:????
root@server ~# raidhotremove /dev/md0 /dev/sdb1
- alte 160gb raus
- neue 500 gb platte rein
- partition sdb1 erstellen
- reboot
- raidhotadd /dev/md0 /dev/sdb1
dann platten vergrößern!?
 
deadkenny schrieb:
aber wie kommts, daß er das neue device als alte platte erkennt?
Wie kommst du darauf?
er hat angezeigt, daß device 1 removed ist.
Bloß nicht "Device 1" oder "Device 2" nennen - die können u.U. ihre Position wechseln. sda, sdb, schon besser.
also wech. die neue platte hat er mit 500 gig nun auch erkannt (auch mit einer ca. 160 gig großen partition, wahrscheinlich aus dem sync vorher).
Du hast doch hoffentlich eine 500GB-Partition gemacht? `fdisk -l` zeigen!
 
OP
deadkenny

deadkenny

Member
Du hast doch hoffentlich eine 500GB-Partition gemacht? `fdisk -l` zeigen!

server:~ # fdisk -l

Disk /dev/hda: 41.1 GB, 41174138880 bytes
255 heads, 63 sectors/track, 5005 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 1 66 530113+ 82 Linux swap / Solaris
/dev/hda2 * 67 850 6297480 83 Linux
/dev/hda3 851 5005 33375037+ 83 Linux

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 19929 160079661 83 Linux

Disk /dev/sdb: 203.9 GB, 203928109056 bytes
255 heads, 63 sectors/track, 24792 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 19401 155838501 fd Linux raid autodetect

Disk /dev/md0: 159.5 GB, 159578521600 bytes
2 heads, 4 sectors/track, 38959600 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Device Boot Start End Blocks Id System
server:~ #

mist, habe ich nicht.

das problem war, wie gesagt, daß er im trotz wechsel der platte, nur die alte erkannte und deswegen keine partition größer 160 gig anlegen konnte. jetzt synct er natürlich wieder auf 160 gig.

server:~ # mdadm -D /dev/md0
/dev/md0:
Version : 00.90.02
Creation Time : Fri Feb 24 22:03:41 2006
Raid Level : raid1
Array Size : 155838400 (148.62 GiB 159.58 GB)
Device Size : 155838400 (148.62 GiB 159.58 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Mon Jan 28 19:17:39 2008
State : active, degraded, recovering
Active Devices : 1
Working Devices : 2
Failed Devices : 0
Spare Devices : 1

Rebuild Status : 33% complete

UUID : b594609e:03e10e2c:5d4b3a5e:af5ddbde
Events : 0.52076658

Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 0 0 - removed

2 8 1 1 spare rebuilding /dev/sda1
server:~ #
macht es sinn, denn sync mit
abzubrechen und die 500er platte neu zu partitionieren?

ich weiß, ist etwas durcheinander. ich werde das auch nie wieder zwischendurch machen (so wie heute).

PS: ist hiernach nicht nun doch ein reboot notwendig?
 
OP
deadkenny

deadkenny

Member
ok,

was habe ich bis jetzt gemacht.

- platte sda abgeschaltet (icybox einschub deadktiviert)
- #raidhotremove /dev/md0 /dev/sda1
- alte platte sda raus
- neue 500 gig rein
- partitioniert (sda1=160 gig), wobei er unter fdisk -l immer noch die alte angezeigt hat und deshalb max. 160 gig möglich waren
- syncen lassen
-reboot
- neue platte erkannt und das ganze ab partitionieren nochmal gemacht (mit einer 500 gig partition)
- mdadm /dev/md0 -a /dev/sda1
- nach dem syncen das gleiche mit sdb gemacht

hierbei ist mir aufgefallen, daß er bei

bei den 160er platten das FS
anzeigt und bei den neuen

ok, jetzt habe ich den sync durchlaufen lassen, machte einen reboot und es kam zur
mit folgender meldung
waiting for device /dev/md0 to appear: ok
no record for 'md0' in database
rootfs: major=9 minor=0 devn=2304
/dev/md0: unknown volume type
=: not found
Mounting root /dev/md0
Usage: mount [-r] [-w] [-o options] [-t type] device directory
kernel panic - not syncing: Attempted to kill init

was habe ich denn falsch gemacht?

vielen dank und gruß
kenny
 
OP
deadkenny

deadkenny

Member
ok, ich möchte auf diese weise NICHT meinen thread count erhöhen, ok!? :oops:

aber ich komme echt nicht weiter.

habe jetzt nochmal die alte sdb eingebaut und von dieser gestartet. funzt.

nun folgendes:
server:~ # fdisk -l

Disk /dev/hda: 41.1 GB, 41174138880 bytes
255 heads, 63 sectors/track, 5005 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 1 66 530113+ 82 Linux swap / Solaris
/dev/hda2 * 67 850 6297480 83 Linux
/dev/hda3 851 5005 33375037+ 83 Linux

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 60801 488384001 83 Linux

Disk /dev/sdb: 203.9 GB, 203928109056 bytes
255 heads, 63 sectors/track, 24792 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 19401 155838501 fd Linux raid autodetect

Disk /dev/md0: 159.5 GB, 159578521600 bytes
2 heads, 4 sectors/track, 38959600 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Device Boot Start End Blocks Id System
server:~ #
und
server:~ # mdadm -D /dev/md0
/dev/md0:
Version : 00.90.02
Creation Time : Fri Feb 24 22:03:41 2006
Raid Level : raid1
Array Size : 155838400 (148.62 GiB 159.58 GB)
Device Size : 155838400 (148.62 GiB 159.58 GB)
Raid Devices : 2
Total Devices : 1
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Tue Jan 29 14:19:53 2008
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0

UUID : b594609e:03e10e2c:5d4b3a5e:af5ddbde
Events : 0.52110750

Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 0 0 - removed
server:~ #

wie nun weiter???
die beschriebenen wege scheinen nicht zu funktionieren. :?
 

TomcatMJ

Guru
deadkenny schrieb:
hierbei ist mir aufgefallen, daß er bei

bei den 160er platten das FS
anzeigt und bei den neuen

ok, jetzt habe ich den sync durchlaufen lassen, machte einen reboot und es kam zur
mit folgender meldung
waiting for device /dev/md0 to appear: ok
no record for 'md0' in database
rootfs: major=9 minor=0 devn=2304
/dev/md0: unknown volume type
=: not found
Mounting root /dev/md0
Usage: mount [-r] [-w] [-o options] [-t type] device directory
kernel panic - not syncing: Attempted to kill init

was habe ich denn falsch gemacht?

vielen dank und gruß
kenny
Hast du schonmal probiert die Partitionstypen der neuen Platten nachträglich von 0x83 (also Linux Standardpartition auf fd (also Linux RAID Partition) per fdisk zu ändern und dann nochmal den Sync anzuwerfen?

Bis denne,
Tom
 
Oben