Sådan styres og bruges LVM (Logical Volume Management) i Ubuntu
I vores tidligere artikel fortalte vi dig, hvad LVM er, og hvad du måske vil bruge det til, og i dag skal vi gå igennem nogle af LVM's vigtigste ledelsesværktøjer, så du vil være sikker på, når du installerer eller udvider din installation.
Som tidligere nævnt er LVM et abstraktionslag mellem dit operativsystem og fysiske harddiske. Hvad det betyder er dine fysiske harddiske, og partitioner er ikke længere bundet til harddiske og partitioner, de bor på. Snarere er de harddiske og partitioner, som dit operativsystem ser, et antal separate harddiske samlet sammen eller i en software RAID.
For at styre LVM er der GUI-værktøjer til rådighed, men for virkelig at forstå, hvad der sker med din LVM-konfiguration, er det nok bedst at vide, hvad kommandolinjeværktøjerne er. Dette vil være særligt nyttigt, hvis du styrer LVM på en server eller distribution, der ikke tilbyder GUI-værktøjer.
De fleste af kommandoer i LVM ligner hinanden meget. Hver gyldig kommando foregår af et af følgende:
- Fysisk volumen = pv
- Volumengruppe = vg
- Logisk volumen = lv
De fysiske volumenkommandoer er til at tilføje eller fjerne harddiske i volumengrupper. Lydstyrke kommandoer er til at ændre, hvad abstrakte sæt fysiske partitioner præsenteres for din drift i logiske mængder. Logiske volumenkommandoer vil præsentere volumengrupperne som partitioner, så dit operativsystem kan bruge det udpegede rum.
Downloadbar LVM Cheat Sheet
For at hjælpe dig med at forstå, hvilke kommandoer der er tilgængelige for hvert præfiks lavede vi et LVM snydeark. Vi vil dække nogle af kommandoerne i denne artikel, men der er stadig meget, du kan gøre, der ikke bliver dækket her.
Alle kommandoer på denne liste skal køres som rod, fordi du ændrer systembreddeindstillinger, som vil påvirke hele maskinen.
(Klik på miniaturebilledet for et billede i fuld størrelse)
Sådan får du vist aktuelle LVM-oplysninger
Den første ting du måske skal gøre er at kontrollere, hvordan din LVM er oprettet. Det s
og Skærm
kommandoer arbejder med fysiske volumener (pv), volumengrupper (vg) og logiske volumener (lv), så det er et godt sted at starte, når man forsøger at finde ud af de aktuelle indstillinger.
Det Skærm
kommandoen formaterer oplysningerne, så det er lettere at forstå end s
kommando. For hver kommando vil du se navnet og stien i pv / vg, og det skal også give information om frit og brugt rum.
Den vigtigste information er PV navn og VG navn. Med disse to stykker information kan vi fortsætte med at arbejde med LVM-opsætningen.
Oprettelse af et logisk lydstyrke
Logiske mængder er de partitioner, som dit operativsystem bruger i LVM. For at skabe et logisk lydstyrke skal vi først have en fysisk lydstyrke og en lydgruppe. Her er alle de trin, der er nødvendige for at skabe et nyt logisk lydstyrke.
Opret fysisk lydstyrke
Vi starter fra bunden med en helt ny harddisk uden skillevægge eller informationer om det. Start med at finde den disk, du vil arbejde med. (/ dev / sda, sdb osv.)
Bemærk: Husk, at alle kommandoer skal køres som root eller ved at tilføje 'sudo' til begyndelsen af kommandoen.
fdisk -l
Hvis din harddisk aldrig er blevet formateret eller partitioneret før du sandsynligvis vil se noget som dette i fdisk-output. Dette er helt fint, fordi vi skal skabe de nødvendige partitioner i de næste trin.
Vores nye disk er placeret på / dev / sdb, så vi kan bruge fdisk til at oprette en ny partition på drevet.
Der er en overflod af værktøjer, der kan oprette en ny partition med en GUI, herunder Gparted, men da vi har terminalen allerede åben, bruger vi fdisk til at oprette den nødvendige partition.
Fra en terminal skriv følgende kommandoer:
fdisk / dev / sdb
Dette vil sætte dig i en særlig fdisk prompt.
Indtast kommandoerne i den angivne rækkefølge for at oprette en ny primær partition, der bruger 100% af den nye harddisk og er klar til LVM. Hvis du skal ændre partitionsstørrelsen eller ønsker flere partier, foreslår jeg at bruge GParted eller læse om fdisk på egen hånd.
Advarsel: De følgende trin formaterer harddisken. Sørg for, at du ikke har nogen oplysninger på denne harddisk, inden du følger disse trin.
n
= Opret ny partitionp
= opretter primær partition1
= gør partition den første på disken
Tryk ind to gange for at acceptere standard første cylinder og sidste cylinder.
For at forberede den partition, der skal bruges af LVM, skal du bruge følgende to kommandoer.
t
= Skift partitionstype8e
= Ændringer til LVM partitionstype
Bekræft og skriv oplysningerne til harddisken.
p
= se partition opsætning, så vi kan gennemgå, før du skriver ændringer til diskw
= skriv ændringer til disk
Efter disse kommandoer skal fdisk-prompt afslutte, og du vil være tilbage til bash-prompten på din terminal.
Gå ind pvcreate / dev / sdb1
at oprette et fysisk LVM-volumen på den partition, vi netop har oprettet.
Du kan spørge, hvorfor vi ikke formaterede partitionen med et filsystem, men rolig, det kommer senere.
Opret lydstyrke Gruppe
Nu hvor vi har en partition udpeget og det fysiske volumen oprettet, skal vi oprette volumengruppen. Heldigvis tager dette kun en kommando.
vgcreate vgpool / dev / sdb1
Vgpool er navnet på den nye volumengruppe, vi skabte. Du kan navngive det, uanset hvad du vil, men det anbefales at sætte vg på forsiden af etiketten, så hvis du refererer det senere, vil du vide, at det er en volumengruppe.
Opret logisk lydstyrke
For at oprette det logiske lydstyrke, som LVM vil bruge:
lvcreate -L 3G -n lvstuff vgpool
L-kommandoen angiver størrelsen på det logiske lydstyrke, i dette tilfælde 3 GB, og kommandoen -n navngiver lydstyrken. Vgpool er refereret, så kommandoen lvcreate ved, hvilken mængde der skal hentes fra rummet.
Formater og monter det logiske lydstyrke
Et sidste skridt er at formatere det nye logiske lydstyrke med et filsystem. Hvis du vil have hjælp til at vælge et Linux-filsystem, skal du læse, hvordan du kan vælge det bedste filsystem til dine behov.
mkfs -t ext3 / dev / vgpool / lvstuff
Opret et monteringspunkt, og monter derefter lydstyrken et sted, hvor du kan bruge det.
mkdir / mnt / stuff
mount -t ext3 / dev / vgpool / lvstuff / mnt / stuff
Ændring af et logisk lydstyrke
En af fordelene ved logiske mængder er, at du kan gøre dine aktier fysisk større eller mindre uden at skulle flytte alt til en større harddisk. I stedet kan du tilføje en ny harddisk og udvide din lydgruppe på flugt. Eller hvis du har en harddisk, der ikke bruges, kan du fjerne den fra volumengruppen for at reducere dit logiske lydstyrke.
Der er tre grundlæggende værktøjer til at gøre fysiske mængder, volumengrupper og logiske mængder større eller mindre.
Bemærk: Hver af disse kommandoer skal forudgå af pv, vg eller lv alt efter hvad du arbejder med.
resize
- kan krympe eller udvide fysiske mængder og logiske mængder, men ikke volumengrupperforlænge
- kan gøre volumengrupper og logiske mængder større, men ikke mindrereducere
- kan gøre volumengrupper og logiske mængder mindre, men ikke større
Lad os gå gennem et eksempel på, hvordan du tilføjer en ny harddisk til det logiske lydstyrke "lvstuff", vi netop har oprettet.
Installer og formater nye harddiske
For at installere en ny harddisk skal du følge ovenstående trin for at oprette en ny partition og tilføje ændring, det er partitionstype til LVM (8e). Brug derefter pvcreate til at oprette et fysisk volumen, som LVM kan genkende.
Tilføj New Hard Drive til Volume Group
For at tilføje den nye harddisk til en lydgruppe skal du bare vide, hvad din nye partition er, / dev / sdc1 i vores tilfælde, og navnet på den volumengruppe, du vil tilføje det til.
Dette vil tilføje det nye fysiske lydstyrke til den eksisterende lydgruppe.
vgextend vgpool / dev / sdc1
Forlæng logisk lydstyrke
For at ændre størrelsen på det logiske lydstyrke skal vi sige, hvor meget vi ønsker at udvide efter størrelse i stedet for ved enhed. I vores eksempel har vi lige tilføjet en 8 GB harddisk til vores 3 GB vgpool. For at gøre pladsen brugbar kan vi bruge lvextend eller lvresize.
lvextend -L8G / dev / vgpool / lvstuff
Mens denne kommando vil fungere, vil du se, at den faktisk vil ændre størrelse på vores logiske lydstyrke til 8 GB i stedet for at tilføje 8 GB til det eksisterende volumen, som vi ønskede. For at tilføje de sidste 3 tilgængelige gigabyte skal du bruge følgende kommando.
lvextend -L + 3G / dev / vgpool / lvstuff
Nu er vores logiske lydstyrke 11 GB i størrelse.
Udvid filsystemet
Det logiske lydstyrke er 11 GB, men filsystemet på det pågældende lydstyrke er stadig kun 3 GB. For at få filsystemet til at bruge hele 11 GB til rådighed, skal du bruge kommandoen resize2fs. Bare peg resize2fs til den 11 GB logiske lydstyrke, og det vil gøre magien for dig.
resize2fs / dev / vgpool / lvstuff
Bemærk: Hvis du bruger et andet filsystem ud over ext3 / 4, se venligst filsystemets resize værktøjer.
Skrumpe logisk lydstyrke
Hvis du ville fjerne en harddisk fra en lydgruppe, skal du følge ovenstående trin i omvendt rækkefølge og bruge lvreduce og vgreduce i stedet.
- ændre størrelsen på filsystemet (sørg for at flytte filer til et sikkert område på harddisken før du ændrer størrelsen)
- reducer logisk lydstyrke (i stedet for + for at udvide du kan også bruge - for at reducere efter størrelse)
- fjern harddisk fra volumen gruppe med vgreduce
Sikkerhedskopiering af et logisk lydstyrke
Snapshots er en funktion, som nogle nyere avancerede filsystemer kommer med, men ext3 / 4 mangler evnen til at lave snapshots på farten. En af de fedeste ting om LVM-snapshots er, at dit filsystem aldrig bliver taget offline, og du kan have så mange som du vil uden at optage ekstra harddiskplads.
Når LVM tager et øjebliksbillede, tages der et billede af, hvordan det logiske lydniveau ser ud, og billedet kan bruges til at lave en kopi på en anden harddisk. Mens der laves en kopi, skal alle nye oplysninger, der skal tilføjes til det logiske lydstyrke, skrives til disken ligesom normalt, men ændringer spores, så det originale billede aldrig bliver ødelagt.
For at oprette et øjebliksbillede skal vi oprette et nyt logisk lydstyrke med tilstrækkelig ledig plads til at holde nye oplysninger, der skrives til det logiske lydstyrke, mens vi laver en sikkerhedskopi. Hvis drevet ikke er aktivt skrevet til dig, kan du bruge en meget lille mængde lagerplads. Når vi er færdige med vores backup, fjerner vi bare det midlertidige logiske lydstyrke, og det oprindelige logiske lydstyrke fortsætter som normalt.
Opret nyt øjebliksbillede
Hvis du vil oprette et øjebliksbillede af lvstuff, skal du bruge kommandoen lvcreate som før, men brug -s flag.
lvcreate -L512M -s -n lvstuffbackup / dev / vgpool / lvstuff
Her skabte vi et logisk lydstyrke med kun 512 MB, fordi drevet ikke bruges aktivt. 512 MB gemmer alle nye skrivninger, mens vi laver vores backup.
Montér nyt øjebliksbillede
Ligesom før skal vi oprette et monteringspunkt og montere det nye snapshot, så vi kan kopiere filer fra det.
mkdir / mnt / lvstuffbackup
mount / dev / vgpool / lvstuffbackup / mnt / lvstuffbackup
Kopier øjebliksbillede og Slet logisk lydstyrke
Alt du har tilbage at gøre er at kopiere alle filerne fra / mnt / lvstuffbackup / til en ekstern harddisk eller tage den op, så det er alt i en fil.
Bemærk: Tar-c vil oprette et arkiv og -f vil angive arkivets placering og filnavn. For hjælp med tjære kommandoen brug man tjære
i terminalen.
tjære -cf / home / rothgar / Backup / lvstuff-ss / mnt / lvstuffbackup /
Husk, at mens backupen finder sted, vil alle de filer, der skal skrives til lvstuff, blive sporet i det midlertidige logiske lydstyrke, vi skabte tidligere. Sørg for at du har tilstrækkelig ledig plads, mens backupen sker.
Når backupen er færdig, skal du afmontere lydstyrken og fjerne det midlertidige øjebliksbillede.
umount / mnt / lvstuffbackup
lvremove / dev / vgpool / lvstuffbackup /
Sletning af et logisk lydstyrke
For at slette et logisk lydstyrke skal du først kontrollere, at lydstyrken er afmonteret, og så kan du bruge lvremove til at slette det. Du kan også fjerne en lydgruppe, når de logiske volumener er blevet slettet, og et fysisk lydstyrke efter volumegruppen er slettet.
Her er alle kommandoerne ved hjælp af de mængder og grupper, vi har oprettet.
omount / mnt / lvstuff
lvremove / dev / vgpool / lvstuff
vgremove vgpool
pvremove / dev / sdb1 / dev / sdc1
Det skal dække det meste af hvad du behøver at vide for at bruge LVM. Hvis du har nogle erfaringer med emnet, skal du sørge for at dele din visdom i kommentarerne.