Wie wir alle bereits wissen, müssen Sie mehr als einen Paketmanager aufrufen, um unser Linux-System auf dem neuesten Stand zu halten. Angenommen, in Ubuntu können Sie nicht alles mit dem Befehl "sudo apt update &&sudo apt upgrade" aktualisieren. Dieser Befehl aktualisiert nur die Pakete, die mit dem APT-Paketmanager installiert wurden. Es besteht die Möglichkeit, dass Sie einige andere Anwendungen mit cargo installiert haben , Pip , npm , einrasten , flatpak oder Linuxbrew Paketmanager. Sie müssen den jeweiligen Paketmanager verwenden, um sie alle auf dem neuesten Stand zu halten. Nicht mehr! Begrüßen Sie "topgrade" , ein Dienstprogramm, um alles mit einem einzigen Befehl auf einmal zu aktualisieren.
Sie müssen nicht jeden Paketmanager separat ausführen, um die Pakete zu aktualisieren. Das Topgrade-Tool löst dieses Problem, indem es die installierten Pakete, Tools und Plugins erkennt und den entsprechenden Paketmanager ausführt, um alles in Ihrer Linux-Box mit einem einzigen Befehl zu aktualisieren. Es ist kostenlos, Open Source und in der Programmiersprache Rust geschrieben . Es unterstützt GNU/Linux, Mac OS X, FreeBSD und Microsoft Windows.
Topgrade installieren
Die Bestnote ist in AUR verfügbar . Sie können es also mit Yay installieren Hilfsprogramm in allen Arch-basierten Systemen.
$ yay -S topgrade
Auf anderen Linux-Distributionen kann Topgrade Cargo installiert werden Paket-Manager. Um den Cargo Package Manager zu installieren, verwenden Sie den folgenden Link.
- Installieren Sie die Programmiersprache Rust unter Linux
Führen Sie dann den folgenden Befehl aus, um Topgrade zu installieren:
$ cargo install topgrade
Wenn die Cargo-Methode aus irgendeinem Grund nicht funktioniert, laden Sie die neueste Topgrade-Binärdatei von der Release-Seite herunter . Zum Zeitpunkt der Erstellung dieses Leitfadens war die neueste Version 2.2.0 .
$ wget https://github.com/r-darwish/topgrade/releases/download/v2.2.0/topgrade-v2.2.0-x86_64-unknown-linux-gnu.tar.gz
Extrahieren Sie die tar-Datei:
$ tar xvf topgrade-v2.2.0-x86_64-unknown-linux-gnu.tar.gz
Kopieren oder verschieben Sie die Topgrade-Binärdatei in Ihren Pfad, zum Beispiel /usr/local/bin/ .
$ sudo mv topgrade /usr/local/bin/
Überprüfen Sie, ob es wie unten gezeigt richtig installiert ist.
$ which topgrade /usr/local/bin/topgrade
Installierte Version prüfen:
$ topgrade -V Topgrade 2.2.0
Aktualisieren Sie alles mit Topgrade in Linux und Unix
Führen Sie nach der Installation das Topgrade-Dienstprogramm aus, um alle Dinge in Ihrem Linux-System zu aktualisieren.
$ topgrade
Sobald topgrade aufgerufen wird, führt es je nach verwendetem Betriebssystem nacheinander die folgenden Aufgaben aus. Sie werden bei Bedarf aufgefordert, das Root-/Sudo-Benutzerpasswort einzugeben.
Unter Linux:
1. Führen Sie den Paketmanager Ihres Linux-Systems aus und führen Sie die folgenden Vorgänge aus:
- Arch-basiert :Führen Sie yay aus oder auf pacman zurückgreifen
- Redhat-basiert :Führen Sie
yum upgrade
aus (oderdnf
falls vorhanden) - Debian-basiert :Führen Sie
apt update && apt dist-upgrade
aus - Gentoo :Führen Sie
layman -s ALL && emerge --sync -q && eix-update && emerge -uDNa world
aus - openSUSE :Führen Sie
zypper refresh && zypper dist-upgrade
aus - Nichtig :Führen Sie
xbps-install -Su
aus
2. Führen Sie etc-update aus .
3. Führen Sie inoffizielle und Drittanbieter-Paketmanager aus:
- Aktualisiere Flatpak Pakete
- Aktualisiere snap Pakete
- Führen Sie fwupdmgr aus Firmware-Upgrade anzuzeigen. (Nur anzeigen. Tatsächlich werden keine Upgrades durchgeführt)
- Führen Sie
rpi-update
zum Aktualisieren der Raspberry Pi-Firmware - Führe pihole aus Updater
- Aktualisieren Sie Rustup, indem Sie
rustup update
. Dadurch wird auch versucht,rustup self update
wenn Rustup im Home-Verzeichnis installiert wird. - Führen Sie Cargo install-update aus
- Aktualisieren Sie Emacs Pakete
- Aktualisieren Sie OCaml Pakete
- Aktualisieren Sie vcpkg global installierte Pakete
- Aktualisiere myrepos verwaltete Quellcode-Repositories
- Aktualisieren Sie mit pipx installierte Python-Pakete
- Aktualisiere R global installierte Pakete
- Aktualisieren Sie Vim/Neovim Pakete. Funktioniert mit den folgenden Plugin-Frameworks:
- NeoBundle
- Vundle
- Stecker
- Dein
- Knoten
- Führen Sie
yarn global update
wenn Garn installiert ist. - Führen Sie
npm update -g
wenn NPM installiert ist undnpm root -g
ist ein Pfad in Ihrem Home-Verzeichnis.
- Führen Sie
- Führen Sie
composer global update
wenn sich das Home-Verzeichnis von Composer im Home-Verzeichnis des Benutzers befindet. Führen Sievalet install
nach. - Aktualisiere Atom Pakete
- Führen Sie
gem upgrade --user-install
wenn~/.gem
existiert
Unter Unix:
- Führen Sie
brew update && brew upgrade
. Dies sollte sowohl Homebrew verarbeiten und Linuxbrew . - Führen Sie
nix upgrade-nix && nix --upgrade
. - Führen Sie Pearl
pearl update
. - Führen Sie zplug aus aktualisieren
- Aktualisieren Sie tmux Plugins mit TPM
Auf FreeBSD:
- Pakete aktualisieren und prüfen.
Verschiedenes (Diese Schritte werden auf allen Betriebssystemen durchgeführt)
Es wird überprüft, ob die folgenden Pfade von Git verfolgt werden . Wenn ja, ziehen Sie sie:
- ~/.emacs.d
- ~/.zshrc
- ~/.oh-my-zsh
- ~/.tmux
- ~/.config/fish
- ~/.config/nvim
- ~/.vim
- ~/.config/openbox
- ~/.config/bspwm
- ~/.config/i3
- Powershell-Profil
- Benutzerdefinierte Pfade
Letzte Schritte
Sobald alle Pakete aktualisiert sind, führt Topgrade einen weiteren letzten Schritt durch.
Unter Linux:
Das Topgrade-Dienstprogramm wird needrestart ausführen um alle Dienste neu zu starten.
Auf FreeBSD:
Topgrade führt freebsd-upgrade
Unter Mac OS X , werden App Store-Anwendungen aktualisiert.
Beispielausgabe meiner Ubuntu 18.04 LTS-Testbox:
Aktualisieren Sie alles mit Topgrade unter Linux und Unix
Das Gute ist, wenn eine Aufgabe fehlschlägt, wird automatisch die nächste Aufgabe ausgeführt und alle anderen nachfolgenden Aufgaben abgeschlossen. Schließlich wird die Zusammenfassung mit Details angezeigt, z. B. wie viele Aufgaben ausgeführt wurden, wie viele erfolgreich und wie viele fehlgeschlagen sind usw.
Empfohlene Lektüre:
- So aktualisieren Sie Ubuntu mit einem einzigen Befehl
- 3 verschiedene Methoden zum Upgrade von Ubuntu auf die neueste Version
- Updates und Sicherheitspatches automatisch in Ubuntu installieren
Erstklassige Optionen
Tograde enthält einige Optionen, um verschiedene zusätzliche Aufgaben auszuführen.
Topgrade in Tmux-Sitzungen ausführen
Dies ist praktisch, wenn Sie Topgrade auf den Remote-Systemen verwenden.
Um Topgrade innerhalb einer Tmux-Sitzung zu starten, verwenden Sie -t Flagge.
$ topgrade -t
Führen Sie Topgrade innerhalb der Tmux-Sitzung aus
Alte und unnötige Dateien entfernen
Um Paketmanager anzuweisen, alte und ungenutzte Dateien zu bereinigen, verwenden Sie -c Flagge mit Bestnote:
$ topgrade -c
Deaktivieren Sie bestimmte Upgrade-Schritte
Manchmal möchten Sie ein bestimmtes Paket nicht aktualisieren. In diesem Fall können Sie --disable
Option.
Überspringen Sie beispielsweise das System-Upgrade mit dem Befehl:
$ topgrade --disable system
Dieser Befehl überspringt nur die System-Upgrade-Phase und aktualisiert alles andere wie gewohnt.
―― 11:39:48 - Self update ―――――――――――――――――――――――――――――――――――――――――――――――――――――― Topgrade is up-to-date ―― 11:39:50 - rustup ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― info: checking for self-updates info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu' info: checking for self-updates stable-x86_64-unknown-linux-gnu unchanged - rustc 1.35.0 (3c235d560 2019-05-20) ―― 11:39:52 - Node Package Manager ――――――――――――――――――――――――――――――――――――――――――――― ―― 11:40:08 - Summary ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― Git repositories: OK rustup: OK NPM: OK
Emacs-Upgrade überspringen:
$ topgrade --disable emacs
Dieser Befehl überspringt die Aktualisierung von Emacs-Paketen und seinen Konfigurationsdateien.
Vim-Upgrade überspringen:
$ topgrade --disable vim
Gem-Upgrade überspringen:
$ topgrade --disable gem
Weitere Einzelheiten finden Sie im Hilfeabschnitt, indem Sie den folgenden Befehl ausführen:
$ topgrade --help Topgrade 2.2.0 Roey Darwish Dror <[email protected]> Command line arguments USAGE: topgrade [FLAGS] [OPTIONS] FLAGS: -c, --cleanup Cleanup temporary or old files -n, --dry-run Print what would be done -h, --help Prints help information --no-retry Do not ask to retry failed steps -t, --tmux Run inside tmux -V, --version Prints version information -v, --verbose Output logs OPTIONS: --disable <disable>... Do not perform upgrades for the given steps [possible values: gem, git-repos, vim, emacs, system]
Mir persönlich gefiel die Idee, ein Dienstprogramm wie topgrade zu erstellen und alles, was mit verschiedenen Paketmanagern installiert wurde, mit einem einzigen Befehl zu aktualisieren. Ich hoffe, Sie finden es auch nützlich.