Có một phương thức hoặc lệnh nào có thể cho biết gói nào đến từ kho lưu trữ nào không?
Có một phương thức hoặc lệnh nào có thể cho biết gói nào đến từ kho lưu trữ nào không?
Câu trả lời:
dpkg -s <package>
- cho phép bạn tìm phiên bản mà bạn đã cài đặt. ( nguồn )apt-cache showpkg <package>
- sẽ hiển thị danh sách các Phiên bản của gói có sẵn. Đối với mỗi phiên bản, nguồn của gói, dưới dạng tên tệp chỉ mục, sẽ được cung cấp.Nếu bạn muốn tìm nguồn của gói hiện đang được cài đặt, bạn sẽ cần đầu ra của dpkg -s <package>
. Mặt khác, bạn có thể chỉ cần nhìn vào đầu ra phiên bản mới nhất bằng cách apt-cache showpkg <package>
.
$ dpkg -s liferea
Package: liferea
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 760
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: i386
Version: 1.6.2-1ubuntu6
...
$ apt-cache showpkg liferea
Package: liferea
Versions:
1.6.2-1ubuntu6.1 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
1.6.2-1ubuntu6 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
...
Từ lệnh đầu tiên, tôi có thể thấy phiên bản Liferea 1.6.2-1ubfox6 đã được cài đặt. Từ lệnh thứ hai, tôi có thể thấy rằng phiên bản đó được liệt kê trong /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages
.
Nếu không có quá nhiều nỗ lực, tôi có thể suy luận rằng dòng nguồn chứa archive.ubuntu.com
, ubuntu
, lucid
, và main
.
Và, chắc chắn, của tôi /etc/apt/sources.list
chứa dòng sau đây.
deb http://archive.ubuntu.com/ubuntu lucid main universe restricted multiverse
apt-cache policy <package name>
(từ: superuser.com/a/236605/37279 )
trusty
nguồn gói, sau đó tạm thời thêm utopic
để tôi sources.list
để cài đặt phiên bản 1.20ubuntu3 của init-system-helpers
và sau đó loại bỏ các repo một lần nữa từ của tôi sources.list
, apt-cache showpkg init-system-helpers
sẽ chỉ nói dối về danh sách gói ban đầu và apt-cache policy init-system-helpers
sẽ chỉ rõ rõ ràng.
Sử dụng lệnh sau. Nó có đầu ra tốt hơn:
apt-cache policy <Package Name>
Đối với Ubuntu 16.04 trở lên, có một cách ngắn hơn để làm điều đó:
apt policy <Package Name>
apt-cache policy
xem thêm superuser.com/a/236605/61370
apt-cache policy
là tốt nhưng đôi khi bạn cần apt-cache showpkg
so sánh các khoản tiền MD5 từ gói. Xem thêmdebsums --changed
policy
tùy chọn là hữu ích nhất khi so sánh vớisources.list
apt policy <package-name>
có thể được sử dụng, từ 16.04LTS trở đi. Khi 14.04LTS trở thành EOL'd vào năm 2018, câu trả lời này có thể được chỉnh sửa để sử dụng lệnh mới hơn.
apt
trên Ubuntu 16.04 trở lênBên cạnh apt-cache policy
, showpkg
và show
, bây giờ chúng ta có một tiểu ban đơn giản hơn, dễ nhớ: apt
(không nhầm lẫn với cổ điển apt-*
):
apt policy <package>
Hoặc thay thế với nhiều thông tin hơn apt show <package>
, dòng bắt đầu bằng "Nguồn APT:" .
Mô tả: Gói này cung cấp các công cụ dòng lệnh để tìm kiếm và quản lý cũng như truy vấn thông tin về các gói dưới dạng truy cập cấp thấp vào tất cả các tính năng của thư viện libapt-pkg. Chúng bao gồm: apt-get
, apt-cache
, apt-cdrom
, apt-config
, apt-key
.
apt --help
Các tiểu ban khác cũng dễ nhớ:
apt list
- liệt kê các gói dựa trên tên góiapt search
- tìm kiếm trong các mô tả góiapt show
- hiển thị chi tiết góiapt update
- cập nhật danh sách các gói có sẵnapt install
- cài đặt góiapt remove
- loại bỏ các góiapt purge
- loại bỏ các gói và tập tin cấu hình :
Xóa gói sẽ xóa tất cả dữ liệu được đóng gói, nhưng thường để lại các tệp cấu hình người dùng (đã sửa đổi) nhỏ, trong trường hợp xóa là một tai nạn. Chỉ cần đưa ra một yêu cầu cài đặt cho gói vô tình bị xóa sẽ khôi phục chức năng của nó như trước đây trong trường hợp đó. Mặt khác, bạn có thể loại bỏ những thức ăn thừa này bằng cách gọi thanh lọc ngay cả trên các gói đã bị xóa. Lưu ý rằng điều này không ảnh hưởng đến bất kỳ dữ liệu hoặc cấu hình được lưu trữ trong thư mục nhà của bạn.
apt upgrade
- nâng cấp hệ thống bằng cách cài đặt / nâng cấp gói
apt full-upgrade
- nâng cấp hệ thống bằng cách gỡ / cài đặt / nâng cấp góiapt edit-sources
- chỉnh sửa tệp thông tin nguồnapt policy xxx
xuất hiện giống hệt apt-cache policy xxx
, có lẽ đây nên là một bình luận thay thế. Hoặc ít nhất là đề cập rằng apt show
dường như cần -a
chuyển đổi để xem "hồ sơ bổ sung" từ các nguồn khác