ฉันสามารถบังคับให้ dnf ติดตั้งแพ็คเกจรุ่นเก่าได้หรือไม่?


31

ฉันต้องการที่จะติดตั้งรุ่นเก่าpackage <x>และเมื่อฉันใช้มันจะแสดงเฉพาะรุ่นปัจจุบันของdnfpackage <x>

มีวิธีการติดตั้งรุ่นเก่ากว่าโดยใช้dnfหรือไม่?

คำตอบ:


46

คุณสามารถติดตั้งโดยใช้ชื่อรุ่นเฉพาะตามที่อธิบายไว้ใน man page:

dnf install tito-0.5.6-1.fc22

ติดตั้งแพคเกจด้วยรุ่นเฉพาะ หากมีการติดตั้งแพคเกจไว้แล้วมันจะพยายามปรับลดรุ่นหรืออัปเกรดเป็นรุ่นที่ระบุโดยอัตโนมัติ

ในการดูแพ็คเกจทุกรุ่นในที่เก็บที่คุณเปิดใช้งานให้ใช้:

dnf --showduplicates list <package>

16

ใช่. คุณสามารถติดตั้งแพ็คเกจรุ่นเก่าโดยใช้dnf downgrade package-name[-version]หากคุณติดตั้งแพ็คเกจใหม่แล้ว แต่รุ่นเก่ายังคงต้องมีในกระจก

ถ้าแพคเกจไม่สามารถใช้ได้จากกระจกคุณสามารถดาวน์โหลดได้ด้วยตนเองจากโคจิและจากนั้นใช้เพื่อปรับลดเช่นdnf dnf downgrade path/to/downloaded.file.rpmแต่ด้วยเทคนิคนี้คุณอาจต้องแก้ไขการพึ่งพาตัวเอง


พึงระลึกไว้เสมอว่าการติดตั้งแพ็คเกจด้วยตนเองมีข้อเสียที่จะไม่ได้รับการอัพเดตใด ๆ (พูดถึงการแก้ไขความปลอดภัย) สำหรับแพ็คเกจนั้นหากมี
Thorian93

นี่ไม่ใช่การติดตั้งแพ็คเกจด้วยตนเอง แต่เพียงดาวน์โหลดด้วยตนเอง ทุกครั้งที่คุณเรียกใช้dnf updateคุณจะได้รับการอัปเดตรวมถึงการแก้ไขความปลอดภัย
Jakuje

คุณแน่ใจหรือไม่ ฉันอยากรู้อยากเห็นอย่างแท้จริงเพราะฉันคิดเสมอว่าการติดตั้ง. rpm ทำให้ฉันต้องรับผิดชอบการติดตั้งเวอร์ชันที่อัปเดตโดยตรง นอกจากว่า. rpm เองจะติดตั้งที่เก็บของมันเอง คุณสามารถให้การอ้างอิงสำหรับคำสั่งของคุณ?
Thorian93

1
มันทำงานได้ด้วยวิธีนี้หากคุณติดตั้งแพคเกจที่ไม่ได้บรรจุในระบบของคุณ (จากที่อื่น) หรือถ้าคุณติดตั้งเวอร์ชั่นใหม่กว่าที่ระบบของคุณมีให้ กรณีการใช้งานเฉพาะนี้ติดตั้ง RPM ที่เก่ากว่าจาก koji (ระบบการสร้างอย่างเป็นทางการ) ซึ่งหมายความว่าส่วนใหญ่อาจรวมอยู่ใน Fedora และเวอร์ชั่นที่เก่ากว่าดังนั้นการอัปเดตในอนาคตจะอัพเดต
Jakuje

อ่าฉันคิดว่าฉันเข้าใจในสิ่งที่คุณหมายถึงขอบคุณสำหรับคำอธิบาย!
Thorian93
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.