วิธีดาวน์เกรดเคอร์เนลหลังจากอัพเดตไม่ดี (16.04)


20

การอัพเกรดล่าสุดเป็นเคอร์เนล Ubuntu 16.04 (4.4.0-89 และ -91) ล้มเหลวในแล็ปท็อปของฉันไม่ดี มีความสุขที่ฉันมีรุ่นก่อนหน้ายังทำงานติดตั้งยังคง (4.4.0-57) สำหรับตอนนี้ฉันมีด้วงกำหนดค่าให้แสดงเมนูและฉันเลือกด้วยตนเอง -57 ในการบูต sudo apt upgradeแต่ดูเหมือนเปราะบางมีแนวโน้มที่จะหยุดพักในอนาคต

ฉันคิดว่าฉันต้องการ:

  • หากต้องการลบ -89 และ -91 เนื่องจากพวกเขาไม่ได้ทำอะไรให้ฉันดี
  • ในการทำให้ -57 เป็นค่าเริ่มต้นสำหรับ Grub ในลักษณะที่จะคงอยู่ผ่านการอัพเกรด
  • เพื่อให้แน่ใจว่ายังคงมีการติดตั้ง -57 อยู่แม้ว่าฉันจะติดตั้งการอัพเกรดเคอร์เนลในภายหลัง
  • เพื่อให้สามารถลองอัปเดตเคอร์เนลในภายหลังได้อย่างง่ายดาย แต่เปลี่ยนกลับเป็น -57 หากล้มเหลว ข้อกังวลหลักของฉันคือ -57 จะถูกลบโดยอัตโนมัติ
  • หากฉันพบว่าการทำงานในภายหลังมีการปรับปรุงเส้นทางที่ง่ายต่อการย้อนกลับเพื่อยกเลิกทั้งหมดนี้และกลับไปที่การปรับปรุงเคอร์เนลดังต่อไปนี้

การพยายามลบ -91 ด้วยsudo apt remove linux-image-4.4.0-91-genericต้องให้ฉันลบ linux-generic และ linux-headers-generic นั่นดูเหมือนแย่ดังนั้นฉันไม่ได้ลองเลย

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

วิธีที่ดีที่สุดในการทำเช่นนี้คืออะไร?

ภาคผนวก : สิ่งนี้มีการตั้งค่าสถานะว่าซ้ำกับวิธีป้องกันการอัพเดทของแพ็คเกจเฉพาะหรือไม่ . คำตอบนั้นอาจตอบคำถามของฉันได้ส่วนหนึ่ง แต่ไม่ได้กล่าวถึงภาพรวมที่ใหญ่กว่า

ในวงกว้างประเด็นคือเคอร์เนลได้รับการจัดการในลักษณะที่ผิดปกติ มันติดตั้งผ่านทาง linux-generic ซึ่งไม่มีอะไรนอกจากการพึ่งพา linux-image-generic และ linux-image-headers ผู้ที่กลับมาเป็นเพียงการอ้างอิงใน linux-linux-image-VERSION-generic และ headers-VERSION-generic แพคเกจที่น่าสังเกตสำหรับการอบหมายเลขรุ่นลงในชื่อแพ็คเกจ (น่าจะทำให้ติดตั้งหลายตัวพร้อมกันได้)

โดยเฉพาะที่ไม่ได้ระบุไว้ในคำตอบนั้นคือ:

  • ไม่ได้ระบุวิธีการลบ -89 และ -91
  • ไม่ได้ระบุวิธีการทำให้ -57 เป็นค่าเริ่มต้นสำหรับ Grub แม้ว่าฉันจะติดตั้งการปรับปรุงในภายหลัง
  • ไม่ได้ระบุวิธีการตรวจสอบให้แน่ใจว่า -57 ยังคงติดตั้งอยู่แม้ว่าฉันจะติดตั้งการปรับปรุงในภายหลัง แม้ว่าคำตอบคือให้ถือหนึ่งหรือหลายแพ็คเกจโดยพิจารณาจากหลาย ๆ แพ็คเกจที่เกี่ยวข้อง หากเป็นเรื่องของการถือครองลินุกซ์ทั่วไปฉันจะลดระดับมันได้อย่างไรก่อน

มันไม่น่าเป็นไปได้อย่างยิ่งที่เมล็ด "ล้มเหลว" บนแล็ปท็อปของคุณ อาจเป็นไปได้ว่าคุณติดตั้งไดรเวอร์บางตัวในทางที่ผิดและ "ล้มเหลว" หลังจากการอัพเกรดเคอร์เนล คุณติดตั้งไดรเวอร์กราฟิกใด ๆ
Pilot6

หากคุณลบเคอร์เนลล่าสุดและ linux-generic ที่มีส่วนหัวคุณจะบรรลุเป้าหมายของคุณ แต่อย่างที่บอกว่าปัญหานั้นแตกต่างกัน
Pilot6

1
"ล้มเหลว" ไม่มี wifi และ X ไม่มีความสุขเกี่ยวกับกราฟิกของฉัน ทั้งสองอย่างนั้นเป็นไดรเวอร์ Intel ที่ใช้ร่วมกันและที่ใช้ร่วมกัน ปัญหายังคงมีอยู่ผ่านการรีบูตหลายครั้งรวมถึงการปิด / เปิดเครื่องเต็มรูปแบบ ดังนั้นเป้าหมายของฉันคือการหยุดชั่วคราวจนกว่าฉันจะตรวจสอบได้อย่างจริงจัง โดยปกติฉันเริ่มเก็บข้อมูลบางอย่างเพื่อการสอบสวนที่ร้ายแรงและ -91 เริ่มทำงานตามที่คาดไว้ ถอนหายใจฉันจะข้ามมือของฉันตอนนี้
Alan De Smet

1
สิ่งนี้ไม่ซ้ำกัน มันไม่ได้เป็นเพียงแค่การแช่แข็งแพคเกจบางอย่าง อาจจะซ้ำซ้อน แต่ไม่ใช่ของคำถามที่เสนอ
Pilot6

คำตอบ:


19

ลบเคอร์เนลล่าสุดโดย

sudo apt remove linux-image-4.4.0-91-generic linux-headers-4.4.0-91-generic

ที่จะถอนการติดตั้งแพคเกจเมตาlinux-generic, และlinux-image-generic linux-headers-genericเมล็ดจะไม่ถูกอัพเกรด

หากต้องการย้อนกลับคุณสามารถเรียกใช้

sudo apt install linux-generic

ที่จะติดตั้งเคอร์เนลและเมล็ดล่าสุดจะได้รับการอัพเกรด

linux-genericเป็นแพ็คเกจเมตา มันเป็นความว่างเปล่า แต่ขึ้นอยู่กับสองแพคเกจเมตาอื่น ๆและlinux-image-genericlinux-headers-generic

สองจุดสุดท้ายของเคอร์เนลอิมเมจและส่วนหัวล่าสุด

หากคุณลบแพ็คเกจเมตาจะไม่มีสิ่งใดถูกลบออกจาก Linux แต่อิมเมจเคอร์เนลและส่วนหัวจะไม่ได้รับการอัพเดต คุณสามารถติดตั้งได้ในภายหลัง พวกเขาจะดึงแพ็คเกจเคอร์เนล "ของจริง" ล่าสุด

ดังนั้นทางออกคือการลบเคอร์เนลแพ็คเกจที่คุณไม่ต้องการและเมตาแพ็คเกจ


3

แม้ว่าทางออกของ Pilot6 อาจเป็นทางออกที่ดีที่สุด แต่คุณก็สามารถทำมาตรการได้น้อยลง

ฉันจะลบเมล็ดที่คุณไม่ต้องการออกจากศูนย์ซอฟต์แวร์เป็นการส่วนตัวแล้วพักแพคเกจเหล่านั้นไว้ - ดูวิธีป้องกันการอัปเดตแพคเกจเฉพาะหรือไม่

นี่คือการเปลี่ยนแปลงเล็กน้อยและคุณสามารถนั่งหรือเปลี่ยนการเปลี่ยนแปลงได้ค่อนข้างง่าย


แพ็คเกจไหนที่คุณแนะนำให้ถือ?
Pilot6

linux-generic น่าจะเพียงพอฉันไม่แน่ใจ อาจต้องเพิ่มในส่วนอื่นและอาจต้องระบุเคอร์เนลที่แน่นอน แต่ฉันสงสัย
Panther

3
sudo apt-mark hold linux-image-generic linux-headers-genericจะทำ
Panther

1
@ Pilot6 - ไม่คุณสามารถเก็บเมล็ดเก่าและทำเครื่องหมายด้วงซึ่งเคอร์เนลเพื่อบูต askubuntu.com/questions/216398/…
Panther

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