Gdzie się podział CentOS 8?

Strona główna Aktualności
Gdzie się podział CentOS 8? (Pixabay)
Gdzie się podział CentOS 8? (Pixabay)

O autorze

Kilka tygodni temu miała premiera najnowszego wydania systemu Red Hat Enterprise Linux, już w wersji ósmej. To pierwszy nowy Red Hat od czasu przejęcia firmy przez IBM, niewątpliwie jednak przygotowywany o wiele wcześniej. RHEL 8 to „nudny” system. Większość oferowanych przez niego nowości jest dostępna w Fedorze (system oparto o bazę pakietów z Fedory 28) i u dostawców chmurowych już od jakiegoś czasu. Ósemka nadrabia zaległości ofertowe jako produkt do budowania własnych infrastruktur. W pewnych zastosowaniach, Red Hat jest bowiem jedyną dostępną opcją dla serwerów „on-prem”. Noty wydawnicze nie oferują jednak rzeczy porywających dla przeciętnego użytkownika Linuksa. To nie do samo, co np. Ubuntu, które dba o niemal komercyjną oprawę swoich nowych wydań i mocno promuje wszystkie nowe funkcje.

Nowości od Red Hata

Nie znaczy to jednak, że w systemie nie ma nic nowego „niechmurowego”. Oparcie o nową Fedorę pozwala się (wreszcie) cieszyć z nowości z systemd oraz menedżera pakietów dnf. Cieszy też zastąpienie iptables przez nftables i obsługa klasy AF_XDP, omawianej niedawno na Sesji Linuksowej. Jest też nowy LUKS i szablony kryptograficzne. Wystarczająco dużo rzeczy, żeby skłonić mnie do aktualizacji maszyny z Red Hatem 7.6. Zapewne migracja na Ósemki nie czeka mnie zbyt prędko w mojej karierze zawodowej, warto jednak wykorzystać subskrypcję RHN na coś przydatnego i zacząć się uczyć nowego systemu.

Aktualizacja do najnowszej wersji

Red Hat Enterprise Linux wspiera aktualizacje w nieco bardziej wymagający sposób, niż czysta Fedora. O ile w tej drugiej należy dodać klucze i pakiet z definicją nowego wydania, a następnie po prostu zawołać update, to Red Hat nie daje się podejść w taki sposób. Krótko mówiąc, system pilnuje skonfigurowanych źródeł oprogramowania i dopuszcza do repozytoriów z pakietami tylko na podstawie ważnej subskrypcji (umowy z IBM).

Żeby dokonać aktualizacji, należy przestawić subskrypcję na wyższą (albo w ogóle ominąć ten mechanizm, ale nie wdawajmy się w szczegóły). Następnie, należy utworzyć sprawozdanie z możliwości dokonania aktualizacji. Red Hat 7.6 oferuje bardzo sympatyczne i proste narzędzie „leapp”, które sprawdza, czy system spełnia wymagania wstępne do aktualizacji.

Jeżeli nie, możemy dodać „remedium”, w postaci wykluczenia danego wymagania z listy wymagań wstępnych. Pozwoli to wymusić aktualizację. Po pobieżnym zapoznaniu się z dokumentem Release Notes, uruchomiłem narzędzie leapp, by wkrótce potem otrzymać następujący komunikat:

Ograniczenia komercyjnego Red Hata

Otóż not wydawniczych nie należy czytać pobieżnie, a dokładnie i choć w pracy zawsze tak postępuję, to w domu często nie mam na to już chęci. Mój piękny system z wersją 7.6 jest zaszyfrowany i nie da się go zaktualizować do wersji 8. A szyfrowanie LUKS to nie BitLocker: nie da się go na żądanie wyłączyć, zdjąć ani zawiesić Partycja typu „dm” pozostanie partycją dm aż ją sformatujemy jako coś innego, niezaszyfrowanego. Miałem więc do wyboru albo reinstalację bez szyfrowania i update do (również niezaszyfrowanej) wyższej wersji, albo clean install, co niezbyt mi się uśmiechało, albo wygenerowanie kolejnej subskrypcji i instalacja ósemki na maszynie wirtualnej. Ta ostatnia opcja nadwyrężyłaby moje konto RHN. Ale przecież zawsze jest plan B: CentOS!

Darmowe wcielenie RHEL-a: CentOS

CentOS to fajny produkt. Jest to tak naprawdę „odbrandowany” Red Hat Enterprise: wszystkie licencjonowane pakiety, zastrzeżone znaki/grafiki towarowe, narzędzia do interakcji z kontem RHN oraz pozostałe zabawki komercyjne są z niego usuwane, dzięki czemu można za darmo cieszyć się mniej-więcej-red-hatem. Fakt, korporacyjne scenariusze często wymagają znajomości narzędzi Red Hata, ale lepsze obycie z CentOSem, niż jego brak – jeżeli przyjdzie nam pracować z kapeluszowymi Linuksami. Jednakże, polowanie na system CentOS 8 zakończy się niepowodzeniem. System bowiem nie jest jeszcze gotowy.

Wielki nieobecny: brak wersji 8.0

Dlaczego, skoro to rzekomo „prawie to samo, co Red Hat”? Istnieje strona o przygnębiającym tytule „CentOS 8 Rough Status Page”, na której możemy się dowiedzieć o postępach prac nad przygotowaniem wersji opartej o RHEL 8. System źródłowy wydano ponad trzy tygodnie temu (wcześniej dostępne były wersje beta). Jak długo trzeba było czekać na CentOSa 7? Wikipedia, z porażającą dokładnością, informuje nas, że niecały miesiąc. A więc jesteśmy już blisko… chociaż niekoniecznie. Na CentOSa 6 przyszło czekać ponad 8 miesięcy, a patrząc na jeszcze starsze wersje szybko wychodzi na jaw, że nie da się w zasadzie nakreślić żadnej wartościowej prognozy.

Proces wydawniczy CentOS

Można jednak sprawdzić, co zajmuje tyle czasu. Wedle strony raportującej postępy prac, przygotowanie wersji 8 składa się z następujących kroków:

  • Pobranie udostępnionego kodu z repozytorium git
  • Wstępna ewaluacja
  • Opracowanie nowego systemu buildowego
  • Usunięcie brandingu Red Hata
  • Konkurs na artwork
  • Wybór grafiki przewodniej
  • Build Loop 0
  • Build Loop 1
  • Build Loop N
  • Konfiguracja dostarczonego instalatora (Anacondy)
  • Quality Assurance
  • Wydanie RC
  • Wydanie oficjalne

Obecnie działa nowy system buildowy. To bardzo dużo. Skuteczne zapięcie się pod spływające źródła tak, by w przewidywalny i powtarzalny sposób móc budować binaria potrafi być naprawdę wymagające, a bez tego bardzo prędko można utonąć w kodzie. Wie o tym dobrze na przykład opiekun projektu SeaMonkey.

Inżynieria oprogramowania w praktyce

Etapy będące w toku to ewaluacja kodu i opracowanie paczek od-brandowujących. A także najważniejszy etap rozwoju każdego produktu informatycznego, czyli… wybór logo. Zgłoszono już kandydatów na tapetę, w kilku wersjach, zależnych kolorystycznie od pory dnia, podczas której jest wyświetlana. Infrastruktura buildowa przechodzi też obecnie przez bardzo długi proces budowania pierwszych pakietów (Build Loop 1). Na gotową wersję CentOS 8 przyjdzie jednak jeszcze trochę poczekać. Nie udostępniono jeszcze nawet estymowanych czasów ukończenia pozostałych etapów.

Naturalnie, ósmym CentOSem nie zaktualizuję swojej maszyny z zainstalowanym Red Hatem 7. Z względu na zaszyfrowaną LUKSem partycję, będę mógł najwyżej podnieść go do Red Hata 7.7, gdy zostanie wydany. Na szczęście, RHEL 8 (i CentOS 8) działa poprawnie w Hyper-V. To dobra wiadomość, ponieważ Fedora 28 ma problemy z płynną pracą pod Hyper-V, co w świetle bazy RHELa 8 nieco zaskakuje. Być może czas zmierzyć się ponownie z próbą zainstalowania nowej Fedory – ostatnią wersją niesprawiającą problemu jest numerek 27. Być może coś zdążyło się w tej kwestii zmienić.

Już niedługo...

Czekam z niecierpliwością na CentOS 8. Nie polecam go jednak jako system, który miałby być używany jako OS ogólnego przeznaczenia na desktopie/laptopie. Jest on o wiele ciekawszą opcją na serwery, a także dla osób planujących karierę w IT jako administratorzy i wdrożeniowcy. W takich sytuacjach często lepiej jest użyć „Red Hatów”, niż np. Ubuntu, a i wtedy należy się trzymać konserwatywnych wydań, jak właśnie RHEL lub CentOS.

Doskonałym przykładem jest Fedora: rozwój tego systemu w pewnym momencie dość mocno wyprzedził możliwości oferowane przez RHELa 7.x, przez co można było sobie wyrobić nawyki dotyczące programów dnf, systemd i Cockpit, które zupełnie „nie mapowały się” na korporacyjne wydanie systemu. Wielu komponentów po prostu jeszcze w nim brakowało i trzeba było na nie czekać nawet kilka lat. Dlatego nowy CentOS cieszy. Umożliwi korzystanie z wiedzy, która w wielu scenariuszach pozostawała jeszcze „nowoczesną fanaberią”.

© dobreprogramy