ด้วย yum คุณจะลบแพ็คเกจออกได้อย่างไร


13

วันนี้ถ้าฉันทำ$ yum remove packageAฉันได้รับการต้อนรับด้วย:

Removing:
packageA                        noarch                 3.5.1.b37-15                                 @yumFS                 293 k
Removing for dependencies:
 packageB                      noarch                 3.5.1.b125-7                                 @yumFS                  87 M
..
Is this ok?

ฉันต้องการลบ packageA โดยไม่ลบ packageB (ฯลฯ ) เป็นไปได้หรือไม่


1
เป็นไปได้ ? ใช่. แต่จุดประสงค์ทั้งหมดของผู้จัดการแพ็คเกจคือเพื่อป้องกันสิ่งนี้ Google ไปรอบ ๆ เพื่อ "RPM Hell" สำหรับความคิดที่ดีว่าคุณกำลังทำอะไรอยู่
DopeGhoti

คำตอบ:


18

ปรากฎเป็นไปได้โดยใช้รอบต่อนาที:

$ rpm -e --nodeps packageA

แม้ว่าจะเห็นได้ชัดว่าควรระวังให้ดีเพราะหากคุณลบแพ็คเกจอ้างอิงและอย่านำแพคเกจกลับมาซึ่งอาจนำไปสู่ผลลัพธ์ที่ไม่คาดคิดสำหรับแพ็คเกจที่ยังคงขึ้นอยู่กับ ...


คำถามเกี่ยวกับเรื่องนี้ Application built with libpng-1.6.16 but running with 1.5.13ผมมีปัญหารุ่นพึ่งพาคำเตือนคือ ฉันคิดว่าฉันต้องการเพียงแค่สลับ แต่อยากจะเอาตันของสิ่งที่ถ้าผมลบออกก่อนyum libpngดังนั้นฉันจึงใช้วิธีที่คุณแสดงที่นี่เพื่อลบทั้งสองlibpngและlibpng-develจากนั้นสร้างและติดตั้งlibpng-1.6.1จากแหล่งที่มาและปัญหาของฉันก็หายไป ในขณะที่มันทำงานให้ซอฟต์แวร์ฉันทันทีที่จำเป็น (Mapnik) ผมสามารถวางใจได้ว่าผมไม่ได้ทำลายสิ่งอื่นกลับต้นน้ำเช่นบางสิ่งบางอย่างyumแรกอยากที่จะลบพร้อมกับlibpng?
elrobis

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

1

ฉันพบว่ามันเป็นไปได้ที่จะทำเช่นนี้กับยัม:

sudo yum remove --noautoremove <package name>

2
อืม ... ฉันลองใช้งานบน CentOS 6 และ 7 และได้รับ "ไม่มีตัวเลือกดังกล่าว: - ไม่มีรายการใด ๆ " ความคิดใด ๆ
rogerdpack

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