Praca laboratoryjna: konfiguracja lvm, raid na linuxie

Małe odwrócenie: ta praca laboratoryjna jest syntetyczna.
Niektóre zadania opisane tutaj można wykonać znacznie łatwiej, ale ponieważ celem pracy laboratoryjnej jest zapoznanie się
z funkcjonalnością RAID, LVM, niektóre operacje są sztucznie utrudnione.

Wymagania dotyczące narzędzi do realizacji pracy laboratoryjnej:

  • Narzędzia wirtualizacyjne, takie jak VirtualBox
  • Obraz instalacyjny systemu Linux, na przykład Debian 9
  • Dostęp do internetu, aby pobrać kilka pakietów
  • Połączenie przez SSH z zainstalowaną VM (opcjonalnie)

UWAGA

Ta praca laboratoryjna jest związana z tak delikatną sprawą, jak bezpieczeństwo danych — to jest obszar,
który umożliwia przez najmniejszy błąd — jedną zbędną literę lub cyfrę utracić wszystkie dane.
Ponieważ wykonujesz pracę laboratoryjną, nic ci nie grozi, chyba że będziesz musiał zaczynać ją od nowa.
W prawdziwym życiu jest znacznie poważniej, dlatego należy bardzo uważnie wprowadzać nazwy dysków, rozumiejąc
co dokładnie wykonujesz bieżącym poleceniem i z jakimi dyskami pracujesz.

Druga ważna kwestia — nazewnictwo dysków i partycji: w zależności od sytuacji numery dysków mogą się różnić
od wartości przedstawionych w poleceniach w pracy laboratoryjnej.
Na przykład, jeśli usuniesz dysk sda z macierzy, a następnie dodasz nowy dysk, nowy dysk będzie wyświetlany
w systemie pod nazwą sda. Jeśli jednak wykonasz ponowne uruchomienie przed dodaniem nowego dysku, nowy
dysk otrzyma nazwę sdb, a stary będzie nazywał się sda.

Praca laboratoryjna powinna być wykonywana jako superużytkownik (root), ponieważ większość poleceń wymaga
podwyższonych uprawnień i nie ma sensu stale podwyższać tych uprawnień przez sudo.

Materiały do nauki

  • RAID
  • LVM
  • Nazewnictwo dysków w systemie Linux
  • Co to jest partycja
  • Co to jest tablica partycji i gdzie jest przechowywana
  • Co to jest grub

Używane narzędzia

1) przeglądanie informacji o dyskach

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
  • fdisk -l
    2) przeglądanie informacji i praca z LVM
  • pvs
  • pvextend
  • pvcreate
  • pvresize
  • vgs
  • vgreduce
  • lvs
  • lvextend
    3) przeglądanie informacji i praca z RAID
  • cat /proc/mdstat
  • mdadm
    4) punkty montowania
  • mount
  • umount
  • cat /etc/fstab
  • cat /etc/mtab
    5) nowa partycjonowanie dysku
  • fdisk /dev/XXX
    6) kopiowanie partycji
  • dd if=/dev/xxx of=/dev/yyy
    7) praca z tablicą partycji
  • partx
  • sfdisk
  • mkfs.ext4
    8) praca z bootloaderem
  • grub-install /dev/XXX
  • update-grub
    9) różne
  • lsof
  • apt
  • rsync

Praca laboratoryjna składa się z 3 części:

  • konfiguracja działającego systemu z wykorzystaniem lvm, raid
  • emulacja awarii jednego z dysków
  • wymiana dysków w czasie rzeczywistym, dodanie nowych dysków i przeniesienie partycji.

Zadanie 1 (Instalacja OS i konfiguracja LVM, RAID)

1) Utwórz nową maszynę wirtualną, nadając jej następujące parametry:

  • 1 GB RAM
  • 1 CPU
  • 2 HDD (nazwij je ssd1, ssd2 i ustaw równy rozmiar, zaznacz opcje hot swap i ssd)
  • Kontroler SATA skonfigurowany na 4 porty

Praca laboratoryjna: konfiguracja lvm, raid na linuxie

2) Rozpocznij instalację Linuxa, a po dotarciu do wyboru dysków twardych wykonaj następujące kroki:

  • Metoda partycjonowania: ręczna, po czym powinieneś zobaczyć taki widok:
    Praca laboratoryjna: konfiguracja lvm, raid na linuxie

  • Ustawienie oddzielnej partycji pod /boot: Wybierz pierwszy dysk i utwórz na nim nową tabelę partycji

    • Rozmiar partycji: 512M
    • Punkt montowania: /boot
    • Powtórz ustawienia dla drugiego dysku, lecz ponieważ nie można jednocześnie montować /boot dwa razy, wybierz punkt montowania: none, uzyskując ostatecznie następujący wynik (zdjęcie z błędem, poprawiać mi się nie chce):
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie

  • Ustawienie RAID:

    • Wybierz wolne miejsce na pierwszym dysku i skonfiguruj je jako typ partycji fizyczne wolumeny dla RAID
    • Wybierz „Zakończ konfigurowanie partycji”
    • Powtórz dokładnie tę samą konfigurację dla drugiego dysku, w wyniku czego uzyskasz następujący efekt:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie
    • Wybierz punkt „Skonfiguruj RAID programowe”
    • Utwórz urządzenie MD
    • Typ urządzenia RAID programowego: Wybierz macierz lustrzaną
    • Aktywne urządzenia dla tablicy RAID XXXX: Wybierz oba dyski
    • Urządzenia zapasowe: Pozostaw 0 domyślnie
    • Aktywne urządzenia dla tablicy RAID XX: wybierz partycje, które tworzyłeś pod raid
    • Zakończ
    • Ostatecznie powinieneś uzyskać taki widok:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie

  • Ustawienie LVM: Wybierz Skonfiguruj Menedżera Wolumenów Logiczych

    • Zachowaj aktualny układ partycji i skonfiguruj LVM: Tak
    • Utwórz grupę woluminów
    • Nazwa grupy woluminów: system
    • Urządzenia do nowej grupy woluminów: Wybierz swój utworzony RAID
    • Utwórz wolumen logiczny
    • nazwa wolumenu logicznego: root
    • rozmiar wolumenu logicznego: 25 od rozmiaru twojego dysku
    • Utwórz wolumen logiczny
    • nazwa wolumenu logicznego: var
    • rozmiar wolumenu logicznego: 25 od rozmiaru twojego dysku
    • Utwórz wolumen logiczny
    • nazwa wolumenu logicznego: log
    • rozmiar wolumenu logicznego: 15 od rozmiaru twojego dysku
    • Wybierając Wyświetl szczegóły konfiguracji powinieneś uzyskać następujący widok:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie
    • Po zakończeniu konfiguracji LVM powinieneś zobaczyć następujący wynik:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie

  • Rozmieszczanie partycji: kolejno wybierz każdy utworzony wolumen w LVM i rozmieszczaj je, na przykład dla root w następujący sposób:

    • Użyj jako: ext4
    • punkt montowania: /
    • wynik rozmieszczenia partycji głównej powinien być następujący:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie
    • powtórz operację rozmieszczania dla var i log wybierając odpowiednie punkty montowania (/var i /var/log wprowadź ręcznie), uzyskując następujący wynik:
      Praca laboratoryjna: konfiguracja lvm, raid na linuxie
    • Wybierz Zakończ partycjonowanie
    • Zostanie zadanych kilka pytań dotyczących niezmontowanej partycji i nie skonfigurowanego swap. Należy odpowiedzieć negatywnie na oba pytania.

  • Ostateczny wynik powinien wyglądać następująco:
    Praca laboratoryjna: konfiguracja lvm, raid na linuxie
    3) Zakończ instalację systemu operacyjnego, instalując grub na pierwszym urządzeniu (sda) i uruchom system.
    4) Wykonaj kopiowanie zawartości partycji /boot z dysku sda (ssd1) na dysk sdb (ssd2)

    dd if=/dev/sda1 of=/dev/sdb1

    5) Zainstaluj grub na drugim urządzeniu:

  • zobacz dyski w systemie:

    fdisk -l
    lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

  • Wymień wszystkie dyski, które zwróciła poprzednia komenda i opisz, co to za dysk.

  • Znajdź dysk, na który nie wykonano instalacji grub i przeprowadź tę instalację:
    grub-install /dev/sdb

  • sprawdź informacje o bieżącym raid poleceniem cat /proc/mdstat i zapisz, co zobaczyłeś.

  • zobacz wyniki komend: pvs, vgs, lvs, mount i zapisz, co dokładnie zobaczyłeś.

Opisz swoimi słowami, co zrobiłeś i jaki rezultat otrzymałeś na koniec zadania.

Po wykonaniu tego zadania zaleca się zapisanie kopii zapasowej folderu z maszyną wirtualną lub zrobienie
vagrant box: https://t.me/bykvaadm/191

Wynik: Maszyna wirtualna z dyskami ssd1, ssd2

Zadanie 2 (Emulacja awarii jednego z dysków)

1) Jeśli zaznaczyłeś opcję hot swap, masz możliwość usuwania dysków w locie.

  • Wykonaj usunięcie dysku ssd1 w ustawieniach maszyny.
  • Znajdź katalog, w którym przechowywane są pliki twojej maszyny wirtualnej i usuń ssd1.vmdk.
    2) Upewnij się, że twoja maszyna wirtualna nadal działa.
    3) Zrestartuj maszynę wirtualną i upewnij się, że nadal działa.
    4) Sprawdź status macierzy RAID: cat /proc/mdstat
    5) Dodaj w interfejsie VM nowy dysk o takim samym rozmiarze i nazwij go ssd3.
    6) Wykonaj operacje:
  • sprawdź, czy nowy dysk pojawił się w systemie komendą fdisk -l.
  • skopiuj tabelę partycji ze starego dysku na nowy: sfdisk -d /dev/XXXX | sfdisk /dev/YYY
  • sprawdź rezultat komendą fdisk -l.
  • Dodaj nowy dysk do macierzy raid: mdadm —manage /dev/md0 —add /dev/YYY.
  • Zobacz rezultat: cat /proc/mdstat. Powinieneś zobaczyć, że rozpoczęła się synchronizacja.
    7) Teraz ręcznie przeprowadź synchronizację partycji, które nie są częścią RAID.
    W tym celu użyj narzędzia dd, kopiując z „żywego” dysku na nowy, który niedawno zainstalowałeś.
    dd if=/dev/XXX of=/dev/YYY

    8) Po zakończeniu synchronizacji zainstaluj grub na nowym dysku.
    9) Wykonaj restart VM, aby upewnić się, że wszystko działa.
    Opisz swoimi słowami, co zrobiłeś i jaki rezultat otrzymałeś na koniec zadania.
    Wynik: Usunięto dysk ssd1, zachowano dysk ssd2, dodano dysk ssd3.

    Zadanie 3 (Dodawanie nowych dysków i przenoszenie partycji)

    To jest najtrudniejsze i najbardziej czasochłonne zadanie ze wszystkich przedstawionych.
    Bardzo dokładnie sprawdzaj, co robisz i z jakimi dyskami oraz partycjami.
    Zaleca się wykonać kopię zapasową przed jego realizacją.
    To zadanie jest niezależne od zadania nr 2, można je wykonać po zadaniu nr 1 z uwzględnieniem nazw dysków.
    Druga część zadania tej laboratorium powinna prowadzić do dokładnie takiego samego stanu, który był po wykonaniu pierwszej części.

    Aby ułatwić sobie pracę, mogę zalecić, aby nie usuwać fizycznie dysków z maszyny hosta, a jedynie
    odłączać je w właściwościach maszyny. Z punktu widzenia systemu operacyjnego w VM będzie to wyglądać absolutnie identycznie, ale będziesz mógł
    w razie czego podłączyć dysk z powrotem i kontynuować pracę cofając się o kilka punktów, jeśli
    pojawią się jakiekolwiek problemy. Na przykład mogłeś wykonać coś niepoprawnie lub zapomnieć skopiować na nowy dysk partycję /boot.
    Mogę jedynie doradzić, aby kilkakrotnie sprawdzać, z jakimi dyskami i partycjami pracujesz, a jeszcze lepiej
    zapisz na kartce odpowiednio nazwisko dysków, partycji oraz "fizyczny" numer dysku. Piękne i zrozumiałe drzewo
    rysuje komenda lsblk, korzystaj z niej jak najczęściej do analizy tego, co zrobiłeś i co trzeba zrobić.

    Co do historii...

    Wyobraź sobie, że twój serwer przez długi czas działał na dwóch dyskach SSD, kiedy nagle...

    1) Emuluj awarię dysku SSD2, usuwając dysk z właściwości VM i uruchamiając ponownie
    2) Sprawdź aktualny stan dysków i RAID:

    cat /proc/mdstat
    fdisk -l
    lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

    3) Miałeś szczęście — kierownictwo zgodziło się na zakup kilku nowych dysków:

    2 duże dyski SATA do długo planowanej operacji przeniesienia partycji z logami na oddzielny dysk

    2 SSD do wymiany uszkodzonego, a także do wymiany jeszcze działającego.

    Należy pamiętać, że kosz serwera umożliwia jednoczesną instalację tylko 4 dysków,
    dlatego nie można dodać wszystkich dysków naraz.

    Objętość HDD należy wybrać 2 razy większą niż SSD.
    Objętość SSD należy wybrać 1,25 razy większą niż wcześniej istniejące SSD.

    4) Dodaj jeden nowy dysk SSD, nazywając go ssd4, a po dodaniu sprawdź, co się wydarzyło:

    fdisk -l
    lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

    5) W pierwszej kolejności należy zadbać o bezpieczeństwo danych ze starego dysku.
    Tym razem będziemy przenosić dane za pomocą LVM:

    • Na początek należy skopiować tabelę plików ze starego dysku na nowy:
      sfdisk -d /dev/XXX | sfdisk /dev/YYY

      Podstaw odpowiednie dyski zamiast x,y i przeanalizuj, co robi ta komenda.

      Wykonaj polecenie lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT i porównaj jego wyniki z poprzednim wywołaniem.
      Co się zmieniło?
      Za pomocą komendy dd skopiuj dane /boot na nowy dysk

      dd if=/dev/XXX of=/dev/YYY

      jeśli /boot pozostał zamontowany na starym dysku, należy go ponownie zamontować na aktywnym dysku:

      mount | grep boot # sprawdź, gdzie jest zamontowany dysk
      lsblk # sprawdź, jakie dyski są w systemie i czy istnieje dysk uzyskany z poprzedniego punktu
      umount /boot # odmontuj /boot
      mount -a # zamontuj wszystkie punkty zgodnie z /etc/fstab. 
      # Ponieważ tam wskazana jest lokalizacja zamontowania /dev/sda, prawidłowe ponowne zamontowanie na aktywnym dysku zostanie wykonane.

      Zainstaluj bootloader na nowym dysku SSD

      grub-install /dev/YYY

      Dlaczego wykonujemy tę operację?

      Utwórz nową macierz RAID, włączając w nią tylko nowy dysk SSD:

      mdadm --create --verbose /dev/md63 --level=1 --raid-devices=1 /dev/YYY

      Powyższa komenda nie zadziała bez podania specjalnego klucza.
      Przeczytaj dokumentację i dodaj ten klucz do komendy.

      Za pomocą komendy cat /proc/mdstat sprawdź wynik swojej operacji. Co się zmieniło?
      Wykonaj polecenie lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT i porównaj jego wyniki z poprzednim wywołaniem.
      Co się zmieniło?
      6) Następnym krokiem jest skonfigurowanie LVM
      wykonaj polecenie pvs, aby zobaczyć informacje o aktualnych fizycznych wolumenach
      Utwórz nowy wolumen fizyczny, włączając w niego wcześniej utworzoną macierz RAID:

      pvcreate /dev/md63

      Wykonaj polecenie lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT i porównaj jego wyniki z poprzednim wywołaniem.
      Co się zmieniło?
      Ponownie wykonaj polecenie pvs. Co się zmieniło?
      Zwiększ rozmiar grupy woluminów system przy pomocy tej komendy:

      vgextend system /dev/md63

      Wykonaj polecenia i zapisz, co zobaczyłeś i co się zmieniło.

      vgdisplay system -v
      pvs
      vgs
      lvs -a -o+devices

      Na którym fizycznym dysku znajdują się obecnie LV var, log, root?

      Wykonaj przeniesienie danych ze starego dysku na nowy, podstawiając odpowiednie nazwy urządzeń.

      pvmove -i 10 -n /dev/system/root /dev/md0 /dev/md63 

      Powtórz operację dla wszystkich logical volume

      Wykonaj polecenia i zapisz, co zobaczyłeś i co się zmieniło.

      vgdisplay system -v
      pvs
      vgs
      lvs -a -o+devices
      lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

      Zmień nasz VG, usuwając z niego dysk starego RAID. Podstaw właściwą nazwę RAID.

      vgreduce system /dev/md0

      Wykonaj polecenia i zapisz, co zobaczyłeś i co się zmieniło.

      lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
      pvs
      vgs

      Dla estetyki, ponownie zamontuj /boot na drugim dysku SSD (ssd4) i wykonaj lsblk. W efekcie, na dysku ssd3 nie
      powinno być nic zamontowanego. Starannie sprawdź, że partycja /boot nie jest pusta! ls /boot powinna pokazać
      kilka plików i folderów. Zbadaj, co jest przechowywane w tej sekcji i zapisz, który plikczy katalog za co odpowiada.
      7) usuń dysk ssd3 i dodaj ssd5, hdd1, hdd2 zgodnie z powyżej opisanymi wymaganiami, uzyskując w rezultacie:
      ssd4 — pierwszy nowy ssd
      ssd5 — drugi nowy ssd
      hdd1 — pierwszy nowy hdd
      hdd2 — drugi nowy hdd

      8) Sprawdź, co się stało po dodaniu dysków:

      fdisk -l
      lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

      9) Przywrócimy działanie podstawowej macierzy RAID:

      • wykonaj kopię tabeli partycji, wstawiając odpowiednie dyski:
        sfdisk -d /dev/XXX | sfdisk /dev/YYY
      • Zwróć uwagę, że gdy skopiowaliśmy tabelę partycji ze starego dysku, wydawało się, że nowy rozmiar
        nie wykorzystuje całej pojemności twardego dysku.
        Dlatego wkrótce będziemy musieli zmienić rozmiar tej partycji i rozszerzyć RAID.
        Upewnij się sam, wprowadź polecenie:
        lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

        10) skopiuj partycję rozruchową /boot z dysku ssd4 na ssd5

        dd if=/dev/XXX of=/dev/YYY

        11) Zainstaluj grub na nowym dysku (ssd5)
        12) zmienimy rozmiar drugiej partycji dysku ssd5

        uruchom narzędzie do pracy z partycjami:

        fdisk /dev/XXX

        wprowadź klawisz d, aby usunąć istniejącą partycję (wybierz 2)
        wprowadź klawisz n, aby utworzyć nową partycję
        wprowadź klawisz p, aby wskazać typ partycji jako „podstawowy”
        wprowadź klawisz 2, aby nowa partycja miała drugi numer
        Pierwszy sektor: naciśnij enter, aby zgodzić się z automatycznie obliczonym rozmiarem początku partycji
        Ostatni sektor: naciśnij enter, aby zgodzić się z automatycznie obliczonym rozmiarem końca partycji
        wprowadź klawisz l, aby zobaczyć listę wszystkich możliwych typów partycji i znajdź w niej Linux raid auto
        wprowadź klawisz t, aby zmienić typ utworzonej partycji (2) i wprowadź znaleziony w poprzednim kroku numer.
        wprowadź klawisz w, aby zapisać zmiany na dysku.
        12) ponownie odczytamy tabelę partycji i sprawdzimy wynik

        partx -u /dev/XXX
        lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

        dodamy nowy dysk do obecnej macierzy RAID (nie zapomnij wstawić odpowiednich dysków)

        mdadm --manage /dev/md63 --add /dev/sda2

        Zwiększamy liczbę dysków w naszej macierzy do 2 sztuk:

        mdadm --grow /dev/md63 --raid-devices=2

        Zobacz wynik: mamy oznaczone 2 macierze, ale obie partycje wchodzące w tę macierz mają różne rozmiary

        lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

        13) zwiększymy rozmiar partycji na dysku ssd4

        uruchom narzędzie do pracy z partycjami:

        fdisk /dev/XXX

        wprowadź klawisz d, aby usunąć istniejącą partycję (wybierz 2)
        wprowadź klawisz n, aby utworzyć nową partycję
        wprowadź klawisz p, aby wskazać typ partycji jako „podstawowy”
        wprowadź klawisz 2, aby nowa partycja miała drugi numer
        Pierwszy sektor: naciśnij enter, aby zgodzić się z automatycznie obliczonym rozmiarem początku partycji
        Ostatni sektor: naciśnij enter, aby zgodzić się z automatycznie obliczonym rozmiarem końca partycji
        Na końcu partycjonowania należy wybrać Nie, aby pozostawić identyfikator przynależności partycji do macierzy.
        wprowadź klawisz w, aby zapisać zmiany na dysku.
        12) ponownie odczytamy tabelę partycji i sprawdzimy wynik

        partx -u /dev/XXX
        lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

        zwróć uwagę, że teraz partycje sda2 i sdc2 mają rozmiar > niż rozmiar urządzenia RAID.

        13) Na tym etapie rozmiar RAID można teraz powiększyć

        mdadm --grow /dev/md63 --size=max
        lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT # sprawdź wynik

        Sprawdź lsblk i zapisz, co się zmieniło
        14) Jednak mimo że zmieniliśmy rozmiar RAID, rozmiary vg root, var, log nie zmieniły się

        • sprawdź, jaka jest wartość rozmiaru PV:
          pvs
        • powiększymy rozmiar naszego PV:
          pvresize /dev/md63
        • sprawdź, jaka jest wartość rozmiaru PV:
          pvs

          15) Dodamy nowo dostępne miejsce do VG var, root

          lvs # sprawdź, ile teraz jest przydzielone
          lvextend -l +50%FREE /dev/system/root
          lvextend -l +100%FREE /dev/system/var
          lvs # sprawdź, co się udało

          Na tym etapie zakończyłeś migrację głównego macierzy na nowe dyski. Praca z ssd1, ssd2 została zakończona

          16) Naszym następnym zadaniem jest przeniesienie /var/log na nowe dyski, w tym celu stworzymy nową macierz i LVM na dyskach HDD.

          • sprawdźmy, jakie mają nazwy nowe dyski HDD
            fdisk -l
          • stwórzmy macierz RAID
            mdadm --create /dev/md127 --level=1 --raid-devices=2 /dev/sdc /dev/sdd
          • stwórzmy nowy PV w RAIDzie z dużych dysków
            pvcreate data /dev/md127
          • stwórzmy w tym PV grupę o nazwie data
            vgcreate data /dev/md127
          • stwórzmy logiczny wolumin zajmujący całą dostępną przestrzeń i nazwijmy go var_log
            lvcreate -l 100%FREE -n var_log data # lvs # zobaczmy wynik
          • sformatujemy stworzony wolumin w ext4
            mkfs.ext4 /dev/mapper/data-var_log
          • zobaczmy wynik
            lsblk

            17) Przeniesiemy dane logów ze starej partycji na nową

            tymczasowo zamontujemy nowe miejsce na logi

            mount /dev/mapper/data-var_log /mnt

            wykonamy synchronizację partycji

            apt install rsync
            rsync -avzr /var/log/ /mnt/

            dowiedzmy się, jakie procesy obecnie pracują z /var/log

            apt install lsof
            lsof | grep '/var/log'

            zatrzymujemy te procesy

            systemctl stop rsyslog.service syslog.socket

            wykonamy finalną synchronizację partycji (tych danych, które mogły się zmienić od ostatniej synchronizacji)

            rsync -avzr /var/log/ /mnt/

            zamienimy partycje miejscami

            umount /mnt
            umount /var/log
            mount /dev/mapper/data-var_log /var/log

            sprawdźmy, co się udało

            lsblk

            18) Poprawiamy /etc/fstab
            fstab — plik, w którym zapisane są zasady, według których przy uruchamianiu będą montowane partycje
            naszym zadaniem jest znalezienie linii, w której montowane jest /var/log i poprawienie urządzenia system-log na data-var_log

            19) Najważniejsze na tym etapie — nie zapomnieć zmienić tablicy partycji (ext4, na przykład). Ponieważ niezależnie od tego, jak zmieniamy różne RAID, LVM — dopóki FS na partycji nie zostanie powiadomiona o tym, że rozmiar partycji się zmienił, nie będziemy mogli wykorzystać nowej przestrzeni. Użyj komendy resize2fs do zmiany FS.

            20) Finalny akord

            • Wykonamy restart. Jeśli wszystko zrobiłeś poprawnie — znowu wejdziesz do swojego systemu operacyjnego (to potrzebne, aby upewnić się, że wszystko działa. Ten krok nie ma innego sensu poza samosprawdzaniem)
            • Wykonaj kontrole, aby upewnić się, że wszystko, co chcieliśmy zrobić, naprawdę zostało zrealizowane:
              pvs
              lvs
              vgs
              lsblk
              cat /proc/mdstat

            21) [OPTIONAL] Wykonaj działania

            • Uruchom ponownie, naciskając F12, aby wskazać różne dyski przy rozruchu, aby upewnić się, że możesz uruchomić się
              z dowolnego z dysków SSD, abyśmy nie obawiali się awarii jednego z nich
            • Teraz masz niepotrzebny LV log w VG system. Rozdziel tę przestrzeń między root a var, ale zamiast używać
              konstrukcji 100%FREE podaj rozmiar ręcznie za pomocą klucza -L:
              -L 500M
            • Rozwiąż problem z tym, że /boot znajduje się na dwóch partycjach bez synchronizacji, nie powinno się tak robić;
              Tutaj zostało to dodane jako przykład. Nie zapomnij wcześniej skopiować zawartości /boot.
              • Utwórz nowy RAID i włącz do niego sda1, sda2
              • Włącz te partycje do istniejącego RAIDu i przywróć /boot w głównym RAIDzie, ale nie montując go.

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster