Là apt dist-nâng cấp không cần thiết nữa


22

Trước khi Ubuntu 18.04 có sẵn, tôi đã sử dụng Ubuntu 16.04. Và tôi đã sử dụng sudo apt-get update, sudo apt-get upgradesudo apt-get dist-upgradeđể thực hiện cập nhật và nâng cấp công cụ. Với Ubuntu 18.04, tôi đã thay đổi để sử dụng aptthay vì apt-get. Điều kỳ lạ đối với tôi là nó sudo apt dist-upgradekhông còn tác dụng nữa: tôi thực hiện cập nhật và nâng cấp bằng cách sử dụng sudo apt updatesudo apt upgade, nhưng khi tôi chạy sudo apt dist-upgrade, không có gì xảy ra trái ngược với khi tôi đang sử dụng sudo apt-get dist-upgrade.
Khi tôi sử dụng sudo apt-get dist-upgrademột số gói đã được gỡ bỏ và những gói khác đã được cài đặt. Tuy nhiên khi tôi chạy sudo apt dist-upgrade, không có gì xảy ra cả .. Tất cả những gì tôi nhận được là:

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.  

Và điều này xảy ra mỗi lần kể từ khi tôi bắt đầu sử dụng aptthay vì apt-get.
Đây có phải là một cái gì đó liên quan đến apt(tức là sudo apt upgradethay thế cả hai upgradedist-upgrade) hoặc vấn đề chính xác là gì?


Tôi sẽ tò mò muốn xem câu trả lời đầy đủ, nhưng điều này dường như cho thấy bạn đã đúng: askubfox.com/questions/81585/ Kẻ
rm-vanda

Câu trả lời:


29

apt-get upgradeđấu apt upgradevớiapt full-upgrade

apt-get upgradechỉ nâng cấp các ứng dụng, công cụ và tiện ích. Nó không cài đặt kernel Linux mới của HĐH.

apt upgradenâng cấp các ứng dụng, công cụ và tiện ích và cài đặt nhân Linux mới của HĐH. Tuy nhiên, nó không bao giờ loại bỏ các gói cũ.

apt full-upgradenâng cấp các ứng dụng, công cụ và tiện ích và cài đặt nhân Linux mới của HĐH. Nó cũng loại bỏ các gói cũ nếu cần để nâng cấp.

Dường như với tôi apt full-upgradelàm điều tương tự như apt-get dist-upgrade. Điều đó có nghĩa là full-upgradesẽ kiểm tra và cài đặt kernel mới nếu có và loại bỏ các gói cũ nếu việc gỡ bỏ là cần thiết để nâng cấp.

hạt nhân là phần cơ bản của HĐH. Vì lý do này, phiên bản cũ của kernel không bao giờ được thay thế bởi phiên bản mới khi bạn chạy apt upgradehoặc apt full-upgrade. Phiên bản mới của kernel được cài đặt và phiên bản hiện tại được giữ nguyên. Cấu hình trong grub được thay đổi để khởi động từ phiên bản mới theo mặc định trong quá trình nâng cấp. Nếu hạt nhân mới không hoạt động vì một số lý do, người ta có thể khởi động từ hạt nhân cũ từ menu grub nâng cao.

Lưu ý, apt full-upgradekhông loại bỏ các phiên bản cũ hơn của hạt nhân vì nó cài đặt phiên bản mới nhất. Để loại bỏ những cái này phải sử dụng apt autoremove.

Tại sao đổi tên từ dist-upgradethành full-upgrade?

  • Nếu bạn sử dụng apt-getthì bạn cần sử dụngdist-upgrade
  • Nếu bạn sử dụng aptthì bạn cần sử dụngfull-upgrade

Tôi nghĩ rằng dist-upgrademột chút khó hiểu. Ví dụ: điều này không nâng cấp từ Ubuntu 16.04 lên Ubuntu 18.04. Nó chỉ nâng cấp kernel và các thứ khác, trong Ubuntu 16.04.

Tôi nghĩ full-upgradelà trực quan hơn dist-upgrade.

Xem "nâng cấp" là gì và tại sao nó nâng cấp nhiều hơn "nâng cấp"? để biết thêm chi tiết.

Tiết lộ đầy đủ: Tôi chỉ là người dùng Ubuntu Tôi không đưa ra quyết định thay đổi. Đây là những quan điểm cá nhân của tôi.

Hi vọng điêu nay co ich


1
+1, nhưng để trở thành nhà giáo, từ trang chủ của aptchính nó: upgrade không bao giờ xóa các gói hiện có , trong khi full-upgrade sẽ xóa các gói hiện được cài đặt nếu điều này là cần thiết để nâng cấp toàn bộ hệ thống . Ngoài ra, có apt dist-upgradevẻ như hoạt động tốt trên hệ thống của tôi (có thể để tương thích ngược).
Ông Shunz

@MrShunz Tôi biết đây là những gì trang nam nói. Nó cũng được đề cập trong câu trả lời khác tôi sẽ thêm làm tài liệu tham khảo.
dùng68186

apt upgradeapt-get upgradexử lý những thứ khác nhau, xem hiroom2.com/2016/05/20/ubfox-16-04-debian-8-apt-command/ ám
mook765

@ mook765 Cảm ơn! Tôi sẽ chỉnh sửa câu trả lời của tôi dựa trên tài liệu tham khảo của bạn.
dùng68186

2
"Tôi nghĩ rằng việc nâng cấp dist là một chút khó hiểu." Tôi thề đây là sự đánh giá thấp của thế kỷ liên quan đến apt. Có bất cứ điều gì về apt không gây nhầm lẫn?! Giống như cái tên "apt" hay "aptitude" có liên quan gì đến việc quản lý gói ở vị trí đầu tiên? Tại sao có 3 biến thể của apt? Tại sao apt- get sửa đổi hệ thống của tôi? Tại sao "cập nhật" không cập nhật hệ thống của tôi? Tại sao "nâng cấp" không nâng cấp hệ thống của tôi? Tại sao nó không nên cập nhật bộ đệm trong của nó trước khi nâng cấp tự động như một hệ điều hành lành mạnh? Tại sao thanh lọc gỡ cài đặt một gói thay vì xóa nó khỏi bộ đệm? vv ....
Mehrdad

15

dist-upgradeđã được thay thế trong Ubuntu bởi full-upgrade.

Người dùng cũ của Ubuntu nhớ khi nào dist-upgradethực sự được sử dụng thường xuyên để cài đặt các gói kernel. Tên gói hạt nhân thay đổi theo phiên bản, khiến chúng không đủ điều kiện cho bình thường upgrade. full-upgradeđã được thêm vào để đáp ứng an toàn nhu cầu này của dòng gói Ubuntu.

Mục đích ban đầu dist-upgradelà để di chuyển giữa các bản phát hành Debian (gần tương đương với Ubuntu do-release-upgrade.) Vì vậy, có một chút bảo vệ khỏi các hậu quả không lường trước được. Đọc các thay đổi được đề xuất cẩn thận trước khi đồng ý.

Sử dụng dist-upgradethay vì full-upgradecó thể sẽ không làm tổn thương một hệ thống khỏe mạnh. Hàng triệu người dùng trong một thập kỷ đã làm việc rất nhiều lỗi trong quy trình làm việc apt. Tuy nhiên, dist-upgradecó thể có kết quả không mong muốn trên một hệ thống với các gói bị hỏng hoặc các sự cố chưa được giải quyết khác.


+1 cho mục đích ban đầu của dist-upgrade. Người ta sẽ phải fiddle với sources.listsử dụng nó theo cách này tôi đoán.
dùng68186
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.