Ubuntu är ett av de mest populära Linux-baserade operativsystemen, flitigt använt i servrar, stationära datorer och inbäddade enheter. Det erbjuder ett stort bibliotek av mjukvarupaket och verktyg som användare kan installera och konfigurera för att möta deras behov. Det kan dock vara svårt att hålla ditt system uppdaterat och säkert med många paket och uppdateringar. Det är där paketet för obevakade uppgraderingar kommer in. I den här artikeln kommer vi att förklara vad paketet för oövervakade uppgraderingar är, dess fördelar och funktioner och guidar dig genom att ställa in och konfigurera oövervakade uppgraderingar på Ubuntu 24.04, 22.04 eller 20.04 LTS-versioner med hjälp av kommandoradsterminal.
Vad är ett oövervakat uppgraderingspaket?
Unattended Upgrades är ett paket som automatiserar installation av säkerhet och andra uppdateringar på Ubuntu-system. Den körs tyst i bakgrunden och letar regelbundet efter nya uppdateringar, laddar ner och installerar dem automatiskt utan användarens inblandning. Paketet Unattended Upgrades är ett viktigt verktyg som säkerställer systemets säkerhet och stabilitet genom att hålla det uppdaterat med de senaste uppdateringarna och korrigeringarna.
Fördelar och funktioner med installation av obevakade uppgraderingar:
Här är några fördelar och funktioner med Unattended Upgrades Package på Ubuntu:
- Automatiserade uppdateringar: Unattended Upgrades Package automatiserar nedladdning och installation av uppdateringar, vilket sparar tid och ansträngning för användare.
- Förbättrad säkerhet: Paketet säkerställer att systemet alltid är uppdaterat med de senaste säkerhetsuppdateringarna och korrigeringarna, vilket minskar risken för malwareattacker och systemsårbarheter.
- Förbättrad stabilitet: Unattended Upgrades Package säkerställer stabiliteten och tillförlitligheten hos systemet genom att hålla det uppdaterat.
- Anpassningsbara inställningar: Användare kan anpassa paketinställningarna efter deras behov, till exempel vilka uppdateringar som ska installeras automatiskt, vilka som ska ignoreras och när de ska installeras.
- Aviseringssystem: Paketet skickar meddelanden till användare om de uppdateringar som har installerats, vilket ger transparens och kontroll över systemuppdateringar.
Uppdatera Ubuntu
Innan du installerar och ställer in Unattended Upgrades Package bör du uppdatera ditt Ubuntu-system för att undvika konflikter. För att uppdatera ditt Ubuntu-system, öppna terminalen och skriv in följande kommando:
sudo apt update && sudo apt upgrade
Detta kommando kommer att uppdatera alla installerade paket och deras beroenden till de senaste versionerna. Beroende på antalet tillgängliga uppdateringar för ditt system kan det ta ett tag.
Installera Unattended-Upgrades Package
För att installera Unattended Upgrades Package, öppna terminalen och skriv in följande kommando:
sudo apt install unattended-upgrades
Detta kommando kommer att installera paketet och alla dess beroenden på ditt Ubuntu-system. Paketet ska vara installerat som standard. Men om du har tagit bort det, använd kommandot ovan för att installera om det.
Du måste också installera paketet apt-config-auto-update om du vill att ditt Ubuntu-system ska starta om efter att ha tillämpat uppgraderingar som kräver att systemet startas om automatiskt. Använd följande kommando för att installera det:
sudo apt install apt-config-auto-update
Det rekommenderas också att användare av bärbara datorer installerar powermgmt-base-paketet för att använda oövervakade batterialternativ. För att installera det här paketet, öppna terminalen och skriv in följande kommando:
sudo apt install powermgmt-base
När paketet är installerat måste du konfigurera det för att uppfylla dina behov. Du kanske till exempel vill anpassa vilka uppdateringar som ska installeras automatiskt, vilka som ska ignoreras och när de ska installeras. Observera att Unattended Upgrades Package kräver root-privilegier för att köras. Därför måste du köra alla kommandon som nämns i den här guiden med sudo-kommandot.
Det rekommenderas också att verifiera att Unattended Upgrades Package fungerar korrekt. För att göra detta, öppna terminalen och skriv in följande kommando:
sudo unattended-upgrades --dry-run --debug
Det är viktigt att vara bekant med systemctl-kommandona för obevakade uppgraderingar, eftersom du kan behöva kontrollera status efter att ha gjort ändringar eller startat om. För att kontrollera statusen för obevakade uppgraderingar, använd följande kommando:
systemctl status unattended-upgrades
Följande systemctl-kommandon låter dig starta, stoppa, aktivera vid uppstart, inaktivera vid uppstart eller starta om tjänsten Unattended Upgrades:
Starta de obevakade tjänsterna:
sudo systemctl start unattended-upgrades
Stoppa de obevakade tjänsterna:
sudo systemctl stop unattended-upgrades
Aktivera de obevakade tjänsterna vid uppstart:
sudo systemctl enable unattended-upgrades
Inaktivera vid uppstart de obevakade tjänsterna:
sudo systemctl disable unattended-upgrades
Starta om de obevakade tjänsterna:
sudo systemctl restart unattended-upgrades
Konfigurera obevakade uppgraderingar
Det här avsnittet tar upp konfiguration av paketinställningarna för obevakade uppgraderingar i konfigurationsfilen med hjälp av terminalkommandon. Det är viktigt att notera att dessa inställningar är valfria och kan anpassas efter dina krav. Varje inställning kommer att förklaras i detalj för att hjälpa dig förstå dess syfte och funktion. Detta gör att du kan fatta välgrundade beslut när du konfigurerar paketet Unattended Upgrades på ditt Ubuntu-system.
Innan du går in i konfigurationsfilen, först, här är en sammanfattning av alla CLI-alternativ för paketet Unattended Upgrades med förklaringar:
Alternativ | Beskrivning |
---|---|
-h, -hjälp | Visar hjälpmeddelandet och avslutar |
-d, –felsöka | Aktiverar felsökningsmeddelanden |
–apt-debug | Gör att apt/libapt skriver ut omfattande felsökningsmeddelanden |
-v, –verbose | Aktiverar infomeddelanden |
-torrkörning | Simulerar uppgraderingsprocessen och nedladdningar men installerar inte |
– endast nedladdning | Laddar bara ned uppgraderingar; försök inte installera dem |
–minimala-uppgraderingssteg | Uppgraderar paket i minimala steg (och tillåter avbrott med SIGTERM) – detta är standardbeteendet |
–inga-minimala-uppgraderingssteg | Uppgraderar alla paket tillsammans istället för i mindre uppsättningar |
Dessa alternativ kan användas när du kör kommandot obevakad uppgradering i terminalen för att kontrollera beteendet för den automatiska uppgraderingsprocessen. Till exempel kan alternativet –dry-run hjälpa till att testa uppgraderingsprocessen utan att faktiskt göra några ändringar i systemet, medan alternativet –download-only kan användas för att ladda ner uppgraderingarna utan att installera dem.
Alternativet –minimal-upgrade-steps är standardbeteendet för obevakade uppgraderingar, medan alternativet –no-minimal-upgrade-steps uppgraderar alla paket tillsammans istället för i mindre uppsättningar. Att förstå dessa alternativ när du konfigurerar obevakade uppgraderingar är viktigt för att säkerställa att beteendet matchar dina preferenser och krav.
Redigera konfigurationsfilen
För att redigera konfigurationsfilen rekommenderas det att använda en textredigerare med root-behörighet, till exempel nano. För att öppna filen med nano, kör följande kommando:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
Detta öppnar konfigurationsfilen i nanoredigeraren. Härifrån kan du ändra de olika alternativen som anges ovan. Kom ihåg att ta bort eventuella kommentarer (rader som börjar med "//" eller "#") i filen för att aktivera alternativen.
När du är klar med att redigera filen, spara och avsluta genom att trycka på "Ctrl+X", sedan "Y" och sedan "Enter".
Tillåtna ursprung
Det här alternativet anger källorna från vilka uppdateringar ska installeras. Som standard är endast säkerhets- och uppdateringsarkiven tillåtna. Du kan lägga till ytterligare arkiv till listan genom att avkommentera det här alternativet och lägga till önskade arkiv, som visas i exemplet nedan:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
"${distro_id}:${distro_codename}-updates";
"${distro_id}:${distro_codename}-proposed";
"${distro_id}:${distro_codename}-backports";
};
Paketsvartlista
Det här alternativet låter dig ange paket som ska uteslutas från automatiska uppdateringar. För att utesluta paket, avkommenterar du det här alternativet och lägger till önskade paket som visas i exemplet nedan:
Unattended-Upgrade::Package-Blacklist {
"my-package";
"my-other-package";
};
AutoFixInterruptedDpkg
Det här alternativet avgör om systemet automatiskt ska åtgärda avbrutna "dpkg"-installationer. För att aktivera automatisk fixering, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::AutoFixInterruptedDpkg "true";
DevRelease "auto"
Det här alternativet anger om du ska uppgradera till utvecklingsversionen automatiskt. Som standard är det här alternativet inaktiverat. För att aktivera automatiska uppgraderingar av utvecklingsversionen, ställ in värdet på "auto" som visas i exemplet nedan:
Unattended-Upgrade::DevRelease "auto";
MinimalSteps "sant"
Det här alternativet anger om minimala steg ska utföras under uppgraderingar. Som standard är det här alternativet aktiverat. För att inaktivera minimala steg, ställ in värdet på "false" som visas i exemplet nedan:
Unattended-Upgrade::MinimalSteps "false";
InstallOnShutdown "false"
Det här alternativet anger om uppgraderingar ska installeras vid avstängning. Som standard är det här alternativet inaktiverat. För att aktivera installation vid avstängning, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::InstallOnShutdown "true";
Post
Det här alternativet anger e-postadressen som meddelanden ska skickas till. Som standard skickas inte aviseringar. För att ange en e-postadress, lägg till den som ett strängvärde enligt exemplet nedan:
Unattended-Upgrade::Mail "example@mail.com";
MailReport "on-change"
Det här alternativet anger när e-postmeddelanden ska skickas. Som standard skickas aviseringar endast när det sker en förändring. För att skicka aviseringar varje gång, ställ in värdet på "vid start" som visas i exemplet nedan:
Unattended-Upgrade::MailReport "on-start";
Ta bort-oanvända-kärna-paket
Det här alternativet anger om oanvända kärnpaket ska tas bort efter en uppgradering. Som standard är det här alternativet aktiverat. För att inaktivera borttagning av oanvända kärnpaket, ställ in värdet på "false" som visas i exemplet nedan:
Unattended-Upgrade::Remove-Unused-Kernel-Packages "false";
Ta bort-nya-oanvända-beroenden
Den här inställningen styr att ta bort nya beroenden som systemet inte längre kräver efter paketuppgraderingar. Den här inställningen är aktiverad som standard och alla nya beroenden som inte längre behövs tas automatiskt bort från ditt system. För att aktivera den här inställningen, använd följande kommando:
Unattended-Upgrade::Remove-New-Unused-Dependencies "true";
Om du föredrar att behålla dessa nya beroenden kan du inaktivera den här inställningen genom att ändra värdet till "false". Var dock medveten om att detta kan leda till att oanvända beroenden samlas på ditt system och tar upp värdefullt diskutrymme.
Ta bort-oanvända-beroenden
Det här alternativet anger om oanvända beroenden ska tas bort efter en uppgradering. Som standard är det här alternativet inaktiverat. För att aktivera borttagning av oanvända beroenden, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Automatisk-Starta om
Det här alternativet anger om systemet ska startas om automatiskt efter en uppgradering. Som standard är det här alternativet inaktiverat. För att aktivera automatisk omstart, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::Automatic-Reboot "true";
Automatisk-Reboot-WithUsers
Det här alternativet anger om systemet ska startas om när användare är inloggade automatiskt. Som standard är det här alternativet aktiverat. För att inaktivera automatisk omstart när användare är inloggade, ställ in värdet på "false" som visas i exemplet nedan:
Unattended-Upgrade::Automatic-Reboot-WithUsers "false";
Automatisk-Omstart-tid
Det här alternativet anger när systemet automatiskt ska starta om efter en uppgradering. Som standard är detta alternativ inställt på "02:00". För att ändra omstartstiden, ändra värdet enligt exemplet nedan:
Unattended-Upgrade::Automatic-Reboot-Time "03:00";
Skaffa::http::Dl-Limit
Det här alternativet anger den maximala nedladdningshastigheten för paketnedladdningar i kilobyte per sekund. Som standard är det här alternativet inaktiverat. För att aktivera nedladdningshastighetsbegränsning, ställ in värdet på önskad hastighet enligt exemplet nedan:
Acquire::http::Dl-Limit "100";
SyslogEnable
Det här alternativet anger om uppgraderingshändelser ska loggas till systemloggen. Som standard är det här alternativet aktiverat. För att inaktivera loggning, ställ in värdet på "false" som visas i exemplet nedan:
Unattended-Upgrade::SyslogEnable "false";
SyslogFacility
Det här alternativet anger anläggningen till vilken uppgraderingshändelser ska loggas. Som standard loggas händelser till "daemon"-funktionen. För att logga händelser till en annan anläggning, ändra värdet enligt exemplet nedan:
Unattended-Upgrade::SyslogFacility "local7";
OnlyOnACPower
Detta alternativ anger om uppgraderingar endast ska utföras när systemet är anslutet till nätström. Som standard är det här alternativet inaktiverat. För att aktivera uppgraderingar endast på växelström, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::SyslogFacility "local7";
Skip-Updates-On-Metered-Connections
Det här alternativet anger om uppdateringar ska hoppa över när systemet är anslutet till en uppmätt anslutning. Som standard är det här alternativet aktiverat. För att ladda ner uppdateringar på uppmätta anslutningar, ställ in värdet på "false" som visas i exemplet nedan:
Unattended-Upgrade::Skip-Updates-On-Metered-Connections "false";
Mångordig
Det här alternativet anger om utförlig uppgraderingsinformation ska matas ut. Som standard är det här alternativet inaktiverat. För att aktivera utförlig utdata, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::Verbose "true";
Felsökning
Det här alternativet anger om felsökningsinformation ska matas ut under uppgraderingar. Som standard är det här alternativet inaktiverat. För att aktivera felsökningsutdata, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::Debug "true";
Tillåt nedgradering
Det här alternativet anger om nedgraderingar av paket ska tillåtas under uppgraderingar. Som standard är det här alternativet inaktiverat. För att tillåta nedgraderingar, ställ in värdet på "true" som visas i exemplet nedan:
Unattended-Upgrade::Allow-downgrade "true";
Kom ihåg att det kan vara farligt att tillåta nedgraderingar och leda till systeminstabilitet eller säkerhetsbrister. Det rekommenderas att du aktiverar det här alternativet endast när det är nödvändigt och noga överväger riskerna.
Testa och tillämpa ändringar
Efter att ha gjort några ändringar i konfigurationsfilen är det viktigt att köra följande kommando för att säkerställa att ändringarna tillämpas:
sudo unattended-upgrades --dry-run --debug
Det här kommandot simulerar en uppgraderingskörning och visar eventuella fel eller varningar som kan uppstå på grund av ändringarna du gjort i konfigurationsfilen. Om allt ser bra ut kan du sedan köra kommandot nedan för att utföra själva uppgraderingen:
sudo unattended-upgrades
Detta kommando kommer automatiskt att kontrollera och installera tillgängliga uppgraderingar baserat på konfigurationsinställningarna.
Med stegen ovan bör du bättre förstå hur du konfigurerar och modifierar paketet Unattended-Upgrades på ditt Ubuntu-system.
Schemalägga automatiska uppgraderingar med ett Cron-jobb
För att schemalägga automatiska obevakade uppgraderingar på ditt Ubuntu-system kan du använda ett cron-jobb. Ett cron-jobb är en tidsbaserad uppgiftsschemaläggare i Linux som låter dig köra kommandon eller skript automatiskt vid angivna tider eller intervall.
För att skapa ett cron-jobb för obevakade uppgraderingar, följ stegen nedan:
Öppna crontab-konfigurationsfilen genom att köra följande kommando:
sudo crontab -e
Detta öppnar crontab-filen i nanoredigeraren. Lägg till följande rad längst ner i filen:
0 0 * * * /usr/bin/unattended-upgrade -d
Den här raden anger att kommandot oövervakad uppgradering ska köras dagligen vid midnatt (0 0 * * *). Spara och avsluta filen genom att trycka på "Ctrl+X", sedan "Y" och sedan "Enter".
Ovanstående cron-jobb kommer att köra kommandot obevakad uppgradering dagligen vid midnatt, leta efter tillgängliga uppgraderingar och installera dem automatiskt baserat på konfigurationsinställningarna.
Du bör endast schemalägga automatiska uppgraderingar när ditt system inte används, eftersom uppgraderingar kan kräva en omstart eller orsaka att applikationer startar om.
Kontrollera obevakade uppgraderingsloggar
Paketet Unattended-Upgrades loggar som standard all uppgraderingsaktivitet till syslog-funktionen. Loggarna finns i filen /var/log/syslog och andra systemloggar.
För att kontrollera loggarna för obevakade uppgraderingar kan du använda följande kommando:
sudo grep unattended-upgrades /var/log/syslog
Detta kommando kommer att söka i syslog-filen efter poster som innehåller nyckelordet "oövervakade uppgraderingar" och visa dem på skärmen. Du kan också använda följande kommando för att visa de senaste 50 posterna i syslog-filen:
sudo tail -n 50 /var/log/syslog | grep unattended-upgrades
Detta kommando kommer att visa de senaste 50 posterna i syslog-filen som innehåller nyckelordet "oövervakade uppgraderingar".
Förutom ovanstående kommandon kan du använda olika grep-alternativ för att filtrera loggarna baserat på specifika kriterier. Till exempel, för att filtrera loggarna efter datum och tid, kan du använda följande kommando:
sudo grep "unattended-upgrades.*YYYY-MM-DD" /var/log/syslog
Ersätt "ÅÅÅÅ-MM-DD" med önskat datum i formatet år-månad-dag. Detta kommando visar alla loggposter som innehåller nyckelordet "oövervakade uppgraderingar" och matchar det angivna datumet.
Du kan också använda följande kommando för att filtrera loggarna efter paketnamn:
sudo grep "unattended-upgrades.*<package_name>" /var/log/syslog
Byta ut " ” med paketnamnet du vill söka efter. Detta kommando visar alla loggposter som innehåller nyckelordet "oövervakade uppgraderingar" och matchar det angivna paketnamnet.
Med ovanstående kommandon kan du enkelt kontrollera och filtrera loggarna för obevakade uppgraderingar på ditt Ubuntu-system och felsöka eventuella problem som kan uppstå under uppgraderingsprocessen.
Slutsats
Sammanfattningsvis kan att ställa in och konfigurera obevakade uppgraderingar på ditt Ubuntu-system avsevärt förbättra dess säkerhet och stabilitet. Genom att automatiskt installera säkerhetsuppdateringar och patchar kan du säkerställa att ditt system alltid är uppdaterat med de senaste säkerhetskorrigeringarna utan att manuellt söka efter uppdateringar och installera dem.
Tyvärr, efter installation av Ubuntu 24.04 LTS, har min upplösning återställts till 800 x 600, och jag kan inte ändra tillbaka den.
Hej, det är ett stavfel på den här raden, aktivera saknar L. Tack för guiden!
Aktivera de obevakade tjänsterna vid uppstart:
sudo systemctl möjliggör obevakade uppgraderingar
Tack, stavfel är åtgärdat.