Konfigurowanie LVM Snapshot jako punktu kopii zapasowej / przywracania w Ubuntu.
Czemu?
Cóż, jak widzę, przy całej użyteczności Linuksa, jego największą wadą jest mieszany sposób instalowania aplikacji. Wszystkie biblioteki DLL przechodzą do jednego katalogu. Wszystkie pliki konfiguracyjne do innego. Pliki binarne są również zestawione. Tak, system Windows działa mniej więcej tak samo, ale z charakterem oprogramowania systemowego / serwerowego zainstalowanego w systemie Linux, ponieważ większość zainstalowanego oprogramowania jest tylko w około 95% dojrzała w danym momencie, co psuje system dwa razy w miesiącu bardzo prawdopodobne ..
Oczywiście możemy wykonać kopię zapasową systemu przed i po każdej instalacji, ale zajmuje to milion lat. Kopie zapasowe systemu (w przeciwieństwie do zwykłej kopii zapasowej danych / plików) wymagają wyłączenia komputera i użycia jakiejś formy rozruchowej płyty CD na żywo oraz nośnika kopii zapasowej. A jeśli dysk jest zapełniony w ponad 15%, wykonanie kopii zapasowej może zająć dużo czasu, nawet w przypadku nowoczesnego sprzętu.
Jak to można zrobić?
Odpowiedzi:
Alternatywa - Migawki LVM - O migawkach LVM możesz przeczytać tutaj: http://www.tutonics.com/2012/12/lvm-guide-part-2-snapshots.html
W skrócie - migawki są sposobem na zamrożenie używanych sektorów na dysku twardym, mówiąc systemowi, aby zapisał dowolną zmianę / usunięcie / dodanie w zarezerwowanej części dysku twardego, zwanej woluminem migawki, tym samym opóźniając decyzję o zachowaniu / odrzuceniu zmian na dysku do pewnego czasu w przyszłości, o ile zapewnia przestrzeń woluminów migawki. Tak więc, gdy zdecydujesz się cofnąć zmiany (lub zachować je), możesz to zrobić za pomocą jednej linii.
Na początku może się to wydawać skomplikowane, ale zapewniam cię, że po pierwszym wysiłku wszystko, czego potrzeba do korzystania z mechanizmu migawki, to tylko 2-wierszowe skrypty (pod warunkiem pobrania!)
Gwarancja - nie udzielamy żadnej gwarancji na poniższe instrukcje. Używaj na własne ryzyko!
W jaki sposób?
Jeśli nie masz wstępnie skonfigurowanej grupy woluminów, prawdopodobnie będziesz musiał zainstalować świeżą, czystą wersję Ubuntu. Następnie trzeba będzie po raz pierwszy włożyć trochę wysiłku w prawidłową konfigurację systemu, ale od tego momentu migawka stanie się łatwa . Mówiąc „bez wysiłku” mam na myśli polecenia jednego linijki, używając wstępnie skonfigurowanych skryptów.
Wyczyścimy dysk twardy! Wykonaj kopię zapasową wszystkiego, co ważne, zanim przejdziesz przez ten etap.
Najpierw usuńmy istniejące partycje:
Utwórz partycję rozruchową i resztę dysku jako drugą partycję
Aby sprawdzić, czy zmiany działały poprawnie, wykonaj:
Powinieneś dostać coś takiego:
Usuń wszystkie poprzednie grupy woluminów / woluminy logiczne:
Wyświetli logiczne woluminy, które możesz mieć w systemie
Jeśli jakakolwiek instalacja woluminowa, która może zakłócać tę instalację, musi zostać usunięta.
Pokaże każdą istniejącą grupę woluminów w systemie
Taki sam jak dla grup woluminów ..
Utwórz grupę woluminów „vgsnap”
Powinny wynikać z:
Utwórz wolumin logiczny
Główny wolumin logiczny, zaczynający się od 100% urządzenia.
To zdejmie 30G dla woluminów wymiany i migawek. Oczywiście - możesz wybrać mniejsze rozmiary dla zamiany / migawki.
I utwórz wolumin wymiany:
Uwaga: pozostawiamy teraz 15 GB nieużywanego miejsca na dysku, zarezerwowane dla przyszłej migawki.
Instalowanie Ubuntu
Zamknij termin i uruchom instalatora.
Wybierz „Użyj LVM ...” (możesz także włączyć szyfrowanie całego dysku - ale go nie testowałem ..)
Wybierz „Coś innego” i naciśnij przycisk Kontynuuj. Na tym etapie znajdziesz przydzielone ilości / dev / mapper / ... woluminów. Niektóre z nich są generowane automatycznie (lvsnap- *) - na razie możesz je zignorować.
Wybierz: / dev / mapper / vgsnap-lvroot volume. Wybierz „ext4” jako format i zamontuj jako „/”
Wybierz: / dev / mapper / vgsnap-lvswap volume i wybierz „swap area”
Jeśli chcesz utworzyć zaszyfrowany dysk (nie mam pojęcia, czy to działałoby z migawkami?), Prawdopodobnie będziesz chciał wybrać / dev / sda2 i zaznaczyć „wolumin do szyfrowania”. Nie przetestowałem tego jednak ...
Uwaga: Nieużywane 15G pozostaje wolne dla woluminu migawki.
Wybierz: partycję / dev / sda1. Sformatuj go jako „ext2” i zamontuj jako „/ boot”
Poniżej - wybierz: partycję / dev / sda1 jako boot
Zainstalować!
Korzystanie z migawki
Poniższe kroki pokażą, jak korzystać z migawki w danym momencie:
Montowanie migawki:
Utwórz wolumin migawki
Utwórz katalog montowania
Zamontuj migawkę jako montaż tylko do odczytu
Migawka jest włączona!
W tym momencie możesz zacząć popsuć system, zainstalować sterowniki beta, a nawet (nie! To po prostu nieodpowiednie).
Od teraz możesz w dowolnym momencie (o ile pozwala na to rozmiar migawki ...) powrócić do poprzedniego stanu lub, jeśli jesteś zadowolony z nowego wyglądu, zachowaj go.
Automatyczne monitorowanie wolnej przestrzeni dyskowej migawki: za pomocą poprawionej wersji skryptu podanej tutaj: http://blog.rimuhosting.com/2012/02/20/cron-script-for-checking-disk-space/ Stworzyłem skrypt monitor_snapshot .
Jak go używać / zainstalować? - Prawie jak w powyższym linku:
Przed uruchomieniem go po raz pierwszy lepiej edytuj zawarte w nim wartości, takie jak adres e-mail (do którego mają być wysyłane powiadomienia itp.). Przy prawidłowej konfiguracji demon cron będzie uruchamiał skrypt co X godzin / dni - zgodnie z decyzją - i powiadomimy Cię, gdy migawka będzie prawie pełna.
Aby przetestować uruchomienie skryptu:
Wyświetli procent (liczbę) wolnego miejsca w migawce.
Ważny! Po zakończeniu testów / instalacji - przywróć lub zachowaj zmiany - i zamontuj migawkę!
Cofanie zmian: (Zobacz skrypt rollback_snapshot , z następującymi instrukcjami, link na końcu dokumentu)
Spowoduje to również umountowanie migawki, ale odrzuci wszelkie zmiany. Ponadto - zobaczysz ostrzeżenie sugerujące, że przywrócenie nastąpi tylko przy następnej aktywacji, więc:
Uwaga: jeśli pominiesz scalanie, zmiany zostaną zatwierdzone po umountowaniu migawki.
Zatwierdzanie zmian - podłączanie migawki: (Zobacz skrypt commit_snapshot , z następującymi instrukcjami - link na końcu dokumentu)
Ponowne montowanie migawki: (Zobacz skrypt remount , z następującymi instrukcjami - link na końcu dokumentu) Prawie jak wcześniej:
Jeśli zapisałeś monitor_snapshot w swoim katalogu domowym, możesz przywrócić go z powrotem:
To wszystko ludzie! Poniższe instrukcje dotyczą tylko osób rezygnujących;)
Odrzucanie woluminu migawki (jeśli nie jest już wymagane)
(Możesz także zmienić rozmiar partycji głównej lub wymiany, aby zająć brakujące 15G zarezerwowane dla wymiany)
Odrzucanie grupy woluminów - Możliwe tylko poprzez usunięcie woluminów grupy woluminów, co prawdopodobnie oznacza usunięcie instalacji systemu operacyjnego. Ale oczywiście nie ma prawdziwej potrzeby usuwania grupy woluminów ...
Aby usunąć grupę woluminów:
Ważna uwaga! - formatowanie / uruchamianie programu fdisk i usuwanie wszystkich partycji NIE spowoduje usunięcia woluminów ani grupy, ponieważ są one zapisane na innej części dysku ... Więc po prostu skorzystaj z instrukcji usuwania podanych powyżej i usuń woluminy i grupę, jeśli to konieczne.
źródło
Tworzenie współdziałania do tworzenia kopii zapasowych przy użyciu
lvcreate -s -L <size> -n <snapshot_name> <volume_name>
Tutaj nazwa woluminu to nazwa woluminu, którego migawkę chcesz wykonać. Aby uzyskać więcej informacji, możesz również przejść przez ten samouczek
źródło