Slik administrerer og bruker du LVM (Logical Volume Management) i Ubuntu
I vår tidligere artikkel fortalte vi deg hva LVM er og hva du kanskje vil bruke den til, og i dag skal vi gå gjennom noen av de ledende verktøyene til LVM, slik at du vil være trygg når du installerer eller utvider installasjonen din.
Som nevnt tidligere er LVM et abstraksjonslag mellom operativsystemet og fysiske harddisker. Hva det betyr er dine fysiske harddisker og partisjoner er ikke lenger bundet til harddiskene og partisjonene de bor på. Snarere er harddiskene og partisjonene som operativsystemet ser, et antall separate harddisker samlet sammen eller i en programvare RAID.
For å administrere LVM finnes det GUI-verktøy tilgjengelig, men for å virkelig forstå hva som skjer med LVM-konfigurasjonen, er det sannsynligvis best å vite hva kommandolinjeverktøyene er. Dette vil være spesielt nyttig hvis du administrerer LVM på en server eller distribusjon som ikke tilbyr GUI-verktøy.
De fleste av kommandoene i LVM er svært lik hverandre. Hver gyldig kommando går foran med ett av følgende:
- Fysisk volum = pv
- Volumgruppe = vg
- Logisk volum = lv
Kommandoene for fysisk volum er for å legge til eller fjerne harddisker i volumgrupper. Volumgruppe kommandoer er for å endre hva abstrakte sett med fysiske partisjoner blir presentert for drift i logiske volumer. Logiske volumkommandoer vil presentere volumgruppene som partisjoner, slik at operativsystemet ditt kan bruke det angitte rommet.
Nedlastbart LVM Cheat Sheet
For å hjelpe deg å forstå hvilke kommandoer som er tilgjengelige for hvert prefiks, har vi laget et LVM-svindelark. Vi vil dekke noen av kommandoene i denne artikkelen, men det er fortsatt mye du kan gjøre som ikke blir dekket her.
Alle kommandoer på denne listen må kjøres som rot fordi du endrer systemvide innstillinger som vil påvirke hele maskinen.
(Klikk på miniatyrbildet for et fullstendige bilde)
Slik viser du gjeldende LVM-informasjon
Det første du må gjøre er å sjekke hvordan LVM er satt opp. De s
og vise
kommandoer arbeider med fysiske volumer (pv), volumgrupper (vg) og logiske volumer (lv), så det er et bra sted å starte når du prøver å finne ut de gjeldende innstillingene.
De vise
Kommandoen formaterer informasjonen slik at den er lettere å forstå enn s
kommando. For hver kommando vil du se navnet og banen til pv / vg, og den skal også gi informasjon om ledig og ledig plass.
Den viktigste informasjonen vil være PV navn og VG navn. Med disse to delene av informasjon kan vi fortsette å jobbe med LVM-oppsettet.
Opprette et logisk volum
Logiske volumer er partisjonene som operativsystemet bruker i LVM. For å opprette et logisk volum trenger vi først å ha et fysisk volum og en volumgruppe. Her er alle trinnene som er nødvendige for å skape et nytt logisk volum.
Lag fysisk volum
Vi starter fra begynnelsen med en helt ny harddisk uten partisjoner eller informasjon på den. Start med å finne hvilken disk du vil jobbe med. (/ dev / sda, sdb, etc.)
Merk: Husk at alle kommandoene må kjøres som root eller ved å legge til 'sudo' i begynnelsen av kommandoen.
fdisk -l
Hvis harddisken din aldri har blitt formatert eller partisjonert før du sannsynligvis vil se noe slikt i fdisk-utgangen. Dette er helt greit fordi vi skal lage de nødvendige partisjonene i de neste trinnene.
Vår nye disk er plassert på / dev / sdb, så vi kan bruke fdisk til å lage en ny partisjon på stasjonen.
Det finnes en mengde verktøy som kan skape en ny partisjon med en GUI, inkludert Gparted, men siden vi har terminalen allerede åpen, bruker vi fdisk for å opprette den nødvendige partisjonen.
Fra en terminal skriver du følgende kommandoer:
fdisk / dev / sdb
Dette vil sette deg i en spesiell fdisk-ledetekst.
Skriv inn kommandoene i den rekkefølgen som er oppgitt for å opprette en ny primærpartisjon som bruker 100% av den nye harddisken og er klar for LVM. Hvis du trenger å endre partisjonens størrelse eller vil ha flere partisjoner, foreslår jeg at du bruker GParted eller leser om fdisk på egen hånd.
Advarsel: Følgende trinn vil formatere harddisken din. Pass på at du ikke har noen informasjon på denne harddisken før du følger disse trinnene.
n
= Opprett ny partisjonp
= oppretter primær partisjon1
= gjør partisjonen den første på disken
Trykk inn to ganger for å godta standard første sylinder og siste sylinder.
For å forberede partisjonen som skal brukes av LVM, bruk følgende to kommandoer.
t
= endre partisjonstype8e
= endringer i LVM partisjonstype
Bekreft og skriv informasjonen til harddisken.
p
= se partisjon oppsett slik at vi kan vurdere før du skriver endringer på diskenw
= skriv endringer på disk
Etter disse kommandoene, bør fdisk-meldingen gå ut og du kommer tilbake til bash-meldingen på terminalen din.
Tast inn pvcreate / dev / sdb1
å opprette et fysisk LVM-volum på partisjonen vi nettopp har opprettet.
Du kan spørre hvorfor vi ikke formaterte partisjonen med et filsystem, men ikke bekymre deg, det trinnet kommer senere.
Opprett volum Gruppe
Nå som vi har en partisjon utpekt og fysisk volum opprettet, må vi opprette volumgruppen. Heldigvis tar dette bare en kommando.
vgcreate vgpool / dev / sdb1
Vgpool er navnet på den nye volumegruppen vi opprettet. Du kan navngi det uansett, men det anbefales å sette vg på forsiden av etiketten, så hvis du refererer til det senere, vet du at det er en volumgruppe.
Lag logisk volum
For å opprette det logiske volumet som LVM vil bruke:
lvcreate -L 3G -n lvstuff vgpool
L-kommandoen angir størrelsen på det logiske volumet, i dette tilfellet 3 GB, og -n-kommandoen navngir volumet. Vgpool er referert slik at kommandoen lvcreate vet hvilket volum som skal få plass til.
Formater og monter det logiske volumet
Et siste skritt er å formatere det nye logiske volumet med et filsystem. Hvis du vil ha hjelp til å velge et Linux-filsystem, kan du lese hvordan du kan hjelpe deg med å velge det beste filsystemet for dine behov.
mkfs -t ext3 / dev / vgpool / lvstuff
Opprett et monteringspunkt og monter deretter volumet et sted du kan bruke det.
mkdir / mnt / stuff
mount -t ext3 / dev / vgpool / lvstuff / mnt / stuff
Endre størrelse på et logisk volum
En av fordelene med logiske volumer er at du kan gjøre aksjene dine fysisk større eller mindre uten å måtte flytte alt til en større harddisk. I stedet kan du legge til en ny harddisk og utvide volumgruppen din i fly. Eller hvis du har en harddisk som ikke er brukt, kan du fjerne den fra volumegruppen for å krympe det logiske volumet.
Det er tre grunnleggende verktøy for å lage fysiske volumer, volumgrupper og logiske volumer større eller mindre.
Merk: Hver av disse kommandoene må prioriteres av pv, vg eller lv, avhengig av hva du arbeider med.
endre størrelse på
- kan krympe eller utvide fysiske volumer og logiske volumer, men ikke volumgrupperforlenge
- kan gjøre volumgrupper og logiske volumer større, men ikke mindreredusere
- kan gjøre volumgrupper og logiske volumer mindre, men ikke større
La oss gå gjennom et eksempel på hvordan du legger til en ny harddisk til det logiske volumet "lvstuff" vi nettopp har opprettet.
Installer og formater ny harddisk
For å installere en ny harddisk, følg trinnene ovenfor for å opprette en ny partisjon og legg til endring, det er partisjonstype til LVM (8e). Bruk deretter pvcreate til å lage et fysisk volum som LVM kan gjenkjenne.
Legg til ny harddisk til volumgruppe
For å legge til den nye harddisken i en volumgruppe trenger du bare å vite hva din nye partisjon er, / dev / sdc1 i vårt tilfelle, og navnet på volumgruppen du vil legge til i.
Dette vil legge til det nye fysiske volumet til den eksisterende volumegruppen.
vgextend vgpool / dev / sdc1
Utvid logisk volum
For å endre størrelsen på det logiske volumet må vi si hvor mye vi vil strekke etter størrelse i stedet for etter enhet. I vårt eksempel har vi nettopp lagt til en 8 GB harddisk til vår 3 GB vgpool. For å gjøre denne plassen nyttig kan vi bruke lvextend eller lvresize.
lvextend -L8G / dev / vgpool / lvstuff
Mens denne kommandoen vil fungere vil du se at den faktisk vil endre størrelsen på vårt logiske volum til 8 GB i stedet for å legge til 8 GB til det eksisterende volumet som vi ønsket. For å legge til de siste 3 tilgjengelige gigabytene må du bruke følgende kommando.
lvextend -L + 3G / dev / vgpool / lvstuff
Nå er vårt logiske volum 11 GB i størrelse.
Utvid filsystemet
Det logiske volumet er 11 GB, men filsystemet på det volumet er fortsatt bare 3 GB. For å gjøre filsystemet bruk hele 11 GB tilgjengelig, må du bruke kommandoen resize2fs. Bare pek resize2fs til det 11 GB logiske volumet, og det vil gjøre magien for deg.
resize2fs / dev / vgpool / lvstuff
Merk: Hvis du bruker et annet filsystem i tillegg til ext3 / 4, se filsystemene endre størrelsen på verktøyene.
Krympe logisk volum
Hvis du vil fjerne en harddisk fra en volumgruppe, må du følge trinnene ovenfor i omvendt rekkefølge og bruke lvreduce og vgreduce i stedet.
- endre størrelsen på filsystemet (sørg for å flytte filer til et sikkert område på harddisken før du endrer størrelsen)
- redusere logisk volum (i stedet for + for å utvide du kan også bruke - å redusere etter størrelse)
- fjern harddisken fra volumgruppen med vgreduce
Sikkerhetskopiere et logisk volum
Stillbilder er en funksjon som noen nyere avanserte filsystemer kommer med, men ext3 / 4 mangler muligheten til å gjøre stillbilder i fly. En av de kuleste tingene med LVM stillbilder er at filsystemet ditt aldri blir tatt frakoblet, og du kan ha så mange du vil uten å ta opp ekstra harddiskplass.
Når LVM tar et øyeblikksbilde, tas et bilde av nøyaktig hvordan det logiske volumet ser ut og det bildet kan brukes til å lage en kopi på en annen harddisk. Mens en kopi blir laget, må ny informasjon som legges til det logiske volumet skrives til disken som normalt, men endringer spores slik at det opprinnelige bildet aldri blir ødelagt.
For å skape et øyeblikksbilde må vi opprette et nytt logisk volum med nok ledig plass til å holde ny informasjon som skal skrives til det logiske volumet mens vi lager en sikkerhetskopi. Hvis stasjonen ikke er aktivt skrevet til deg, kan du bruke en liten mengde lagringsplass. Når vi er ferdige med backupen, fjerner vi bare det midlertidige logiske volumet og det opprinnelige logiske volumet fortsetter som normalt.
Lag nytt øyeblikksbilde
For å lage et øyeblikksbilde av lvstuff, bruk lvcreate-kommandoen som før, men bruk -s-flagget.
lvcreate -L512M -s -n lvstuffbackup / dev / vgpool / lvstuff
Her opprettet vi et logisk volum med bare 512 MB fordi disken ikke blir aktivt brukt. 512 MB lagrer eventuelle nye skrivinger mens vi lager sikkerhetskopien vår.
Monter nytt øyeblikksbilde
Akkurat som før må vi opprette et monteringspunkt og montere det nye stillbildet slik at vi kan kopiere filer fra den.
mkdir / mnt / lvstuffbackup
mount / dev / vgpool / lvstuffbackup / mnt / lvstuffbackup
Kopier øyeblikksbilde og slett logisk volum
Alt du har å gjøre er å kopiere alle filene fra / mnt / lvstuffbackup / til en ekstern harddisk eller ta den opp så det er alt i en fil.
Merk: Tar-C vil opprette et arkiv og -f vil si plassering og filnavn i arkivet. For hjelp med tar kommandoen bruk mann tjære
i terminalen.
tar -cf / home / rothgar / Backup / lvstuff-ss / mnt / lvstuffbackup /
Husk at mens sikkerhetskopien finner sted vil alle filene som skal skrives til lvstuff bli sporet i det midlertidige logiske volumet vi opprettet tidligere. Pass på at du har nok ledig plass mens sikkerhetskopieringen skjer.
Når sikkerhetskopien er ferdig, fjerner du volumet og fjerner det midlertidige øyeblikksbildet.
omount / mnt / lvstuffbackup
lvremove / dev / vgpool / lvstuffbackup /
Slette et logisk volum
For å slette et logisk volum må du først kontrollere at volumet er demontert, og deretter kan du bruke lvremove for å slette det. Du kan også fjerne en volumgruppe når de logiske volumene er slettet og et fysisk volum etter at volumgruppen er slettet.
Her er alle kommandoene som bruker volumene og gruppene vi har opprettet.
omount / mnt / lvstuff
lvremove / dev / vgpool / lvstuff
vgremove vgpool
pvremove / dev / sdb1 / dev / sdc1
Det bør dekke mesteparten av det du trenger å vite for å bruke LVM. Hvis du har erfaring med emnet, må du dele visdommen i kommentarene.