Software Raid: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| (8 intermediate revisions by 2 users not shown) | |||
| Line 8: | Line 8: | ||
Ich habe 2 Festplatten mit je 160 GB davon möchte ich 100 GB auf eine andere Partition haben. | Ich habe 2 Festplatten mit je 160 GB davon möchte ich 100 GB auf eine andere Partition haben. | ||
{{ | {{Code|Ist und Soll Stand| | ||
<pre> | <pre> | ||
| Line 28: | Line 28: | ||
== Raid konfigurieren == | == Raid konfigurieren == | ||
{{ | {{Code|| | ||
<pre> | <pre> | ||
# Zuerst erstellen wir ein Raid 1: | # Zuerst erstellen wir ein Raid 1: | ||
mdadm --create --verbose /dev/ | mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1 | ||
# dateisystem erstellen, | # dateisystem erstellen, | ||
mkfs.ext3 /dev/ | mkfs.ext3 /dev/md1 | ||
# md0 Raid mounten, | # md0 Raid mounten, | ||
mount /dev/ | mount /dev/md1 /mnt/test | ||
# Erstellen einer Testdatei und md5sum um es später wieder zu prüfen: | # Erstellen einer Testdatei und md5sum um es später wieder zu prüfen: | ||
| Line 47: | Line 47: | ||
# Nun entfernen wir eine Partition: | # Nun entfernen wir eine Partition: | ||
mdadm /dev/ | mdadm /dev/md1 --fail /dev/sda1 --remove /dev/sda1 | ||
# und löschen wir die sda1, erstellen eine neue (kleinere) und setzen den Partitionstyp auf fd (Linux raid autodetect): | # und löschen wir die sda1, erstellen eine neue (kleinere) und setzen den Partitionstyp auf fd (Linux raid autodetect): | ||
| Line 53: | Line 53: | ||
# Partition dem Raid wieder hinzufügen: | # Partition dem Raid wieder hinzufügen: | ||
mdadm -a /dev/ | mdadm -a /dev/md1 /dev/sda1 | ||
# Unbedingt wieder prüfen ob das Raid syncronisiert ist: | # Unbedingt wieder prüfen ob das Raid syncronisiert ist: | ||
cat /proc/mdstat | cat /proc/mdstat | ||
Das Ganze lässt sich natürlich auch für mehrere Festplatten wiederholen. <br/> | |||
also Egal ob Raid 1 oder 5. Ausser stripes natürlich. | |||
Nun wird das Raid auf die neue Größe anegpasst: | |||
# mdadm --detail /dev/md1 | grep -e 'Array Size' -e 'Device Size' | |||
Array Size : 390912 (381.81 MiB 400.29 MB) | |||
Device Size : 195456 (190.91 MiB 200.15 MB) | |||
# mdadm --grow /dev/md1 -z max | |||
# mdadm --detail /dev/md1 | grep -e "Array Size" -e 'Device Size' | |||
Array Size : 976512 (953.79 MiB 999.95 MB) | |||
Device Size : 488256 (476.89 MiB 499.97 MB) | |||
# df -h | grep test | |||
/dev/md1 370M 15M 336M 5% /mnt/test | |||
# resize2fs /dev/md1 | |||
resize2fs 1.39 (29-May-2006) | |||
Filesystem at /dev/md1 is mounted on /mnt/test; on-line resizing required | |||
Performing an on-line resize of /dev/md1 to 976512 (1k) blocks. | |||
The filesystem on /dev/md1 is now 976512 blocks long. | |||
# df -h | grep test | |||
/dev/md1 924M 16M 861M 2% /mnt/test | |||
Nun die testdatei checken: | |||
# md5sum -c md5sum | |||
/mnt/test/dd: OK | |||
Als letztes erstellen wir die neue Patition ebenfalls in einem Raid 1 Verbund: | |||
# mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/sda4 /dev/sdb4 | |||
Jetzt noch ein Dateisystem drauf: | |||
# mkfs.ext3 /dev/md2 | |||
Fertig!!! | |||
</pre> | |||
}} | |||
Latest revision as of 15:17, 27 July 2011
Hinweise
WICHTIG!!! Ihr wisst schon: Bitte macht ein Backup vorher!
Dieses HowTo beschreibt wie man ein Raid 1 Online umpartitionieren kann d.h. es muss nicht in einem Rescu Modus oder von eine externe CD gebootet werden. Das ist der Vorteil beim Raid man kann eine Platte entfernen und wieder hinzufügen und das ganze wärend dem Betrieb. Ich habe 2 Festplatten mit je 160 GB davon möchte ich 100 GB auf eine andere Partition haben.
| Code: Ist und Soll Stand |
Vorhandene Festplatten im Server: HDD1 = /dev/sda 160 GB HDD2 = /dev/sbb 160 GB IST Stand: MD1 = 160 GB (2x 160 GB Raid 1) SOLL Stand: MD1 = 60 GB (2x 60 GB Raid 1) MD2 = 100 GB (2x 100 GB Raid 1) |
Raid konfigurieren
| Code: |
# Zuerst erstellen wir ein Raid 1:
mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
# dateisystem erstellen,
mkfs.ext3 /dev/md1
# md0 Raid mounten,
mount /dev/md1 /mnt/test
# Erstellen einer Testdatei und md5sum um es später wieder zu prüfen:
dd if=/dev/urandom of=/mnt/test/dd bs=512 count=10000
md5sum /mnt/test/dd > md5sum
# Unbedingt prüfen ob das Raid syncronisiert ist:
cat /proc/mdstat
# Nun entfernen wir eine Partition:
mdadm /dev/md1 --fail /dev/sda1 --remove /dev/sda1
# und löschen wir die sda1, erstellen eine neue (kleinere) und setzen den Partitionstyp auf fd (Linux raid autodetect):
cfdisk /dev/sda
# Partition dem Raid wieder hinzufügen:
mdadm -a /dev/md1 /dev/sda1
# Unbedingt wieder prüfen ob das Raid syncronisiert ist:
cat /proc/mdstat
Das Ganze lässt sich natürlich auch für mehrere Festplatten wiederholen. <br/>
also Egal ob Raid 1 oder 5. Ausser stripes natürlich.
Nun wird das Raid auf die neue Größe anegpasst:
# mdadm --detail /dev/md1 | grep -e 'Array Size' -e 'Device Size'
Array Size : 390912 (381.81 MiB 400.29 MB)
Device Size : 195456 (190.91 MiB 200.15 MB)
# mdadm --grow /dev/md1 -z max
# mdadm --detail /dev/md1 | grep -e "Array Size" -e 'Device Size'
Array Size : 976512 (953.79 MiB 999.95 MB)
Device Size : 488256 (476.89 MiB 499.97 MB)
# df -h | grep test
/dev/md1 370M 15M 336M 5% /mnt/test
# resize2fs /dev/md1
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/md1 is mounted on /mnt/test; on-line resizing required
Performing an on-line resize of /dev/md1 to 976512 (1k) blocks.
The filesystem on /dev/md1 is now 976512 blocks long.
# df -h | grep test
/dev/md1 924M 16M 861M 2% /mnt/test
Nun die testdatei checken:
# md5sum -c md5sum
/mnt/test/dd: OK
Als letztes erstellen wir die neue Patition ebenfalls in einem Raid 1 Verbund:
# mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/sda4 /dev/sdb4
Jetzt noch ein Dateisystem drauf:
# mkfs.ext3 /dev/md2
Fertig!!!
|