Blog / Baza Wiedzy

Jak aktualizować Ubuntu i Debian: Kompletny przewodnik serwera

3 min czytania
VoxiHost Team
Jak aktualizować Ubuntu i Debian: Kompletny przewodnik serwera

Jeśli wdrożyłeś świeży serwer VPS i nie jesteś pewien co robić najpierw, zaktualizuj go. Brzmi oczywiste, ale zaskakująca liczba serwerów działających na publicznym internecie uruchamia pakiety które nie były dotykane od instalacji systemu. To problem.

Ubuntu i Debian dostarczają solidne domyślne ustawienia, ale "solidne" nie znaczy "bezpieczne na zawsze". Pakiety dostają CVE co tydzień. Jądro jest łatkowane. OpenSSH, OpenSSL, curl, wszystkie z nich miały poważne luki w zabezpieczeniach przez lata które były już naprawione w aktualizacji której większość ludzi nie chciała się zastosować. Więc naprawmy to.

Zanim zaczniemy: jeśli wdrażasz świeży serwer z premium dostawcą jak VoxiHost, system automatycznie uruchamia pełną aktualizację pakietów natychmiast po wdrożeniu przy pierwszym uruchomieniu. Ale gdy twój serwer działa przez jakiś czas, nadal będziesz musiał wiedzieć jak sam go utrzymywać.

Podstawy: apt update i apt upgrade

Zanim zaktualizujesz cokolwiek, odśwież lokalny indeks pakietów. To nie instaluje nic, tylko sprawdza jakie aktualizacje są faktycznie dostępne:

Uruchamianie sudo apt update na Ubuntu lub Debian w celu odświeżenia indeksu pakietów i sprawdzenia dostępnych aktualizacji

sudo apt update

Następnie zainstaluj je:

Uruchamianie sudo apt upgrade -y na Ubuntu lub Debian w celu zainstalowania wszystkich dostępnych aktualizacji pakietów z zaktualizowanego indeksu

sudo apt upgrade -y

To wszystko dla rutynowej konserwacji. Uruchom te dwa, skończone. Flaga -y pomija potwierdzenie, co jest przydatne gdy uruchamiasz to w skrypcie lub po prostu nie chcesz pilnować terminala.

Jedna rzecz warta poznania: apt upgrade nie usunie pakietów ani nie pobierze nowych zależności. Tylko aktualizuje to co jest już zainstalowane. To celowe. Umożliwia bezpieczne uruchomienie na aktywnym serwerze bez martwienia się że coś się zepsuje ponieważ pakiet został zamieniony.

Obsługa zatrzymanych pakietów

Czasami apt upgrade zgłasza że niektóre pakiety zostały zatrzymane ("kept back"). Zwykle dzieje się tak gdy pakiety mają zaktualizowane zależności które jeszcze nie są zainstalowane.

Aby rozwiązać ten problem:

sudo apt full-upgrade -y

To polecenie może instalować nowe pakiety lub usuwać te w konflikcie, aby rozwiązać zależności.

Czyszczenie starych pakietów

Po aktualizacjach, stare pakiety mogą zostać na systemie jako osierocone. apt autoremove usuwa je bezpiecznie:

Uruchamianie sudo apt autoremove -y na Ubuntu lub Debian w celu usunięcia starych pakietów zależności które nie są już potrzebne po aktualizacjach

sudo apt autoremove -y

To polecenie usuwa pakiety które nie są już potrzebne przez żaden inny zainstalowany pakiet.

Sprawdzanie czy wymagany jest restart

Aktualizacje jądra wymagają restartu systemu. Ubuntu i Debian tworzą plik wskaźnika gdy restart jest wymagany:

Sprawdzanie pliku /var/run/reboot-required na Ubuntu w celu określenia czy restart systemu jest wymagany po aktualizacji jądra

cat /var/run/reboot-required

Jeśli ten plik istnieje, musisz zrestartować serwer.

Automatyczne aktualizacje bezpieczeństwa

Dla środowisk produkcyjnych VPS, gdzie nie logujesz się codziennie, zaleca się włączenie automatycznych aktualizacji bezpieczeństwa.

Zainstaluj pakiet unattended-upgrades:

sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades

Skonfiguruj automatyczne aktualizacje:

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

Dodaj te ustawienia:

Unattended-Upgrade::Automatic-Reboot "false"
Unattended-Upgrade::Remove-Unused-Dependencies "true"
Unattended-Upgrade::Automatic-Reboot-WithUsers "true"

Połącz je, pozwól im działać, sprawdź czy restart jest potrzebny, gotowe.

Aktualizacja do nowej wersji głównej (do-release-upgrade)

Jeśli chcesz przejść z Ubuntu 22.04 na 24.04:

Uruchamianie sudo do-release-upgrade na Ubuntu w celu aktualizacji z jednej głównej wersji do następnej, na przykład 22.04 do 24.04

sudo do-release-upgrade

Zrób migawkę przed aktualizacją na środowisku produkcyjnym.

Na co naprawdę zwracać uwagę

Aktualizacje jądra i libc to te które zawsze wymagają restartu. Zmiany plików konfiguracyjnych to te które mogą cię zaskoczyć. Podczas aktualizacji, jeśli pakiet dostarcza nową domyślną konfigurację dla czegoś co dostosowałeś, apt zapyta czy zachować twoją wersję czy zainstalować nową. Czytaj te monitory uważnie.

Regularnie aktualizowane serwery również zawodzą w bardziej przewidywalny sposób. Jeśli coś się zepsuje po aktualizacji, wiesz dokładnie kiedy to się stało i jakie pakiety się zmieniły. Na serwerze który nie był aktualizowany przez 8 miesięcy, debugowanie awarii to znacznie bardziej brudne doświadczenie.

Dla całkowicie utwardzonego serwera, aktualizacje pakietów to tylko krok pierwszy. Rozważ skonfigurowanie Zapory UFW i fail2ban aby aktywnie odrzucać złośliwe tło.

Jeśli chcesz czystego VPS do ćwiczenia tego, nasze plany Budget VPS są wystarczająco tanie że możesz zrobić migawkę, eksperymentować i zniszczyć to bez żadnego stresu.

Języki