LVM: Unterschied zwischen den Versionen

Aus SchnallIchNet
Wechseln zu: Navigation, Suche
(lvm anlegen)
Zeile 1: Zeile 1:
 
TODO: mach et schoener... ;-)
 
TODO: mach et schoener... ;-)
  
=pakete=
+
==pakete==
 
  apt-get install lvm2 cryptsetup mdadm
 
  apt-get install lvm2 cryptsetup mdadm
  
=raid erzeugen=
+
==raid erzeugen==
 
  mdadm -C /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1
 
  mdadm -C /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1
packt die platten sdb1 und sdc1 in ein raid1 (-l1)<br />
+
packt die platten sdb1 und sdc1 in ein '''raid1 (-l1)'''<br />
-n2 = 2 raid-member
+
-n2 = 2 raid-member<br/>
 +
fuer ein raid5 waere das entsprechend:
 +
mdadm -C /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 /dev/sdd1
  
=lvm anlegen=
+
==lvm anlegen==
 +
===pysical volume erzeugen===
 +
pvcreate /dev/md0
 +
oder ohne raid:
 
  pvcreate /dev/hda5 /dev/hdc1 /dev/sda2
 
  pvcreate /dev/hda5 /dev/hdc1 /dev/sda2
 
fuegt die physical volumes hinzu.
 
fuegt die physical volumes hinzu.
{{Achtung|bei der verwendung eines raid's muss das device /dev/mdX (z.B. pvcreate /dev/md0 oder pvcreate /dev/md1) verwendet werden:}}
+
{{Achtung|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
 
  vgcreate vg1 /dev/md0
 
legt die volume-group 'vg1' an. name frei waehlbar
 
legt die volume-group 'vg1' an. name frei waehlbar
  
  lvcreate -L 10G -n <name (z.b. usr)> <vol-group (z.b. vg1)>
+
===logisches volume erzeugen===
 +
  lvcreate -L 10G -n <name (z.b. daten)> <vol-group (z.b. vg1)>
  
 
'''wenn verschluesselt werden soll:'''
 
'''wenn verschluesselt werden soll:'''
 
  cryptsetup -c aes-cbc-essiv:sha256 -y -s256 luksFormat /dev/<vol-grp>/<name>  
 
  cryptsetup -c aes-cbc-essiv:sha256 -y -s256 luksFormat /dev/<vol-grp>/<name>  
  cryptsetup luksOpen /dev/<vol-grp>/<name> anonymous
+
  cryptsetup luksOpen /dev/<vol-grp>/<name> daten.decrypted
 
Physical (encrypted) /dev/<vol-grp>/<name><br/>
 
Physical (encrypted) /dev/<vol-grp>/<name><br/>
Logical (unencrypted) /dev/mapper/anonymous<br/>
+
Logical (unencrypted) /dev/mapper/daten.decrypted<br/>
  
--> don't forget to:
+
===dateisystem erzeugen===
 
   mkfs.ext3 /dev/<vol-grp>/<name>
 
   mkfs.ext3 /dev/<vol-grp>/<name>
 
z.b.:  
 
z.b.:  
  mkfs.ext3 /dev/main/usr
+
  mkfs.ext3 /dev/vg1/daten
 
'''oder falls verschluesselt:'''
 
'''oder falls verschluesselt:'''
  mkfs.ext3 /dev/mapper/anonymous
+
  mkfs.ext3 /dev/mapper/daten.decrypted
  
=lvm vergroessern=
+
==lvm vergroessern==
 +
===groesse der volume-group anzeigen===
 
vgdisplay zeigt volume-group an, also verbleibender/benutzter speicher etc.<br/>
 
vgdisplay zeigt volume-group an, also verbleibender/benutzter speicher etc.<br/>
 
ohne den optionalen parameter werden alle volume groups aufgelistet.
 
ohne den optionalen parameter werden alle volume groups aufgelistet.
  vgdisplay [vol-group (z.b. main)]
+
  vgdisplay [vol-group (z.b. daten)]
  
  lvextend -L +100G /dev/vg1/home
+
===logisches volume vergroessern===
 +
  lvextend -L +100G /dev/vg1/daten
 +
 
 +
===dm-crypt-container vergroessern===
 
'''wenn verschluesselt,''' dann den dmcrypt-container vergroessern
 
'''wenn verschluesselt,''' dann den dmcrypt-container vergroessern
  cryptsetup resize anonymous
+
  cryptsetup resize daten.decrypted
 +
 
 +
===dateisystem vergroessern===
 
danach das filesystem vergroessern...
 
danach das filesystem vergroessern...
resize2fs /dev/mapper/vg1-home
+
  resize2fs /dev/vg1/daten
oder
+
  resize2fs /dev/vg1/home
+
 
'''wenn verschluesselt:'''
 
'''wenn verschluesselt:'''
  resize2fs /dev/mapper/anonymous
+
  resize2fs /dev/mapper/daten.decrypted
  
=Platte austauschen=
+
==Platte austauschen==
  
 
{{Achtung|ACHTUNG: bei platten die bereits als raid in benutzung waren: das magig-flag am anfang der raid-partition muss ueberschrieben werden!}}
 
{{Achtung|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
 
  dd if=/dev/zero of=/dev/sdb5 bs=1024 count=1000
  
Partitionstabelle auf neue sdb uebertragen:
+
Partitionstabelle von platte sda auf neue platte sdb uebertragen:
 
  sfdisk -d /dev/sda | sfdisk /dev/sdb
 
  sfdisk -d /dev/sda | sfdisk /dev/sdb
  
 
raid-partition zu mdX hinzufuegen
 
raid-partition zu mdX hinzufuegen
  mdadm /dev/md0 -a /dev/sdb5
+
  mdadm /dev/md0 -a /dev/sdb1
  
 
replication abwarten:
 
replication abwarten:
  watch cat /proc/mdstat
+
  watch 'cat /proc/mdstat'
  
  
=Raid-Status=
+
==Raid-Status==
 
<pre>
 
<pre>
 
cat /proc/mdstat
 
cat /proc/mdstat
Zeile 74: Zeile 85:
 
ausgabe bei inconsitenz oder fehlender platte:
 
ausgabe bei inconsitenz oder fehlender platte:
 
<pre>
 
<pre>
 +
cat /proc/mdstat
 +
 
Personalities : [raid1]
 
Personalities : [raid1]
 
md0 : active raid1 sda5[0]
 
md0 : active raid1 sda5[0]

Version vom 24. August 2009, 07:36 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

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