Jak již všichni víme, udržování našeho linuxového systému v aktuálním stavu vyžaduje vyvolání více než jednoho správce balíčků. Řekněme například, že v Ubuntu nemůžete upgradovat vše pomocí příkazu "sudo apt update &&sudo apt upgrade". Tento příkaz aktualizuje pouze balíčky, které jsou nainstalovány pomocí správce balíčků APT. Je možné, že jste pomocí nákladu nainstalovali nějaké další aplikace , pip , npm , přichytit , flatpak nebo Linuxbrew správci balíčků. Chcete-li je všechny aktualizovat, musíte použít příslušného správce balíčků. Už ne! Pozdravte "topgrade" , nástroj pro upgrade všeho pomocí jediného příkazu najednou.
K aktualizaci balíčků nemusíte spouštět každého správce balíčků samostatně. Nástroj topgrade řeší tento problém detekcí nainstalovaných balíčků, nástrojů, zásuvných modulů a spuštěním příslušného správce balíčků, aby pomocí jediného příkazu aktualizoval vše ve vašem linuxovém boxu. Je zdarma, s otevřeným zdrojovým kódem a je napsán pomocí programovacího jazyka Rust . Podporuje GNU/Linux, Mac OS X, FreeBSD a Microsoft Windows.
Instalace Topgrade
Nejvyšší stupeň je k dispozici v AUR . Můžete jej tedy nainstalovat pomocí Yay pomocný program v jakémkoli systému založeném na Arch.
$ yay -S topgrade
Na jiných distribucích Linuxu lze nainstalovat topgrade Cargo správce balíčků. Chcete-li nainstalovat správce balíčků nákladu, přejděte na následující odkaz.
- Nainstalujte programovací jazyk Rust v systému Linux
A poté spusťte následující příkaz k instalaci topgrade:
$ cargo install topgrade
Pokud metoda nákladu z nějakého důvodu nefunguje, stáhněte si nejnovější binární soubor topgrade ze stránky vydání . V době psaní této příručky byla nejnovější verze 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
Rozbalte soubor tar:
$ tar xvf topgrade-v2.2.0-x86_64-unknown-linux-gnu.tar.gz
Zkopírujte nebo přesuňte binární soubor nejvyšší úrovně do své cesty, například /usr/local/bin/ .
$ sudo mv topgrade /usr/local/bin/
Zkontrolujte, zda je správně nainstalován, jak je znázorněno níže.
$ which topgrade /usr/local/bin/topgrade
Zkontrolujte nainstalovanou verzi:
$ topgrade -V Topgrade 2.2.0
Upgradujte vše pomocí Topgrade v Linuxu a Unixu
Po instalaci spusťte obslužný program topgrade pro upgrade všech věcí ve vašem systému Linux.
$ topgrade
Jakmile je topgrade vyvolán, provede následující úkoly jeden po druhém v závislosti na operačním systému, který používáte. Kdykoli to bude nutné, budete požádáni o zadání hesla uživatele root/sudo.
V systému Linux:
1. Spusťte správce balíčků systému Linux a proveďte následující operace:
- Založeno na oblouku :Spustit yay nebo se vraťte k pacmanovi
- Na základě Redhat :Spusťte
yum upgrade
(nebodnf
pokud je přítomen) - Založeno na Debianu :Spusťte
apt update && apt dist-upgrade
- Gentoo :Spusťte
layman -s ALL && emerge --sync -q && eix-update && emerge -uDNa world
- openSUSE :Spusťte
zypper refresh && zypper dist-upgrade
- Neplatné :Spusťte
xbps-install -Su
2. Spusťte etc-update .
3. Spusťte neoficiální správce balíčků a správce balíčků třetích stran:
- Aktualizujte Flatpak balíčky
- Aktualizujte snap balíčky
- Spusťte fwupdmgr pro zobrazení aktualizace firmwaru. (Pouze zobrazení. Ve skutečnosti nebudou provedeny žádné aktualizace)
- Spusťte
rpi-update
k aktualizaci firmwaru Raspberry Pi - Spusťte pihole aktualizátor
- Aktualizujte Rustup spuštěním
rustup update
. Tím se také pokusí spustitrustup self update
když je Rustup nainstalován v domovském adresáři. - Spusťte instalaci a aktualizaci Cargo
- Upgradujte Emacs balíčky
- Upgradujte OCaml balíčky
- Upgradujte vcpkg globálně nainstalované balíčky
- Upgradujte myrepos spravovaná úložiště zdrojového kódu
- Upgradujte balíčky Pythonu nainstalované pomocí pipx
- Upgradujte R globálně nainstalované balíčky
- Upgradujte Vim/Neovim balíčky. Funguje s následujícími pluginy:
- NeoBundle
- Vundle
- Zásuvka
- Dein
- Uzel
- Spusťte
yarn global update
pokud je nainstalována příze. - Spusťte
npm update -g
pokud je nainstalován NPM anpm root -g
je cesta uvnitř vašeho domovského adresáře.
- Spusťte
- Spusťte
composer global update
pokud je domovský adresář skladatele uvnitř domovského adresáře uživatele. Spusťtevalet install
po. - Upgradujte Atom balíčky
- Spusťte
gem upgrade --user-install
if~/.gem
existuje
V systému Unix:
- Spusťte
brew update && brew upgrade
. To by mělo zvládnout jak homebrew a Linuxbrew . - Spusťte
nix upgrade-nix && nix --upgrade
. - Spusťte
pearl update
. - Spusťte zplug aktualizovat
- Upgradujte tmux pluginy s TPM
Ve FreeBSD:
- Upgrade a balíčky auditu.
Různé (Tyto kroky budou provedeny na všech operačních systémech)
Zkontroluje, zda Git sleduje následující cesty . Pokud ano, vytáhněte je:
- ~/.emacs.d
- ~/.zshrc
- ~/.oh-my-zsh
- ~/.tmux
- ~/.config/fish
- ~/.config/nvim
- ~/.vim
- ~/.config/openbox
- ~/.config/bspwm
- ~/.config/i3
- Profil Powershell
- Vlastně definované cesty
Poslední kroky
Jakmile jsou všechny balíčky upgradovány, Topgrade udělá ještě jeden poslední krok.
V systému Linux:
Obslužný program Topgrade se spustí needrestart restartujte všechny služby.
Ve FreeBSD:
Topgrade spustí freebsd-upgrade
V systému Mac OS X , upgraduje aplikace App Store.
Ukázkový výstup z mého testovacího boxu Ubuntu 18.04 LTS:
Upgradujte vše pomocí Topgrade v Linuxu a Unixu
Dobrá věc je, že pokud jedna úloha selže, automaticky spustí další úlohu a dokončí všechny další následné úlohy. Nakonec zobrazí souhrn s podrobnostmi, jako je kolik úloh bylo spuštěno, kolik bylo úspěšných a kolik selhalo atd.
Doporučené čtení:
- Jak upgradovat Ubuntu jediným příkazem
- 3 různé způsoby upgradu Ubuntu na nejnovější verzi
- Automatická instalace aktualizací a bezpečnostních záplat v Ubuntu
Možnosti nejvyšší verze
Tograde přichází s několika možnostmi provádění různých doplňkových úkolů.
Spusťte Topgrade v relacích Tmux
To je užitečné, když používáte Topgrade na vzdálených systémech.
Chcete-li spustit Topgrade v rámci relace Tmux, použijte -t vlajka.
$ topgrade -t
Spusťte Topgrade v relaci Tmux
Odstraňte staré a nepotřebné soubory
Chcete-li dát správcům balíčků pokyn, aby vyčistili staré a nepoužívané soubory, použijte -c příznak s nejvyšším stupněm:
$ topgrade -c
Deaktivujte konkrétní kroky upgradu
Někdy nechcete upgradovat konkrétní balíček. Pokud ano, můžete použít --disable
možnost.
Například přeskočte aktualizaci systému pomocí příkazu:
$ topgrade --disable system
Tento příkaz pouze přeskočí fázi aktualizace systému a upgraduje vše ostatní jako obvykle.
―― 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
Přeskočit upgrade Emacsu:
$ topgrade --disable emacs
Tento příkaz přeskočí aktualizaci balíčků Emacs a jeho konfiguračních souborů.
Přeskočit upgrade Vim:
$ topgrade --disable vim
Přeskočit upgrade drahokamů:
$ topgrade --disable gem
Další podrobnosti naleznete v části nápovědy spuštěním následujícího příkazu:
$ 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]
Osobně se mi líbila myšlenka vytvořit nástroj jako topgrade a upgradovat vše nainstalované pomocí různých správců balíčků jediným příkazem. Doufám, že to bude pro vás také užitečné.