Ubuntu 16.04 - แพ็คเกจเคอร์เนลได้รับการเก็บรักษาไว้


18

ฉันวิ่งsudo apt-get upgradeและฉันได้รับสิ่งนี้:

The following packages have been kept back:  
linux-generic-hwe-16.04 linux-headers-generic-hwe-16.04 linux-image-generic-hwe-16.04 linux-signed-generic-hwe-16.04 linux-signed-image-generic-hwe-16.04  
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.

ฉันกลัวว่าถ้าฉันทำsudo apt-get dist-upgradeอะไรบางอย่างผิดพลาดและทำให้การติดตั้ง Ubuntu ของฉันแย่ลง ฉันได้เห็นคำถามที่คล้ายกันที่นี่ แต่ฉันคิดว่าพวกเขาแตกต่างจากปัญหาของฉัน ฉันควรทำอย่างไรดี ?



@Yaron ฉันไม่คิดเหมือนกัน
NikosL24

มันเป็นสิ่งเดียวกัน อ่านคำตอบ
pzkpfw

Apt ไม่เคยดำเนินการใด ๆ นอกเหนือจากที่ร้องขออย่างชัดเจน เพียงตอบคำถามด้วยคำว่าn"ไม่" (หรือเทียบเท่ากับภาษาที่ Apt ใช้) หากคุณยังไม่แน่ใจเกี่ยวกับสิ่งที่อาจเกิดขึ้นในระหว่างการดำเนินการ Apt คุณสามารถใช้ตัวเลือกบรรทัดคำสั่ง-s/ --simulate/ --just-print/ --dry-run/ --recon/ --no-actเพื่อดูว่า Apt จะทำอะไรได้โดยไม่ต้องทำจริง
David Foerster

คำตอบ:


6

แม้ว่าจะมีการตอบกลับหัวข้อทั่วไป " แพคเกจที่ได้รับกลับมา " ที่นี่มาก่อน: มีบางสิ่งที่แปลก ๆ เกิดขึ้นในวันนี้ ... เมื่อฉันดำเนินการsudo apt updateเมื่อไม่กี่ชั่วโมงที่ผ่านมาเคอร์เนลใหม่ 4.8.0-42 ถูกเสนอสำหรับการติดตั้ง ฉันดำเนินการsudo apt dist-upgradeและหลังจากรีสตาร์ทระบบ (เวิร์กสเตชัน Ubuntu 16.10) ฉันใช้เคอร์เนลใหม่นั้น

ไม่กี่ชั่วโมงต่อมาฉันต้องการอัพเกรดการติดตั้งเซิร์ฟเวอร์ Ubuntu แต่ไม่มีเคอร์เนลใหม่ เพื่อตรวจสอบสถานการณ์ฉันเรียกคืนอิมเมจการสำรองข้อมูลระบบ clonezilla ของฉันจากเมื่อวานนี้บนเวิร์กสเตชัน Ubuntu เพื่อตรวจสอบสถานการณ์อีกครั้ง เวลานี้เคอร์เนลใหม่ไม่ได้ถูกนำเสนออีกต่อไป ดูเหมือนว่าเคอร์เนล 4.8.0-42 ถูกผลักไปยังพื้นที่เก็บข้อมูลหลักโดยไม่ได้ตั้งใจและกำลังจะถูกผลักกลับไปยังพื้นที่เก็บข้อมูลที่เสนอ - บางที Canonical พบข้อผิดพลาด

คุณได้เลือกใช้กับHWE stackของ Ubuntu 16.04 ซึ่งหมายความว่าคุณใช้เคอร์เนล 4.8 ของ Ubuntu 16.10 ดังนั้นทุกอย่างเกิดขึ้นกับเคอร์เนลใน Ubuntu 16.10 ก่อนคำอธิบายที่เป็นไปได้สำหรับการหน่วงเวลาของกระบวนการรีเฟรชสำหรับที่เก็บ Ubuntu 16.04 LTS

เมื่อคุณเรียกใช้sudo apt updateอีกครั้งในภายหลังข้อความที่คุณได้รับจะไม่ปรากฏอีกต่อไป สรุป: อย่ารันsudo apt dist-upgradeและรอจนกระทั่งที่เก็บได้รับการอัพเดตและข้อความเกี่ยวกับแพคเกจเคอร์เนลที่ถูกพักไว้จะไม่ปรากฏอีกต่อไป โดยวิธีการเดียวกันที่เกิดขึ้นกับเคอร์เนลรุ่น 4.8.0-40 แล้วบางเวลาที่ผ่านมา


รายงานดัชนีแพ็กเกจ 4.8.0-42: packages.ubuntu.com/xenial-updates/linux-generic-hwe-16.04 ... คุณใช้มิรเรอร์รุ่นใด
muru

นี่เป็นปัญหา / ของจริงอย่างแน่นอน ฉันอัพเกรดระบบเมื่อวานนี้โดยใช้กระบวนการปกติ วันนี้apt-cache policy linux-generic-hwe-16.04แสดงให้เห็น*** 4.8.0.42.14 100 100 /var/lib/dpkg/status ในคำอื่น ๆ มันก็กำพร้า
หินอ่อนออร์แกนิค

@ cl-netbox ฉันได้อัปเดต sudo apt-get อีกครั้งในขณะนี้และแพคเกจก็หายไป
NikosL24

12

หากการอัปเกรดแพ็คเกจที่มีอยู่จะต้องมีการติดตั้งแพ็คเกจ "ใหม่" (เช่นยังไม่ได้ติดตั้ง) แพคเกจที่มีอยู่นั้นจะถูก "เก็บไว้"

ตามที่คน apt-get , upgradeโดยค่าเริ่มต้นไม่ได้ติดตั้งแพคเกจที่ยังไม่ได้ติดตั้งอื่น ๆ :

อัพเกรด

... ภายใต้สถานการณ์ที่ไม่ได้ติดตั้งแพคเกจที่ถูกลบออกหรือแพคเกจยังไม่ได้ติดตั้งเรียกและติดตั้ง

--with-new-pkgs

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

ดังนั้น--with-new-pkgsจำเป็นต้องเพิ่มเพื่อให้สามารถรวมแพ็คเกจอื่น ๆ ที่เกี่ยวข้องได้

sudo apt-get --with-new-pkgs upgrade

--with-new-pkgs อนุญาตให้ติดตั้งแพคเกจ "ที่ยังไม่ได้ติดตั้ง" ที่เกี่ยวข้องด้วยพรอมต์แบบโต้ตอบ Y / n

นอกจากนี้เพื่อประโยชน์เพิ่มเติมsudo apt-get --with-new-pkgs upgradeไม่มีผลข้างเคียงที่ทำให้แพ็คเกจถูกทำเครื่องหมายว่าติดตั้งด้วยตนเอง


ปรับปรุง

Ubuntu 18.04 ให้รูปแบบใหม่ที่คล่องตัวaptซึ่งสามารถใช้แทนapt-getได้

sudo apt full-upgrade

"ถ้าแพคเกจต้องมีแพ็คเกจใหม่ที่จะติดตั้ง" แล้วมันจะถูกเก็บไว้กลับไม่เหมาะสมกับฉัน ฉันมีแพ็กเกจ deb ของตัวเองฉันจัดการและถ้าฉันเพิ่มการพึ่งพาที่ไม่ได้ติดตั้งในระบบของฉัน apt อัพเกรดจะยังคงอัพเกรดแพ็คเกจและไม่ให้มันกลับมา
ทำลาย

@shreddish จากประสบการณ์ของฉันบางsudo apt-get upgradeสถานการณ์จำเป็นต้องมี--with-new-pkgsข้อมูล man page เห็นได้ชัดว่าแพคเกจเดบิตที่คุณจัดการหรือสถานการณ์การทดสอบที่ใช้ไม่ก่อให้เกิดความต้องการ--with-new-pkgsตัวเลือกที่มีการพึ่งพาการถอนการติดตั้งที่เพิ่ม ... สำหรับเหตุผลบางอย่างที่ยังไม่ได้ค้นพบ มันจะน่าสนใจที่จะรู้ว่าคุณสามารถแยกเหตุผลได้หรือไม่
l --marc l

2

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

The following packages have been kept back:
linux-generic-hwe-16.04 linux-headers-generic-hwe-16.04 linux-image-generic-hwe-16.04
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

หลังจากติดตั้งโปรแกรมปรับปรุงเหล่านั้นจากอูบุนตูซอฟท์แวฉันเดินกลับไปที่ Terminal และได้และsudo apt-get update sudo apt-get upgradeผลลัพธ์:

The following packages were automatically installed and are no longer required:
  linux-headers-4.8.0-41 linux-headers-4.8.0-41-generic linux-headers-4.8.0-44 linux-headers-4.8.0-44-generic linux-image-4.8.0-41-generic
  linux-image-4.8.0-44-generic linux-image-extra-4.8.0-41-generic linux-image-extra-4.8.0-44-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

ไม่ใช่ผู้เชี่ยวชาญฉันคิดว่าการติดตั้งอัปเดตจากซอฟต์แวร์ Ubuntu ดูเหมือนจะแก้ปัญหาได้ และปัญหาดูเหมือนว่าจะไม่มีการสื่อสารอย่างเต็มรูปแบบระหว่างซอฟต์แวร์ Ubuntu และแพ็คเกจ apt-get update และ upgrade ฉันแน่ใจว่าคุณจะพบคำอธิบายที่ดีกว่านี้ แต่ฉันต้องการแบ่งปันสิ่งนี้กับคุณ


ขอบคุณ โดยทั่วไป Ubuntu แนะนำให้เราไม่ใช้ความถนัดหรือ synaptic (โดยลบออกจากการติดตั้งเริ่มต้นบางทีนั่นคือทิศทางที่จะหาคำตอบฉันจะพยายามหลีกเลี่ยงสองสิ่งนี้ทันทีที่ฉันเห็นคำตอบของคุณ ไปที่ Software Center และมันแสดงให้เห็นว่าฉันไม่สนใจเพราะ OS สร้างขึ้นโดย Ubuntu ฉันจะไปที่ SC มันเหมือนกับการโต้เถียงกับ AppStore เมื่อhomebrewทำการเรียกร้อง
nyxee

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