LVM: Unterschied zwischen den Versionen

Aus SchnallIchNet
Wechseln zu: Navigation, Suche
(Platte austauschen)
(Platte austauschen)
Zeile 61: Zeile 61:
  
 
defekte platte aus raid entfernen
 
defekte platte aus raid entfernen
  mdadm --remove /dev/md0 /dev/sdb
+
  mdadm --remove /dev/md0 /dev/sdd
 +
 
 +
 
 +
wenn man (wie ich) 3 gleiche platten eingebaut hat, wie finde ich jetzt die defekte?<br/>
 +
ich weiss, es ist sdd, aber welche physikalische platte ist das?
 +
sdparm -i /dev/sdd
 +
...
 +
ST31000340AS                                        9QJ0W04D
 +
...
 +
oder man verwendet lshal
 +
lshal | less
 +
nun nach der defekten platte, also 'sdd' suchen<br/>
 +
dann findet man ein paar zeilen weiter unten etwa sowas:
 +
...
 +
storage.serial = 'SATA_ST31000340AS_9QJ0W04D'  (string)
 +
...
 +
und hat damit die seriennummer der platte 9QJ0W04D <br/><br/>
 +
nun also platte raus...
  
  

Version vom 27. November 2010, 08:57 Uhr

TODO: mach et schoener... ;-)

pakete

apt-get install lvm2 cryptsetup mdadm

raid erzeugen

mdadm -C /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1

packt die platten sdb1 und sdc1 in ein raid1 (-l1)
-n2 = 2 raid-member
fuer ein raid5 waere das entsprechend:

mdadm -C /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 /dev/sdd1

lvm anlegen

pysical volume erzeugen

pvcreate /dev/md0

oder ohne raid:

pvcreate /dev/hda5 /dev/hdc1 /dev/sda2

fuegt die physical volumes hinzu.

Achtung.jpeg bei der verwendung eines raid's muss das device /dev/mdX (z.B. pvcreate /dev/mdX) verwendet werden.

volume-group erzeugen

vgcreate vg1 /dev/md0

legt die volume-group 'vg1' an. name frei waehlbar

logisches volume erzeugen

lvcreate -L 10G -n <name (z.b. daten)> <vol-group (z.b. vg1)>

wenn verschluesselt werden soll:

cryptsetup -c aes-cbc-essiv:sha256 -y -s256 luksFormat /dev/<vol-grp>/<name> 
cryptsetup luksOpen /dev/<vol-grp>/<name> daten.decrypted

Physical (encrypted) /dev/<vol-grp>/<name>
Logical (unencrypted) /dev/mapper/daten.decrypted

dateisystem erzeugen

 mkfs.ext3 /dev/<vol-grp>/<name>

z.b.:

mkfs.ext3 /dev/vg1/daten

oder falls verschluesselt:

mkfs.ext3 /dev/mapper/daten.decrypted

lvm vergroessern

groesse der volume-group anzeigen

vgdisplay zeigt volume-group an, also verbleibender/benutzter speicher etc.
ohne den optionalen parameter werden alle volume groups aufgelistet.

vgdisplay [vol-group (z.b. daten)]

logisches volume vergroessern

lvextend -L +100G /dev/vg1/daten

dm-crypt-container vergroessern

wenn verschluesselt, dann den dmcrypt-container vergroessern

cryptsetup resize  daten.decrypted

dateisystem vergroessern

danach das filesystem vergroessern...

resize2fs /dev/vg1/daten

wenn verschluesselt:

resize2fs /dev/mapper/daten.decrypted

Platte austauschen

defekte platte aus raid entfernen

mdadm --remove /dev/md0 /dev/sdd


wenn man (wie ich) 3 gleiche platten eingebaut hat, wie finde ich jetzt die defekte?
ich weiss, es ist sdd, aber welche physikalische platte ist das?

sdparm -i /dev/sdd
...
ST31000340AS                                        9QJ0W04D
...

oder man verwendet lshal

lshal | less

nun nach der defekten platte, also 'sdd' suchen
dann findet man ein paar zeilen weiter unten etwa sowas:

...
storage.serial = 'SATA_ST31000340AS_9QJ0W04D'  (string)
...

und hat damit die seriennummer der platte 9QJ0W04D

nun also platte raus...


Achtung.jpeg ACHTUNG: bei platten die bereits als raid in benutzung waren: das magig-flag am anfang der raid-partition muss ueberschrieben werden!
dd if=/dev/zero of=/dev/sdb5 bs=1024 count=1000

Partitionstabelle von platte sda auf neue platte sdb uebertragen:

sfdisk -d /dev/sda | sfdisk /dev/sdb

raid-partition zu mdX hinzufuegen

mdadm /dev/md0 -a /dev/sdb1

replication abwarten:

watch 'cat /proc/mdstat'

Raid-Status

cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sdb5[1] sda5[0]
      155999040 blocks [2/2] [UU]
 
unused devices: <none> 

ausgabe bei inconsitenz oder fehlender platte:

cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sda5[0]
      155999040 blocks [2/1] [U_]

unused devices: <none>

mit folgendem kommando kann wird die ausgabe staendig refreshed:

watch cat /proc/mdstat