Linux - Sicherheitsupdates nur mit apt anzeigen oder aktualisieren

11

Gibt es eine Möglichkeit, Sicherheitsupgrades nur mit apt aufzulisten oder zu installieren?

wenn ich Upgrades aufführe mit:

apt list --upgradable

kann ich auch ohne Kenntnis von Paketen und Bibliotheken sehen, welche Upgrades relevante Sicherheitsupgrades sind .

und gibt es außerdem eine Option, diese nur durch Überspringen anderer anzuwenden, sodass die nicht sicherheitsrelevanten Upgrades beim nächsten Ausführen erneut abgefragt werden apt upgrade?

nath
quelle
1
Sie haben also zwei Fragen: 1. Drucken Sie Sicherheitsupdates, 2. Aktualisieren Sie nur ausgewählte Pakete. Ich weiß, dass die Quellliste 6 Links enthält. Zwei davon sind sicherheitsrelevante Repo-Links. Sie können sehen, welche aktualisierbaren Pakete heruntergeladen werden von jedem Link durch folgenden Befehl: sudo apt upgrade --no-upgrade --assume-no --print-uris
Brian SP2
1
aber über die zweite Frage, anscheinend können Sie ein einzelnes Paket auswählen, das mit dem folgenden Befehl aktualisiert werden soll: sudo apt upgrade - Nur Upgrade <Paketname>, aber das funktioniert bei mir nicht, sorry
Brian SP2

Antworten:

7

aptkann (noch) nicht die Informationen liefern, nach denen Sie suchen. aptitudekann aber, wenn auch etwas verwirrend:

aptitude search '~U ~ODebian' -F "%p %O"|awk '/Debian-Security/ {print $1}'

Dies durchsucht alle aktualisierbaren ( ~U) Pakete aus offiziellen Debian-Repositorys ( ~ODebian) und zeigt deren Paketnamen ( %p) und "Ursprung" ( %O) an. Letzteres zeigt tatsächlich das Repository- Label an , das für die Debian 9-Sicherheitsrepositorys "Debian-Security: 9 / Stable" lautet. Am Ende erhalten Sie eine Liste der aktualisierbaren Paketnamen aus den Sicherheitsrepositorys.

Es gibt verschiedene Möglichkeiten, nur Sicherheitsupgrades zu installieren, von denen jedoch keine ideal ist.

  • aptitudeÜber die Textoberfläche können nur Sicherheitsupgrades angewendet werden, indem Sie einfach zum Header "Sicherheitsupdates" (der der erste sein sollte) scrollen und auf klicken +.

  • Sie können die Liste der oben extrahierten Pakete füttern apt, um die Upgrades zu installieren:

    aptitude search '~U ~ODebian' -F "%p %O" |
    awk '/Debian-Security/ {print $1}' |
    xargs apt-get install --only-upgrade
    

    Dies hat den unglücklichen Nebeneffekt, dass die Markierung "automatisch installiert" bei aktualisierten Paketen gelöscht wird.

  • Sie können Folgendes verwenden unattended-upgrades, dessen Standardaktion darin besteht, nur Sicherheitsupgrades anzuwenden:

    unattended-upgrades -v
    

    Wenn Sie nicht möchten, dass Upgrades automatisch installiert werden, müssen Sie den unattended-upgradestäglichen Cron-Job deaktivieren .

Stephen Kitt
quelle
Die TUI von Aptitude scheint Sicherheitsupdates nicht mehr separat zu präsentieren - seit etwa einem Jahr am 16.04 und derzeit am 18.04. Hat das noch jemand gesehen?
Greg Bell
@ Greg tut es immer noch für mich (auf Debian 10), und ich sehe keine Änderung in Ubuntu, die das beeinflussen würde. Vielleicht werden die Sicherheitsupdates automatisch angewendet, bevor Sie sie sehen können aptitude, z. B. von unattended-upgrades...
Stephen Kitt
Nein, meine unbeaufsichtigten Upgrades beschränken sich nur auf Thunderbird, SSHD und Firefox. Was seltsam ist, ist, dass die Eignungssuche '~ U' viel findet. Ich kann sehen, dass es immer noch an Eignung 0.7.4 arbeitet; Mit der Eignung 0.8.10 wird Ubuntu 18.04 ausgeliefert. Welche Version hast du?
Greg Bell
@ Greg Ich habe 0.8.11 und es zeigt Sicherheitsupdates in ihrem eigenen Abschnitt . Die Anzeige ist konfigurierbar, was hier das Problem sein könnte. Wenn Sie G drücken, welcher Paketgruppierungsmechanismus wird angezeigt? Der Standardwert ist task,status,section(subdirs,passthrough),section(topdir).
Stephen Kitt
Gleicher Gruppierungsmechanismus hier. Und ich hätte die Fähigkeit, sicherzustellen, dass es nicht etwas doofes war, das ich eingestellt hatte.
Greg Bell
5

So zeigen Sie das Sicherheitsupdate an:

apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++'

So wenden Sie nur die Sicherheitsupdates für 1 Paket an:

apt-get install --only-upgrade pckg_name

So wenden Sie nur die Sicherheitsupdates aus der Liste an:

list=$(apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++')
apt-get install --only-upgrade $list
GAD3R
quelle