Właściwie chciałbym w prosty i przystępny sposób opowiedzieć o tak wspaniałej rzeczy, jak zarządzanie woluminami logicznymi lub zarządzanie woluminami logicznymi.
Ponieważ korzystam z LVM od dłuższego czasu, opowiem co to konkretnie oznacza dla mnie, bez zaglądania do manuali i wyciągania cytatów z wiki, własnymi słowami, żeby było jasne dla tych, którzy nie wiedzieć cokolwiek na ten temat. Postaram się nie mówić od razu o wszelkiego rodzaju „zaawansowanych” funkcjach, takich jak paski, migawki itp.
LVM to dodatkowa warstwa abstrakcji sprzętu, która pozwala nam zebrać stosy różnych dysków w jeden, a następnie ponownie podzielić go na partycje dokładnie tak, jak chcemy.
Istnieją 3 poziomy abstrakcji:
1. PV (Physical Volume) - woluminy fizyczne (mogą to być partycje lub całe dyski „niepodzielone na partycje”)
2. VG (Volume Group) - grupa woluminów (łączymy woluminy fizyczne (PV) w grupę, tworzymy pojedynczy dysk, który będziemy dalej partycjonować według uznania)
3. LV (wolumin logiczny) - partycje logiczne, rzeczywista partycja naszego nowego „pojedynczego dysku”, czyli grupy woluminów, którą następnie formatujemy i używamy jako zwykłej partycji, zwykłego dysku twardego.
To chyba cała teoria. :) teraz ćwicz:
Do pracy potrzebujesz pakietów lvm2 i możliwości pracy z uprawnieniami roota, dlatego:
$sudo bash
# apt-get zainstaluj lvm2
Załóżmy, że mamy w komputerze dysk twardy o pojemności 40 GB i udało nam się uzbierać trochę pieniędzy i w końcu kupić sobie TERABAJT! :))) System już działa, a pierwszy dysk jest podzielony na jedną partycję (/dev/sda1 jako /), drugi - największy, który właśnie podłączyliśmy - w ogóle nie jest podzielony na /dev/sdb ...
Proponuję trochę odciążyć dysk główny, a jednocześnie go przyspieszyć (nowy dysk działa szybciej niż stary) i „zabezpieczyć” system za pomocą lvm.
Możesz utworzyć partycje na drugim dysku i dodać je do grup woluminów (jeśli potrzebujemy kilku grup woluminów),
Lub w ogóle nie możesz tworzyć partycji na dysku i uczynić całe urządzenie partycją fizyczną (PV)
Root@ws:~# pvcreate /dev/sdb
Pomyślnie utworzono wolumin fizyczny „/dev/sdb”.
Tworzymy grupę woluminów o znaczącej nazwie, na przykład o nazwie komputera „ws”, aby podczas przeciągania tego dysku na inny komputer nie było konfliktów z nazwami grup woluminów:
Root@ws:~# vgcreate ws /dev/sdb
Wskazane jest dodanie z partycji root takich folderów jak /usr /var /tmp /home, aby niepotrzebnie nie defragmentować partycji root i w żadnym wypadku jej nie przepełnić, dlatego tworzymy partycje:
Root@ws:~# lvcreate -n usr -L10G ws # tutaj tworzymy partycję o nazwie „usr” o rozmiarze 10Gb
Utworzono wolumin logiczny „usr”.
Przez analogię robimy to samo dla /var, /tmp, /home:
root@ws:~# lvcreate -n var -L10G ws
root@ws:~# lvcreate -n tmp -L2G ws
root@ws:~# lvcreate -n home -L500G ws
nadal mamy trochę wolnego miejsca w grupie woluminów (na przykład na przyszłą partycję do tworzenia kopii zapasowych)
Możesz zobaczyć dokładnie, ile możesz, za pomocą polecenia:
root@ws:~# vgdisplay
informacje o utworzonych woluminach logicznych
root@ws:~# lvdisplay
informacje o woluminach fizycznych
root@ws:~# pvdisplay
Sekcje, które stworzyliśmy, pojawią się w folderze /dev/[vg_name]/, a raczej będą tam linki do plików,
lrwxrwxrwx 1 root root 22 2009-08-10 18:35 swap -> /dev/mapper/ws-swap
lrwxrwxrwx 1 korzeń root 21 2009-08-10 18:35 tmp -> /dev/mapper/ws-tmp
lrwxrwxrwx 1 korzeń root 21 2009-08-10 18:35 usr -> /dev/mapper/ws-usr
lrwxrwxrwx 1 korzeń root 21 2009-08-10 18:35 var -> /dev/mapper/ws-var
itp...
Wtedy lvm prawie się kończy... formatujemy nasze partycje w naszych ulubionych systemach plików:
root@ws:~# mkfs.ext2 -L tmp /dev/ws/tmp
root@ws:~# mkfs.ext4 -L usr /dev/ws/usr
root@ws:~# mkfs.ext4 -L var /dev/ws/var
root@ws:~# mkfs.ext4 -L home /dev/ws/home
Swoją drogą, utworzenie partycji wymiany nie byłoby złym pomysłem:
root@ws:~# lvcreate -n swap -L2G ws
root@ws:~# mkswap -L swap /dev/ws/swap
root@ws:~# zamiana /dev/ws/swap
Tworzymy folder i łączymy nowo utworzone woluminy jeden po drugim, kopiując do nich niezbędną zawartość:
root@ws:~# mkdir /mnt/target
root@ws:~# mount /dev/ws/home /mnt/target
skopiuj tam wszystko z folderu /home za pomocą swojego ulubionego menedżera plików (zachowując prawa dostępu), na przykład tak;):
root@ws:~# cp -a /home/* /mnt/target/
root@ws:~# umount /mnt/target/
Nawiasem mówiąc, w przypadku folderu tymczasowego wystarczy poprawić uprawnienia; nie ma potrzeby tam niczego kopiować:
root@ws:~# mount /dev/ws/tmp /mnt/target && chmod -R a+rwx /mnt/target && umount /mnt/target/
dodaj niezbędne linie do /etc/fstab, na przykład:
/dev/mapper/ws-home /home ext4 czas 0 2
/dev/mapper/ws-tmp /tmp ext2 noatime 0 2
/dev/mapper/ws-swap brak wymiany SW 0 0
i restart... (zaawansowani panowie mogą obejść się bez restartu;))
Na coś smacznego chcę zaproponować bardziej zaawansowaną rzecz:
Załóżmy, że mamy system z partycją na LVM i dysk twardy zaczyna szwankować, wówczas możemy przenieść cały system na inny dysk twardy/partycję bez ponownego uruchamiania:
# Dodawanie/usuwanie dysków twardych online za pomocą LVM (przykład)
Root@ws:~# pvcreate /dev/sda1 # nasz uszkodzony emulator dysku
Pomyślnie utworzono wolumin fizyczny „/dev/sda1”.
Root@ws:~# pvcreate /dev/sdb1 # nasz emulator dysku ratunkowego
Pomyślnie utworzono wolumin fizyczny „/dev/sdb1”.
Root@ws:~# vgcreate vg0 /dev/sda1 # tworzenie grupy woluminów vg0
Pomyślnie utworzono grupę woluminów „vg0”.
Root@ws:~# lvcreate -n test -L10G vg0 #tworzenie sekcji zawierającej „ważne” informacje
Utworzono „test” woluminu logicznego
Root@ws:~# mkfs.ext2 /dev/vg0/test # tworzenie systemu plików na partycji
root@ws:~# mount /dev/mapper/vg0-test /mnt/tmp/ #montowanie partycji
... # Wypełniam go informacjami, otwieram na nim kilka plików itp.
Root@ws:~# vgextend vg0 /dev/sdb1 # rozszerzanie naszej grupy woluminów na dysk „ratunkowy”
Grupa woluminów „vg0” została pomyślnie rozszerzona
Root@work:~# pvmove /dev/sda1 /dev/sdb1 #przenoszenie zawartości z dysku „umierającego” na dysk „ratunkowy”
/dev/sda1: Przeniesiono: 0,9%
/dev/sda1: Przeniesiono: 1,8%
…
/dev/sda1: Przeniesiono: 99,7%
/dev/sda1: Przeniesiono: 100,0%
Root@work:~# vgreduce vg0 /dev/sda1 # usuwanie „umierającego” dysku z grupy woluminów.
Usunięto „/dev/sda1” z grupy woluminów „vg0”
Całkowity:
Stworzyłem partycję logiczną, sformatowałem ją, zamontowałem i wypełniłem niezbędnymi danymi, a następnie przeniosłem z jednego urządzenia na drugie, podczas gdy partycja pozostała zamontowana, a dane były cały czas dostępne!
W podobny sposób udało mi się przenieść cały system z umierającego dysku na macierz raid bez ponownego uruchamiania. :)
P.S. Proszę wybaczyć wszelkie literówki, byłem ciągle rozproszony =))
P.P.S. O tak!!! Najważniejszą i największą wadą LVM jest to, że nie można go odczytać przez Gruba
dlatego partycja /boot musi znajdować się poza LVM na osobnej partycji dysku twardego,
w przeciwnym razie system nie uruchomi się.
Menedżer woluminów logicznych ( LVM – angielski. Menedżer woluminów logicznych ) - zapewnia dodatkowy poziom abstrakcji pomiędzy dyskami fizycznymi/logicznymi (zwykłymi partycjami, z którymi współpracuje fdisk i podobne programy) a systemem plików. Osiąga się to poprzez rozbicie początkowych partycji na małe bloki ( zakresy, zazwyczaj 4-32MB) i połączenie ich w jeden wolumin wirtualny, a raczej grupę woluminów ( grupa woluminów), który jest dalej podzielony na woluminy logiczne ( objętość logiczna). W systemie plików wolumin logiczny jest reprezentowany jako zwykłe urządzenie blokowe, chociaż poszczególne zakresy woluminu mogą być zlokalizowane na różnych urządzeniach fizycznych (a nawet sam zakres może być dystrybuowany w formie RAID). LVM zwiększa elastyczność systemu plików, jednak będąc jedynie warstwą pośrednią, nie eliminuje ograniczeń i stosowania innych warstw. Oznacza to, że nadal musisz tworzyć i modyfikować partycje oraz je formatować.
Tworzenie.
# pvcreate /dev/sdb1 /dev/sdb2 //tworzenie woluminu fizycznego # vgcreate volgroup00 /dev/sdb1 //tworzenie grupy woluminów # vgextend volgroup00 /dev/sdb2 //dodawanie nowej partycji do grupy woluminów # pvdisplay /dev /sdb2 //wyświetl atrybuty woluminu fizycznego # lvcreate -L20G -ntest01 volgroup00 //utwórz wolumin logiczny o nazwie test o rozmiarze 20 GB
Rozmiar woluminu można utworzyć na podstawie liczby zakresów, których liczba w grupie woluminów jest określana przez vgdsplay :
# lvcreate -l 10000 volgroup00 -n test02
Po utworzeniu woluminu logicznego można na nim wykonać te same czynności, co na zwykłej partycji, tj. można go formatować, montować, przesyłać informacje itp.
# mkreiserfs /dev/volgroup00/test01 //formatowanie woluminu logicznego dla ReiserFS # mount /dev/volgroup00/test01 /mnt/lvmtest //montowanie woluminu logicznego # cp -a /etc/ /mnt/lvmtest //kopiowanie
Obsługa LVM.
Zwiększanie rozmiaru woluminu logicznego
Po zwiększeniu woluminu logicznego należy zwiększyć rozmiar systemu plików. Dla każdego FS Twoja metoda. Co więcej, każdy przypadek ma swoje własne niuanse:
Przed zmianą rozmiaru pliku Zew2 musisz odmontować partycję (rozmiar Zew3/Ze4 zmiany na bieżąco).
Zew4 wzrasta tylko w sposób zmień rozmiar2fs. W fsadm ich metody.
Zwiększ rozmiar systemów plików Reiserfs jak w zmontowany i w nieoprawny stan : schorzenie.
Rozmiar systemu plików XFS można zwiększyć jedynie o zmontowany stan : schorzenie. Ponadto narzędzie musi przekazać jako parametr punkt podłączenia, a nie nazwę urządzenia.
# lvextend - L+ 4G / dev/ volgroup00/ test01 //zwiększ wolumin logiczny o 4 GB# resize2fs /dev/volgroup00/ext //Ext2/Ext3/Ext4 rozszerzenie lub druga opcja przez fsadm (niektóre źródła piszą o e2fsadm, sam nie znalazłem).# fsadm - l zmień rozmiar / dev/ volgroup00/ ext 2G //zwiększ wolumin logiczny Ext2/Ext3 wraz z rozbudową systemu plików. Od września 2009 Ext4 nie jest jeszcze obsługiwany# resize_reiserfs - f /dev/volgroup00/reiser //Rozszerzenie ReiserFS# xfs_growfs / mnt/ lvm/ xfs // rozszerzenie XFS # btrfsctl - r + 2g / mnt/ lvm/ btrfs/ // rozszerzenie Btrfs lub # btrfsctl - r + 2g - A / dev/ volgroup00/ btrfs // rozszerzenie Btrfs |
# lvextend -L+4G /dev/volgroup00/test01 //zwiększenie wolumenu logicznego o 4GB # resize2fs /dev/volgroup00/ext //przedłużenie Ext2/Ext3/Ext4 lub drugiej opcji poprzez fsadm (niektóre źródła piszą o e2fsadm, pod adresem w domu go nie znalazłem). # fsadm -l resize /dev/volgroup00/ext 2G //zwiększ wolumen logiczny Ext2/Ext3 poprzez rozszerzenie FS. Od września 2009 Ext4 nie jest jeszcze obsługiwany # resize_reiserfs -f /dev/volgroup00/reiser //rozszerzenie ReiserFS # xfs_growfs /mnt/lvm/xfs //rozszerzenie XFS # btrfsctl -r +2g /mnt/lvm/btrfs/ // Rozszerzenie Btrfs lub # btrfsctl -r +2g -A /dev/volgroup00/btrfs //rozszerzenie Btrfs
Zmniejszanie rozmiaru woluminu logicznego
Można także zmniejszyć rozmiar woluminów logicznych. Przede wszystkim musisz zmniejszyć rozmiar systemu plików, a dopiero potem zmniejszyć rozmiar woluminu logicznego. W odwrotnej kolejności możesz utracić dane. Istnieją również pewne niuanse:
Przed zmianą rozmiaru system plików musi zostać odmontowany.
Podczas zmiany rozmiaru Zmiana rozmiaru Ext2/Ext32fs'y wskazany jest jego nowy rozmiar.
Zmniejszenie XFS I JFS niemożliwe.
Zmniejszenie Btrfs Można to zrobić na bieżąco, ale lepiej nie ryzykować.
# resize2fs /dev/volgroup00/ext2 500m //wskazanie nowego rozmiaru dla FS Ext2/Ext3 # fsadm -l resize /dev/volgroup00/ext3 200M //wskazanie nowego rozmiaru dla FS Ext2/Ext3 # resize_reiserfs -s-1G / dev/ volgroup00/reiserfs //zmniejsz FS Reiserfs # btrfsctl -r -2g -A /dev/volgroup00/btrfs //zmniejsz FS Btrfs # lvreduce -L-1G /dev/volgroup00/test01 //zmniejsz wolumin logiczny
Zmiana nazwy woluminu logicznego
# vgchange -a n /dev/volgroup02 //odłączanie woluminów logicznych w grupie ofiar # vgmerge volgroup01 volgroup02 //wchłanianie grupy volgroup02 przez grupę volgroup01
Dzielenie grupy woluminów
# vgsplit volgroup01 volgroup02 /dev/sdb1 //alokacja nowej grupy woluminów volgroup02, która będzie zlokalizowana na woluminie fizycznym /dev/sdb1
Zmiana rozmiaru woluminu fizycznego. Istnieje kilka niuansów:
Zwiększanie rozmiaru woluminu fizycznego LVM odbywa się po zwiększeniu partycji za pomocą programów takich jak cfdisk/fdysk
Redukcję wolumenu należy przeprowadzić po redukcji systemów plików i woluminów logicznych, w przeciwnym razie może dojść do uszkodzenia danych.
# [b]pvresize /dev/sda1 //zwiększ wolumin fizyczny # [b]pvresize –setphysicalvolumesize 40G /dev/sda1 //zmniejsz wolumin fizyczny
Tworzenie migawek
Migawka to kopia innego woluminu przeznaczona tylko do odczytu. Tworząc migawki, musisz upewnić się, że jesteś uruchomiony dmeventd. Podczas robienia zdjęć z XFS należy go najpierw zamrozić - xfs_freeze.
# lvcreate -L600M -s -n var-backups /dev/volgroup00/var //utwórz wolumin var-backup jako kopię woluminu var # mount /dev/volgroup00/var-backup /mnt/backup //następnie zamontuj migawka
Tworzenie lustra (Lustra)
Lustra służą do zwiększenia odporności na awarie i zwiększenia poziomu bezpieczeństwa informacji. Do utworzenia kopii lustrzanej potrzebne są 3 woluminy fizyczne, 2 dla kopii lustrzanej i 1 dla dziennika. Zaleca się korzystanie z woluminów fizycznych znajdujących się na różnych nośnikach. Korzystanie z woluminów fizycznych z jednego nośnika neguje praktyczność korzystania z lustra, ponieważ W przypadku awarii sprzętu lustro staje się bezużyteczne. Tworząc serwery lustrzane, musisz upewnić się, że działasz dmeventd
# pvcreate /dev/sda5 /dev/sdb1 /dev/sdc1 //utwórz wolumin fizyczny # vgcreate Mirror00 /dev/sda5 /dev/sdb1 /dev/sdc1 //utwórz grupę Mirror00 # lvcreate -L 5G -n wolumen00 - m 1 lustro00 //utwórz objętość lustrzaną objętość00
przeglądając informacje o woluminach logicznych, procent kopii powinien osiągnąć 100%
# lvs LV VG Attr LSize Pochodzenie Snap% Przenieś dziennik Kopiuj% Konwertuj wolumen00 lustro00 mwia- a- 5.00G wolumen00_mlog 6.17 |
# lvs LV VG Attr LSize Pochodzenie Snap% Przenieś dziennik Kopiuj% Konwertuj wolumen00 lustro00 mwi-a- 5.00G wolumen00_mlog 6.17
sprawdzanie użycia urządzenia w utworzonym lustrze
# lvs - a - o + urządzenia LV VG Attr LSize Pochodzenie Snap% Przenieś dziennik Kopiuj% Konwertuj Urządzenia wolumen00 lustro00 mwia- a- 5.00G wolumen00_mlog 100.00 wolumen00_mimage_0(0) , wolumen00_mimage_1(0) [ wolumin00_mimage_0] lustro00 iwia- ao 5.00G / dev/ sda5(0) [volume00_mimage_1] lustro00 iwi-ao 5.00G / dev/ sdb1(0) [volume00_mlog] lustro00 lwi-ao 4.00M |
# lvs -a -o +urządzenia LV VG Attr LSize Pochodzenie Snap% Przenieś dziennik Kopiuj% Konwertuj urządzenia wolumen00 lustro00 mwi-a- 5.00G wolumen00_mlog 100.00 wolumen00_mimage_0(0),volume00_mimage_1(0) lustro00 iwi-ao 5.00G /dev/sda5 (0) lustro00 iwi-ao 5.00G /dev/sdb1(0) lustro00 lwi-ao 4.00M
# vgextend volgroup01 /dev/sdc1 /dev/sdd1 //dodawanie nowych woluminów fizycznych do grupy # lvconvert -m 1 /dev/volgroup01/volume-new //konwersja zwykłego woluminu na dublowany
Usuwanie woluminów i grup
Woluminy logiczne należy odmontować przed usunięciem.
# vgreduce volgroup00 /dev/sdb1 //usuń wolumin fizyczny z grupy # lvremove /dev/volgroup00/test01 //usuń wolumin logiczny # vgremove volgroup00 //usuń grupę woluminów # pvremove /dev/sdc1 //usuń wolumin fizyczny tom
Logical Volume Manager to menedżer woluminów logicznych dla systemów operacyjnych GNU/Linux i OS /2. Umożliwia tworzenie wolumenów logicznych na partycjach fizycznych (lub nawet na dyskach twardych bez partycji), które będą widoczne w samym systemie jako zwykłe urządzenia blokowe z danymi (tj. jako zwykłe partycje). Główną zaletą LVM jest to, że po pierwsze, na dowolnej liczbie partycji fizycznych można utworzyć jedną grupę woluminów logicznych, a po drugie, można łatwo zmieniać wielkość woluminów logicznych w trakcie pracy. Ponadto LVM obsługuje mechanizm migawek, kopiowanie partycji w locie i tworzenie kopii lustrzanych podobnych do RAID -1.
W przypadku LVM istnieją trzy grupy narzędzi przeznaczonych do pracy z woluminami fizycznymi (pv*), grupami logicznymi (lg*) i woluminami logicznymi (lv*). Zatem polecenie pvcreate tworzy woluminy fizyczne, polecenie pvscan raportuje istniejące, a polecenie pvdisplay wyświetla pełne informacje na ich temat. Trójki poleceń vgcreate, vgscan, vgdisplay i lvcreate, lvscan, lvdisplay robią to samo odpowiednio dla grup woluminów i woluminów logicznych.
Odinstalowanie LVM(lub jego poszczególne części, na przykład woluminy logiczne lub grupy woluminów) następuje w odwrotnej kolejności ich tworzenia:
odmontuj partycje (umount)
lvwyświetlacz. usuń woluminy logiczne (lvremove)
vgwyświetlacz. usuń grupy woluminów (vgremove) # vgremove vz
pvwyświetlacz. usuń niepotrzebne woluminy fizyczne (pvremove) # pvremove /dev/sda3
Tworzenie LVM
Utwórz wolumin fizyczny na partycji sda3: # pvcreate /dev/sda3 # pvdisplay
Na woluminie fizycznym utwórz grupę woluminów o nazwie vz: # vgcreate -s 32M vz /dev/sda3
Komenda vgcreate jest uruchamiana z nazwą grupy jako pierwszym argumentem i nazwą pliku urządzenia partycji jako drugim argumentem. Nazwa grupy jest dowolna; ścieżki do plików urządzenia woluminu fizycznego podczas korzystania z devfs muszą używać pełnej notacji (jako wynik polecenia pvscan). Domyślnie woluminy są dzielone na fizyczne bloki o rozmiarze 4 MB. Jeśli chcesz mieć inny rozmiar bloku, można to wyraźnie ustawić za pomocą opcji -s ##m. Zalecane jest użycie obszaru o rozmiarze 32 MB , w tym przypadku maksymalny rozmiar przyszłych woluminów logicznych jest ograniczony do 2 terabajtów, ale jeśli zatrzymamy się na domyślnym zakresie, limit woluminu wyniesie 256 GB.
Tworzenie woluminu lub woluminów logicznych (analogicznie do partycjonowania fizycznego dysku twardego). Utwórzmy dwie partycje tmp o rozmiarze 10 GB i partycję rest, która zajmie całe pozostałe miejsce grupy woluminów vz: # lvcreate -l 10G -n tmp vz # lvcreate -l 100%FREE -n rest vz
Sformatujmy powstałe woluminy logiczne: # mkfs.ext4 /dev/vz/tmp # mkfs.ext4 /dev/vz/rest
Logical Volume Manager (LVM) to bardzo wydajny system zarządzania woluminami danych dla systemu Linux. Umożliwia tworzenie wolumenów logicznych na partycjach fizycznych (lub nawet na dyskach twardych bez partycji), które będą widoczne w samym systemie jako zwykłe urządzenia blokowe z danymi (tj. jako zwykłe partycje). Główną zaletą LVM jest to, że po pierwsze, na dowolnej liczbie partycji fizycznych można utworzyć jedną grupę woluminów logicznych, a po drugie, można łatwo zmieniać wielkość woluminów logicznych w trakcie pracy. Ponadto LVM obsługuje mechanizm migawek, kopiowanie partycji w locie i tworzenie kopii lustrzanych podobnych do RAID-1.
Jeśli planujesz dużo pracy z LVM, możesz uruchomić specjalną „powłokę” za pomocą polecenia sudo lvm. Polecenie pomocy wyświetli listę poleceń.
Jak już wspomniano, LVM jest zbudowany w oparciu o partycje dysku twardego i/lub całe dyski twarde. Na każdym z dysków/partycji należy utworzyć objętość fizyczna(objętość fizyczna). Na przykład używamy dysku dla LVM sda i sekcja sdb2:
Pvcreate /dev/sda pvcreate /dev/sdb2
Na tych woluminach fizycznych tworzymy grupa woluminów, który będzie nazywany, powiedzmy, vg1:
Vgcreate -s 32M vg1 /dev/sda /dev/sdb2
Przyjrzyjmy się informacjom o naszej grupie woluminów:
Vgwyświetlacz vg1
Można utworzyć kilka grup, każda z własnym zestawem woluminów. Ale zwykle nie jest to wymagane.
Teraz możesz tworzyć w grupie woluminów woluminy logiczne poziom 1 I poziom 2 Rozmiar odpowiednio 20 GB i 30 GB:
Lvcreate -n lv1 -L 20G vg1 lvcreate -n lv2 -L 30G vg1
Teraz mamy urządzenia blokowe /dev/vg1/lv1 I /dev/vg1/lv2.
Pozostaje tylko utworzyć na nich system plików. Nie ma tutaj różnic w przypadku zwykłych sekcji:
Mkfs.ext4 /dev/vg1/lv1 mkfs.reiserfs /dev/vg1/lv2
Usuwanie LVM (lub jego poszczególnych części, na przykład woluminów logicznych lub grup woluminów) odbywa się w odwrotnej kolejności - najpierw należy odmontować partycje, następnie usunąć woluminy logiczne (lvremove), po czym można usunąć grupy woluminów (vgremove) i niepotrzebne woluminy fizyczne (pvremove) .
Aby dodać nowy dysk twardy SD do grupy woluminów utwórz wolumin fizyczny:
Pvcreate /dev/sdc
I dodaj go do naszej grupy:
Vgextend vg1 /dev/sdc
Teraz możesz utworzyć kolejny dysk logiczny (lvcreate) lub zwiększyć rozmiar już istniejącego (lvresize).
Aby usunąć dysk twardy z działającej grupy woluminów sda Najpierw przenieśmy z niego wszystkie dane na inne dyski:
Pvmove /dev/sda
Następnie usuń go z grupy woluminów:
Vgreduce vg1 /dev/sda
Na koniec usuń wolumin fizyczny:
Pvusuń /dev/sda
Właściwie ostatnie polecenie po prostu usuwa oznaczenie, że dysk jest członkiem lvm i nie przynosi zbyt wielu korzyści. Po usunięciu z LVM dysk będzie musiał zostać ponownie podzielony na partycje/sformatowany w celu dalszego wykorzystania.
LVM umożliwia łatwą zmianę rozmiaru woluminów logicznych. Aby to zrobić, musisz najpierw zmienić sam wolumin logiczny:
Lvresize -L 40G vg1/lv2
a następnie system plików na nim:
Resize2fs /dev/vg1/lv2 resize_reiserfs /dev/vg1/lv2
Zmiana rozmiaru woluminu fizycznego jest zadaniem bardzo złożonym i zwykle się go nie wykonuje. Bardziej praktyczne i bezpieczniejsze jest usunięcie woluminu fizycznego, zmiana rozmiaru partycji i ponowne utworzenie woluminu.
Jeśli LVM jest zainstalowany nie do dalszego użytku, ale „do przeglądania”, wówczas dyski i partycje można zastąpić plikami. Nie są potrzebne żadne dodatkowe dyski ani maszyny wirtualne. Stworzymy wirtualne dyski i będziemy z nimi pracować. Na przykład możesz utworzyć 4 dyski o pojemności 1 GB, ale możesz także utworzyć inną liczbę większych lub mniejszych rozmiarów, według własnego uznania. Sami tworzymy pliki symulujące urządzenia:
Mkdir /mnt/sdc1/lvm cd /mnt/sdc1/lvm dd if=/dev/zero of=./d01 liczba=1 bs=1G dd if=/dev/zero of=./d02 liczba=1 bs=1G dd if=/dev/zero of=./d03 count=1 bs=1G dd if=/dev/zero of=./d04 count=1 bs=1G
Urządzenia pętlowe tworzymy z plików:
Losetup -f --show ./d01 Lostup -f --show ./d02 Lostup -f --show ./d03 Lostup -f --show ./d04
Pvcreate /dev/loop0 pvcreate /dev/loop1 pvcreate /dev/loop2 pvcreate /dev/loop3 vgcreate -s 32M vg /dev/loop0 /dev/loop1 /dev/loop2 /dev/loop3 lvcreate -n pierwszy -L 2G vg lvcreate -n sekunda -L 400M vg ...
Jedną z najważniejszych cech LVM jest obsługa mechanizmu migawek. Migawki pozwalają na wykonanie natychmiastowy wykonaj migawkę woluminu logicznego i użyj go w przyszłości do pracy z danymi.
LVM jest aktywnie używany, gdy potrzebny jest mechanizm migawki. Na przykład ten mechanizm jest niezwykle ważny podczas tworzenia kopii zapasowych stale zmieniających się plików. LVM pozwala zamrozić pewien stan FS i skopiować z niego wszystkie niezbędne dane, bez konieczności zatrzymywania nagrywania na oryginalnym FS.
Migawki można również wykorzystać do zorganizowania obsługi serwera plików z Sambą dla mechanizmu kopiowania archiwum, więcej na ten temat w odpowiednim artykule:
Jeśli chcesz pracować z LVM z Ubuntu LiveCD, będziesz musiał wykonać kilka dodatkowych kroków, ponieważ domyślnie nie ma narzędzi do pracy z LVM.
Najpierw musisz zainstalować te narzędzia:
Sudo vgscan sudo vgdisplay YOUR_VGNAME
Sudo vgchange -a y
To polecenie powinno wskazywać, że wszystkie woluminy logiczne są aktywowane. Teraz możesz pracować z nimi jak zwykle.