Apt, trình quản lý gói (package) của Ubuntu, là một trong những công cụ mạnh mẽ và trực quan nhất, nhưng điều đó không có nghĩa là trình quản lý này không bao giờ xảy ra vấn đề. Đôi khi, cài đặt gói bị lỗi trên Ubuntu và buộc người dùng phải tìm ra cách khắc phục. Điều tuyệt vời là các tiện ích gói của Ubuntu, bao gồm cả chính Apt, có chức năng tích hợp để giúp khắc phục tình trạng này và khiến mọi thứ trở lại bình thường.
Những mẹo và thủ thuật sau đây sẽ giúp ích trong hầu hết các trường hợp. Tuy nhiên, chúng là các cách khắc phục chung nên không thể áp dụng cho mọi tình huống khác nhau. Vì vậy hãy lưu ý điều này khi cố gắng giải quyết tình huống của riêng bạn.
Sửa package bị hỏng trong Ubuntu
Khắc phục lỗi với Apt/Apt-Get
Apt có một vài flag mà người dùng có thể sử dụng để sửa các dependency hoặc các gói bị hỏng vì bất cứ nguyên nhân nào trong khi cài đặt. Cách thực hiện phổ biến nhất là cài đặt .deb của bên thứ ba và tìm ra các dependency chưa có. Những dependency đó không thể được đẩy vào đúng vị trí và dpkg sẽ thông báo rằng gói bị thiếu. Trong mọi trường hợp, người dùng có thể thử các bước sau.
Đầu tiên, hãy chạy một bản cập nhật để đảm bảo rằng có các phiên bản mới hơn cho các gói được yêu cầu.
sudo apt update --fix-missing
Tiếp theo, người dùng có thể thử buộc Apt tìm kiếm và sửa chữa mọi dependency bị thiếu hoặc các gói bị hỏng. Công cụ này thực sự sẽ cài đặt bất kỳ gói nào bị thiếu và sửa chữa các cài đặt hiện có.
sudo apt install -f
Khắc phục lỗi với DPKG
Một bước khác mà lỗi có thể phát sinh trong khi cài đặt gói là quá trình cấu hình. Trên thực tế, dpkg đang phụ trách phần này chứ không phải Apt, vì vậy khi một gói bị lỗi trong khi cấu hình, dpkg sẽ là công cụ để khắc phục hiệu quả nhất.
Bắt đầu bằng cách buộc dpkg cấu hình lại toàn bộ hoặc một phần gói bị hỏng nào.
sudo dpkg --configure -a
Nếu công cụ này không giải quyết được vấn đề, người dùng có thể áp dụng một cách tiếp cận mạnh mẽ hơn. Hãy bắt đầu bằng cách liệt kê các gói được đánh dấu là yêu cầu phải cài đặt lại.
sudo dpkg -l | grep ^..r
Nếu thấy (các) gói có vấn đề ở đó, người dùng có thể buộc gỡ bỏ các gói bị hỏng.
sudo dpkg --remove --force-remove--reinstreq
Khi dpkg hoàn thành công việc của mình, hãy cố gắng “dọn dẹp” mọi thứ với Apt.
sudo apt clean
sudo apt update
Sau đó, mọi thứ sẽ quay về điểm xuất phát. Điều này không giúp lấy lại được các gói bị hỏng, nhưng ít nhất Apt sẽ hoạt động trở lại.
DPKG lock
Một vấn đề hiếm khi xảy ra là các dpkg lock ngăn cản người dùng làm bất cứ điều gì. Mỗi khi cố gắng sử dụng Apt hoặc dpkg, người dùng sẽ gặp lỗi cho biết một ứng dụng đã sẵn sàng để sử dụng, trong khi thực tế thì chưa. Thật dễ dàng để xóa file lock ngăn cản việc sử dụng Apt và quay lại thực hiện những gì cần thiết. Đôi khi các file lock này vẫn giữ nguyên vị trí sau khi xảy ra lỗi trong quá trình cài đặt, làm gián đoạn quá trình và ngăn không cho file bị xóa tự động. Trong trường hợp này, hãy thực hiện điều đó bằng cách thủ công.
sudo rm /var/lib/apt/lists/lock
Biện pháp tốt nhất là hãy xóa lock trong bộ nhớ cache.
sudo rm /var/cache/apt/archives/lock
Hy vọng rằng, một trong những cách khắc phục lỗi ở trên sẽ có hiệu quả với trường hợp của bạn và mọi thứ đã hoạt động trở lại bình thường trên Ubuntu. Hãy nhớ rằng cách tốt nhất để xử lý triệt để một tình huống “nằm ngoài tầm tay” là cố gắng đưa mọi thứ trở lại điểm xuất phát. Đừng “cố đấm ăn xôi” hay giải quyết sự cố bằng cách thêm nhiều thứ khác, trừ khi bạn biết chính xác mình đang làm gì. Rất có thể bạn sẽ làm mọi thứ trở nên tồi tệ hơn.
Chúc bạn thành công!
Xem thêm: