18Aug

Jak zarządzać i używać LVM( zarządzanie woluminami logicznymi) w systemie Ubuntu

W poprzednim artykule mówiliśmy Ci, czym jest LVM i do czego możesz go używać, a dzisiaj oprowadzimy cię po kilku kluczowych narzędziach zarządzania LVM, abyś był pewny podczas instalacji lub rozbudowy swojej instalacji.

Jak wspomniano wcześniej, LVM jest warstwą abstrakcji między twoim systemem operacyjnym a fizycznymi dyskami twardymi. Oznacza to, że fizyczne dyski twarde i partycje nie są już powiązane z dyskami twardymi i partycjami, na których się znajdują.Dyski twarde i partycje, które widzi system operacyjny, mogą być dowolną liczbą oddzielnych dysków twardych połączonych razem lub w oprogramowaniu RAID.

Do zarządzania LVM dostępne są narzędzia GUI, ale aby naprawdę zrozumieć, co dzieje się z konfiguracją LVM, najlepiej jest wiedzieć, jakie są narzędzia wiersza poleceń.Będzie to szczególnie przydatne, jeśli zarządzasz LVM na serwerze lub dystrybucji, która nie oferuje narzędzi GUI.

Większość poleceń w LVM jest do siebie bardzo podobnych. Każde prawidłowe polecenie jest poprzedzone jedną z następujących czynności:

  • Objętość fizyczna = pv
  • Grupa woluminów = vg
  • Objętość logiczna = lv

Polecenia dotyczące woluminu fizycznego służą do dodawania lub usuwania dysków twardych w grupach woluminów. Polecenia grupy woluminów służą do zmieniania tego, co abstrakcjonowany zestaw partycji fizycznych jest prezentowany do działania w woluminach logicznych. Polecenia dotyczące woluminu logicznego będą przedstawiać grupy woluminów jako partycje, aby system operacyjny mógł korzystać z wyznaczonej przestrzeni.

Arkusz kalkulacyjny LVM do pobrania

Aby dowiedzieć się, jakie polecenia są dostępne dla każdego prefiksu, przygotowaliśmy arkusz do ściągnięcia LVM.Omówimy niektóre z poleceń w tym artykule, ale wciąż jest wiele rzeczy, które nie zostaną tu omówione.

Wszystkie polecenia na tej liście będą musiały być uruchamiane jako root, ponieważ zmieniasz ustawienia systemowe, które będą miały wpływ na całą maszynę.

( Kliknij miniaturę, aby wyświetlić obraz w pełnym rozmiarze)

Jak wyświetlić bieżące informacje LVM

Pierwszą rzeczą, którą musisz zrobić, to sprawdzić, jak skonfigurowana jest Twoja maszyna LVM.Polecenia s i display działają z woluminami fizycznymi( pv), grupami woluminów( vg) i woluminami logicznymi( lv), więc jest to dobre miejsce do rozpoczęcia próby ustalenia bieżących ustawień.

Polecenie wyświetlania sformatuje informacje, dzięki czemu łatwiej je zrozumieć niż polecenie s. Dla każdego polecenia zobaczysz nazwę i ścieżkę do pv / vg i powinna ona również zawierać informacje o wolnej i używanej przestrzeni.

Najważniejszą informacją będzie nazwa PV i nazwa VG.Dzięki tym dwóm informacjom możemy kontynuować pracę nad konfiguracją LVM.

Tworzenie woluminu logicznego

Woluminy logiczne są partycjami używanymi przez system operacyjny w LVM.Aby utworzyć wolumin logiczny, najpierw musimy mieć fizyczną grupę woluminów i woluminów. Oto wszystkie kroki niezbędne do utworzenia nowego woluminu logicznego.

Utwórz wolumin fizyczny

Rozpoczniemy od zera z zupełnie nowym dyskiem twardym bez partycji lub informacji na jego temat. Zacznij od znalezienia dysku, z którym będziesz pracować.(/dev/ sda, sdb, itp.)

Uwaga: Pamiętaj, że wszystkie polecenia będą musiały zostać uruchomione jako root lub przez dodanie "sudo" na początku polecenia.

fdisk -l

Jeśli twój dysk twardy nigdy nie został sformatowany lub podzielony na partycje, zanim prawdopodobnie zobaczysz coś takiego na wyjściu fdisk. Jest to całkowicie w porządku, ponieważ zamierzamy utworzyć potrzebne partycje w następnych krokach.

Nasz nowy dysk znajduje się w /dev/ sdb, więc użyjmy fdisk, aby utworzyć nową partycję na dysku.

Istnieje mnóstwo narzędzi, które mogą utworzyć nową partycję z GUI, w tym Gparted, ale ponieważ mamy już otwarty terminal, użyjemy fdisk do stworzenia potrzebnej partycji.

Z terminala wpisz następujące polecenia:

fdisk /dev/ sdb

Spowoduje to wyświetlenie specjalnego monitu fdisk.

Wprowadź polecenia w podanej kolejności, aby utworzyć nową partycję podstawową, która używa 100% nowego dysku twardego i jest gotowa na LVM.Jeśli chcesz zmienić rozmiar partycji lub chcesz partycji, proponuję użyć GParted lub samemu przeczytać fdisk.

Ostrzeżenie: Poniższe kroki sformatują twój dysk twardy. Upewnij się, że nie masz żadnych informacji na temat tego dysku twardego przed wykonaniem poniższych kroków.

  • n = utwórz nową partycję
  • p = tworzy partycję podstawową
  • 1 = sprawia, że ​​partycja jest pierwszą na dysku

Naciśnij dwukrotnie klawisz enter, aby zaakceptować domyślny pierwszy cylinder i ostatni cylinder.

Aby przygotować partycję do użycia przez LVM, użyj dwóch poniższych poleceń.

  • t = zmiana typu partycji
  • 8e = zmiana typu partycji LVM

Zweryfikuj i zapisz informacje na dysku twardym.

  • p = zobacz konfigurację partycji, abyśmy mogli przejrzeć przed zapisaniem zmian na dysku
  • w = zapisz zmiany na dysku

Po tych poleceniach, podpowiedź fdisk powinna zakończyć się i wrócisz do wiersza bash terminalu.

Wprowadź pvcreate /dev/ sdb1, aby utworzyć wolumin fizyczny LVM na utworzonej partycji.

Możesz zapytać, dlaczego nie sformatowaliśmy partycji za pomocą systemu plików, ale nie martw się, ten krok nastąpi później.


Utwórz wolumin Grupa

Po utworzeniu partycji i utworzeniu woluminu fizycznego musimy utworzyć grupę woluminów. Na szczęście wymaga to tylko jednego polecenia.

vgcreate vgpool /dev/ sdb1

Vgpool to nazwa utworzonej przez nas nowej grupy woluminów. Możesz nazwać to, co chcesz, ale zaleca się umieszczenie vg na początku etykiety, więc jeśli odwołasz się do niego później, będziesz wiedział, że jest to grupa woluminów.

Utwórz wolumin logiczny

Aby utworzyć wolumin logiczny używany przez maszynę LVM:

lvcreate -L 3G -n vvpool

Komenda -L określa rozmiar woluminu logicznego, w tym przypadku 3 GB, a polecenie -n określa nazwę woluminu logicznego. Tom. Do Vgpool odwołuje się tak, że polecenie lvcreate wie, z którego woluminu pochodzi.

Formatowanie i podłączanie woluminu logicznego

Ostatnim krokiem jest sformatowanie nowego woluminu logicznego za pomocą systemu plików. Jeśli chcesz pomóc w wyborze systemu plików Linux, przeczytaj nasze instrukcje, które pomogą Ci wybrać najlepszy system plików dla Twoich potrzeb.

mkfs -t ext3 /dev/vgpool/ lvstuff

Utwórz punkt montowania, a następnie zamontuj wolumin gdzieś, gdzie możesz go użyć.

mkdir /mnt/ stuff
mount -t ext3 /dev/vgpool/ lvstuff /mnt/ stuff

Zmiana rozmiaru woluminu logicznego

Jedną z zalet woluminów logicznych jest możliwość fizycznego powiększania lub pomniejszania udziałów bez konieczności przenoszenia wszystkiego na większy dysk twardy. Zamiast tego możesz dodać nowy dysk twardy i rozszerzyć grupę woluminów w locie. Lub jeśli masz dysk twardy, który nie jest używany, możesz go usunąć z grupy woluminów, aby zmniejszyć swój wolumin logiczny.

Istnieją trzy podstawowe narzędzia do zwiększania lub zmniejszania objętości fizycznych, grup woluminów i woluminów logicznych.

Uwaga: Każde z tych poleceń będzie musiało być poprzedzone pv, vg lub lv w zależności od tego, z czym pracujesz.

  • resize - może zmniejszyć lub rozszerzyć woluminy fizyczne i woluminy logiczne, ale nie rozszerzyć grup woluminów
  • - może sprawić, że grupy woluminów i woluminy logiczne będą większe, ale nie mniejsze.
  • - może sprawić, że grupy woluminów i woluminy logiczne będą mniejsze, ale nie większe

Przejdźmy przez przykłado tym, jak dodać nowy dysk twardy do woluminu logicznego "lvstuff", który właśnie stworzyliśmy.

Zainstaluj i sformatuj nowy dysk twardy

Aby zainstalować nowy dysk twardy, wykonaj powyższe kroki, aby utworzyć nową partycję i dodaj jej typ partycji do LVM( 8e).Następnie użyj pvcreate, aby utworzyć fizyczny wolumin rozpoznawany przez LVM.

Dodaj nowy dysk twardy do grupy woluminów

Aby dodać nowy dysk twardy do grupy woluminów, wystarczy wiedzieć, jaka jest twoja nowa partycja, /dev/ sdc1 w naszym przypadku oraz nazwa grupy woluminów, do której chcesz ją dodać.

Spowoduje to dodanie nowego woluminu fizycznego do istniejącej grupy woluminów.

vgextend vgpool /dev/ sdc1

Zwiększ objętość logiczną

Aby zmienić wielkość woluminu logicznego, musimy powiedzieć, ile chcemy rozszerzyć o rozmiar, a nie o urządzenie. W naszym przykładzie właśnie dodaliśmy dysk twardy o pojemności 8 GB do naszego vga o rozmiarze 3 GB.Aby uczynić tę przestrzeń użyteczną, możemy użyć lvextend lub lvresize.

lvextend -L8G /dev/vgpool/ lvstuff

Gdy to polecenie zadziała, zobaczysz, że faktycznie zmieni rozmiar naszego logicznego woluminu na 8 GB zamiast dodawać 8 GB do istniejącego woluminu, tak jak chcieliśmy. Aby dodać 3 ostatnie dostępne gigabajty, musisz użyć następującego polecenia.

lvextend -L + 3G /dev/vgpool/ lvstuff

Teraz nasz wolumin logiczny ma rozmiar 11 GB.

Rozszerzenie systemu plików

Wolumin logiczny to 11 GB, ale system plików na tym woluminie nadal ma tylko 3 GB.Aby system plików używał całego dostępnego 11 GB, musisz użyć polecenia resize2fs. Po prostu wskaż polecenie resize2fs do woluminu logicznego o wielkości 11 GB i zrobi to za Ciebie.

resize2fs /dev/vgpool/ lvstuff

Uwaga: Jeśli używasz innego systemu plików poza ext3 / 4, zobacz narzędzia do zmiany rozmiaru systemu plików.

Zmniejszyć wolumin logiczny

Jeśli chcesz usunąć dysk twardy z grupy woluminów, wykonaj powyższe kroki w odwrotnej kolejności i użyj zamiast tego lvreduce i vgreduce.

  1. zmiana rozmiaru systemu plików( pamiętaj, aby przenieść pliki do bezpiecznego obszaru dysku twardego przed zmianą rozmiaru)
  2. zmniejsza objętość logiczną( zamiast + można rozszerzyć można również użyć - aby zmniejszyć rozmiar)
  3. Usuń dysk twardy z grupy woluminów za pomocą vgreduce

Tworzenie kopii zapasowej woluminu logicznego Migawki

to funkcja dostępna w niektórych nowszych zaawansowanych systemach plików, ale ext3 / 4 nie ma możliwości wykonywania migawek w locie. Jedną z najfajniejszych rzeczy na temat migawek LVM jest to, że twój system plików nigdy nie jest w trybie offline i możesz mieć tylu, ile chcesz, bez zajmowania dodatkowego miejsca na dysku twardym.

Gdy LVM wykonuje migawkę, zostaje zrobione zdjęcie dokładnie tak, jak wygląda tom logiczny i który obraz może zostać użyty do utworzenia kopii na innym dysku twardym. Podczas tworzenia kopii wszelkie nowe informacje, które należy dodać do woluminu logicznego, są zapisywane na dysku tak jak zwykle, ale zmiany są śledzone, aby oryginalny obraz nigdy nie został zniszczony.

Aby utworzyć migawkę, musimy utworzyć nowy wolumin logiczny z wystarczającą ilością wolnego miejsca, aby pomieścić wszelkie nowe informacje, które zostaną zapisane na woluminie logicznym podczas tworzenia kopii zapasowej. Jeśli dysk nie jest aktywnie zapisywany, możesz użyć bardzo małej ilości pamięci. Po zakończeniu tworzenia kopii zapasowej usuwamy tymczasowy wolumin logiczny, a oryginalny wolumin logiczny będzie działał normalnie.

Utwórz nową migawkę

Aby utworzyć migawkę lvstuff użyj polecenia lvcreate jak poprzednio, ale użyj opcji -s.

lvcreate -L512M -s -n lvstuffbackup /dev/vgpool/ lvstuff

Tutaj stworzyliśmy wolumin logiczny o wielkości tylko 512 MB, ponieważ dysk nie jest aktywnie wykorzystywany.512 MB przechowa wszystkie nowe zapisy podczas tworzenia kopii zapasowej.

Zamontuj nową migawkę

Tak jak wcześniej, musimy utworzyć punkt montowania i zamontować nową migawkę, abyśmy mogli kopiować z niej pliki.

mkdir /mnt/ lvstuffbackup
mount /dev/vgpool/ lvstuffbackup /mnt/ lvstuffbackup

Skopiuj migawkę i usuń wolumin logiczny

Pozostało ci tylko skopiować wszystkie pliki z /mnt/lvstuffbackup/ na zewnętrzny dysk twardy lub skompresować go tak, aby wszystko znajdowało się w jednym pliku.

Uwaga: tar -c utworzy archiwum, a -f powie nazwę i nazwę pliku archiwum. Aby uzyskać pomoc dotyczącą komendy tar, użyj man tar w terminalu.

tar -cf /home/rothgar/Backup/ lvstuff-ss /mnt/lvstuffbackup/

Pamiętaj, że podczas tworzenia kopii zapasowej wszystkie pliki, które zostały zapisane w pliku lvstuff, są śledzone w tymczasowym woluminie logicznym, który utworzyliśmy wcześniej. Upewnij się, że masz wystarczającą ilość wolnego miejsca podczas tworzenia kopii zapasowej.

Po zakończeniu tworzenia kopii zapasowej odmontuj wolumin i usuń tymczasową migawkę.

umount /mnt/ lvstuffbackup
lvremove /dev/vgpool/lvstuffbackup/

Usuwanie woluminu logicznego

Aby usunąć wolumin logiczny, najpierw upewnij się, że wolumin jest odłączony, a następnie możesz użyć polecenia lvremove, aby usunąć wolumin. Można również usunąć grupę woluminów po usunięciu woluminów logicznych i woluminie fizycznym po usunięciu grupy woluminów.

Oto wszystkie polecenia, używając woluminów i grup, które utworzyliśmy.

umount /mnt/ lvstuff
lvremove /dev/vgpool/ lvstuff
vgremove vgpool
pvremove /dev/ sdb1 /dev/ sdc1

To powinno obejmować większość tego, co powinieneś wiedzieć, aby używać LVM.Jeśli masz jakieś doświadczenie na ten temat, koniecznie podziel się swoją mądrością w komentarzach.