dnf เกิดข้อผิดพลาดและมีข้อผิดพลาดในการทำธุรกรรมในขณะนี้


3

ผมได้ทำงาน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จะบังคับให้ติดตั้งเวอร์ชันใหม่ต่อไปได้อย่างไร

คำตอบ:


1

ดูเหมือนว่าคุณมีระบบหลายระบบ - ติดตั้ง x86_64 พร้อมกับแพ็คเกจ i686 บ่อยครั้งที่แพ็คเกจเหล่านี้แชร์ไฟล์ซึ่งไม่มีปัญหาตราบใดที่ไฟล์เหมือนกันหมด ดูเหมือนว่าที่นี่คุณได้รับการปรับปรุงสถาปัตยกรรมหนึ่ง แต่ไม่ใช่อื่น ๆ และมีการเปลี่ยนแปลงไฟล์ที่ใช้ร่วมกัน

วิธีที่ง่ายที่สุดคือลบแพ็กเกจ i686 ในกรณีนี้,

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

ควรทำมัน นอกจากนี้ยังอาจลบการพึ่งพา i686 ซึ่งเป็นเรื่องปกติ คุณสามารถนำมันกลับมาได้ตลอดเวลา ทำสิ่งนี้แล้วอัปเกรดแล้วนำโปรแกรม 32 บิตที่คุณต้องการกลับมาใช้ใหม่


ขอบคุณ แต่ฉันอัพเกรดจาก 22 เป็น 23 อยู่ดีและมันก็ใช้ได้เช่นกัน พบปัญหาบางอย่างกับแพ็กเกจอื่น ๆ แต่การลบและติดตั้งใหม่นั้นแก้ไขได้
Bart Friederichs

2

ฉันเคยrpmบังคับให้อัพเกรดโดยไม่ต้องลบแพ็คเกจ i686 ก่อน dnfช่วยบันทึกไฟล์ RPM ใน/var/cache/dnf/updates-<tx-id>/packages/:

sudo rpm -i --force /var/cache/dnf/updates-<tx-id>/packages/<package>.rpm
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.