Một chút muộn cho bữa tiệc nhưng tôi đã tìm thấy câu hỏi này khi tìm kiếm một câu trả lời và bây giờ tôi có câu trả lời của riêng tôi để chia sẻ.
Tôi tin rằng bạn có thể làm điều này thông qua thế giới bí ẩn của apt_preferences.
Hãy thử tạo một tệp có tên / tmp / a_p (hoặc bất cứ thứ gì) như vậy ...
Package: *
Pin: release a=*-backports
Pin-Priority: 100
Package: *
Pin: release n=*
Pin-Priority: 1001
Sau đó chạy:
sudo apt-get -o Dir::Etc::Preferences=/tmp/a_p dist-upgrade
Phần thứ hai của tệp về cơ bản thực hiện những gì OP yêu cầu, trong đó nó vượt qua mức độ ưu tiên của tất cả các gói trong bất kỳ kho lưu trữ trực tiếp nào để khiến chúng cài đặt ngay cả khi nó có nghĩa là hạ cấp.
Phần đầu tiên ngăn phần thứ hai kích hoạt cài đặt tất cả các backport. Bạn có thể hoặc không quan tâm hoặc muốn điều này. Tôi muốn đề nghị mày mò để xem những gì hoạt động. Bạn có thể sử dụng apt-cache -o Dir::Etc::Preferences=/tmp/a_p policy somepkg
để xem ảnh hưởng của tệp a_p đối với các gói cụ thể.
THỜI GIAN
sudo apt-get -y remove package1 package2 package3 && sudo apt-get install package1 package2 package3
- tôi không tin có một lệnh nhưsudo apt-get repoclean
ví dụ để làm điều đó.