ไม่จำเป็นต้องอัพเกรดอีกต่อไป


22

ก่อนที่จะมี Ubuntu 18.04 ฉันใช้ Ubuntu 16.04 และผมใช้sudo apt-get update, sudo apt-get upgradeและsudo apt-get dist-upgradeที่จะทำการปรับปรุงและสิ่งที่อัพเกรด กับอูบุนตู 18.04 ผมเปลี่ยนไปใช้แทนapt apt-getอะไรคือสิ่งที่แปลกสำหรับผมก็คือว่าsudo apt dist-upgradeจะไม่มีผลอีกต่อไป: I do ปรับปรุงและปรับใช้sudo apt updateและsudo apt upgadeแต่เมื่อผมทำงานไม่มีอะไรเกิดขึ้นตรงกันข้ามกับเมื่อฉันถูกใช้sudo apt dist-upgrade เมื่อฉันใช้แพคเกจบางอย่างถูกลบและอื่น ๆ ถูกติดตั้ง อย่างไรก็ตามเมื่อฉันวิ่งไม่มีอะไรเกิดขึ้นเลย .. สิ่งที่ฉันได้คือ: sudo apt-get dist-upgrade
sudo apt-get dist-upgradesudo apt dist-upgrade

sudo apt dist-upgrade 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.  

และสิ่งนี้เกิดขึ้นทุกครั้งตั้งแต่ผมเริ่มใช้แทนapt มันเป็นสิ่งที่เกี่ยวข้องกับ(เช่นแทนที่ทั้งสองและ) หรือสิ่งที่เป็นปัญหาหรือไม่apt-get
aptsudo apt upgradeupgradedist-upgrade


ฉันอยากรู้อยากเห็นคำตอบเต็มรูปแบบ แต่นี่ดูเหมือนจะบ่งบอกว่าคุณถูกต้อง: askubuntu.com/questions/81585/ …
rm-vanda

คำตอบ:


29

apt-get upgradeเทียบapt upgradeกับapt full-upgrade

apt-get upgradeอัพเกรดแอพเครื่องมือและยูทิลิตี้เท่านั้น มันไม่ได้ติดตั้งเคอร์เนล Linux ใหม่ของระบบปฏิบัติการ

apt upgradeอัพเกรดแอพเครื่องมือและยูทิลิตี้และติดตั้งเคอร์เนล Linux ใหม่ของระบบปฏิบัติการ อย่างไรก็ตามมันไม่เคยลบแพ็กเกจเก่าออก

apt full-upgradeอัพเกรดแอพเครื่องมือและยูทิลิตี้และติดตั้งเคอร์เนล Linux ใหม่ของระบบปฏิบัติการ นอกจากนี้ยังลบแพ็คเกจเก่าหากจำเป็นสำหรับการอัพเกรด

ดูเหมือนผมจะเป็นสิ่งเดียวกับapt full-upgrade apt-get dist-upgradeกล่าวคือfull-upgradeจะตรวจสอบและติดตั้งเคอร์เนลใหม่หากพร้อมใช้งานและลบแพ็กเกจเก่าหากจำเป็นต้องลบการอัพเกรด

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

หมายเหตุapt full-upgradeอย่าลบเคอร์เนลที่เก่ากว่าเนื่องจากติดตั้งรุ่นใหม่ล่าสุด apt autoremoveในการลบเหล่านี้ใช้อย่างใดอย่างหนึ่งต้อง

ทำไมเปลี่ยนชื่อจากdist-upgradeเป็นfull-upgrade?

  • ถ้าคุณใช้apt-getแล้วคุณจำเป็นต้องใช้dist-upgrade
  • ถ้าคุณใช้aptแล้วคุณจำเป็นต้องใช้full-upgrade

ฉันคิดว่าdist-upgradeมันค่อนข้างสับสน ตัวอย่างเช่นสิ่งนี้ไม่ได้อัพเกรดจาก Ubuntu 16.04 เป็น Ubuntu 18.04 เพียงอัพเกรดเคอร์เนลและอื่น ๆ ภายใน Ubuntu 16.04

ผมคิดว่าจะง่ายกว่าfull-upgradedist-upgrade

ดู"dist-upgrade" คืออะไรและทำไมจึงอัพเกรดมากกว่า "upgrade" สำหรับรายละเอียดเพิ่มเติม

การเปิดเผยแบบเต็ม: ฉันเป็นแค่ผู้ใช้อูบุนตูฉันไม่ได้ตัดสินใจเปลี่ยน นี่คือมุมมองส่วนตัวของฉัน

หวังว่านี่จะช่วยได้


1
+1 แต่จะอวดรู้จาก manpage ของaptตัวเอง: upgrade ไม่เคยเอาแพคเกจที่มีอยู่ในขณะที่จะลบแพคเกจติดตั้งในปัจจุบันถ้านี้เป็นสิ่งจำเป็นเพื่ออัพเกรดระบบโดยรวมfull-upgrade นอกจากนี้apt dist-upgradeดูเหมือนว่าจะตกลงทำงานบนระบบของฉัน (อาจจะทำงานร่วมกันหลัง)
นาย Shunz

@MrShunz ฉันรู้ว่านี่คือสิ่งที่หน้าคนพูดว่า มันยังกล่าวถึงในคำตอบอื่น ๆ ฉันจะเพิ่มเป็นข้อมูลอ้างอิง
user68186

apt upgradeและapt-get upgradeจัดการสิ่งต่าง ๆ ดูhiroom2.com/2016/05/20/ubuntu-16-04-debian-8-apt-command/…
mook765

@ mook765 ขอบคุณ! ฉันจะแก้ไขคำตอบของฉันตามการอ้างอิงของคุณ
user68186

2
"ฉันคิดว่า dist-upgrade ค่อนข้างสับสน" ฉันสาบานว่านี่คือการพูดของศตวรรษเกี่ยวกับความฉลาด มีอะไรเกี่ยวกับ apt ที่ไม่สับสนหรือไม่! เช่นเดียวกับชื่อ "apt" หรือ "aptitude" ที่เกี่ยวข้องกับการจัดการบรรจุภัณฑ์ตั้งแต่แรก? ทำไมถึงมี 3 รูปแบบของ apt เหตุใดจึงไม่สามารถ ปรับเปลี่ยนระบบของฉันได้ ทำไม "อัพเดท" ไม่อัปเดตระบบของฉัน ทำไม "อัพเกรด" ไม่อัปเกรดระบบของฉัน เหตุใดจึงไม่ควรอัปเดตแคชภายในก่อนที่จะอัปเกรดโดยอัตโนมัติเช่นระบบปฏิบัติการที่มีเหตุผล เหตุใดจึงกำจัดการถอนการติดตั้งแพคเกจแทนที่จะกำจัดมันออกจากแคช? ฯลฯ ....
เมห์ราด

15

dist-upgradefull-upgradeได้ถูกแทนที่โดยในอูบุนตู

ผู้ใช้เก่าของอูบุนตูจำได้ว่าเมื่อใดที่dist-upgradeใช้เป็นประจำเพื่อติดตั้งแพ็กเกจเคอร์เนล upgradeชื่อแพคเกจเคอร์เนลเปลี่ยนกับรุ่นทำให้พวกเขาไม่มีสิทธิ์สำหรับผิวธรรมดา full-upgradeได้รับการเพิ่มเข้ามาเพื่อตอบสนองความต้องการของแพ็คเกจ Ubuntu อย่างปลอดภัย

จุดประสงค์ดั้งเดิมของdist-upgradeคือการโอนย้ายระหว่างการเปิดตัวเดเบียน (โดยประมาณเทียบเท่ากับอูบุนตูdo-release-upgrade) ดังนั้นจึงมีการป้องกันน้อยลงเล็กน้อยจากผลที่ไม่คาดคิด อ่านการเปลี่ยนแปลงที่เสนออย่างรอบคอบก่อนที่จะยอมรับ

การใช้dist-upgradeแทนfull-upgradeอาจจะไม่ทำให้ระบบสุขภาพเสียหาย ผู้ใช้หลายล้านคนในช่วงทศวรรษที่ผ่านมาได้ทำการแก้ไขข้อบกพร่องจำนวนมากจากกระบวนการทำงานที่เหมาะสม อย่างไรก็ตามdist-upgradeอาจมีผลลัพธ์ที่ไม่คาดคิดในระบบที่มีแพ็กเกจที่ใช้งานไม่ได้หรือปัญหาอื่น ๆ ที่ยังไม่ได้แก้ไข


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