Có phải năng khiếu vẫn được coi là vượt trội so với apt-get?


191

Khi tôi lần đầu tiên bắt đầu với Ubuntu, sử dụng aptitudelà 'in-thing', với một số cải tiến đã nêu apt-get. Tôi có đúng không khi nói rằng apt-getbây giờ đã 'bắt kịp' aptitude, và nó tạo ra một chút khác biệt được sử dụng (mặc dù tốt hơn là chọn cái này hoặc cái kia, và gắn bó với nó)?

Hơn nữa, với aptitudecài đặt được xóa khỏi cài đặt Ubuntu mặc định, mọi người có nên quay lại apt-get, đặc biệt là khi hướng dẫn người dùng mới quan tâm đến CLI không?


1
những đứa trẻ tuyệt vời ngày nay sử dụng aptthay vì một trong hai thứ đó: Itsfoss.com/apt-vs-apt-get-difference
tatsu

1
aptitude whyrất thuận tiện đôi khi, và không có một tương đương thực .
Nathaniel M. Beaver

Câu trả lời:


131

Theo như tôi có thể thấy, trong 10.04, sự khác biệt chính giữa aptitude và apt-get là:

  1. aptitudethêm các cờ trên mỗi gói rõ ràng, cho biết liệu gói có được tự động cài đặt để đáp ứng phụ thuộc hay không: bạn có thể thao tác các cờ đó ( aptitude markautohoặc aptitude unmarkauto) để thay đổi cách thức xử lý gói.

    apt-gettheo dõi thông tin tương tự, nhưng sẽ không hiển thị rõ ràng. apt-markcó thể được sử dụng để thao tác các cờ.

  2. aptitudesẽ đề nghị xóa các gói không sử dụng mỗi khi bạn xóa gói đã cài đặt, trong khi đó apt-getsẽ chỉ làm điều đó nếu được yêu cầu rõ ràng với apt-get autoremovehoặc chỉ định --auto-remove.

  3. aptitudehoạt động như một giao diện dòng lệnh duy nhất cho hầu hết các chức năng trong cả hai apt-getapt-cache. Lưu ý : Tính đến 16,04, có một aptlệnh bao gồm các lệnh thường được sử dụng nhất từ apt-getapt-cachevà một vài tính năng bổ sung.

  4. Ngược lại với apt-cache"tìm kiếm", aptitudeđầu ra "tìm kiếm" cũng hiển thị trạng thái đã cài đặt / xóa / xóa của gói (cộng với các cờ trạng thái riêng của aptitude). Ngoài ra, dấu đầu ra "cài đặt" đánh dấu các gói nào đang được cài đặt để đáp ứng sự phụ thuộc và gói nào đang bị xóa vì không được sử dụng.

  5. aptitude có giao diện người dùng tương tác (chỉ văn bản).

Cá nhân tôi chỉ sử dụng aptitudecho quản lý gói dòng lệnh của mình (và tôi không bao giờ sử dụng giao diện người dùng văn bản); Tôi thấy đầu ra của nó dễ đọc hơn apt-get/ apt-cache.

Tuy nhiên, nếu aptitudesẽ không còn là tiêu chuẩn trên Ubuntu, không có lựa chọn nào khác ngoài việc sử dụng apt-gettrong hướng dẫn và tài liệu hướng dẫn.

(Cá nhân, tôi khá thất vọng khi thấy nó biến mất trong 10.10; đặc biệt là từ những cải tiến của năng khiếu hơn apt-get. Chủ yếu là ở phía bên khả năng sử dụng tôi đoán họ coi rằng những giao với các dòng lệnh biết làm thế nào để có được năng khiếu trở lại, và những người không sử dụng dòng lệnh sẽ không quan tâm ...)


10
tìm kiếm aptitude trên tên gói, apt-cache trên tên gói + mô tả (Chúng ta sẽ phải bắt đầu mọi cách với sudo apt-get install aptitude)
LassePoulsen

3
2. Tuy nhiên apt-get sẽ cho bạn biết rằng có các gói không sử dụng và bạn có thể xóa chúng bằng apt-get autoremove.
sepp2k

2
Một trong những nhược điểm của năng khiếu là không có khả năng xem xét việc ghim như được thực hiện bởi apt-get
txwikinger

4
Năng khiếu đọc chính xác /etc/apt/preferences(và ghim trong đó), nhưng hiện tại bỏ qua /etc/apt/preferences.d/. Đó là một lỗi đã biết nên hy vọng nó sẽ được sửa sớm.
Riccardo Murri

3
Aptitude có một tùy chọn để lấy lại thay đổi dễ dàng : aptitude changelog package-name. Tôi không nhận thức được tính năng như vậy trong apt-get.
Lekensteyn

21

Tôi đoán bây giờ đó là vấn đề lựa chọn cá nhân. Tôi thấy việc gõ aptitude searchcó ý nghĩa với tôi hơn apt-cache search, và tôi thích nó cho tôi biết gói nào tôi đã cài đặt ngay trong đầu ra tìm kiếm, thay vì phải chạy dpkg -l.


2
+1 Đồng ý có thể xem ứng dụng đã được cài đặt trong khi tìm kiếm rất tiện dụng. Mặc dù tôi thấy rằng tìm kiếm apt-cache nhanh hơn rất nhiều so với tìm kiếm apt.
Đánh dấu Davidson

Tôi sử dụng bí danh bash hai chữ cái để tìm kiếm apt-cache hoặc có lẽ tôi cũng sẽ sử dụng aptitude search.
belacqua

Tôi đã nhận thấy rằng apt-gettìm kiếm của nó là một chút kỹ lưỡng hơn aptitude. Cái sau dường như chỉ nhìn vào tên gói, trong khi cái trước cũng tìm kiếm mô tả, tôi nghĩ vậy. ví dụ: thử tìm kiếm build-essential.
Sparhawk

13

Trước đó apt-get sẽ không quản lý các phụ thuộc đúng cách và do đó khiến cho các phụ thuộc mồ côi vẫn tồn tại trong một hệ thống ngay cả sau khi gói sử dụng chúng bị gỡ cài đặt - đây không còn là trường hợp nữa, để loại bỏ việc sử dụng phụ thuộc mồ côi

sudo apt-get autoremove

năng khiếu luôn làm điều này đúng và theo dõi sự phụ thuộc tốt hơn, nhưng bây giờ cả hai người quản lý gói đều thực hiện công việc.

Trên Ubuntu, tốt hơn là sử dụng apt-get vì được công ty hỗ trợ và chứng thực, trên debian tôi sẽ sử dụng aptitude


2
Tuyên bố cuối cùng là không chính xác. aptitudeđược hỗ trợ tốt trên Ubuntu và nó được cài đặt theo mặc định. Không có sự khác biệt giữa Ubuntu và Debian về vấn đề đó.
loevborg

3
Nó đang bị xóa khỏi cài đặt mặc định trong 10.10
kashif

1
Theo kinh nghiệm của tôi, aptitudeluôn luôn tệ hơn trong việc theo dõi các phụ thuộc được cài đặt. Nó có xu hướng loại bỏ những chương trình không liên quan khi xóa một chương trình, và cuối cùng đã phá vỡ các chương trình khác trong quá trình ...
Izkata

Nó tương đương apt-get autoremovevới aptitudecái gì? Tôi có các hạt nhân cũ apt-get autoremovegợi ý cho tôi loại bỏ, nhưng tôi thấy không có cách nào để loại bỏ chúng aptitude.
Alexey

1
@Alexey Bạn có thể sử dụng aptitude remove '~g'. ( Nguồn ) Lưu ý rằng aptitudesẽ tự động cung cấp để loại bỏ các phụ thuộc không sử dụng khi xóa các gói với nó.
nyuszika7h

6

Ngoài các câu trả lời khác, điều đáng chú ý là apt-getthường phải đối mặt với các thao tác đơn giản và nó không có khả năng xử lý các phiên bản phụ thuộc không phù hợp hoặc các gói bị hỏng (mặc dù nó tuyên bố rằng các gói bị hỏng có thể được sửa chữa theo apt-get install -fnghĩa đen chưa bao giờ thấy công việc đó trong cả cuộc đời tôi).

Vì một số lý do, tôi vẫn sử dụng apt-gettheo mặc định, nhưng khi gặp sự cố, tôi thường giải quyết chúng aptitude, điều mà dường như không bao giờ gặp phải apt-getvô số vấn đề.


Tôi cũng có kinh nghiệm tương tự với việc giải quyết xung đột, aptitudelà một cách thay thế tốt hơn theo nghĩa đó.
Volkan Yazıcı

1
Đối với bản ghi, tôi chỉ thấy apt-get install -f sửa hệ thống của tôi. năng lực có vấn đề, điều này đã khắc phục nó, và sau đó điều đầu tiên tôi làm là cài đặt apt apt :) Sự lựa chọn là một điều tốt (tm)
teknopaul

3

Tôi sẽ nói rằng theo kinh nghiệm cá nhân của tôi, apt apt và apt-get có chức năng rất giống nhau.

Sự khác biệt chính mà có thể ảnh hưởng đến sự lựa chọn của người dùng là, aptitude cung cấp giao diện ncurses và nó cung cấp các tùy chọn để nâng cấp an toàn và nâng cấp đầy đủ có thể có ích.

Cá nhân tôi luôn sử dụng apt-get và khuyên người dùng mới cũng nên sử dụng apt-get. Với khả năng thiết lập được loại bỏ khỏi Ubuntu theo mặc định như bạn đã nói, đây dường như vẫn là đề xuất tốt nhất. Như thể họ muốn sử dụng aptitude, họ sẽ cần biết cách sử dụng apt-get để cài đặt aptitude nếu họ muốn :)


bạn có thể giải thích giao diện của ncurses là gì không?
8128

@fluteflute: ncurses là một thư viện được sử dụng để nhận ra giao diện người dùng văn bản. vi.wikipedia.org/wiki/Ncurses
dierre

1

Trên máy chủ, tôi thích Atitude hơn vì nó đi kèm với giao diện khá tốt để kiểm tra các thay đổi gói, nâng cấp có chọn lọc và các loại công cụ đó. apt-get nhanh hơn mặc dù và tôi luôn sử dụng nó nếu tôi chỉ muốn cập nhật mọi thứ mà không gặp quá nhiều rắc rối.

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.