2

Я запускал dnf update в своей системе Fedora 22, когда Gnome потерпел крах, нарушив работу dnf . Теперь при повторной попытке я получаю эту ошибку:

The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction check error:
  file /usr/share/licenses/libpng/LICENSE from install of libpng-2:1.6.19-1.fc22.i686 conflicts with file from package libpng-2:1.6.16-3.fc22.x86_64
  file /usr/share/man/man5/png.5.gz from install of libpng-2:1.6.19-1.fc22.i686 conflicts with file from package libpng-2:1.6.16-3.fc22.x86_64
  file /usr/share/doc/libgpg-error/README from install of libgpg-error-1.21-1.fc22.i686 conflicts with file from package libgpg-error-1.17-2.fc22.x86_64
  [... many more ...]
  file /usr/share/doc/libgpg-error/AUTHORS from install of libgpg-error-1.21-1.fc22.i686 conflicts with file from package libgpg-error-1.17-2.fc22.x86_64
  file /usr/share/doc/pcre/NEWS from install of pcre-8.38-1.fc22.i686 conflicts with file from package pcre-8.37-4.fc22.x86_64
  file /usr/share/doc/pcre/ChangeLog from install of pcre-8.38-1.fc22.i686 conflicts with file from package pcre-8.37-4.fc22.x86_64

Error Summary
-------------

Как я могу заставить dnf продолжить установку новых версий?

2 ответа2

1

Похоже, у вас есть мультибиблиотечная система - x86_64 с установленными пакетами i686. Часто такие пакеты совместно используют файлы, и это не проблема, если они абсолютно идентичны. Похоже, что здесь вы обновили одну архитектуру, но не другую, а общий файл изменился.

Самый простой выход из этого - удалить пакеты i686. В этом случае,

sudo dnf remove libpng.i686 libgpg-error.i686 pcre.i686

должен сделать это. Он также может удалить кучу зависимостей i686, что нормально. Вы всегда можете положить их обратно. Сделайте это, а затем обновите, а затем верните обратно все 32-битные программы, которые вам действительно нужны.

1

Я использовал rpm для принудительного обновления, не удаляя сначала пакеты i686. dnf сохраняет файлы RPM в /var/cache/dnf/updates-<tx-id>/packages/:

sudo rpm -i --force /var/cache/dnf/updates-<tx-id>/packages/<package>.rpm

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .