私はちょうどGIMPの開発版のためのPPAリポジトリを追加しましたが、私はこのエラーを取得します:
$ apt-get update && apt-get upgrade...The following packages have been kept back: gimp gimp-data libgegl-0.0-0 libgimp2.0
私が今持っているものの代わりに最新バージョンを使うことができるように、なぜ、どのように解決できますか?
私はちょうどGIMPの開発版のためのPPAリポジトリを追加しましたが、私はこのエラーを取得します:
$ apt-get update && apt-get upgrade...The following packages have been kept back: gimp gimp-data libgegl-0.0-0 libgimp2.0
私が今持っているものの代わりに最新バージョンを使うことができるように、なぜ、どのように解決できますか?
によると 上の記事debian-administration.org,
インストールしたパッケージのいずれかで依存関係が変更され、アップグレードを実行するために新しいパッケージをインストールする必要がある場合は、"keeped-back"と表示されます。
慎重な解決策1:
あたり パブロの答え、あなたは実行することができます sudo apt-get --with-new-pkgs upgrade
のパッケージをインストールします。
これには、保持されたパッケージを"手動でインストール"としてマークしないという利点があり、より多くのユーザーの介入を強制する可能性があります(コメント
Pabloの解決策があなたのために働くならば、それをupvoteしてください。 そうでない場合は、何が間違っていたかをコメントしてくださ
慎重な解決策2:
慎重な解決策は、次のように実行することです sudo apt-get install <list of packages kept back>
. ほとんどの場合、これは保持されたパッケージに正常にアップグレードするために必要なものを与えます。
積極的な解決策:
より積極的な解決策は、実行することです sudo apt-get dist-upgrade
これにより、これらの新しい依存関係のインストールが強制されます。
しかし、 dist-upgrade
非常に危険なことができます. アップグレードとは異なり それはかもしれません 削除 複雑な依存関係の状況を解決するパッケージ。 あなたとは違って、APTは常にこれらの追加や削除が大混乱をもたらす可能性があるかどうかを知るのに十分なスマートではありません。
だから、あなたが"慎重な解決策"がうまくいかない場所に自分自身を見つけた場合, dist-upgrade
五月 仕事だ.. しかし、APTについてもう少し学び、パッケージをケースバイケースでインストールして削除することによって、依存関係の問題を"手で"解決する方が良いでしょう。
車を固定するように考えてください。.. 時間があり、レンチと便利なら、読んで、修理をあなた自身することによって心の安らぎを得る。 あなたが幸運を感じているなら、あなたはあなたのいとこと一緒にあなたの車を降ろすことができます dist-upgrade
彼女が彼女のものを知っていることを願っています。
コマンドから受信するたびに apt-get upgrade
メッセージ
The following packages have been kept back:
その後、配布アップグレードを行わずに、保持されたパッケージの一つまたはすべてをアップグレードするには(これは何ですか dist-upgrade
私が正しく覚えていれば、)コマンドを発行することです:
apt-get install <list of packages kept back>
これにより、保持された問題が解決され、追加のパッケージなどをインストールするように求められます。 他の答えで説明されたように。
も参照してください: Apt-get dist-upgradeの代わりにapt-get upgradeを使用するのはなぜですか?
試してみてください このUnix SEの答え:
sudo apt-get --with-new-pkgs upgrade
これにより、新しいパッケージをインストールすることができます。 実際にインストールを行う前に、どのパッケージがインストールされるかを知らせ、プロンプトが表示されます。
apt
コマンド (フレンドリー-オルタナティヴ に apt-get
)このオプションを共有します。
を使用して apt install <pkg>
代わりにpkgを"手動でインストール"としてマークします!! "自動的にインストール"として再度マークするには、次を使用します apt-mark auto <pkg>
(サブコマンドも参照 showmanual
). より多くの情報 この答えで.
apt-get dist-upgrade
安定した環境のために危ないです,
ユースケース:カーネルのアップグレードが戻って保た、あなただけのカーネルをアップグレードしたい、全体の配布をアップグレードしたくありません。
バックパッケージを処理するためのより良い方法:
sudo aptitude
パッケージを保持している場合は、リストの上にアップグレード可能なパッケージが表示されるはずです。
バックパッケージをインストールしました。
通常、このメッセージが表示される理由は2つあります。
プログラムをアップグレードする場合( sudo apt-get upgrade
)パッケージが追加または削除されると、プログラムは保持されます。 あなたが使用することができます sudo apt-get dist-upgrade
この場合、追加のプログラムを追加または削除することを提案します。
これはかなり一般的であり、通常は問題ではありません。 時折(特にUbuntuのアルファの間に)a dist-upgrade
あなたはおそらくそれをキャンセルしたい場合には、他の多くのプログラムを削除するために提供します。
プログラムが利用できないパッケージまたはバージョンに依存している場合、プログラムは保留されます。 パッケージは基本的にアンインストール可能なので、この状況では本当に何もすることはできませんが、待つことはできません。 これは、パッケージが順番にリポジトリに追加されたとき、パッケージの名前が変更されたとき、またはパッケージが仮想パッケージの提供を停止したときに発生する可能性があります。
あなたも試すことができます:
sudo aptitude safe-upgrade
それはより安全です full-upgrade
"パッケージは未使用でない限り削除されません"ので、(最初はdist-upgradeという名前でした)。
から man aptitude
:
安全アップグレード
インストールされたパッケージを最新バージョンにアップグレードします。 インストールされたパッケージは、未使用/でない限り削除されません。.. 現在インストールされていない/Packagesは、--no-new-installsコマンドラインオプションが指定されていない限り、依存関係を解決するためにインストールされます。
ほとんどの場合、これらのパッケージは、インストールが依存関係の不整合を作成するために保持されます。 これは、アクティブな開発中のアーカイブ、ppaを使用しているか、使用するミラーが完全に更新されていないために発生する可能性があります。
最後のケースでは、ちょうど待って、依存関係が解決されると、次回にインストールされます。
編集:
別の可能性があります,それらにホールドが置かれている場合、パッケージが戻って開催される可能性があります,または、彼らが固定されている場合.
これは私のために働いた
sudo aptitude full-upgrade
これは通常、パッケージに依存関係が追加されており、upgradeは許可なしに依存関係を追加したくないためです。
あなたが実行した場合:
sudo apt-get install gimp gimp-data libgegl-0.0-0 libgimp2.0
次に、新しいバージョンを新しい依存関係と一緒にインストールする必要があります。
Ubuntu18.04,20.04(およびそれ以降)は、 合理化された構文 経由 apt full-upgrade
どのような機能がありますか sudo apt-get dist-upgrade
.
sudo apt full-upgrade
sudo apt upgrade
sourcesを介して構成されたソースから、システムに現在インストールされているすべてのパッケージの利用可能なアップグリスト(5) 依存関係を満たすために必要な場合は、新しいパッケージがインストールされますが、 既存のパッケージは削除されません。 パッケージのアップグレードがインストールされているパッケージの削除を必要とする場合、このパッケージのアップグレードは実行されません。
sudo apt full-upgrade
アップグレードの機能を実行しますが、 システム全体をアップグレードするために必要な場合は、現在インストールされているパ.
メモ: full-upgrade
現在の分布に残っています。
どのようなゴミのメッセージ。 なぜOSはちょうどneedfulを行うことはできませんか?