Ka偶dy kto kiedykolwiek mia艂 do czynienia z serwerem postawionym na linuxie doskonale wie ile potrzeba pracy i wysi艂ku aby wszystkie us艂ugi sieciowe i niesieciowe dzia艂a艂y wg naszych oczekiwa艅. Raz skonfigurowany serwer linuxowy pracuje niezawodnie i stabilnie przez bardzo d艂uuuuuugi czas, tak wi臋c warto po艣wi臋ci膰 od kilku dni do kilku tygodni na jego poprawne skonfigurowanie.
Pierwszego pracuj膮cego dnia 2008 r. w mojej jaskini (czyt. firmowej serwerowni) 聽stan膮艂 nowy serwer (stary nadawa艂 si臋 ju偶 tylko do muzeum). Jednak zanim to nast膮pi艂o niemal偶e przez ca艂y grudzien przy nim grzeba艂em. Routing, maskarada, firewall, konfiguracja interfejs贸w, Samba, Apple Talk, dns, poczta, ssl, httpd, ftpd, bazy danych i ca艂a reszta przer贸偶nych us艂ug sprawi艂y, 偶e konfigi 艣ni艂y mi si臋 po nocach. Do tego dosz艂y jeszcze inne rebusy zwi膮zane bugami w niekt贸rych wersjach softu. Prze偶edzenie w艂os贸w na g艂owie o 50% gwarantowane. Jednak moja praca przynios艂a zamierzone efekty i na dzie艅 dzisiejszy uptime wynosi 188 dni.
Wszystko by by艂o 艂adnie i pi臋knie gdyby nie przyszed艂 do mnie szef i nie oznajmi艂, 偶e mam wybra膰 typowo serwerow膮 maszyne, kt贸ra zajmie miejsce obecnego. Pomy艣la艂em, 偶e ca艂kiem w porz膮dku z jego strony skoro tak dba o mnie :) 聽Po chwili jednak nogi si臋 pode mna ugi臋艂y bo zda艂em sobi臋 sprawe, 偶e jestem na tyle zakopany robot膮, 偶e nie skonfiguruje nowego serwera przez conajmniej p贸艂 roku. A przecie偶 wiemy jacy s膮 szefowie - wszystko chc膮 na wczoraj. Rozwi膮zania by艂 dwa albo w jaki艣 magiczny zrobi臋 klona i przerzuc臋 go na nowy sprz臋t, albo sprowadz臋 sobie do biura wygodn膮 kanap臋, 偶eby czasami si臋 chocia偶 troch臋 przespa膰.
KLONUJEMY DEBIANA
Tak wi臋c ju偶聽wiecie jak膮 podj膮艂em decyzj臋. Teraz pozosta艂o pytanie jak to zrobi膰 i si臋 przy tym nie narobi膰.
1. Klonowa膰 czy instalowa膰?
Pierwszym krokiem jest instalacja Debiana na nowej maszynie. Rodzaj instalacji i wybrane oprogramowanie tak naprawde nie ma znaczenia z tego wzgl臋du, 偶e i tak wybrane oprogramowanie zostanie zast膮pione klonem. Instalk臋 tak naprawde robimy dla GRUB’a czy te偶 innego bootloader’a, kt贸ry uruchomi nasz sklonowany system. Dla zaoszcz臋dzenia czasu warto wybra膰 instalacj臋 podstawow膮.
2. Backup nieunikniony.
Kiedy nasz nowy system si臋 instaluje w tzw. mi臋dzyczasie logujemy si臋聽na nasz pierwowz贸r i tworzymy tar’em archiwa niemal偶e wszystkich katalog贸w znajduj膮cych si臋聽w root’cie, jednak zanim do tego dojdzie dobrze jest uruchomi膰 maszyn臋 w trybie single-user lub wyda膰聽polecenie:
| alpha# init 1 |
Teraz bezpiecznie mo偶na przej艣膰 do archiwizacji ca艂ego systemu:
| alpha# tar -c /bin /home/kajtek/debian_clone/bin.tar alpha# tar -c /dev /home/kajtek/debian_clone/dev.tar … |
Katalogi przeze mnie pomini臋te w procesie klonowania to: /boot /proc /lost+found /tmp i dowi膮zania symboliczne vmlinuz i initrd.img. Je艣li chodzi o /home postanowi艂em si臋 nim zaj膮膰 dopiero po sklonowaniu systemu tyczy si臋聽to r贸wnie偶 partycji, dla kt贸rych wybrali艣my dowolny punkt montowania.
3. Przeprowadzka.
Teraz kiedy ju偶 wszystkie dane s膮 zarchiwizowane nale偶y je przerzuci膰 na nowy serwer. Mo偶na to zrobi膰 w dowolny spos贸b - ftp, smb, afp, dysk zewn臋trzny, cokolwiek. Kiedy ju偶 wszystkie dane ze starego serwera znajd膮 si臋 na nowym trzeba je rozpakowa膰 i nadpisa膰聽istniej膮ce katalogi (r贸wnie偶 z poziomu single-user):
| beta:/home/kajtek# tar -xvvf bin.tar beta:/home/kajtek# cp -r –remove-destination bin/ / … |
UWAGA! zanim nadpiszesz /etc pami臋taj aby skopiowa膰 fstab, kt贸rego nie mo偶na nadpisywa膰 (no chyba, 偶e na obu maszynach posiadasz taki sam schemat partycji).
Powy偶sz膮 czynno艣膰 nale偶y powt贸rzy膰 dla wszystkich *.tar zgranych ze starego serwera. Teraz pozostaje tylko zrestartowa膰 nasz nowy serwer, jednak zanim to zrobisz nie zapomnij przywr贸ci膰 oryginalnego fstab’a, w przeciwnym wypadku nasz Etch nie wystartuje!!!
4. Adaptacja.
Je艣li wszystkie czynno艣ci wykonane zosta艂y prawid艂owo klon powinien uruchomi膰 sie bez problemu.
Grafika
Je艣li posiadasz zainstalowanego GDM i 艣rodowisko graficzne a karty graficzne obu serwer贸w si臋 r贸偶ni膮 wy艣wietli si臋 komunikat, 偶e nale偶y przekonfigurowa膰 Xorg’a. W tym celu wydaj polecenie:
| beta# dpkg-reconfigure -pnormal xserver-xorg … |
… i post臋puj zgodnie z wy艣wietlanymi komunikatami.
interfejsy sieciowe
Kolejnym mo偶liwym problemem mo偶e by膰聽nazewnictwo interfejs贸w sieciowych. Je艣li stary serwer mia艂 dwie inne sieci贸wki ni偶 obecny, to nie zostan膮 one usuni臋te a w systemie b臋dziemy mieli cztery karty sieciowe zamiast dwuch. Eth0 i eth1 to sieci贸wki ze starego serwera fizycznie nieobecne w nowej maszynie. Eth2 i eth3 to aktualne sieci贸wki. Niestety ca艂a konfiguracja serwera opiera si臋聽o eth0 i eth1 wi臋c nale偶y co艣聽z tym zrobi膰 je艣li wszystko ma dzia艂a膰. W tym celu nale偶y przeedytowa膰 plik:
| # nano /etc/udev/rules.d/z25_persistent-net.rules |
Jedyne co nale偶y zrobi膰 to wyhaszowa膰 pierwsze dwie karty sieciowe, a nazwy kolejnych dwuch zmieni膰 na eth0 i eth1
Teraz nale偶y si臋聽ju偶 tylko cieszy膰 swoim nowym klonem Debiana. Jednak niewykluczone, 偶e powstan膮 jeszcze jakie艣 dodatkowe komplikacje. Podejrzewam, 偶e mo偶e pojawi膰 si臋 jeszcze problem z kartami sieciowym. Jak tylko wszystko dok艂adnie sprawdze i co艣 jeszcze wytropie nie omieszkam o tym wspomnie膰.