Debian で apt-get install を使用または削除または削除しようとするたびに、次のエラーが表示されます。
The following packages have unmet dependencies:
libimage-magick-q16-perl : Depends: libmagickcore-6.q16-2 (>= 8:6.8.9.9) but it is not going to be installed
libmagick++-6.q16-5 : Depends: libmagickcore-6.q16-2 (>= 8:6.8.9.9) but it is not going to be installed
Depends: libmagickwand-6.q16-2 (>= 8:6.8.8.9) 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」を実行して問題を解決しようとしましたが、別のエラーが発生しました。
nichadler@debian-server:~$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
libatkmm-1.6-1 libcairomm-1.0-1 libglibmm-2.4-1c2a libgtkmm-2.4-1c2a
libgtkspell0 libimage-magick-perl libimage-magick-q8-perl libpangomm-1.4-1
perlmagick ttf-dejavu-core
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libimage-magick-perl libimage-magick-q8-perl
Suggested packages:
imagemagick-doc
The following packages will be REMOVED:
libimage-magick-q16-perl libmagick++-6.q16-5 libpstoedit0c2a pstoedit
The following NEW packages will be installed:
libimage-magick-q8-perl
The following packages will be upgraded:
libimage-magick-perl
1 upgraded, 1 newly installed, 4 to remove and 19 not upgraded.
Need to get 0 B/397 kB of archives.
After this operation, 2,540 kB disk space will be freed.
Do you want to continue? [Y/n] y
Reading changelogs... Done
(Reading database ... 148618 files and directories currently installed.)
Preparing to unpack .../libimage-magick-q8-perl_8%3a6.9.1-2_amd64.deb ...
Unpacking libimage-magick-q8-perl (8:6.9.1-2) ...
dpkg: error processing archive /var/cache/apt/archives/libimage-magick-q8-perl_8%3a6.9.1-2_amd64.deb (--unpack):
trying to overwrite '/usr/lib/x86_64-linux-gnu/perl5/5.20/auto/Image/Magick/Magick.so', which is also in package libimage-magick-q16-perl 8:6.8.9.9-5
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Processing triggers for man-db (2.7.0.2-5) ...
Errors were encountered while processing:
/var/cache/apt/archives/libimage-magick-q8-perl_8%3a6.9.1-2_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
助けが必要ですか?
答え1
エラーは次のとおりです。
dpkg: /var/cache/apt/archives/libimage-magick-q8-perl_8%3a6.9.1-2_amd64.deb アーカイブ処理中にエラーが発生しました (--unpack): '/usr/lib/x86_64-linux-gnu/ 上書き書き込み中に perl5/5.20/auto/Image/Magick/Magick.so', libimage-magick-q16-perl 8:6.8.9.9-5 パッケージにもあります dpkg-deb: エラー: シグナルによるサブプロセスの貼り付けが終了(パイプ割れ)
dpkg
他のパッケージがファイルを所有しているため、このパッケージのインストールは拒否されました。/usr/lib/x86_64-linux-gnu/perl5/5.20/auto/Image/Magick/Magick.so
デフォルトでは、他のパッケージに属するファイルは上書きされず、パッケージの名前が変更された場合、またはパッケージのコレクションdpkg
が再構成されると、特定のパッケージ内のファイルの「所有権」が変更されることがあります。
次のように -o Dpkg::Options::="--force-overwrite" オプションを使用して apt-get を実行する必要があります。
apt-get -o Dpkg::Options::="--force-overwrite" ...
または、次のように、/etc/apt/apt.confまたは/etc/apt/apt.conf.d/のファイルに追加して永続的に作成することもできます。
DPkg {オプション{"--force-overwrite";}};
答え2
dpkg -r libimage-magick-q16-perl
競合するパッケージを手動で削除し、前の手順でパッケージがインストールされていないapt-get -f install
場合は実行します。apt-get install libimage-magick-q8-perl