Administrowałem do tej pory głównie darmowymi distro, ale gdzieś tam ukradkiem wkradło się kilka “siusiaków” (aka SUSE Linux Enterprise Server). Żyłem w utopijnym przekonaniu że skoro się za nie płaci to powinno się z nimi łatwiej współpracować… w przypadku instalacji aktualizacji (a w szczególności SP) nie było to aż takie proste.
Przywykłem w darmowych dystrybucjach że gdy pojawiała się nowszą “większa wersja” to po prostu można było jednym poleceniem zaktualizować wszystkie pakiety. Źródła aktualizowały się automatycznie (lub prawie automatycznie) - później trzeba było połatać ewentualne zmiany w plikach konfiguracyjnych. W SUSE jest ciut inaczej… 😉
Instalacja SP1 na SLES’ie 11
Instrukcja jest dla SLES’a jedenastki (o ile pamiętam dziesiątkę aktualizowało się inaczej) i Service Pack’a 1 - ale powinna zadziałać również w przypadku każdego kolejnego SP. Zaczynamy!
Z root’a uruchamiamy polecenia:
zypper ref -s
zypper up -t patch
zypper up -t patch
(Nie pomyliłem się - drugie polecenie należy uruchomić dwa razy - SIC!)
Pierwsze polecenie odświeży informacje o dostępnych usługach i repozytoriach.
Drugie polecenie zainstaluje aktualizacje dla programów zarządzających paczkami w systemi, a kolejne wywołanie powinno zainstalować pozostałe dostępne aktualizacje. Podwójne wywołanie zypper up -t patch znajduje się w oficjalnej instrukcji - w nieoficjalnej znalezionej w sieci proponowano by uruchamiać to polecenie do puki nie będzie miało już nic więcej do zaktualizowania.
Po wydaniu powyższych poleceń, w systemie (a dokładnie w plikach /etc/products.d/*.prod) powinny pojawić się informacje o dostępnych pakietach narzędzi migracyjnych. By je wylistować należy wydać polecenie:
grep '<product>' /etc/products.d/*.prod
U mnie dało to taki wynik:
<product>sle-sdk-SP1-migration</product>
<product>SUSE_SLES-SP1-migration</product>
Jeżeli u Ciebie to polecenie nic nie zwróciło tzn. że nie ma dostępnych aktualizacji lub że zbyt mało razy uruchomiono zypper up -t patch 😃
Powyższe “produkty” - należy zainstalować poleceniem:
zypper in -t product sle-sdk-SP1-migration SUSE_SLES-SP1-migration
Aby zaktualizować system musimy mieć dostęp do podstawowego repozytorium z nowszymi wersjami pakietów - uzyskamy go rejestrując się:
suse_register -d 2 -L /root/.suse_register.log
Jeżeli nie zapomnieliśmy o przedłużeniu licencji i rejestracja przebiegła pomyślnie to możemy odświeżyć zawartość nowych repozytoriów i usług:
zypper ref -s
Teraz wylistujmy dostępne repozytoria, poleceniem:
zypper lr
BARDZO WAŻNE: musimy wyłączyć stare repozytoria (dla systemu bez SP) i włączyć nowe repozytoria dla systemu z SP1 - jeżeli tylko włączymy nowe repozytoria to po kolejnej aktualizacji systemu mogą zainstalować się paczki w starszych wersjach rozwalając system! Sprawdzałem osobiście i rzeczywiście tak jest 😃
Włączanie/wyłączanie repozytoriów umożliwiają polecenia:
zypper mr -disable repozytorium_do_wylaczenia
zypper mr -enable repozytorium_do_wlaczenia
Dopiero teraz system jest gotowy do aktualizacji, którą przeprowadzamy poleceniem (jeżeli instalujemy zdalnie warto odpalić je spod screen‘a):
zypper dup
Zypper zapyta czy chcemy usunąć zainstalowane wcześniej “produkty migracyjne” i zaktualizować pozostałe pakiety - należy potwierdzić (oczywiście jeśli jesteśmy absolutnie pewni i mamy backup 😃 ).
ZNÓW WAŻNE: po zakończonej aktualizacji należy ponownie zarejestrować siusiaka aby usunąć repozytoria z aktualizacjami dla czystej wersji 11 i zastąpić je repami dla wersji z SP 1:
suse_register -d 2 -L /root/.suse_register.log
Teraz możemy zrestartować system by przeładowało się jajko i wszystkie usługi - jeżeli wszystko poszło po naszej myśli to powita nas SLES 11 SP 1.
Prawda że proste a cały proces wręcz oczywisty?