web-dev-qa-db-ja.com

apt-get removeの使用中に満たされていない依存関係を無視するにはどうすればよいですか?

自動セキュリティアップデートが適用されたUbuntu 14.04を実行しているシンVPSがあります。/bootパーティションは、多くのカーネルアップデートでいっぱいになっています。古いものを削除しようとしていますが、続行する前に別のパッケージを修正するよう要求する「満たされていない」依存関係エラーが発生しています。残念ながら、満たされていない依存関係は、100%いっぱいのパーティションに新しいカーネルをインストールしようとしています。

$ Sudo apt-get remove [an old linux-image* package]
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 linux-image-extra-3.13.0-88-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
 linux-image-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

パーティションがいっぱいになると、apt-get -f installを使用して何かを修正する方法はありません。削除する必要のあるパッケージとは何の関係もない、データベース内の満たされていない依存関係をチェックしないようにapt-getに指示する方法はありますか?スペースを解放すると、壊れたパッケージも実際に解決できます。

私の別の解決策は、いくつかのカーネルを(/kernelsに)移動して手動で領域を解放し、依存関係の問題を修正し、いくつかのカーネルパッケージを削除し、/kernels/*を指示できない場合はapt-getを戻すことです。そうでなければ協力するSO​​MECODE] _。

[〜#〜]編集[〜#〜]

apt-get -f remove PACKAGENAMEを試しましたが、depエラーが発生しました。しかし、apt-get -f autoremoveはdepの問題を無視しました。 -fを指定しない場合、autoremoveはdepエラーにヒットします。これにより、いくつかのカーネルが削除用に検出され、動作しています。したがって、当面の問題は解決されていますが、通常のapt-get -f remove PACKAGENAMEが、無関係な依存関係の問題を無視する同じ機能を備えているかどうかを知りたいと思います。

6
jimp

dpkg --removeインストールの失敗について文句を言わずにパッケージを削除します。これにより、ディスク領域を確保できますapt-get -f autoremove

2