Was ist das Befehlszeilen-Äquivalent zu „mintupdate“ für Linux Mint?

Was ist das Befehlszeilen-Äquivalent zu „mintupdate“ für Linux Mint?

Linux Mint verfügt über einen netten GUI-basierten Update Manager mit wählbaren Update-Stufen. Die Standardeinstellungen sind für die Stufen 1 bis 3 von insgesamt 5 möglichen Stufen. Ich erledige Verwaltungsaufgaben für eine Reihe von Linux Mint-Desktopsystemen jedoch häufig über SSH, anstatt die physischen Maschinen aufzurufen. Wie erreiche ich dieselbe Funktionalität über die Befehlszeile?

Ich kenne die Befehle apt-get updateund bereits apt-get upgrade, aber soweit ich weiß, funktionieren diese Befehle immer nochnichtverfügen über eine Funktionalität, die dem Fünf-Schichten-Verhalten des Update Managers () entspricht /usr/lib/linuxmint/mintUpdate/mintUpdate.py.

Update: Als ich diese Frage ursprünglich gestellt habe, suchte ich nach einer Lösung für Linux Mint 17. Auf einigen unserer Systeme verwende ich jetzt 18.3 und konnte darauf eine Antwort geben.

Antwort1

Es gab keine Alternative, da mintUpdate.py nur eine GUI (gtk) war, bis ich mich entschied, eine zu schreiben. Ich habe es in meinem Blog beschrieben -Linux Mint Update-CLIDort finden Sie auch einen Link zu GitHub. Ich werde auch einige Screenshots veröffentlichen.

Antwort2

Unter Mint 19 gibt es ein mintupdate-cliTool, das dieselben Funktionen wie die GUI-Version hat mintupdate. Nutzen Sie es mit den entsprechenden -hOptionen.

Ich habe jedoch die Manpage (mit ) nicht gefunden man mintupdate-cli. Daher kann ich die Quellcodes und Autoren nicht in der Anwendung selbst finden. Nach einigen Suchen sieht es jedoch so aus, als wäre es Teil desAbonnierenProjekt:

https://github.com/linuxmint/mintupdate/blob/master/usr/lib/linuxmint/mintUpdate/mintupdate-cli.py

Antwort3

Diese Antwort gilt für Linux Mint 18.2 und höher, obwohl ich sie nur für 18.3 getestet habe.

Ein Befehlszeilentool namens mintupdate-toolist jetzt in der Distribution enthalten. In den Versionshinweisen zu 18.2 wird es wie folgt beworben: „Dieses Tool unterstützt alle in der Benutzeroberfläche verfügbaren Funktionen, einschließlich Levelauswahl, Sicherheitsupdates, Kernelupdates und Blacklisting.“ Mit „Benutzeroberfläche“ ist der Update Manager gemeint, und diese Behauptung ist weit von der Wahrheit entfernt, stellt aber einen großen Schritt nach vorne dar.

Es gibt keine manSeite für dieses Tool, also:

$ mintupdate-tool --help
usage: mintupdate-tool [-h] [-k | -nk] [-s] [-r] [-d] [-y]
                       [--install-recommends] [-l LEVELS]
                       command

positional arguments:
  command               command to run (possible commands are: list, upgrade)

optional arguments:
  -h, --help            show this help message and exit
  -k, --kernel          ignore settings and include all kernel updates
  -nk, --no-kernel      ignore settings and exclude all kernel updates
  -s, --security        ignore settings and include all security updates
  -r, --refresh-cache   refresh the APT cache
  -d, --dry-run         simulation mode, don't upgrade anything
  -y, --yes             automatically answer yes to all questions
  --install-recommends  install recommended packages (use with caution)
  -l LEVELS, --levels LEVELS
                        ignore settings and restrict to this list of levels

Die Einstellungen vom Update Manager bestimmen das Standardverhalten. Diese Einstellungen befinden sich im dconfDatenspeicher des aktiven Benutzers (Schemacom.linuxmint.updatessudo), daher ändert es nichts, wenn Sie dem Befehl plain voranstellen . Das ist wichtig, weil Updates ohne Root-Rechte nicht möglich sind.

Warnung: Es gibt keine Möglichkeit, Sicherheitsupdates auszuschließen, wenn deren Einbeziehung in den Update Manager-Einstellungen aktiviert ist.

Die Optionenanalyse für „--levels“ ist etwas schlampig und nicht offensichtlich. LEVELS ist eine Zeichenfolge, die nach dem Auftreten der Ziffern 1 bis 5 durchsucht wird. Es handelt sich nicht um einen Schwellenwert oder Bereich. Es wird auch nicht nach ungültigen Zeichen gesucht, daher bedeuten „14“, „1-4“, „1,4“, „4..1“ und „two4u14me“ alle nur die Ebenen 1 und 4.

Um einfach die verfügbaren Updates aufzulisten, die gemäß den Update Manager-Einstellungen des Benutzers standardmäßig installiert werden, möchten Sie wahrscheinlich Folgendes:

$ mintupdate-tool -r list

Um Überraschungen zu vermeiden, möchten Sie die Option „-r“ in den folgenden Befehlen wahrscheinlich nicht.

So führen Sie einen Probelauf durch, um zu sehen, was ein tatsächliches Update mit diesem Tool bewirken würde:

$ mintupdate-tool --dry-run upgrade

So führen Sie tatsächlich dasselbe Update durch, das wir erhalten würden, wenn wir den Update Manager verwenden würden, ohne die angezeigten Auswahlen zu ändern:

$ sudo mintupdate-tool upgrade

Meiner Meinung nach ist es ein erhebliches Versäumnis, keine Spalte für den Updatetyp für den Befehl „Liste“ einzufügen, wie er im Update Manager erscheint, und keine Möglichkeit bereitzustellen, die Beschreibung oder das Änderungsprotokoll eines Updates abzufragen. Mein aktuelles Beispiel:

$ sudo mintupdate-tool -l 12345 list
4 package         mesa                                          17.2.4-0ubuntu1~16.04.4

Das ist ein Level-4-Update namens „mesa“, was kein Paketname ist, daher kann ich es nicht mit anderen mir bekannten Befehlszeilentools abfragen. Ich weiß vom Update Manager, dass dieses spezielle Update tatsächlich 9 verschiedene Pakete enthält, aber das ist Betrug.

DerQuellcode.

verwandte Informationen