Debian Wheezyに複数のUbuntuパッケージをインストールしようとしましたが、失敗し、パッケージが破損しています。
apt-get -f install
問題は、次のエラーが原因で実行も失敗することです。
Preparing to replace libqtwebkit4:amd64 2.2.1-1ubuntu4 (using .../libqtwebkit4_2.2.1-5_amd64.deb) ...
Unpacking replacement libqtwebkit4:amd64 ...
dpkg: error processing /var/cache/apt/archives/libqtwebkit4_2.2.1-5_amd64.deb (--unpack):
trying to overwrite shared '/usr/share/doc/libqtwebkit4/changelog.Debian.gz', which is different from other instances of package libqtwebkit4:amd64
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
特定のファイルを上書きすることについて文句を言うようです。このファイルを削除または移動する必要がありますか?
答え1
最後に、問題のあるファイルのディレクトリを移動しました。
sudo mv /usr/share/doc/libqtwebkit4 /usr/share/doc/libqtwebkit4.backup
その後apt-get -f install
は正常に実行されます。
答え2
Debian Wheezyに複数のUbuntuパッケージをインストールしようとしています。
問題は、UbuntuとDebianは同じパッケージ形式を使用しますが、DebianとUbuntuパッケージはパッケージのバージョンが異なるため、同じシステムで簡単に混在できないことです。複数のバージョンのDebianまたはUbuntuを混在させると、同様の問題が発生します。これは、主にリーフパッケージ(他のパッケージが依存しないパッケージ)をインストールする場合に可能ですが、お勧めできません。
より具体的には、ここでの問題は、さまざまなlibqtwebkit4
アーキテクチャ(およびi386
)にamd64
異なるバージョンのパッケージがインストールされていることです。どちらのアーキテクチャも同じバージョンを持つ必要があります。apt-get install libqtwebkit4 libqtwebkit4:i386
手動で操作する必要があるポイントに達した可能性がありますが、この問題を解決することが可能かもしれません。原則として、APTのみを使用してこの状態に達した場合は、APTを使用してこの状態から離れることができるはずです。一方、手動でdpkg
呼び出す場合は、いくつかの手動修正が必要な場合があります。