LVM administrerer diskstasjoner. Den tillater at flere stasjoner og partisjoner blir kombinert til større volumgrupper, bistår i å lage sikkerhetskopier gjennom et øyeblikksbilde, og gir rom for dynamisk volumendring. Det kan også gi speiling tilsvarende et RAID 1 matrise.
En fullstendig diskusjon av LVM er utenfor rammen av denne introduksjonen, men grunnleggende konsepter presenteres nedenfor.
For å kjøre noen av kommandoene som presenteres her, må LVM2-2.03.28 pakken
installeres. Alle kommandoer må kjøres som root
bruker.
Administrering av disker med lvm utføres ved å bruke følgende konsepter:
Dette er fysiske disker eller partisjoner som f.eks /dev/sda3 eller /dev/sdb.
Disse er navngitte grupper av fysiske volumer som kan manipuleres av administratoren. Antall fysiske volumer som utgjør en volumgruppe er vilkårlige. Fysiske volumer kan dynamisk legges til eller fjernes fra en volumgruppe.
Volumgrupper kan deles inn i logiske volumer. Hvert logisk volum kan deretter formateres individuelt som om det var en vanlig Linux partisjon. Logiske volumer kan endres dynamisk etter administratorens behov.
For å gi et konkret eksempel, anta at du har to 2 TB disker. Også
anta at det kreves veldig mye plass for en veldig stor database,
montert på /srv/mysql
. Slik vil det
første settet med partisjoner se ut:
Partition Use Size Partition Type
/dev/sda1 /boot 100MB 83 (Linux)
/dev/sda2 / 10GB 83 (Linux)
/dev/sda3 swap 2GB 82 (Swap)
/dev/sda4 LVM remainder 8e (LVM)
/dev/sdb1 swap 2GB 82 (Swap)
/dev/sdb2 LVM remainder 8e (LVM)
Initialiser først de fysiske volumene:
pvcreate /dev/sda4 /dev/sdb2
En full disk kan brukes som en del av et fysisk volum, men pass på at pvcreate kommando vil ødelegge all partisjonsinformasjon på den disken.
Deretter oppretter du en volumgruppe med navnet lfs-lvm:
vgcreate lfs-lvm /dev/sda4 /dev/sdb2
Statusen til volumgruppen kan kontrolleres ved å kjøre kommandoen vgscan. Lag nå de logiske volumene. Siden det er ca 3900 GB tilgjengelig, la ca 900 GB være ledig for utvidelse. Merk at det logiske volumet som heter mysql er større enn hvilken som helst fysisk disk.
lvcreate --name mysql --size 2500G lfs-lvm lvcreate --name home --size 500G lfs-lvm
Til slutt kan de logiske volumene formateres og monteres. I dette eksempel filsystemet jfs (jfsutils-1.1.15) brukes for demonstrasjonsformål.
mkfs -t ext4 /dev/lfs-lvm/home mkfs -t jfs /dev/lfs-lvm/mysql mount /dev/lfs-lvm/home /home mkdir -p /srv/mysql mount /dev/lfs-lvm/mysql /srv/mysql
Det kan være nødvendig å aktivere de logiske volumene, for at de skal
vises i /dev
. De kan alle aktiveres
samtidig ved å kjøre, som root
bruker:
vgchange -a y
Et LVM logisk volum kan være vert for et rootfilsystem, men krever
bruk av initramfs (opprinnelig RAM filsystem). Initramfs foreslått i
«Om
initramfs» lar lvm volumet sende inn root=
bryteren til
kjernekommandolinjen.
Hvis du ikke bruker initramfs, er det en rasetilstand i systemd som forhindrer montering av logiske
volumer gjennom /etc/fstab
. Du må
opprette en «mount» enhet (se systemd.mount(5))
som i det følgende eksempel, som monterer /home
mappen automatisk ved oppstart:
cat > /etc/systemd/system/home.mount << EOF
[Unit]
Description=Mount the lvm volume /dev/lfs-lvm/home to /home
[Mount]
What=/dev/lfs-lvm/home
Where=/home
Type=ext4
Options=default
[Install]
WantedBy=multi-user.target
EOF
Navnet på enheten må være navnet på monteringspunktet med `/'-tegnet erstattet av `-', og utelate den innledende.
Deretter må enheten aktiveres med:
systemctl enable home.mount
For mer informasjon om LVM, se LVM HOWTO og lvm mansidene. En god dybde veiledning er tilgjengelig fra RedHat®, selv om det noen ganger refererer til proprietære verktøy.