Khi bạn sử dụng apt
để cài đặt một gói, dưới mui xe nó sử dụng dpkg
. Khi bạn cài đặt một gói bằng apt, đầu tiên nó sẽ tạo một danh sách tất cả các phụ thuộc và tải xuống từ kho lưu trữ.
Sau khi tải xuống xong, nó gọi dpkg
để cài đặt tất cả các tệp đó, đáp ứng tất cả các phụ thuộc.
Vì vậy, nếu bạn có một .deb
tập tin:
Bạn có thể cài đặt nó bằng cách sử dụng:
sudo dpkg -i /path/to/deb/file
sudo apt-get install -f
Bạn có thể cài đặt nó bằng cách sử dụng sudo apt install ./name.deb
(hoặc sudo apt install /path/to/package/name.deb
).
Với apt-get
các phiên bản cũ, trước tiên bạn phải di chuyển tệp deb của bạn vào /var/cache/apt/archives/
thư mục. Đối với cả hai, sau khi thực hiện lệnh này, nó sẽ tự động tải xuống các phụ thuộc của nó.
Cài đặt gdebi
và mở tệp .deb của bạn bằng cách sử dụng nó ( Nhấp chuột phải -> Mở bằng ). Nó sẽ cài đặt gói .deb của bạn với tất cả các phụ thuộc của nó.
( Lưu ý : APT duy trì chỉ mục gói là cơ sở dữ liệu của các gói có sẵn trong repo được xác định trong /etc/apt/sources.list
tệp và trong /etc/apt/sources.list.d
thư mục. Tất cả các phương thức này sẽ không đáp ứng phụ thuộc phần mềm nếu phụ thuộc theo yêu cầu của deb không có trong chỉ mục gói .)
Tại sao sử dụng sudo apt-get install -f
sausudo dpkg -i /path/to/deb/file
(được đề cập trong phương pháp đầu tiên)?
Từ man apt-get
:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
Khi dpkg
cài đặt một gói và một phụ thuộc gói không được thỏa mãn, nó sẽ để gói ở trạng thái "không được định cấu hình" và gói đó được coi là bị hỏng.
sudo apt-get install -f
lệnh cố gắng sửa gói bị hỏng này bằng cách cài đặt phần phụ thuộc bị thiếu.
aptitude
loại bỏ các gói không cần thiết là tốt.