1.  [Strona główna](/) ›
2.  [Baza wiedzy](/baza-wiedzy/) ›
3.  LVM - zarządzanie woluminami logicznymi na Linux

# LVM - zarządzanie woluminami logicznymi na Linux

Opublikowano: 9 kwietnia 2026 · Kategoria: VPS / Linux / Storage

⚡ W skrócie · 9 min czytania

-   LVM Logical Volume Manager od podstaw: PV→VG→LV, tworzenie i montowanie, rozszerzenie LV online (lvextend + resize2fs), snapshot (lvcreate --snapshot), thin provisioning, pvs/vgs/lvs.
-   Architektura LVM: PV → VG → LV.
-   Tworzenie LVM od podstaw.
-   Formatowanie i montowanie.
-   Rozszerzenie LV online - bez downtime.

Standardowe partycje mają stały rozmiar - gdy zapełnisz `/var` na serwerze produkcyjnym o 3:00 w nocy, bez LVM masz problem. LVM (Logical Volume Manager) to warstwa abstrakcji między dyskami fizycznymi a systemem plików, która pozwala rozszerzać woluminy online, tworzyć snapshoty i łączyć wiele dysków w jeden elastyczny pool przestrzeni dyskowej.

## Architektura LVM: PV → VG → LV

LVM ma trójwarstwową architekturę:

-   **PV (Physical Volume)** - fizyczny dysk lub partycja przygotowana dla LVM przez `pvcreate`. Może to być cały dysk (`/dev/sdb`) lub partycja (`/dev/sdb1`).
-   **VG (Volume Group)** - pool przestrzeni złożony z jednego lub wielu PV. Możesz dodawać nowe PV do VG gdy brakuje miejsca. Analogia: VG to pula.
-   **LV (Logical Volume)** - wolumin logiczny wycięty z VG, na którym tworzysz system plików (ext4, xfs). To odpowiednik tradycyjnej partycji. Analogia: LV to naczynie z puli.

## Tworzenie LVM od podstaw

Scenariusz: masz dodatkowy dysk `/dev/sdb` (100 GB) i chcesz użyć go przez LVM:

```
# Krok 1: Instalacja narzędzi LVM (jeśli brakuje)
sudo apt install lvm2          # Debian/Ubuntu
sudo yum install lvm2          # CentOS/RHEL

# Krok 2: Utwórz Physical Volume
sudo pvcreate /dev/sdb
# Physical volume "/dev/sdb" successfully created.

# Krok 3: Utwórz Volume Group
sudo vgcreate vg0 /dev/sdb
# Volume group "vg0" successfully created

# Krok 4: Utwórz Logical Volume (80 GB z 100 GB puli)
sudo lvcreate -L 80G -n data vg0
# Logical volume "data" created.

# Lub użyj całego dostępnego miejsca:
sudo lvcreate -l 100%FREE -n data vg0
```

## Formatowanie i montowanie

```
# Utwórz system plików ext4
sudo mkfs.ext4 /dev/vg0/data

# Utwórz punkt montowania
sudo mkdir -p /data

# Zamontuj tymczasowo
sudo mount /dev/vg0/data /data

# Trwałe montowanie przez /etc/fstab
# Użyj UUID (bezpieczniejszy niż nazwa urządzenia)
sudo blkid /dev/vg0/data
# /dev/vg0/data: UUID="abcd-1234" TYPE="ext4"

# Dodaj do /etc/fstab:
# UUID=abcd-1234  /data  ext4  defaults,nofail  0  2

# Weryfikacja
df -h /data
```

## Rozszerzenie LV online - bez downtime

To najważniejsza cecha LVM - możesz rozszerzyć zamontowany wolumin bez zatrzymywania aplikacji:

```
# Sprawdź bieżący stan
sudo lvs
sudo vgs                       # Sprawdź ile miejsca zostało w VG

# Rozszerz LV o 10 GB
sudo lvextend -L +10G /dev/vg0/data

# Lub użyj całego wolnego miejsca w VG
sudo lvextend -l +100%FREE /dev/vg0/data

# Rozszerz system plików ext4 (online, zamontowany)
sudo resize2fs /dev/vg0/data

# Dla XFS (inaczej niż ext4!):
# sudo xfs_growfs /data           # Argumentem jest punkt montowania, nie urządzenie

# Weryfikacja
df -h /data
```

Możesz też dodać nowy dysk do VG gdy LV zajął całe dostępne miejsce:

```
# Dodaj nowy dysk do istniejącej grupy woluminów
sudo pvcreate /dev/sdc
sudo vgextend vg0 /dev/sdc

# Teraz VG ma więcej miejsca - możesz rozszerzyć LV
sudo lvextend -l +100%FREE /dev/vg0/data
sudo resize2fs /dev/vg0/data
```

## Zmniejszanie LV - tylko offline

Zmniejszenie LV to operacja bardziej ryzykowna i wymaga odmontowania. Zawsze rób backup przed redukcją:

```
# UWAGA: Zmniejszenie LV = ryzyko utraty danych. Zrób backup!

# Odmontuj wolumin
sudo umount /data

# Sprawdź i napraw system plików (OBOWIĄZKOWE przed redukcją)
sudo e2fsck -f /dev/vg0/data

# Zmniejsz system plików do docelowego rozmiaru (np. 30G)
sudo resize2fs /dev/vg0/data 30G

# Zmniejsz LV (musi być <= nowy rozmiar systemu plików)
sudo lvreduce -L 30G /dev/vg0/data

# Zamontuj z powrotem
sudo mount /dev/vg0/data /data
```

## LVM Snapshot - migawka dla backupu

```
# Utwórz snapshot woluminu data (CoW - Copy on Write)
# --size = ile miejsca zarezerwować na zmiany od momentu snapshotu
sudo lvcreate --snapshot --name data-snap --size 5G /dev/vg0/data

# Zamontuj snapshot tylko do odczytu (np. dla backupu)
sudo mkdir -p /mnt/snap
sudo mount -o ro /dev/vg0/data-snap /mnt/snap

# Zrób backup z zamontowanego snapshotu
sudo rsync -avz /mnt/snap/ /backup/data/

# Odmontuj i usuń snapshot po backupie
sudo umount /mnt/snap
sudo lvremove /dev/vg0/data-snap

# Przywróć oryginał ze snapshotu (rollback):
# sudo umount /data
# sudo lvconvert --merge /dev/vg0/data-snap
# sudo lvchange -an /dev/vg0/data
# sudo lvchange -ay /dev/vg0/data
# sudo mount /dev/vg0/data /data
```

## Thin Provisioning

Thin provisioning pozwala zaalokować więcej miejsca niż fizycznie dostępne - podobnie jak w chmurze. Przydatne gdy tworzysz wiele LV dla różnych serwisów i widzisz że nie wszystkie osiągną maksymalny rozmiar jednocześnie:

```
# Utwórz thin pool (50G fizycznej przestrzeni)
sudo lvcreate --thin -L 50G vg0/thin-pool

# Utwórz thin volumes (łącznie 80G, choć pool ma tylko 50G)
sudo lvcreate --thin -V 30G --name web-data vg0/thin-pool
sudo lvcreate --thin -V 30G --name db-data vg0/thin-pool
sudo lvcreate --thin -V 20G --name logs-data vg0/thin-pool

# Monitoruj użycie thin pool
sudo lvs -a vg0
```

## Inspekcja - pvs, vgs, lvs

```
# Physical Volumes - lista dysków w LVM
sudo pvs
sudo pvdisplay /dev/sdb        # Szczegóły

# Volume Groups - lista grup
sudo vgs
sudo vgdisplay vg0             # Szczegóły (w tym wolne miejsce)

# Logical Volumes - lista woluminów
sudo lvs
sudo lvdisplay /dev/vg0/data   # Szczegóły

# Pełny przegląd drzewa LVM
sudo lvscan
```

## LVM vs woluminy chmurowe - porównanie

Cecha

LVM

Cloud Volumes (EBS, Hetzner)

Rozszerzenie online

Tak (lvextend + resize2fs)

Tak (przez panel/API)

Snapshot

Tak (lvcreate --snapshot)

Tak (zarządzane przez chmurę)

Przenoszenie między serwerami

Nie (dane na fizycznym dysku)

Tak (odłącz i podłącz)

Koszt

0 zł (software)

Dodatkowa opłata miesięczna

Najlepsze dla

Dedyki, VPS z wieloma dyskami

Efemeryczne serwery, łatwy backup

## Najczęstsze pytania

Czym jest LVM i jakie problemy rozwiązuje? +

LVM (Logical Volume Manager) to warstwa abstrakcji między fizycznymi dyskami a systemem plików. Rozwiązuje trzy główne problemy: (1) Rozszerzenie partycji - tradycyjna partycja ma stały rozmiar; LVM pozwala rozszerzyć logical volume online bez restartu, nawet łącząc wiele dysków fizycznych. (2) Snapshot - LVM tworzy spójne migawki woluminu w ułamku sekundy, co jest podstawą backupów online bez zatrzymywania bazy danych. (3) Thin provisioning - możesz zaalokować więcej miejsca niż fizycznie dostępne, przydzielając je w miarę potrzeb (jak w chmurze).

Jak rozszerzyć partycję LVM bez restartu serwera? +

Trzy kroki: (1) lvextend -L +10G /dev/vg0/data - powiększ logical volume o 10 GB (lub -l +100%FREE żeby użyć całego wolnego miejsca). (2) resize2fs /dev/vg0/data - rozszerz system plików ext4 do nowego rozmiaru (jeśli ext4). Dla XFS: xfs\_growfs /mount/point. (3) Zweryfikuj: df -h /mount/point. Całość zajmuje sekund, bez żadnego downtime.

Jak zrobić snapshot LVM i do czego go użyć? +

Snapshot LVM tworzy się w jednej sekundzie: lvcreate --snapshot --name data-snap --size 2G /dev/vg0/data. Parametr --size określa maksymalną ilość zmian które snapshot może przechowywać (CoW - Copy on Write). Użycia snapshotów: (1) Backup online - zamontuj snapshot read-only i zrób rsync/dump podczas gdy oryginał działa. (2) Testowanie migracji - zrób snapshot, przetestuj migrację, przywróć snapshot jeśli coś pójdzie nie tak: lvconvert --merge /dev/vg0/data-snap. (3) Punkt przywrócenia przed dużą aktualizacją systemu.

Kiedy używać LVM, a kiedy woluminów chmurowych? +

LVM ma sens na dedykowanych serwerach fizycznych (bare metal) lub VPS z wieloma dyskami, gdzie potrzebujesz elastycznej alokacji przestrzeni i snapshotów. Chmurowe woluminy (AWS EBS, Hetzner Volumes, DigitalOcean Volumes) są lepsze gdy: chcesz odłączyć dysk od serwera i podłączyć do innego, potrzebujesz automatycznych snapshotów zarządzanych przez chmurę, serwer jest efemeryczny. Na typowym Hetzner VPS lub [Contabo](https://www.jdoqocy.com/click-101704114-13484397#reklama) VPS z jednym dyskiem LVM daje mniejszą wartość niż na dedyku z wieloma dyskami.

## Sprawdź oferty pasujące do tego scenariusza

Poniżej masz szybkie przejścia do ofert i stron z kodami rabatowymi tam, gdzie są dostępne.

Contabo

VPS z dużym dyskiem NVMe - idealne środowisko do konfiguracji LVM i woluminów

Duży dysk

[Aktywuj rabat →](/out/contabo/#reklama "Contabo")

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/contabo/)

Mikrus

Tani VPS do nauki LVM bez ryzyka dla produkcji

Dev/Test

[Aktywuj rabat →](/out/mikrus/#reklama "Mikrus")

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/mikrus/)

LH.pl

VPS z pełnym dostępem root - możliwość samodzielnej konfiguracji LVM

Root access

[Aktywuj rabat →](/out/lh-pl/#reklama "LH.pl")

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/lh-pl/)

## Powiązane strony

-   [Strategia backupu - 3-2-1 i automatyzacja](/baza-wiedzy/backup-strategia-hosting/)
-   [rsync - kopia zapasowa VPS](/baza-wiedzy/rsync-kopia-zapasowa-vps/)
-   [Docker na VPS - instalacja i konfiguracja](/baza-wiedzy/docker-na-vps/)
-   [Wszystkie artykuły](/baza-wiedzy/)
-   [Proxmox VE - wirtualizacja KVM i LXC dla serwerów dedykowanych
    
    Proxmox VE: instalacja, tworzenie VM i kontenerów LXC, storage ZFS/LVM/Ceph, networking bridges/VLAN, backup z Proxmox…
    
    ](/baza-wiedzy/proxmox-ve-wirtualizacja/)
-   [Kubernetes PersistentVolume - zarządzanie storage w klastrze
    
    Kubernetes PV, PVC i StorageClass: access modes RWO/ROX/RWX, dynamiczne provisioning, reclaim policies Retain/Delete,…
    
    ](/baza-wiedzy/kubernetes-persistent-volumes/)
-   [Linux kernel - tuning wydajności systemu dla serwerów produkcyjnych
    
    sysctl.conf (net.core, vm.swappiness, file-max), ulimit i limits.conf, transparent hugepages, NUMA, CPU governor…
    
    ](/baza-wiedzy/linux-performance-tuning-kernel/)
-   [Jaki VPS wybrać?](/jaki-vps-wybrac/)

Autor: [Redakcja HostGrade.pl](/autorzy/) Zespół redakcyjny · Aktualizacja: 30 kwietnia 2026

Artykuły HostGrade.pl przygotowuje i aktualizuje redakcja serwisu. Ceny startowe, ceny odnowienia i warunki planów sprawdzamy w cennikach i regulaminach dostawców, a potem liczymy całkowity koszt za 2 lata (cena startowa plus odnowienia). Zasady zbierania danych i liczenia kosztów opisujemy na stronie Metodologia. Linki partnerskie oznaczamy jako #reklama.

[O redakcji i metodologii →](/autorzy/)