apt (Debian/Ubuntu)
Xem thửTrên Debian và Ubuntu, công cụ hàng ngày hiện đại là apt. Lệnh cổ hơn apt-get / apt-cache vẫn có trên mọi hệ thống và thường xuất hiện trong script cũ — học apt trước, biết apt-get để đọc tài liệu legacy.
Lệnh cốt lõi
sudo apt update # làm mới index repo (không cài gì)
sudo apt upgrade -y # nâng cấp gói đã cài (an toàn hơn full-upgrade)
sudo apt full-upgrade # có thể gỡ/cài thêm để thỏa dependency (cẩn thận trên prod)
sudo apt install nginx curl -y
sudo apt remove nginx # gỡ binary, giữ config thường gặp
sudo apt purge nginx # gỡ kèm file cấu hình của gói
sudo apt autoremove # dọn dependency không còn ai cần
apt search nginx
apt show nginx
apt list --installed | grep nginx
apt list --upgradable
Đang tải sơ đồ…
Cách đọc sơ đồ. remove gỡ chương trình nhưng thường giữ cấu hình, còn purge xóa cả tệp cấu hình do gói quản lý, nên chọn theo việc bạn muốn cài lại sạch hay giữ cấu hình cũ. autoremove là bước riêng để dọn các dependency không còn gói nào cần.
apt và apt-get — nên dùng cái nào?
| Tình huống | Gợi ý |
|---|---|
| Làm việc tương tác trên terminal | apt (output gọn, progress rõ) |
| Script tự động / cloud-init / CI | Nhiều team vẫn dùng apt-get vì ổn định interface lâu năm |
| Tài liệu Ubuntu mới | Thường viết apt |
# Tương đương gần đúng trong script
sudo apt-get update
sudo apt-get install -y nginx
Đừng trộn tùy tiện trong cùng một runbook nếu team đã chuẩn hóa một kiểu.
Nguồn gói và cache
- Cấu hình:
/etc/apt/sources.list,/etc/apt/sources.list.d/*.list(hoặc.sourceskiểu deb822). - Cache gói tải về:
/var/cache/apt/archives/. - Khóa GPG repo sai thì
updatebáo lỗi chữ ký — sửa key/repo trước, đừng--allow-unauthenticatedbừa.
ls /etc/apt/sources.list.d/
sudo apt clean # xóa .deb trong cache
sudo apt autoclean # xóa bản cũ không còn download được
Thực chiến: cài stack tối thiểu
sudo apt update
sudo apt install -y vim curl htop ufw
apt policy curl # xem candidate version từ repo nào
apt policy giúp xác nhận bạn sắp cài đúng phiên bản từ đúng origin — hữu ích khi có nhiều repo.
Đang tải sơ đồ…
Cách đọc sơ đồ. Lỗi không tìm thấy gói thường có một trong ba nguyên nhân: index chưa được làm mới, sai tên gói, hoặc repo thiếu component. Kiểm tra theo thứ tự này rồi dùng apt policy để xác nhận bản sẽ cài và nguồn của nó.
Lỗi thường gặp
E: Unable to locate package: sai tên gói, quênupdate, hoặc repo thiếu component (universetrên Ubuntu).dpkg was interrupted: chạysudo dpkg --configure -arồisudo apt -f install.- Chạy
upgradetrên server quan trọng không đọc changelog / không có snapshot.