Pagina principala » HOWTO » Cum se administrează și se folosește LVM (Logical Volume Management) în Ubuntu

    Cum se administrează și se folosește LVM (Logical Volume Management) în Ubuntu

    În articolul nostru precedent, v-am spus ce este LVM și ce ați putea dori să îl utilizați și astăzi vom trece prin câteva dintre instrumentele de gestionare cheie ale LVM, astfel încât veți avea încredere în instalarea sau extinderea instalării.

    După cum sa menționat anterior, LVM este un strat de abstractizare între sistemul de operare și hard-urile fizice. Ceea ce înseamnă acest lucru este că hard-urile dvs. fizice și partițiile nu mai sunt legate de unitățile hard disk și de partițiile pe care le locuiesc. Mai degrabă, unitățile de hard disk și partițiile pe care le vede sistemul dvs. de operare pot fi orice număr de unități de hard disk separate, combinate sau într-un software RAID.

    Pentru a gestiona LVM există instrumente GUI disponibile, dar pentru a înțelege cu adevărat ce se întâmplă cu configurația dvs. LVM, este probabil cel mai bine să știți ce sunt instrumentele liniei de comandă. Acest lucru va fi util în special dacă gestionați LVM pe un server sau pe o distribuție care nu oferă instrumente GUI.

    Majoritatea comenzilor din LVM sunt foarte asemănătoare. Fiecare comandă validă este precedată de una dintre următoarele:

    • Volumul fizic = pv
    • Volume Group = vg
    • Volumul logic = lv

    Comenzile de volum fizic sunt pentru adăugarea sau eliminarea unităților hard disk în grupurile de volume. Comenzile grupului de volum sunt pentru a schimba setul de partiții fizice abstractizate care sunt prezentate în operațiunile dvs. în volume logice. Comenzile de volum logice vor prezenta grupurile de volume ca partiții astfel încât sistemul dvs. de operare să poată utiliza spațiul desemnat.

    Descărcabilă LVM Cheat Sheet

    Pentru a vă ajuta să înțelegeți ce comenzi sunt disponibile pentru fiecare prefix am făcut o foaie de înșelătorie LVM. Vom acoperi câteva dintre comenzile din acest articol, dar există încă multe pe care le puteți face care nu vor fi acoperite aici.

    Toate comenzile din această listă vor trebui executate ca root pentru că schimbați setările la nivel de sistem care vor afecta întreaga mașină.

    (Faceți clic pe miniatură pentru o imagine de dimensiune completă)

    Cum să vizualizați informațiile LVM curente

    Primul lucru pe care ar trebui să-l faceți este să verificați modul în care LVM-ul este configurat. s și afişa comenzile funcționează cu volumele fizice (pv), grupurile de volum (vg) și volumele logice (lv), deci este un loc bun pentru a începe atunci când încercați să aflați setările curente.

    afişa comanda va forma informațiile astfel încât să fie mai ușor de înțeles decât s comanda. Pentru fiecare comandă veți vedea numele și calea pv / vg și ar trebui să dea, de asemenea, informații despre spațiul liber și cel utilizat.

    Cele mai importante informații vor fi numele PV și numele VG. Cu aceste două informații putem continua să lucrăm la configurația LVM.

    Crearea unui volum logic

    Volumele logice sunt partițiile pe care sistemul de operare le utilizează în LVM. Pentru a crea un volum logic, trebuie să avem mai întâi un volum și un volum fizic. Iată toți pașii necesari pentru a crea un nou volum logic.

    Creați volumul fizic

    Vom începe de la zero cu un nou hard disk fără partiții sau informații despre el. Începeți prin a afla cu ce disc veți lucra. (/ dev / sda, sdb etc.)

    Notă: Amintiți-vă că toate comenzile vor fi executate ca root sau adăugând 'sudo' la începutul comenzii.

    fdisk -l

    Dacă hard disk-ul dvs. nu a fost niciodată formatat sau împărțit înainte de a vedea probabil așa ceva în ieșirea fdisk. Acest lucru este complet bine, deoarece vom crea partițiile necesare în etapele următoare.

    Noul disc este localizat la / dev / sdb, astfel încât permite utilizarea fdisk pentru a crea o partiție nouă pe unitate.

    Există o mulțime de instrumente care pot crea o nouă partiție cu o interfață grafică, inclusiv Gparted, dar din moment ce avem terminalul deja deschis, vom folosi fdisk pentru a crea partiția necesară.

    De la un tip de terminal, aveți următoarele comenzi:

    fdisk / dev / sdb

    Aceasta vă va pune într-un prompt fdisk special.

    Introduceți comenzile în ordinea dată pentru a crea o nouă partiție primară care utilizează 100% din noua unitate de disc și este pregătită pentru LVM. Dacă trebuie să modificați mărimea partiției sau să doriți parțiuni multiple, vă recomand să utilizați GParted sau să citiți despre fdisk pe cont propriu.

    Avertisment: Următorii pași vă vor formata hard disk-ul. Asigurați-vă că nu aveți nicio informație despre acest hard disk înainte de a urma acești pași.

    • n = creați o nouă partiție
    • p = creează partiția primară
    • 1 = face partiția prima pe disc

    Apăsați introduceți de două ori pentru a accepta primul cilindru implicit și ultimul cilindru.

    Pentru a pregăti partiția care va fi folosită de LVM, utilizați următoarele două comenzi.

    • T = schimbarea tipului de partiție
    • 8e = se schimbă la tipul de partiție LVM

    Verificați și scrieți informațiile pe hard disk.

    • p = vizualizați configurarea partițiilor astfel încât să putem examina înainte de a scrie modificările discului
    • w = scrie modificări pe disc

    După aceste comenzi, promptul fdisk ar trebui să iasă și veți reveni la solicitarea de bash a terminalului.

    introduce pvcreate / dev / sdb1 pentru a crea un volum fizic LVM pe partiția pe care tocmai am creat-o.

    S-ar putea să vă întrebați de ce nu am formatat partiția cu un sistem de fișiere, dar nu vă faceți griji, că pasul vine mai târziu.


    Creați un grup de volume

    Acum că avem o partiție desemnată și volumul fizic creat, trebuie să creăm grupul de volume. Din fericire, aceasta are nevoie doar de o comandă.

    vgcreate vgpool / dev / sdb1

    Vgpool este numele noului grup de volume pe care l-am creat. Puteți să-i numiți ceea ce doriți, dar este recomandat să puneți vg în partea din față a etichetei, astfel încât, dacă îl referi mai târziu, veți ști că este un grup de volume.

    Creați volum logic

    Pentru a crea volumul logic pe care îl va utiliza LVM:

    lvcreate -L 3G -n lvstuff vgpool

    Comanda -L desemnează dimensiunea volumului logic, în acest caz 3 GB, iar comanda -n numește volumul. Vgpool este referit astfel încât comanda lvcreate să știe ce volum să obțină spațiul.

    Formatați și montați volumul logic

    Un ultim pas este formatarea noului volum logic cu un sistem de fișiere. Dacă doriți să alegeți un sistem de fișiere Linux, citiți-ne cum vă poate ajuta să alegeți cel mai bun sistem de fișiere pentru nevoile dvs..

    mkfs -t ext3 / dev / vgpool / lvstuff

    Creați un punct de montare și apoi montați volumul undeva pe care îl puteți utiliza.

    mkdir / mnt / stuff
    mount -t - ext3 / dev / vgpool / lvstuff / mnt / stuff

    Redimensionarea unui volum logic

    Unul dintre avantajele volumelor logice este că puteți face acțiunile fizice mai mari sau mai mici fără a fi nevoie să mutați totul la un hard disk mai mare. În schimb, puteți adăuga o nouă unitate de disc și puteți extinde grupul de volum în zbor. Sau dacă aveți un hard disk care nu este utilizat, îl puteți elimina din grupul de volume pentru a reduce volumul logic.

    Există trei instrumente de bază pentru a face volume fizice, grupuri de volum și volume logice mai mari sau mai mici.

    Notă: Fiecare dintre aceste comenzi va trebui să fie precedată de pv, vg sau lv în funcție de ce lucrați cu.

    • redimensiona - poate micșora sau extinde volume fizice și volume logice, dar nu grupuri de volum
    • extinde - pot face grupuri de volume și volume logice mai mari, dar nu mai mici
    • reduce - pot face grupuri de volume și volume logice mai mici, dar nu mai mari

    Să trecem printr-un exemplu de adăugare a unui nou hard disk la volumul logic "lvstuff" pe care tocmai l-am creat.

    Instalați și formatați un nou hard disk

    Pentru a instala o nouă unitate de disc, urmați pașii de mai sus pentru a crea o partiție nouă și a adăuga modificarea tipului de partiție la LVM (8e). Apoi utilizați pvcreate pentru a crea un volum fizic pe care LVM îl poate recunoaște.

    Adăugați un nou grup de discuri de discuri în grupul de volume

    Pentru a adăuga noua unitate de disc într-un grup de volume trebuie doar să știți ce este noua partiție, / dev / sdc1 în cazul nostru și numele grupului de volume pe care doriți să-l adăugați.

    Acest lucru va adăuga noul volum fizic grupului de volume existent.

    vgextend vgpool / dev / sdc1

    Extindeți volumul logic

    Pentru a redimensiona volumul logic trebuie să spunem cât de mult vrem să prelungim în funcție de dimensiune, în loc de dispozitiv. În exemplul nostru, tocmai am adăugat un hard disk de 8 GB la 3 GB vgpool. Pentru a putea folosi acest spațiu, putem folosi lvextend sau lvresize.

    lvextend-L8G / dev / vgpool / lvstuff

    În timp ce această comandă va funcționa, veți vedea că va redimensiona volumul nostru logic la 8 GB, în loc să adăugăm 8 GB volumului existent așa cum am dorit. Pentru a adăuga ultimele 3 gigaocteți disponibili, trebuie să utilizați următoarea comandă.

    lvextend-L + 3G / dev / vgpool / lvstuff

    Acum volumul nostru logic este de 11 GB.

    Extindeți sistemul de fișiere

    Volumul logic este de 11 GB, dar sistemul de fișiere pe acest volum este încă de numai 3 GB. Pentru ca sistemul de fișiere să folosească toate cele 11 GB disponibile, trebuie să utilizați comanda resize2fs. Doar punct de redimensionare2fs la volumul logic de 11 GB și va face magie pentru tine.

    resize2fs / dev / vgpool / lvstuff

    Notă: Dacă utilizați un sistem de fișiere diferit de ext3 / 4, vă rugăm să consultați instrumentele de redimensionare a sistemelor de fișiere.

    Scade volumul logic

    Dacă doriți să eliminați un hard disk dintr-un grup de volume, va trebui să urmați pașii de mai sus în ordine inversă și utilizați lvreduce și vgreduce.

    1. redimensionați sistemul de fișiere (asigurați-vă că mutați fișierele într-o zonă sigură a hard disk-ului înainte de redimensionare)
    2. reduceți volumul logic (în loc de + pentru a extinde puteți folosi și - pentru a reduce în funcție de dimensiune)
    3. scoateți unitatea hard disk din grupul de volume cu vgreduce

    Copierea unui volum logic

    Snapshots este o caracteristică pe care o au unele sisteme avansate de fișiere avansate, dar ext3 / 4 nu are capacitatea de a face instantanee în zbor. Unul dintre cele mai tari lucruri despre instantaneele LVM este ca sistemul dvs. de fișiere nu este niciodată deconectat și puteți avea cât doriți, fără a mai fi nevoie de spațiu pe hard disk suplimentar.

    Atunci când LVM face o fotografie, este făcută o imagine exactă a modului în care arată volumul logic și acea imagine poate fi utilizată pentru a face o copie pe o altă unitate de disc. În timp ce se face o copie, orice informație nouă care trebuie adăugată volumului logic este scrisă pe disc la fel ca în mod normal, dar schimbările sunt urmărite astfel încât imaginea originală să nu fie distrusă.

    Pentru a crea un instantaneu trebuie să creați un nou volum logic cu suficient spațiu liber pentru a ține orice informații noi care vor fi scrise în volumul logic în timp ce facem o copie de rezervă. Dacă unitatea nu este scrisă în mod activ pentru dvs., puteți utiliza o cantitate foarte mică de spațiu de stocare. Odată ce terminăm cu copia de rezervă, eliminăm volumul logic temporar, iar volumul logic original va continua ca în mod normal.

    Creați un instantaneu nou

    Pentru a crea un instantaneu al lui lvstuff, utilizați comanda lvcreate ca înainte, dar folosiți pavilionul -s.

    lvcreate -L512M -s -n lvstuffbackup / dev / vgpool / lvstuff

    Aici am creat un volum logic cu doar 512 MB deoarece unitatea nu este utilizată în mod activ. 512 MB va stoca orice scrieri noi în timp ce facem backup-ul nostru.

    Montați un instantaneu nou

    La fel ca înainte, trebuie să creăm un punct de montare și să montează noul instantaneu, astfel încât să putem copia fișiere din acesta.

    mkdir / mnt / lvstuffbackup
    mount / dev / vgpool / lvstuffbackup / mnt / lvstuffbackup

    Copiați instantaneu și ștergeți volumul logic

    Tot ce trebuie să faceți este să copiați toate fișierele de pe / mnt / lvstuffbackup / pe o unitate externă de hard disk sau să-l răsturnați astfel încât să fie într-un singur fișier.

    Notă: tar -c va crea o arhivă și -f va spune locația și numele fișierului arhivei. Pentru ajutor cu utilizarea comenzii tar man tar în terminal.

    tar-cf / home / rothgar / Backup / lvstuff-ss / mnt / lvstuffbackup /

    Amintiți-vă că, în timp ce are loc copierea de rezervă, toate fișierele care vor fi scrise în lvstuff sunt urmărite în volumul logic temporar pe care l-am creat mai devreme. Asigurați-vă că aveți suficient spațiu liber în timpul copierii de rezervă.

    După finalizarea copierii, demontați volumul și eliminați fotografia temporară.

    umount / mnt / lvstuffbackup
    lvremove / dev / vgpool / lvstuffbackup /

    Ștergerea unui volum logic

    Pentru a șterge un volum logic, trebuie mai întâi să vă asigurați că volumul nu este montat și apoi puteți folosi lvremove pentru al șterge. De asemenea, puteți elimina un grup de volume odată ce volumele logice au fost șterse și un volum fizic după grupul de volume este șters.

    Iată toate comenzile care utilizează volume și grupuri pe care le-am creat.

    umount / mnt / lvstuff
    lvremove / dev / vgpool / lvstuff
    vgremove vgpool
    pvremove / dev / sdb1 / dev / sdc1

    Aceasta ar trebui să acopere majoritatea a ceea ce trebuie să știți pentru a utiliza LVM. Dacă aveți o experiență pe această temă, asigurați-vă că ați împărtășit înțelepciunea în comentariile dvs..