วิธีการใช้ yum เพื่อติดตั้งการอ้างอิงทั้งหมดของแพ็คเกจที่กำหนดได้อย่างไร


15

ดังนั้นฉันจึงมีแพ็คเกจที่ฉันค่อนข้างแน่ใจว่าฉันได้ลบส่วนหนึ่งของการอ้างอิงเมื่อทำการลบบางสิ่งออก (เหมือนใน rm) เรื่องยาว. โดยทั่วไปสิ่งที่ฉันต้องการจะทำคือให้ yum ติดตั้งแพคเกจและการอ้างอิงทั้งหมดอีกครั้งเพื่อให้ติดตั้งไฟล์ที่ฉันลบอีกครั้ง ในโลกของ Gentoo คุณเพียงทำแบบนี้ "Emerge -e" ดูเหมือนว่ายำควรจะทำสิ่งที่คล้ายกันได้

ฉันเดาว่าฉันสามารถ cobble สคริปต์ร่วมกันเพื่อแสดงรายการ dep จากนั้นแยกวิเคราะห์เหล่านั้นและติดตั้งใหม่ทั้งหมด

คำตอบ:


23

ใช่ไม่มีวิธีง่ายๆในการทำเช่นนี้ ... อย่างไรก็ตามคุณสามารถทำบางสิ่งได้:

rpm -Va

... สิ่งนี้จะทำการตรวจสอบแพ็กเกจทั้งหมดที่คุณติดตั้งและคุณสามารถติดตั้งสิ่งที่ไม่ได้ตรวจสอบใหม่ นอกจากนี้:

yum reinstall $(repoquery --requires --recursive --resolve <pkg>)

... นี่จะทำสิ่งที่คุณขอแม้ว่ามันจะเป็นค้อนขนาดใหญ่


ค่อนข้างมีประโยชน์สำหรับการติดตั้งที่ใช้งานไม่ได้เช่นเดียวกับที่ฉันได้รับเมื่อไม่นานมานี้
dashesy


-3

ด้วย

yum reinstall $(yum list installed | awk '{print $1}')

หรือ

rpm -qa | xargs yum reinstall

(ขึ้นอยู่กับความเสียหายที่ทำไปแล้วบนเครื่อง awk หรือ xargs อาจไม่ทำงาน)


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