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?