システム全体を更新してからアップグレードする3つのコマンドがあることを知っています。これらは次のとおりです。
- sudo apt-get update#利用可能なアップデートのリストを取得します
- sudo apt-get upgrade#現在のパッケージを厳密にアップグレードします
- sudo apt-get dist-upgrade#アップデート(新しいアップデート)をインストールします
これらすべてのコマンドを1つに結合するスーパーアップグレードコマンドはありますか?
システム全体を更新してからアップグレードする3つのコマンドがあることを知っています。これらは次のとおりです。
- sudo apt-get update#利用可能なアップデートのリストを取得します
- sudo apt-get upgrade#現在のパッケージを厳密にアップグレードします
- sudo apt-get dist-upgrade#アップデート(新しいアップデート)をインストールします
これらすべてのコマンドを1つに結合するスーパーアップグレードコマンドはありますか?
回答:
3つの適切な選択肢があります。
次のようなスクリプトを作成できます。
#!/bin/bash
set -e
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
次のように呼び出してupdate.sh
配置し/usr/local/bin
、次を実行してスクリプトを実行可能にします。
sudo chmod +x /usr/local/bin/update.sh
もう1つの方法は、bashエイリアス(~/.bashrc
)を作成するか、エイリアスを通常保存する場所です:
alias update='sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade'
最後の方法は、コマンドラインで3つのコマンドを単純につなげることです。
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
いくつかの選択肢...
参照:
dist-upgrade
、upgrade
事前に行うことは意味がありません
dist-upgrade
失敗かもしれませんがupgrade
続いdist-upgrade
ていないでしょうが。これは主に、パッケージの依存関係の定義のバグ、または異なるリリース/ディストリビューション/ PPAのパッケージが混在しているためです。Canonicalの公式リポジトリのパッケージを1つのリリース(デフォルト)のみで使用する場合、このようなエラーは非常にまれであり、すぐに修正されるはずです。
for x in update {,dist-}upgrade; do sudo apt $x; done
入力が多すぎることに悩まされている場合は、「エイリアス」を自分で定義できます。これは、たとえば次の$HOME/.profile
ように行を末尾に追加することで実行できます。
alias sau='sudo aptitude update && sudo aptitude upgrade'
(もちろん、「sau」を別のものに置き換えることができます。私にとっては、これはSudo Apt-get Updateの頭字語です)。ファイルを保存した後、新しいシェルを開きます(または.profileを再度「ソース」し. $HOME/.profile
ます。これで、いつでも「sau」と入力して完全なジョブを実行できます。複数のマシンでうまく動作します。
sudo aptitude update && sudo aptitude upgrade
のが面倒だからではなく、適切に理解したかったからですsudo pacman -Syu --noconfirm
。
apt-get update
パラメータ-u
があります。その後、それらを適用するかどうかを尋ねるかどうかは試しませんでした(すぐに確認できるUbuntu / Debianがありません)。
ワンライナーコマンドを使用できます(スクリプトは不要で、コピーアンドペーストのみ)
sudo apt update -y && sudo apt full-upgrade -y && sudo apt autoremove -y && sudo apt clean -y && sudo apt autoclean -y
update
-パッケージのリストを更新しますが、インストールはしませんupgrade
-新しいバージョンが利用可能な場合、パッケージの新しいバージョンをインストールしますfull-upgrade
-アップグレードの機能を実行しますが、システム全体をアップグレードするために必要な場合、現在インストールされているパッケージを削除します(悪い依存関係を修正します)autoremove
、autoclean
およびclean
-不要になった古いパッケージを削除します-y
はすべてのステップで許可を要求しません残念ながら、2つのコマンドは別々に実行する必要があります。
sudo apt install unattended-upgrades
これはまだ最高のラインです。他のすべてのソリューションでは、毎日1行を何度も入力する必要があります。これはまさにワンコマンドソリューションです。ubuntuの公式aptドキュメントをご覧ください!
.conf
このパッケージのファイルを編集することにより/etc
、の頻度を設定できますupdate, install, clean, autoremove
ます...
または、パッケージ名のリストで更新が利用可能であるという通知を含むメール
変更ごとに素敵な小さなログファイルが生成されます。デスクトップ通知にもポップアップするためのGUI拡張として小さなスクリプトを書くことができると思います(トピックは笑)
sudo apt-get update && sudo apt-get dist-upgrade