[LVM] pvcreate sieht Partition nicht

Stefan Klein saubaer at gmx.net
Mon Jun 2 19:29:21 BST 2008


Hallo Christoph,

On Mon, 02 Jun 2008 17:27:50 +0200
Christoph Bier <christoph.bier at web.de> wrote:

> Simon Jolle sjolle schrieb am 01.06.2008 21:39:
> > Warum hast du 12 Partitionen des Types LVM gemacht? Was ist der Grund?
> 
> Ich möchte viele relativ kleine Partitionen haben, aus denen ich
> dann verschiedene Verzeichnisse -- hauptsächlich /home --
> zusammenbaue. Somit möchte ich einerseits potenzielle Plattendefekte
> begrenzen und andererseits in der Größe flexibel bleiben. Ich weiß
> noch nicht, ob ich für /home mehr als 250 GB brauchen werde. Solange
> das nicht der Fall ist, bringe ich auf dem freien Platz weitere BS
> unter oder Daten, die später auch ausgelagert werden können.

Genau dafür ist doch LVM da, du nimmst LVM teilweise den Job ab.
 
> Ich bin aber für jeden Erkenntnisgewinn dankbar! Wenn meine
> Vorgehensweise also verbesserungswürdig ist, lass es mich wissen.

Also z.B. du hast eine Platte mit 500 GB, und damit die Vorteile so richtig ersichtlich werden noch ne Zweite mit 500 GB.

Step 1.:
Auf der ersten Platte richtest du dir 3 Partitionen ein, /boot, swap und der Rest für LVM.
/boot machst du etwas größer als normal um z.B. ein grml-small image darin abzulegen für notfälle.
Die zweite Platte gibst du komplett an LVM ab, entweder das komplette Device, oder eine Partition über das komplette device, zweiteres hat den Vorteil das du grub auch auf der zweiten Platte installieren kann .. es ist immer gut etwas grub im Haus zu haben :)
Wenn du das komplette Device, ohne Partionierung an LVM abgibst solltest du tunlichst vermeiden zu versuchen darauf grub oder einen anderen bootloader zu installieren, dann erkennt das LVM das device nicht mehr .. been there, no t-shirt.

Step 2:
Mit pvcreate machst du aus den beiden Partitionen bzw. der Partition und dem Device Physical Volumes.

Step 3:
Nun erstellst du aus den beiden physical Volumes eine Volume Group, die Volume Group ist dann 1000 GB groß.

Step 4:
Innerhalb einer Volume Group erstellst du nun beliebig¹ viele, beliebig¹ kleine/große Logical Volumes, _das_ sind dann deine späteren Partitionen.

Nehmen wir nun an du weißt das du derzeit 100GB für /home brauchst, also erstellst du ein Logical volume mit 110 GB für /home usw. usw. den überzähligen Platz lässt du in der Volume Group einfach ungenutzt rumliegen.

Wird nun irgendwo der Platz eng, kannst du, solange in der Volume Group noch Platz ist, den logical Volumes weiteren Platz zuteilen. (An der Stelle solltest du dir den Unterschied zwischen einer Partition/einem Logical Volume und dem darin liegenden Dateisystem klar machen!)

Ist in der Volume Group kein Platz mehr verfügbar, steckst du eine neue Platte in den Rechner, konfigurierst auf die Platte dein Physical Volume, nimmst das Volume in die Volume Group auf und hast wieder Platz in der Volume Group den du beliebig¹ über die logical Volumes verteilen kannst.

Mit LVM hast du dann allerdings keinerlei zuordung von Platte <-> Daten mehr, du weisst also nie auf welcher Festplatte nun eine Datei liegt bzw. ob sie gar auf mehrere Verteilt ist. Im Falle eines Plattencrashes musst du also davon ausgehen das alle Daten, in allen Logical Volumes der Volume Group, zu der das Physical Volume gehört hat, futsch sind (wobei sich warscheinlich einiges rekonstuieren lassen wird.)

Als ich mein LVM konfiguriert habe konnte es auf jeden fall striping, also sozusagen RAID 0, ob mirroring also RAID 1 direkt im LVM auch funktioniert weiß ich nicht, ich meine etwas dazu gelesen zu haben. Eine kurze Suche im Netz hat nicht wirklich was zu Tage gefördert.

Alles klar soweit? :o)

[1] Belibig ist relativ, LVM arbeitet mit Extends die eine gewisse Größe haben, näheres dazu im LVM Howto (http://www.tldp.org/HOWTO/LVM-HOWTO/index.html).

Grüße,
Stefan
-- 
rm -rf # remote mail, real fast