LFCS: Com gestionar i crear LVM mitjançant les ordres vgcreate, lvcreate i lvextend - Part 11


A causa dels canvis en els requisits d'exàmens LFCS a partir del 2 de febrer de 2016, també estem afegint els temes necessaris a la sèrie LFCE.

Una de les decisions més importants a l'hora d'instal·lar un sistema Linux és la quantitat d'espai d'emmagatzematge que s'ha d'assignar per als fitxers del sistema, els directoris d'inici i altres. Si cometeu un error en aquest punt, fer créixer una partició que s'ha quedat sense espai pot ser llastosa i una mica arriscada.

La gestió de volums lògics (també coneguda com a LVM), que s'ha convertit en una predeterminada per a la instal·lació de la majoria (si no totes) distribucions de Linux, tenen nombrosos avantatges respecte a la gestió tradicional de particions. Potser la característica més distintiva de LVM és que permet redimensionar (reduir o augmentar) les divisions lògiques a voluntat sense gaire molèstia.

L'estructura del LVM consta de:

  1. Un o més discs durs o particions sencers estan configurats com a volums físics (PV).
  2. Es crea un grup de volums (VG) amb un o més volums físics. Podeu pensar en un grup de volums com en una única unitat d'emmagatzematge.
  3. A continuació, es poden crear diversos volums lògics en un grup de volums. Cada volum lògic és una mica equivalent a una partició tradicional, amb l'avantatge que es pot canviar la mida a voluntat com hem esmentat anteriorment.

En aquest article utilitzarem tres discs de 8 GB cadascun (/dev/sdb, /dev/sdc i /dev/sdd) per crear tres volums físics. Podeu crear els PV directament a la part superior del dispositiu o particionar-lo primer.

Tot i que hem optat per anar amb el primer mètode, si decidiu seguir amb el segon (tal com s'explica a la part 4: crear particions i sistemes de fitxers a Linux d'aquesta sèrie), assegureu-vos de configurar cada partició com a tipus 8e< /codi>.

Creació de volums físics, grups de volums i volums lògics

Per crear volums físics a sobre de /dev/sdb, /dev/sdc i /dev/sdd, feu el següent:

# pvcreate /dev/sdb /dev/sdc /dev/sdd

Podeu llistar els PVs creats recentment amb:

# pvs

i obteniu informació detallada sobre cada PV amb:

# pvdisplay /dev/sdX

(on X és b, c o d)

Si ometeu /dev/sdX com a paràmetre, obtindreu informació sobre tots els PV.

Per crear un grup de volums anomenat vg00 mitjançant /dev/sdb i /dev/sdc (desarem /dev/sdd per il·lustrar més endavant la possibilitat d'afegir altres dispositius per ampliar la capacitat d'emmagatzematge quan sigui necessari):

# vgcreate vg00 /dev/sdb /dev/sdc

Com va ser el cas dels volums físics, també podeu veure informació sobre aquest grup de volums emetent:

# vgdisplay vg00

Com que vg00 està format amb dos discs de 8 GB, apareixerà com una única unitat de 16 GB:

Quan es tracta de crear volums lògics, la distribució de l'espai ha de tenir en compte les necessitats actuals i futures. Es considera una bona pràctica anomenar cada volum lògic d'acord amb el seu ús previst.

Per exemple, creem dos LV anomenats vol_projects (10 GB) i vol_backups (espai restant), que podem utilitzar més endavant per emmagatzemar la documentació del projecte i les còpies de seguretat del sistema, respectivament.

L'opció -n s'utilitza per indicar un nom per al LV, mentre que -L estableix una mida fixa i -l (L minúscula) és s'utilitza per indicar un percentatge de l'espai restant al contenidor VG.

# lvcreate -n vol_projects -L 10G vg00
# lvcreate -n vol_backups -l 100%FREE vg00

Com abans, podeu veure la llista de LV i la informació bàsica amb:

# lvs

i informació detallada amb

# lvdisplay

Per veure informació sobre un sol LV, utilitzeu lvdisplay amb el VG i el LV com a paràmetres, de la següent manera:

# lvdisplay vg00/vol_projects

A la imatge de dalt podem veure que els LV es van crear com a dispositius d'emmagatzematge (consulteu la línia LV Path). Abans de poder utilitzar cada volum lògic, hem de crear un sistema de fitxers a sobre.

Aquí farem servir ext4 com a exemple, ja que ens permet augmentar i reduir la mida de cada LV (a diferència de xfs que només permet augmentar la mida):

# mkfs.ext4 /dev/vg00/vol_projects
# mkfs.ext4 /dev/vg00/vol_backups

A la següent secció explicarem com canviar la mida dels volums lògics i afegir espai d'emmagatzematge físic addicional quan sorgeixi la necessitat de fer-ho.

Canviar la mida dels volums lògics i ampliar els grups de volums

Ara imagineu el següent escenari. Esteu començant a quedar-vos sense espai a vol_backups, mentre que teniu molt espai disponible a vol_projects. A causa de la naturalesa de LVM, podem reduir fàcilment la mida del segon (per exemple, 2,5 GB) i assignar-lo al primer, alhora que redimensionem cada sistema de fitxers.

Afortunadament, això és tan fàcil com fer-ho:

# lvreduce -L -2.5G -r /dev/vg00/vol_projects
# lvextend -l +100%FREE -r /dev/vg00/vol_backups

És important incloure els signes menys (-) o més (+) mentre canvieu la mida d'un volum lògic. En cas contrari, establiu una mida fixa per al LV en lloc de canviar-ne la mida.

Pot passar que arribeu a un moment en què el redimensionament dels volums lògics ja no pugui resoldre les vostres necessitats d'emmagatzematge i hàgiu de comprar un dispositiu d'emmagatzematge addicional. Mantenint-ho senzill, necessitareu un altre disc. Simularem aquesta situació afegint el PV restant de la nostra configuració inicial (/dev/sdd).

Per afegir /dev/sdd a vg00, feu

# vgextend vg00 /dev/sdd

Si executeu vgdisplay vg00 abans i després de l'ordre anterior, veureu l'augment de la mida del VG:

# vgdisplay vg00

Ara podeu utilitzar l'espai recentment afegit per canviar la mida dels LV existents segons les vostres necessitats o per crear-ne d'altres segons sigui necessari.

Muntatge de volums lògics a l'arrencada i sota demanda

Per descomptat, no tindria sentit crear volums lògics si no els fem servir realment! Per identificar millor un volum lògic, haurem d'esbrinar quin és el seu UUID (un atribut no canviant que identifica de manera única un dispositiu d'emmagatzematge formatat).

Per fer-ho, utilitzeu blkid seguit del camí a cada dispositiu:

# blkid /dev/vg00/vol_projects
# blkid /dev/vg00/vol_backups

Creeu punts de muntatge per a cada LV:

# mkdir /home/projects
# mkdir /home/backups

i inseriu les entrades corresponents a /etc/fstab (assegureu-vos d'utilitzar els UUID obtinguts abans):

UUID=b85df913-580f-461c-844f-546d8cde4646 /home/projects	ext4 defaults 0 0
UUID=e1929239-5087-44b1-9396-53e09db6eb9e /home/backups ext4	defaults 0 0

A continuació, deseu els canvis i munteu els LV:

# mount -a
# mount | grep home

Quan es tracta d'utilitzar realment els LV, haureu d'assignar els permisos adequats ugo+rwx tal com s'explica a la Part 8 – Gestionar usuaris i grups a Linux d'aquesta sèrie.

Resum

En aquest article hem presentat la Part 6: Crear i gestionar RAID a Linux d'aquesta sèrie), no només podeu gaudir de l'escalabilitat (proporcionada per LVM), sinó també de la redundància (oferida per RAID).

En aquest tipus de configuració, normalment trobareu LVM a sobre de RAID, és a dir, configureu primer RAID i després configureu LVM a sobre.

Si teniu preguntes sobre aquest article o suggeriments per millorar-lo, no dubteu a posar-vos en contacte amb nosaltres mitjançant el formulari de comentaris a continuació.