Jak korzystać z usługi Livepatch firmy Canonical w systemie Ubuntu

Photo of author

By maciekx

Chcesz automatycznie stosować krytyczne poprawki jądra Linuksa w systemie Ubuntu bez potrzeby ponownego uruchamiania? W tym artykule przedstawimy, jak skorzystać z usługi Livepatch oferowanej przez firmę Canonical.

Czym jest Livepatch i jak działa?

Jak wyjaśnił Dustin Kirkland z Canonical w swoim blogu kilka lat temu, Canonical Livepatch wykorzystuje technologię Kernel Live Patching, która jest wbudowana w standardowe jądro Linuksa. Oficjalna strona Livepatch podkreśla, że korzystają z niej duże korporacje, takie jak AT&T, Cisco i Walmart.

Usługa ta jest dostępna za darmo dla użytkowników prywatnych na maksymalnie trzech komputerach. Kirkland twierdzi, że mogą to być „komputery stacjonarne, serwery, maszyny wirtualne lub instancje w chmurze”. Firmy mają możliwość korzystania z niej na większej liczbie systemów w ramach płatnej subskrypcji Ubuntu Advantage.

Konieczność łatania jądra, a związane z tym utrudnienia

Wprowadzenie poprawek do jądra Linuksa jest nieuniknione. Utrzymanie bezpieczeństwa i aktualności systemu jest kluczowe w dzisiejszym połączonym świecie. Jednak konieczność ponownego uruchamiania komputera, aby wprowadzić poprawki, może być uciążliwa, zwłaszcza gdy komputer pełni jakąkolwiek usługę dla użytkowników. Trudności te potęgują się, gdy zarządzamy wieloma maszynami Ubuntu, co zmusza nas do przeprowadzania aktualizacji jednej po drugiej.

Usługa Canonical Livepatch eliminuje te problemy, umożliwiając stosowanie krytycznych poprawek jądra bez przestojów. Jej konfiguracja jest prosta, zarówno przez interfejs graficzny, jak i wiersz poleceń, co znacznie ułatwia zarządzanie systemem.

Wszystko, co zmniejsza nakłady na konserwację, zwiększa bezpieczeństwo i ogranicza przestoje, jest zdecydowanie korzystne, jednak istnieją pewne zastrzeżenia.

Usługa Livepatch wymaga korzystania z długoterminowych wydań (LTS) Ubuntu, takich jak 16.04 lub 18.04. Najnowsza wersja LTS to 18.04, która będzie przedmiotem dalszych instrukcji.
Wymagana jest wersja 64-bitowa.
Jądro Linuksa musi być w wersji 4.4 lub nowszej.
Potrzebne jest również konto Ubuntu One. Pamiętasz je? Jeżeli nie, możesz założyć darmowe konto.
Korzystanie z Canonical Livepatch jest bezpłatne, ale ograniczone do trzech komputerów na jedno konto Ubuntu One. W przypadku potrzeby zarządzania większą liczbą komputerów, konieczne będzie utworzenie dodatkowych kont.
Jeśli zarządzasz serwerami fizycznymi, wirtualnymi lub chmurowymi, będziesz musiał zostać klientem Ubuntu Advantage.

Rejestracja konta Ubuntu One

Bez względu na to, czy planujesz skonfigurować usługę Livepatch za pomocą interfejsu graficznego (GUI), czy z terminala (CLI), konieczne jest posiadanie konta Ubuntu One. Jest to wymagane, ponieważ działanie Livepatch opiera się na kluczu prywatnym przypisanym do Twojego konta.

W przypadku konfiguracji za pomocą GUI klucz nie będzie widoczny, jednak nadal jest niezbędny do działania usługi, a wszystko odbywa się w tle.
Jeśli wybierzesz terminal, musisz skopiować klucz z przeglądarki i wkleić go w wierszu poleceń.

Jeśli jeszcze nie masz konta Ubuntu One, możesz je założyć całkowicie za darmo.

Włączanie Canonical Livepatch za pomocą GUI

Aby uruchomić graficzny interfejs, naciśnij klawisz „Super”, który znajduje się pomiędzy „Control” a „Alt” w lewym dolnym rogu większości klawiatur. Następnie wyszukaj „livepatch”.

Po znalezieniu ikony Livepatch, kliknij ją lub naciśnij „Enter”.

Pojawi się okno dialogowe „Oprogramowanie i aktualizacje” z zaznaczoną zakładką Livepatch. Kliknij przycisk „Zaloguj się”, pamiętając, że potrzebujesz konta Ubuntu One.

Kliknij przycisk „Zaloguj się / Zarejestruj”.

Wyświetli się okno dialogowe do logowania do konta Ubuntu. Canonical używa terminów „Ubuntu One” i „Single Sign-On” zamiennie, odnosząc się do tego samego systemu. Mimo że termin „Single Sign-On” został zastąpiony przez „Ubuntu One”, stara nazwa wciąż jest używana.

Wprowadź dane swojego konta i kliknij przycisk „Połącz”. Możesz też zarejestrować nowe konto, jeśli jeszcze go nie masz.

Pojawi się prośba o podanie hasła.

Wprowadź swoje hasło i kliknij „Uwierzytelnij”. Okno dialogowe wyświetli adres e-mail powiązany z kontem Ubuntu One, którego używasz.

Upewnij się, że jest poprawny, a następnie kliknij „Kontynuuj”.

Ponownie zostaniesz poproszony o podanie hasła. Po kilku sekundach zakładka Livepatch w oknie „Oprogramowanie i aktualizacje” zaktualizuje się, aby pokazać, że usługa Livepatch jest aktywna.

Nowa ikona tarczy pojawi się w obszarze powiadomień, obok ikon sieci, dźwięku i zasilania. Zielone kółko z haczykiem oznacza, że wszystko działa poprawnie. Kliknij ikonę, aby zobaczyć menu.

Informuje nas, że Livepatch jest włączony i nie ma dostępnych aktualizacji.

Opcja „Ustawienia Livepatch” otworzy okno dialogowe „Oprogramowanie i aktualizacje” na karcie Livepatch.

I to wszystko; usługa jest gotowa do użycia.

Aktywacja Canonical Livepatch z interfejsu CLI

Będziesz potrzebować konta Ubuntu One. Jeśli go nie masz, możesz je stworzyć, co zajmuje tylko chwilę i jest całkowicie darmowe.

Niektóre z poniższych kroków wymagają dostępu do Internetu, więc nie jest to całkowicie metoda oparta tylko na CLI. Zaczynamy od odwiedzenia strony Livepatch Canonical, aby uzyskać nasz klucz.

Wybierz przycisk „Użytkownik Ubuntu” i kliknij „Pobierz swój token Livepatch”.

Wymagana będzie rejestracja na konto Ubuntu One.

Jeśli masz konto, wprowadź swój adres e-mail i zaznacz opcję „Mam konto Ubuntu One, a moje hasło to:”.
Jeżeli nie masz konta, wprowadź adres e-mail i wybierz opcję „Nie mam konta Ubuntu One”. Zostaniesz poprowadzony przez proces zakupu konta.

Po pomyślnym zalogowaniu się na konto Ubuntu One, zobaczysz stronę dotyczącą zarządzania aktualizacjami jądra na żywo, a Twój klucz zostanie wyświetlony.

Pozostaw tę stronę otwartą i otwórz terminal. Użyj poniższego polecenia, aby zainstalować demona Livepatch:

sudo snap install canonical-livepatch

Po zakończeniu instalacji musisz włączyć usługę. Będziesz potrzebować klucza ze strony „Zarządzane aktualizowanie jądra na żywo”.

Skopiuj klucz ze strony, a następnie wklej go do terminala. Podświetl klucz, kliknij prawym przyciskiem myszy i wybierz „Kopiuj” lub użyj „Ctrl + C”.

Wpisz następujące polecenie w terminalu, ale nie naciskaj „Enter”:

sudo canonical-livepatch enable

Następnie dodaj spację, kliknij prawym przyciskiem myszy i wybierz „Wklej”. Możesz także użyć „Ctrl + Shift + V”. Powinieneś zobaczyć wpisane polecenie z dodanym kluczem.

Na maszynie testowej używanej do tego artykułu wyglądało to tak:

Naciśnij „Enter”.

Jeśli wszystko się powiedzie, zobaczysz komunikat potwierdzający z Livepatch, informujący, że komputer został włączony do procesu łatania jądra. Zobaczysz także długi klucz; to jest „token maszyny”.

Oznacza to, że:

Uzyskano klucz Livepatch od Canonical.
Możesz go używać na trzech komputerach, a do tej pory wykorzystałeś go na jednym.
Token maszyny, który został wygenerowany dla tego komputera przy użyciu Twojego klucza, jest wyświetlany w tym komunikacie.

Jeżeli przejdziesz do zakładki Livepatch w oknie dialogowym „Oprogramowanie i aktualizacje”, zobaczysz, że usługa Livepatch jest aktywna.

Sprawdzanie statusu Livepatch

Aby sprawdzić status Livepatch, możesz użyć poniższego polecenia:

sudo canonical-livepatch status

Raport statusu zawiera:

wersja-klienta: wersja oprogramowania Livepatch.
architektura: architektura procesora w komputerze.
cpu-model: typ i model jednostki centralnej (CPU).
ostatnie sprawdzenie: czas i data ostatniego sprawdzenia przez Livepatch dostępności krytycznych aktualizacji jądra.
boot-time: czas ostatniego uruchomienia komputera.
uptime: czas, przez jaki komputer był włączony.

Blok statusu dostarcza informacji o:

kernel: wersja obecnego jądra.
działa: status usługi Livepatch (czy działa, czy nie).
checkstate: czy Livepatch sprawdził dostępność poprawek jądra.
patchState: obecność krytycznych łatek jądra do zastosowania.
wersja: wersja poprawek jądra, które należy zainstalować, jeśli są dostępne.
poprawki: szczegóły zawarte w łatkach jądra.

Wymuszanie aktualizacji Livepatch

Livepatch ma na celu zapewnienie automatycznych aktualizacji, co oznacza, że nie musisz się tym martwić. Cały proces odbywa się w tle. Jednak jeśli chcesz, możesz wymusić Livepatch do sprawdzenia i zastosowania poprawek jądra za pomocą poniższego polecenia:

sudo canonical-livepatch refresh

Livepatch poinformuje o wersji jądra przed i po wymuszeniu aktualizacji. W tym przykładzie nie było dostępnych poprawek do zastosowania.

Mniejsze tarcie, większe bezpieczeństwo

Tarcie związane z bezpieczeństwem to wszelkie niedogodności związane z wdrażaniem, użytkowaniem lub utrzymywaniem funkcji zabezpieczeń. Zbyt duże tarcie może prowadzić do obniżenia poziomu bezpieczeństwa, ponieważ funkcje nie są stosowane ani utrzymywane. Livepatch eliminuje tarcia związane z wprowadzaniem krytycznych aktualizacji jądra, zapewniając optymalne bezpieczeństwo systemu.

To typowy przykład sytuacji „wygrana dla obu stron”.


newsblog.pl