Cách ngăn apt-get / aptitude giữ bộ đệm


14

Tôi đã cài đặt Apt-Cacher NG để cung cấp bộ đệm của các gói cho một số máy. Do đó, tôi thấy không có điểm nào trong việc có aptitude / apt-get giữ bộ đệm (thứ hai) của riêng họ /var/cache/apt/archives. Tôi nhận ra rằng tôi có thể làm trống bộ đệm này sudo apt-get clean, nhưng có cách nào để cấu hình apt-get để tự động dọn sạch bộ đệm khi quá trình cài đặt hoàn tất?


Tôi đang cố gắng làm điều tương tự khi tôi sử dụng nhiều LXC để thử nghiệm và giữ cho máy tính cá nhân của tôi sạch sẽ. Một trong những LXC đó là apt-cacher-ng của tôi, nhưng bây giờ tôi muốn ngăn chặn tất cả các trường hợp khác (bao gồm cả trường hợp "thực") để giữ một kho lưu trữ.
jgomo3

Câu trả lời:


9

Theo tài liệu hướng dẫn, bạn có thể thêm một tệp cấu hình để chứa /etc/apt/apt.conf.d/tên và theo hướng dẫn của . Có một báo cáo lỗi gây ra vấn đề với phương pháp này và tôi không khuyên bạn nên dùng nó.no-cacheDir::Cache "";Dir::Cache::archives "";apt.conf

Có một phương pháp còn lại theo hướng dẫn này :

echo 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};' | sudo tee /etc/apt/apt.conf.d/clean

Điều này sẽ thực hiện một rmlệnh ngay trước khi thoát apt.


Tôi thấy chỉ cần thiết lập đường dẫn bộ đệm thành một đường dẫn trống đã xảy ra lỗi khi chạy apt : Archives directory archives/partial is missing. - Acquire (2: No such file or directory). Giải pháp cho lỗi này là cũng được đặt Dir::Cache::archivesthành một đường dẫn trống. Tôi đã cập nhật câu trả lời của bạn để đưa vào câu hỏi này (giả sử ai đó có đại diện cao hơn chấp thuận chỉnh sửa).
Blair

1
Trên thực tế, đặt những thứ này thành các đường dẫn trống không hoạt động. Tôi đã làm như vậy, và sau đó cài đặt và gỡ bỏ một gói. Đi cài đặt lại, tôi nhận Need to get 0 B/21.9 MB of archivesthấy sự hiện diện của một phiên bản được lưu trữ. Nhìn xung quanh hóa ra họ đã được lưu trữ trong thư mục gốc của hệ thống tập tin ... không chính xác như những gì tôi muốn! Trừ khi cả hai chúng ta đều đọc manpage cho apt.conf sai, hoặc là manpage sai hoặc có lỗi. Tôi nghĩ rằng tôi sẽ gắn bó với phương pháp thứ hai.
Blair

4
Tôi đã báo cáo Dir::Cache::Archive "";lỗi tại bug.launchpad.net/apt/+orms/937951 . Khi bạn đã đặt, đừng chạyapt-get clean vì nó sẽ xóa tất cả các tệp trong thư mục gốc ( /).
Lekensteyn

2
Theo lỗi, Dir::Cache::Archivelà cấu hình sai var; điều này nên được Dir::Cache::{src,}pkgcache.
Jeremy Kerr

1
Lỗi này đã được sửa trong phiên bản mới hơn chưa?
sep32

-2

Tôi nghĩ rằng những gì bạn đang tìm kiếm là:

/etc/apt/apt.conf.d$ cat 04autoclean
APT::Clean-Installed "true";
/etc/apt/apt.conf.d$ 

2
Lệnh đó không thay đổi bất cứ điều gì - nó chỉ hiển thị nội dung của 04autoclean(khi chạy trong /etc/apt/apt.conf.dthư mục). Bạn đang nói Blair nên thay đổi nội dung 04autocleanđể APT::Clean-Installedđược đặt thành "true"?
Eliah Kagan

1
Điều này sẽ chỉ kiểm soát cách apt-get autocleancư xử. Từ apt-get (8): "Tùy chọn cấu hình APT :: Clean-Installed sẽ ngăn các gói đã cài đặt bị xóa nếu nó bị tắt."
xanh lam
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.