web-dev-qa-db-ja.com

Ubuntu 16.04-カーネルパッケージは保持されています

Sudo apt-get upgradeを実行しましたが、次のようになります:

The following packages have been kept back:  
linux-generic-hwe-16.04 linux-headers-generic-hwe-16.04 linux-image-generic-hwe-16.04 linux-signed-generic-hwe-16.04 linux-signed-image-generic-hwe-16.04  
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.

Sudo apt-get dist-upgradeを実行すると、何かがおかしくなり、Ubuntuのインストールが台無しになる可能性があると思います。私はここで同様の質問を見ましたが、それらは私の問題とは異なると思います。私は何をすべきか ?

14
NikosL24

general topic " packages are backed backed "は以前ここで回答されましたが、今日は奇妙なことが起こっています..数時間前にSudo apt updateを実行すると、新しいカーネル4.8.0-42がインストール用に提供されました。 Sudo apt dist-upgradeを実行し、システム(Ubuntu 16.10ワークステーション)を再起動した後、その新しいカーネルを実行していました。

数時間後、Ubuntuサーバーのインストールをアップグレードしたかったのですが、新しいカーネルは提供されませんでした。状況を再確認するために、昨日からUbuntuワークステーションでclonezillaシステムのバックアップイメージを復元し、状況を再確認しました。今回は、新しいカーネルはもう提供されていません。カーネル4.8.0-42が誤ってメインリポジトリにプッシュされ、提案されたリポジトリにプッシュバックされる途中です。Canonicalがバグを発見した可能性があります。

Ubuntu 16.04の HWEスタック を選択しました。つまり、Ubuntu 16.10のカーネル4.8を使用しています。そのため、すべてがUbuntu 16.10のカーネルで最初に発生します。これは、Ubuntu 16.04 LTSリポジトリの更新プロセスの時間遅延の可能な説明です。

少し後でSudo apt updateを再度実行すると、受け取ったメッセージは表示されなくなります。結論:Sudo apt dist-upgradeを実行せず、リポジトリが更新され、保留されたカーネルパッケージに関するメッセージが表示されなくなるまですぐに待機しないでください。ちなみに、カーネルバージョン4.8.0-40でもまったく同じことが既にしばらく前に発生しました。

5
cl-netbox

既存のパッケージのアップグレードで、「新しい」パッケージ(たとえば、まだインストールされていない)をインストールする必要がある場合、その特定の既存のパッケージは「保持」されます。

man apt-get 、によれば、upgradeはデフォルトでは他のまだインストールされていないパッケージをインストールしません:

アップグレード

...現在インストールされているパッケージが削除されたり、まだインストールされていないパッケージが取得およびインストールされたりする状況はありません。

-with-new-pkgs

アップグレードと組み合わせて使用​​する場合、新しいパッケージのインストールを許可します。これは、インストール済みパッケージの更新で新しい依存関係のインストールが必要な場合に便利です。パッケージを保持する代わりに、アップグレードはパッケージをアップグレードし、新しい依存関係をインストールします。 ...

したがって、関連する他のパッケージを含めるには、--with-new-pkgsを追加する必要があります。

Sudo apt-get --with-new-pkgs upgrade

--with-new-pkgsを使用すると、関連する「まだインストールされていない」パッケージをY/nインタラクティブプロンプトでインストールできます。

また、追加の利点として、Sudo apt-get --with-new-pkgs upgradeには、パッケージが手動でインストールされたとマークされるという副作用がありません。


更新

Unbuntu 18.04は、apt-getの代わりに使用できるaptの新しい、合理化された構文を提供します。

Sudo apt full-upgrade
10
l --marc l

比較的新しいUbuntuユーザーであるため、同じ問題にぶつかり、明らかにそれを解決しました。以下にリストされているように、端末にリストされているものと同じ名前のUbuntuソフトウェアに3つの保留中の更新があることがわかりました。

The following packages have been kept back:
linux-generic-hwe-16.04 linux-headers-generic-hwe-16.04 linux-image-generic-hwe-16.04
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

Ubuntuソフトウェアからこれらの更新プログラムをインストールした後、ターミナルに戻ってSudo apt-get updateおよびSudo apt-get upgradeを実行しました。結果:

The following packages were automatically installed and are no longer required:
  linux-headers-4.8.0-41 linux-headers-4.8.0-41-generic linux-headers-4.8.0-44 linux-headers-4.8.0-44-generic linux-image-4.8.0-41-generic
  linux-image-4.8.0-44-generic linux-image-extra-4.8.0-41-generic linux-image-extra-4.8.0-44-generic
Use 'Sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

専門家ではないので、Ubuntuソフトウェアからアップデートをインストールすることで問題を解決できると思います。そして問題は、Ubuntuソフトウェアとapt-get更新およびアップグレードパッケージとの間に完全な通信がないということです。あなたはより良い説明を見つけると確信していますが、これをあなたと共有したかったです。

2
Jose