แก้ไข: ไม่สามารถแก้ไขปัญหา 'คุณมีแพ็กเกจที่ใช้งานไม่ได้'



ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา

คุณอาจพบว่าเมื่อคุณพยายามติดตั้งแพ็คเกจบน Linux คุณพบบรรทัดที่น่ากลัวที่อ่านว่า E: ไม่สามารถแก้ไขปัญหาได้แสดงว่าคุณมีแพ็กเกจที่ใช้งานไม่ได้ จากนั้นการติดตั้งจะปฏิเสธที่จะดำเนินการนอกเหนือจากจุดนี้ คุณอาจพบสิ่งนี้ในการแจกจ่าย Linux ใด ๆ ที่ใช้ apt-get เพื่อจัดการแพ็คเกจซึ่งรวมถึง Debian ตลอดจน Linux Mint และ Ubuntu spin-off ต่างๆ



เกิดจากการอ้างอิงที่ใช้งานไม่ได้ซึ่งเป็นผลข้างเคียงจากการติดตั้งแพ็กเกจที่ขึ้นอยู่กับแพ็กเกจอื่น ๆ ที่ไม่ได้ติดตั้ง เมื่อ apt-get ไปติดตั้งบางสิ่งบางอย่างจะสังเกตเห็นว่าไม่สามารถเข้าถึงสิ่งที่ต้องการได้จึงไม่สามารถดำเนินการต่อได้ เทคนิคบรรทัดคำสั่งพื้นฐานสองสามอย่างรวมถึงเครื่องมือกราฟิกสามารถแก้ไขทุกอย่างได้อย่างรวดเร็ว



วิธีที่ 1: การใช้ dpkg - กำหนดค่าเพื่อแก้ไขแพ็กเกจที่ใช้งานไม่ได้

ขณะทำงานที่เทอร์มินัลให้ลองรัน sudo dpkg - กำหนดค่า -a เพื่อเริ่มกระบวนการอัปเดตอัตโนมัติที่ค้นหาการอ้างอิงที่เสียหายในระบบของคุณซึ่งเกิดจากแพ็คเกจที่ไม่ได้ติดตั้ง เครื่องมือนี้ควรติดตั้งแพ็กเกจโดยอัตโนมัติที่รู้สึกว่าคุณพลาดโดยไม่มีการแทรกแซงของผู้ใช้แม้ว่าคุณจะถูกขอให้ติดตั้งบางอย่างคุณควรกดปุ่ม y เพื่อตอบสนองต่อการแจ้งเตือน



หากไม่พบแพ็กเกจที่เสียหายคุณจะไม่เห็นผลลัพธ์ใด ๆ เรารันสิ่งนี้บนเครื่องทดสอบทั้งหมดที่ใช้ Xubuntu ดังนั้นจึงไม่พบข้อผิดพลาดใด ๆ แต่หากคุณได้รับปัญหา“ ไม่สามารถแก้ไขปัญหาคุณมีปัญหาแพคเกจที่เสียหาย” สิ่งนี้อาจพบหลายแพ็คเกจที่คุณต้องติดตั้ง . เมื่อคุณเรียกใช้แล้วให้ลอง sudo apt-get install -f จากบรรทัดคำสั่ง



โปรแกรมนี้จะดำเนินการและสร้างรายการอ้างอิงจากนั้นอ่านข้อมูลสถานะ หากคุณได้รับข้อความระบุว่ามีแพ็กเกจ“ 0 อัปเกรด, 0 ติดตั้งใหม่, 0 ที่จะลบและ 0 ไม่ได้อัปเกรด” แสดงว่าคุณกำลังทำงานโดยไม่มีการอ้างอิงที่เสียหายหรือคำสั่งก่อนหน้าได้แก้ไขทุกอย่าง ณ จุดนี้คุณสามารถเรียกใช้ sudo apt-get clean && sudo apt-get update ติดตามโดย sudo apt-get อัพเกรด เพื่ออัปเดตทุกแพ็คเกจในระบบของคุณ อาจใช้เวลาสักครู่ขึ้นอยู่กับว่าระบบของคุณมีปัญหาเกี่ยวกับแพ็คเกจเหล่านี้นานแค่ไหน

วิธีที่ 2: การใช้คำสั่ง dist-upgrade

หากคุณได้รับข้อความแจ้งว่า“ บางแพ็คเกจถูกระงับ” คุณจึงไม่สามารถดำเนินการตามคำสั่งก่อนหน้านี้ได้สำเร็จคุณควรเรียกใช้ sudo apt-get dist-upgrade เพื่อติดตั้งส่วนที่เหลือของแพ็คเกจเหล่านี้ เช่นเดียวกับการใช้งานฟังก์ชันของการอัปเกรดปกติตัวเลือกการอัปเกรด dist จะจัดการการอ้างอิงที่เปลี่ยนแปลงกับแพ็กเกจเวอร์ชันที่ใหม่กว่า เนื่องจาก apt-get มีระบบความขัดแย้งพิเศษจึงมักจะพยายามอัปเกรดแพ็คเกจที่สำคัญที่สุดโดยเสียค่าใช้จ่ายโดยไม่ต้องทำอะไรกับระบบที่มีความสำคัญน้อยกว่า การใช้คำสั่งนี้บังคับให้แม้แต่ผู้ที่อัปเดต

ตามที่กล่าวไว้หากตรวจไม่พบแพ็กเกจที่เสียคุณจะพบข้อความที่สามว่าไม่มีการอัปเกรดและไม่มีการติดตั้งใหม่ หากเป็นกรณีนี้คุณสามารถลองได้ sudo apt-get อัพเกรด อีกครั้งเพื่อที่ว่าหากมีการเปลี่ยนแปลงใด ๆ รูทีนย่อยการอัพเกรดอัตโนมัติสามารถระงับได้ ในทางกลับกันหากคุณทราบชื่อเฉพาะของแพ็กเกจที่คุณต้องการคุณสามารถติดตั้งได้ด้วยตนเอง

ตัวอย่างเช่นสมมติว่าคอมโพเนนต์รันไทม์ GNUStep เป็นสิ่งที่คุณขาดไปเนื่องจากคุณต้องการใช้การสังเคราะห์เสียง คุณสามารถพิมพ์ sudo apt-get ติดตั้ง gnustep-gui-runtime เพื่อติดตั้งแพ็คเกจที่สำคัญนี้ โปรดทราบว่านี่เป็นเพียงตัวอย่างและคุณสามารถแทนที่ gnustep-gui-runtime ด้วยชื่อของแพ็คเกจที่คุณต้องการติดตั้งได้ การแจกแจงสมัยใหม่ที่อิงตามมาตรฐาน apt-get มีแพ็คเกจหลายพันแพ็คเกจ แต่ตราบใดที่คุณรู้ชื่อของแพ็กเกจที่คุณกำลังมองหาสิ่งนี้จะบังคับให้ติดตั้ง

วิธีที่ 3: แก้ไขแพ็คเกจที่เสียด้วย Synaptic

หากคุณมีตัวจัดการแพ็คเกจกราฟิก Synaptic คุณยังสามารถใช้เครื่องมือนี้เพื่อแก้ไขแพ็คเกจที่เสียหายที่คุณอาจมี เปิดโปรแกรมจากนั้นเลือกเมนูแก้ไขรายการเลือกแบบเลื่อนลง คุณควรมีตัวเลือก“ Fix Broken Packages” ในเมนูนี้ดังนั้นเลือกตัวเลือกนี้หากคุณมี จะใช้เวลาไม่นานมากในการเรียกใช้หากไม่มีแพ็กเกจที่เสียหายจำนวนมาก แต่อาจพบข้อผิดพลาดหลายประการซึ่งจะทำให้การดำเนินการช้าลง

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

ตอนนี้คุณสามารถอัปเดตและติดตั้งแพ็คเกจได้เหมือนปกติ ผู้ใช้ส่วนใหญ่จะทำสิ่งต่างๆในลักษณะนี้ก็ต่อเมื่อพวกเขาทำงานใน Synaptic อยู่แล้ว แต่จะสามารถใช้ได้ทุกเมื่อที่คุณต้องการ เมื่อเรียกใช้แล้วคุณสามารถปิด Synaptic และทำงานจากพรอมต์คำสั่งอีกครั้งหรือทำการเปลี่ยนแปลงต่อได้ที่นี่

อ่าน 3 นาที