Wie erhalte ich eine Liste aller ausstehenden Sicherheitsupdates?


13

Ich muss Liste (Zähl- oder installieren nicht) alle anstehenden Sicherheitsupdates auf einem Ubuntu 14.04 - System. Ich habe den Beitrag Wie erstelle ich mit apt-get eine Liste mit Sicherheitsupdates? und seine akzeptierte Antwort ( apt-show-versions | grep upgradeable | grep security) gibt mir tatsächlich eine Liste.

Dieser Befehl listet jedoch 62 ausstehende Sicherheitsupdates auf. /usr/lib/update-notifier/apt-checkteilt mir mit, dass 75 Sicherheitsupdates anstehen, ich aber keine Möglichkeit habe, sie aufzulisten. Wie kann ich diese beiden Zahlen in Einklang bringen? Tut einer der beiden Befehle etwas anderes als ich will?

Antworten:


7

Wenn Sie dies nur einmal schnell erledigen möchten, anstatt ein separates Repository zu erstellen und einige Automatisierungsschritte durchzuführen. Großartig, wenn Sie keine Änderungen vornehmen sollen, während Sie ein System prüfen oder was auch immer.

Diese beiden Befehle werden die Liste ausspucken. Pipe zu wc -l, um zu sehen, wie viele dahinter sind. ;-)

grep security /etc/apt/sources.list > /tmp/security.list
sudo apt-get upgrade -oDir::Etc::Sourcelist=/tmp/security.list -oDir::Etc::SourceParts=/some/valid/dir/false -s

Gilt weiterhin für ältere Distributionen oder wenn Sie Update-Repos deaktiviert haben, aber die Sicherheit aktiviert ist:

sudo apt-get upgrade -s| grep ^Inst |grep Security 

warum schreibst du " Immer noch gültig für ältere Distributionen oder wenn du Update-Repos ausgeschaltet, aber die Sicherheit eingeschaltet hast "? Wenn die Pipe-Lösung nicht funktioniert, fügen Sie möglicherweise die Option -V( -verbose-versions) hinzu.
myrdd

@myrdd Weil die erste Version Funktionen verwendet, die für Distros, die 2016 außer Mode waren, nicht verfügbar waren. Könnte keine Sache mehr sein.
Flickerfly

also sollte die letztere lösung immer funktionieren, nein?
Myrd

1
@myrdd Solange sich das Format der Ausgabe in einer neueren Version nicht ändert. Das erste ist besser, weil es nicht vom Ausgabeformat abhängt.
Flickerfly

2

Das hat bei mir funktioniert:

sudo unattended-upgrade --dry-run -d 2> /dev/null | awk '/Checking/ { print $2 }'

2
Zeigt alle verfügbaren Updates an, beschränkt sich aber nicht auf Sicherheitsupdates, wenn ich mich nicht irre. Immer noch hilfreich.
Delf

2
sudo apt-get -s --no-download dist-upgrade -V | grep "^Inst.*security.*$" | cut -d " " -f 2

Mit etwas Hilfe von dieser Frage


2
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                            Command                            |                                                                               Purpose                                                                               |
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| apt list --upgradable                                         | List all updates available                                                                                                                                          |
| apt list --upgradable | grep "\-security"                     | List all updates that are security.                                                                                                                                 |
| apt list --upgradable 2>/dev/null | grep "\-security" | wc -l | Count number of security updates available. and redirects the stderr like "WARNING: apt does not have a stable CLI interface. Use with caution in scripts." to null |
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+

0
sudo apt list --upgradable |grep "/$(lsb_release -cs)-security"

Hier werden alle verfügbaren Updates aufgelistet, die über das Sicherheits-Repository bereitgestellt werden.


1
apt ist für den interaktiven Gebrauch. Sie erhalten eine Warnung, wenn Sie in einem Skript verwendet werden. Verwenden Sie apt-getstattdessen.
Bernard

0

muss es eine Möglichkeit , um Anfrage, wie viele Pakete sind aktualisierbar und wie viele Sicherheits - Updates jetzt , aber wenn Sie fragen , es einmal täglich abrechnen können Sie einfach die Datei lesen / var / lib / update-notifier / updates-verfügbar , die scheint täglich durch das Skript /etc/cron.daily/update-notifier-common aktualisiert zu werden , das zum Paket update-notifier-common gehört

Beispiel:

$ sudo cat /var/lib/update-notifier/updates-available

355 packages can be updated.
1 update is a security update.

Getestet in:

  • Ubuntu 14.04 LTS
  • Ubuntu 16.04 LTS
  • Ubuntu 18.04 LTS

Grüße,

/Engel

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.