強制dpkg修正

強制dpkg修正

/usr/lib私はDebianディレクトリから2つのフォルダを削除する恐ろしい間違いを犯しました。削除しpython2.7/pkgconfig/

成功せずに解決しようとしたこと:

  • sudo dpkg -i python2* ->「プラットフォームに依存しないライブラリが見つかりません」-->「該当するファイル/usr/lib/pyton2.7/py_compile.pyはありません。」

  • -->(Python、今後の再インストール用)で削除しても sudo dpkg -i python2.7-minimal削除できません。python2.7-minimalはpython2.7-minimal(>=....deb)に依存し、python2.7はpython2.7-minimal(>=..._rc2.deb)に依存します.

したがって、指定されたようにdpkgによって「設定」されない限り、これらのパッケージを再インストールまたは修復することはできませんが、apt-get install pythondpkgとは異なるバージョンに依存するため、完全に再インストールするために削除することはできません。この問題を解決する方法がわかりません。

それでは、dpkgまたはaptを介してすべての依存関係を含むパッケージを完全に削除して、上記の状況をどのように解決できますか?

答え1

apt面倒な場合は、dpkgローカルにキャッシュされたパッケージのフルパスを使用して手動で正しいコンテンツを設定することもできます。それだけです:

  1. cdaptパッケージが保存されている場所、つまり/var/cache/apt/archives/
  2. dpkgそれから(必要に応じて)インストール、削除、消去などを行ってからファイル名現在ディレクトリにあるパッケージの名前。したがって、いくつかのバージョンのいずれかをインストールしてください。「プーバ」最近インストールされたバージョンでdpkg -i foobar<TAB>「」キーを入力すると、bash残りの部分が自動的に完了するか、利用可能なバージョンが表示されます。
  3. dpkg必要に応じて「ピッツバン」、(または削除する必要があります「ピッツバン」)、手順2を実行します。「ピッツバン」。次に、ステップ2を試してください。「プーバ」再び。
  4. システムが希望の状態になるまで#2と#3を繰り返します。

これは、必要なパッケージアーカイブがまだローカルにキャッシュされていると仮定します。時にはオンラインでパッケージを見つける必要があるかもしれません。この場合、必要なパッケージのバージョン番号が異なる場合があります。不確実な- この場合、/var/log/dpkg.log答えがあります。grepまたは、sedパッケージ名としてdpkgこれまで使用されていたバージョンが表示されます。

関連情報