Jak skonfigurować automatyczne aktualizacje Debiana bez interfejsu użytkownika za pomocą funkcji Unattended-Upgrades

Co robi unattended-upgrades na serwerze Debian bez interfejsu graficznego

unattended-upgradesto pakiet Debiana do automatycznego pobierania i instalowania wybranych aktualizacji APT bez konieczności logowania. Na serwerze bezgłowym jest to przydatne do utrzymania bezpieczeństwa, gdy nie ma dostępnej sesji pulpitu i nikt nie jest zobowiązany do apt upgradecodziennego korzystania z niego.

Od października 2026 roku Debian 13 „trixie” jest stabilną wersją Debiana, a unattended-upgradespakietem stabilnym jest wersja 2.12. Pakiet jest przeznaczony do standardowych aktualizacji pakietów, w szczególności aktualizacji bezpieczeństwa i aktualizacji stabilnych. Nie zastępuje on oddzielnego, zaplanowanego procesu aktualizacji z jednej głównej wersji Debiana do innej.

Praktyczny model jest prosty: mechanizm APT okresowo odświeża indeksy pakietów, apt-daily-upgrade.serviceuruchamia program do aktualizacji bez nadzoru zgodnie z harmonogramem, a polityka decyduje, które źródła pakietów są dozwolone. Debian rejestruje wynik w pliku /var/log/unattended-upgrades/.

Szybka lista kontrolna konfiguracji

BramkaZalecane działanie
Zainstaluj aktualizatorsudo apt update && sudo apt install unattended-upgrades
Włącz codzienną pracę okresowąUstaw APT::Periodic::Update-Package-Lists "1";iAPT::Periodic::Unattended-Upgrade "1";
Utrzymuj lokalną politykę w stanie umożliwiającym jej utrzymanieUmieść nadpisania w późniejszym pliku, takim jak52unattended-upgrades-local
Przetestuj zanim na tym polegaszsudo unattended-upgrade --debug --dry-run
Potwierdź harmonogramSprawdź apt-daily.timeriapt-daily-upgrade.timer
Obejrzyj wynikiPrzegląd /var/log/unattended-upgrades/i alerty monitorujące

1. Zainstaluj aktualizacje bez nadzoru

Uruchom instalację z poziomu powłoki administracyjnej:

sudo apt update
sudo apt install unattended-upgrades

Instalację pakietu można bezpiecznie powtórzyć: APT po prostu zgłosi, że pakiet jest już zainstalowany, jeśli host już go posiada. Debian opisuje pakiet jako automatyczny instalator aktualizacji zabezpieczeń i innych aktualizacji wybranych przez politykę.

Terminal Debiana pokazujący aktualizację apt, po której następuje instalacja pakietu unattended-upgrades
Przykładowy widok terminala do instalacji aktualizacji bez nadzoru. Nazwy repozytoriów i liczba pakietów różnią się w zależności od wydania Debiana i hosta.

W przypadku floty nie zakładaj, że każdy obraz ma ten sam domyślny stan. Niektóre instalacje Debiana zawierają już aktualizacje nienadzorowane; inne nie, a istniejąca konfiguracja mogła zostać wyłączona. Po instalacji sprawdź obowiązującą konfigurację, zamiast zakładać, że obecność pakietu oznacza aktywację żądanej polityki.

2. Włącz okresowe odświeżanie listy pakietów i uruchamianie bez nadzoru

W pliku README Debiana podano, że do ręcznej konfiguracji potrzebne są dwie okresowe wartości APT:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Wartość "1"oznacza, że ​​aktywność może być uruchamiana codziennie. Praktyczny fragment lokalny wygląda następująco:

sudo nano /etc/apt/apt.conf.d/20auto-upgrades

Następnie dodaj dwa powyższe wiersze. Możesz sprawdzić scaloną konfigurację APT za pomocą:

apt-config dump | grep -E 'APT::Periodic::(Update-Package-Lists|Unattended-Upgrade)'
Edytor Nano pokazujący okresowe ustawienia APT dla codziennych aktualizacji listy pakietów i uaktualnień bezobsługowych
Okresowe ustawienia APT wymagające codziennego odświeżania listy pakietów i przeprowadzania aktualizacji bez nadzoru.

Nie należy tego interpretować jako obietnicy, że zadanie będzie uruchamiane dokładnie o północy każdego dnia. W systemach Debian opartych na SystemD, APT korzysta z jednostek timera i losowego harmonogramu. W przypadku operacji, należy zweryfikować rzeczywisty stan timera i następny wyzwalacz na hoście, zamiast projektować monitorowanie wokół zgadywanego czasu zegara.

3. Zdefiniuj, które repozytoria mogą automatycznie aktualizować pakiety

Polityka kluczy jest dostępna w Unattended-Upgrade::Origins-Patternstarszej Allowed-Originsformie. Dokumentacja Debiana 2.12 zaleca utworzenie lokalnego fragmentu APT, który sortuje według spakowanego 50unattended-upgradespliku, na przykład:

sudo nano /etc/apt/apt.conf.d/52unattended-upgrades-local

Jest to lepsze niż trwała edycja dostarczonego pliku, ponieważ aktualizacje pakietów mogą zastąpić konfigurację zarządzaną przez dostawcę lub powodować konflikty z nią. Przed zapisaniem wzorców należy sprawdzić metadane wydania, które APT faktycznie widzi:

apt-cache policy

W przypadku większości serwerów bezgłowych konserwatywną polityką jest ograniczenie automatycznych aktualizacji do standardowych stabilnych i bezpiecznych kanałów Debiana. Dokładne wzorce mogą różnić się w zależności od układu repozytorium, serwerów lustrzanych, dostawców zewnętrznych i reguł przypinania, dlatego należy traktować je apt-cache policyjako źródło prawdy w każdym środowisku.

Edytor Nano wyświetla politykę nienadzorowanych aktualizacji Origins i wyłączone automatyczne ponowne uruchamianie
Przykładowy widok edytora zasad. Dopasuj źródła do repozytoriów raportowanych przez zasady apt-cache na serwerze, zamiast kopiować etykiety bezmyślnie.

Opcjonalne elementy sterujące, które warto znać

Konfiguracja 2.12 obsługuje czarne i białe listy pakietów, automatyczne ponowne uruchamianie, raporty pocztowe, usuwanie nieużywanych zależności, limity przepustowości, ograniczenia dotyczące dni aktualizacji oraz dane wyjściowe syslog. Kilka opcji jest szczególnie istotnych na serwerach zdalnych:

Unattended-Upgrade::Automatic-Reboot "false";
Unattended-Upgrade::MailReport "only-on-error";
Unattended-Upgrade::SyslogEnable "true";

Skonfiguruj pocztę tylko wtedy, gdy komputer ma działający transport pocztowy. Jeśli włączysz automatyczne ponowne uruchamianie, domyślne zachowanie Debiana będzie istotne: jeśli parametr Automatic-Rebootma wartość true i /var/run/reboot-requiredistnieje, host może się zrestartować bez potwierdzenia. Możesz ustawić Unattended-Upgrade::Automatic-Reboot-Timeharmonogram ponownego uruchamiania na czas konserwacji.

W przypadku wielu systemów produkcyjnych pozostawienie opcji automatycznego ponownego uruchamiania wyłączonej jest bezpieczniejsze, chyba że usługa jest zbędna, zdefiniowano okna konserwacyjne i zautomatyzowano kontrole stanu systemu po ponownym uruchomieniu.

4. Sprawdź timery systemd i przeprowadź test na sucho

W przypadku standardowej instalacji Debiana opartej na systemd, należy sprawdzić liczniki APT, zamiast szukać wymyślonej unattended-upgrades.timerjednostki:

systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers apt-daily.timer apt-daily-upgrade.timer

apt-daily.timerjest powiązany z rutynową aktywnością pobierania/indeksowania pakietów, podczas gdy apt-daily-upgrade.timeruruchamia ścieżkę usługi uaktualniania/czyszczenia używaną przez nienadzorowane uaktualnienia.

Status terminala Systemd dla apt-daily.timer i apt-daily-upgrade.timer pokazujący zarówno aktywność, jak i oczekiwanie
Status timera Systemd dla codziennych zadań APT. Podane daty mają charakter poglądowy; użyj systemctl list-timers do sprawdzenia faktycznego następnego uruchomienia na hoście.

Następnie przetestuj zasady bez zmiany pakietów:

sudo unattended-upgrade --debug --dry-run

To najprzydatniejsze sprawdzenie przed lotem, ponieważ ocenia rzeczywistą konfigurację APT i rejestruje szczegóły debugowania. Przejrzyj dane wyjściowe pod kątem pakietów, które zostałyby wybrane lub wstrzymane, nieoczekiwanych źródeł zewnętrznych, problemów z zależnościami oraz monitów dotyczących plików konfiguracyjnych.

Jeśli próba nie wykryje niczego, może to być całkowicie normalne, gdy serwer jest aktualny. Sprawdź, czy istnieją oczekujące aktualizacje apt list --upgradable, a następnie porównaj ich źródła i zasady ze skonfigurowanymi wzorcami.

5. Monitoruj nienadzorowane aktualizacje i rozważnie zarządzaj ponownymi uruchomieniami

Pakiet zapisuje swój główny dziennik aktywności i dane wyjściowe programu dpkg w następującym miejscu:

/var/log/unattended-upgrades/unattended-upgrades.log
/var/log/unattended-upgrades/unattended-upgrades-dpkg.log

Przydatne kontrole obejmują:

sudo tail -n 100 /var/log/unattended-upgrades/unattended-upgrades.log
sudo journalctl -u apt-daily-upgrade.service --since "7 days ago"
test -f /var/run/reboot-required && cat /var/run/reboot-required

W przypadku pojedynczego komputera w laboratorium domowym, okresowe przeglądanie logów może być wystarczające. W przypadku systemów biznesowych, należy przesyłać awarie do centralnego monitoringu lub sysloga, aby cichy błąd repozytorium, pełny system plików, uszkodzona zależność lub przerwany stan dpkg nie pozostały niezauważone.

Ustawienia referencyjne dla typowych zasad serwera

ScenariuszPolitykaNotatka operacyjna
Serwer skoncentrowany na bezpieczeństwieZezwól na aktualizacje zabezpieczeń i stabilności Debiana; zachowaj instrukcję ponownego uruchamianiaDobre rozwiązanie domyślne, gdy awaria jest bardziej kosztowna niż opóźniony restart
Węzeł bezstanowy lub redundantnyZezwalaj na aktualizacje i zaplanowane automatyczne ponowne uruchamianiePołącz z kontrolami kondycji i opróżnianiem modułu równoważenia obciążenia
Urządzenie wrażliwe na jądroUżywaj czarnej listy pakietów tylko w przypadku udokumentowanego procesu wyjątkuUmieszczenie na czarnej liście może spowodować, że znane luki w zabezpieczeniach pozostaną niezałatane
Serwer z repozytorium dostawcyNie zezwalaj na pochodzenie dostawcy, dopóki nie zostanie przejrzana jego polityka aktualizacjiNajpierw sprawdź zasady podpisywania, zasady wsparcia i oczekiwania dotyczące wycofania zmian

Krótki przewodnik rozwiązywania problemów

Timer jest aktywny, ale nie zainstalowano żadnych pakietów

Sprawdź, czy istnieją oczekujące aktualizacje, czy pochodzenie repozytorium jest zgodne z dozwoloną polityką i czy czarna lista lub ograniczenie zależności uniemożliwia wybór. Uruchom system sudo unattended-upgrade --debug --dry-runw celu uzyskania dowodów, zamiast zmieniać politykę losowo.

Serwer czeka na konfigurację pakietu

unattended-upgradesma na celu uniknięcie aktualizacji, które wymagałyby nierozwiązanych monitów konfiguracyjnych dpkg. Jeśli pakiet jest wielokrotnie wstrzymywany, sprawdź dziennik i zdecyduj, czy decyzja dotycząca pliku konfiguracyjnego powinna zostać podjęta ręcznie.

Aktualizacje nigdy nie są uruchamiane po sklonowaniu obrazu maszyny wirtualnej

Sprawdź, czy timery są włączone i aktywne, a następnie sprawdź apt-config dump. Obrazy Golden często zawierają lokalne fragmenty APT, maskowanie lub obejścia zasad, które różnią się od domyślnych ustawień pakietu.

Musisz zatrzymać automatyczne aktualizacje

Użyj ścieżki rekonfiguracji obsługiwanej przez Debian:

sudo dpkg-reconfigure -plow unattended-upgrades

Wyłączenie pakietu nie zastępuje normalnego zarządzania poprawkami; powoduje jedynie przeniesienie odpowiedzialności na ręczny lub zewnętrzny proces koordynacji.

Ostateczna lista kontrolna walidacji

  • unattended-upgradesjest instalowany z zaufanego repozytorium Debiana.
  • Włączono okresowe odświeżanie listy pakietów APT oraz nienadzorowaną aktualizację.
  • Polityka lokalna jest zapisywana w późniejszym pliku nadpisującym, takim jak 52unattended-upgrades-local.
  • Dozwolone pochodzenie zostało sprawdzone pod kątem apt-cache policy.
  • apt-daily.timeri apt-daily-upgrade.timersą aktywne.
  • sudo unattended-upgrade --debug --dry-runkończy się bez nieoczekiwanych wyborów lub błędów.
  • Rejestry są monitorowane, a polityka ponownego uruchamiania jest zgodna z modelem konserwacji.
  • Główne uaktualnienia wydań Debiana pozostają odrębną, zaplanowaną procedurą.

Oficjalne referencje

Podczas sprawdzania zachowania konkretnego wydania należy korzystać z dokumentacji Debiana:

Zostaw komentarz

Uruchom Debiana 12 na serwerze VPS z małą ilością pamięci RAM bez awarii pamięci masowej (OOM) powodujących awarię MySQL

Uruchom Debiana 12 na serwerze VPS z małą ilością pamięci RAM bez awarii pamięci masowej (OOM) powodujących awarię MySQL

Zdiagnozuj obciążenie pamięci w systemie Debian 12, dostosuj rozmiar bazy MariaDB lub MySQL, ostrożnie dodaj wymianę i sprawdź, czy Twój VPS jest w stanie obsłużyć obciążenie.

Jak skonfigurować połączenia VPN na pulpicie Pardus Linux

Jak skonfigurować połączenia VPN na pulpicie Pardus Linux

Skonfiguruj połączenia OpenVPN, WireGuard, OpenConnect lub IPsec VPN na komputerze Pardus 25 Desktop, a następnie sprawdź status routingu, DNS i tunelu.

SLES 15 kontra RHEL 9: Porównanie wydajności serwerów korporacyjnych

SLES 15 kontra RHEL 9: Porównanie wydajności serwerów korporacyjnych

Porównaj fakty dotyczące wydajności systemów SLES 15 i RHEL 9, strumienie jądra, profile TuneD, zmienne obciążenia i dowiedz się, jak przeprowadzić sprawiedliwe testy porównawcze obu systemów.

Naprawa serwera SUSE Linux zawieszającego się podczas ponownego uruchomienia i wyłączania systemd

Naprawa serwera SUSE Linux zawieszającego się podczas ponownego uruchomienia i wyłączania systemd

Dowiedz się, jak zdiagnozować i naprawić serwer SUSE Linux, który zawiesza się podczas wyłączania systemd, wyszukując zablokowane zadania, sprawdzając poprzedni rozruch i korygując blokującą usługę lub montowanie.

Jak dostosować panel XFCE w systemie Pardus Linux dla użytkowników systemu Windows

Jak dostosować panel XFCE w systemie Pardus Linux dla użytkowników systemu Windows

Spraw, by Pardus XFCE był dla Ciebie znajomy dzięki dolnemu paskowi zadań, menu aplikacji, ulubionym programom uruchamiającym, przyciskom otwartych okien, zasobnikowi systemowemu i zegarowi. Dowiedz się, co zmienić i jak przetestować układ.

Jak skonfigurować automatyczne aktualizacje Debiana bez interfejsu użytkownika za pomocą funkcji Unattended-Upgrades

Jak skonfigurować automatyczne aktualizacje Debiana bez interfejsu użytkownika za pomocą funkcji Unattended-Upgrades

Konfiguruj aktualizacje bezobsługowe na serwerze Debian bez interfejsu graficznego, weryfikuj liczniki systemd, testuj bezpiecznie, kontroluj ponowne uruchomienia i monitoruj automatyczne aktualizacje zabezpieczeń.

Naprawa braku połączenia konsoli internetowej Cockpit na serwerze SUSE Linux Enterprise

Naprawa braku połączenia konsoli internetowej Cockpit na serwerze SUSE Linux Enterprise

Rozwiąż problemy z Cockpitem na serwerze SUSE Linux Enterprise Server, sprawdzając adres URL HTTPS, gniazdo systemd, zainstalowane pakiety, strefę firewalld, certyfikaty i dzienniki.

Jak przeprowadzić migrację systemu SLES 15 SP5 do SP6 bez przestoju systemu

Jak przeprowadzić migrację systemu SLES 15 SP5 do SP6 bez przestoju systemu

Dowiedz się, jak zachować dostępność usług podczas migracji z systemu SLES 15 SP5 do SP6 dzięki sprawdzonej aktualizacji ciągłej SLE HA, sprawdzeniu węzeł po węźle i wyraźnemu zastrzeżeniu dotyczącym przestoju pojedynczego serwera.

Jak skonfigurować Pi-hole DNS-over-HTTPS na Ubuntu Server 24.04

Jak skonfigurować Pi-hole DNS-over-HTTPS na Ubuntu Server 24.04

Skonfiguruj Pi-hole na Ubuntu Server 24.04 do korzystania z DNS-over-HTTPS z dnscrypt-proxy, a następnie zweryfikuj lokalny serwer nadrzędny i unikaj typowych konfliktów DNS.

Jak naprawić problem z uruchomieniem interfejsu graficznego YaST przez przekierowanie SSH X11

Jak naprawić problem z uruchomieniem interfejsu graficznego YaST przez przekierowanie SSH X11

Rozwiąż problemy z interfejsem graficznym YaST podczas przekierowywania SSH X11. Przetestuj DISPLAY, napraw udokumentowany błąd Qt XIO, sprawdź ustawienia SSH i w razie potrzeby przełącz się na ncurses.