No właśnie albo z Xen, tyle, że kompletnie nie wiem jak się do tego zabrać. Tzn. aby efekt końcowy był taki, iż system będzie działał na serwerze wirtualnym, a jak się sknoci to będe mógł przywrócić go stanu początkowego (już skonfigurowanego z wszystkim zainstalowanym) poprzez uruchomienie drugiego serwera wirtualnego i podegrania systemu.
To żaden problem. Maszynę wirtualną zgrywasz jako plik (mówiąc w uproszczeniu) na nową maszynę i uruchamiasz. I w zasadzie na tym zaczyna i kończy się cała filozofia.
U mnie dotyczy to zarówno mysql jak i postgresa. Generalnie jeśli chodzi o bazy to polecenie dump struktury i zawartości. Potem sobie odtwarzam, tworząc je na nowo. Mniej eleganckie ale chyba może być
Nie bardzo rozumiem. Nie można z pomocą dump przenieść bazy danych, i na nowym systemie najpierw utworzyć użytkownika i na niego wgrać tą bazę danych?
No mysqldump jest bardzo eleganckie. Pamiętaj o tym, że najlepiej jest wykluczyć pliki baz danych mysql'a z archiwizacji (katalog /var/lib/mysal/*) i robić kopię baz mysqlhotcoppy, albo zatrzymywać usługę mysql'a i wtedy kopiowac te pliki, żeby uniknąć uszkodzenia baz. Jeżeli wykluczysz foldery baz danych (var/lib/mysal/*) z kopiowania, to po przywróceniu nie będziesz miał bazy danych mysql niezbędnej do uruchomienia mysqld i wtedy nie będziesz mógł przywrócić bazy przy użyciu :
Kod: Zaznacz cały
mysql - u user_name -p your_password database_name < file_name.sql
ponieważ nie będzie żadnego użytkownika ani hasła w bazie "mysql", bo tej bazy w ogóle nie będzie.
Jeżeli chodzi o postgresa to nie miałem z nim do czynienia, ale podejrzewam, że ma podobne mechanizmy. Jeżeli jednak nie, to zawsze można zrobić zatrzymanie usługi i skopiowanie chociaż wewnętrznej bazy danych postgresa. Resztę baz można zrobić przez wbudowane narzędzie dump i restore.
A jeśli system stoi na wielu partycjach (/var/, /usr, /home, /dev, /boot)? Tworzysz wtedy archiwa do każdej partycji?
u mnie jest kilka partycji, ale wszystko wrzucam w jedno archiwum. Zawsze możesz wybrać, co chcesz wyodrębnić z archiwum. Zresztą jak zainstalujesz nowy system i zrobisz układ partycji, to przecież pliki przywracane z archiwum trafią jakby na to samo miejsce. Dobrze jest jednak zachować stara wersje /etc/fstab, bo czasami na nowym serwerze masz inaczej nazwane dyski.
A po prostu z płyty nie można?
Wersja sieciowa jest też z płyty

Ona najmniej zajmuje i nie ma konieczności ściągania całych 4GB. I tak instaluje się tylko "system podstawowy" bez żadnych wodotrysków. Jednak odpowiadając na pytanie: oczywiście, że można
Czyli przy instalacji tworze dokładnie takie same partycje jak w systemie pierwotnym i na nich przywracam odpowiednie archiwa.
Linux jest o tyle tolerancyjny, że każdą partycję możesz sobie przenieść gdziekolwiek i potem zamontować. Może taki mały przykład. Kończy Ci się miejsce np na partycji logów /var/log. Podłączasz nowy dysk na USB i go montujesz w /mnt/hdd. Następnie przenosisz logi na niego ze starej partycji. Odmontowujesz /mnt/hdd, odmontowujesz stare /var/log i zamontowujesz sobie dysk USB jako /var/log. Modyfikujesz /etc/fstab, żeby wskazywało na dysk USB i masz na daną chwilę logi wrzucone na inny dysk. Także w tej kwestii układ partycji nie musi być identyczny z tym co było na serwerze wcześniejszym. Należy jednak dopilnować, aby plik /etc/fstab wskazywał prawidłowe partycje.
Przysięgam, że tak robiłem i działa. (dot. mysql)
Działa, kiedy masz pracującego mysql'a. Jeżeli przywrócisz wszystko z archiwum (a w nim nie będzie baz mysql'a z folderu /var/lib/mysql), to serwer mysql sie nie uruchomi.