Bagaimana saya dapat mengkonfigurasi apt-get untuk membersihkan secara otomatis setelah setiap instalasi

12

Apakah ada cara yang dilakukan apt-get cleansetelah apt-get installsecara otomatis, seperti di distro lain?

Tiago Carrondo
sumber
Berkat @Braiam saya menemukan bug di Ubuntu dan saya akan melaporkannya. Dalam solusi Debian Braiam bekerja dengan baik.
Tiago Carrondo
1
@TiagoCarrondo Bisakah Anda membagikan tautan bug?
Ken Sharp
Di Xenial semua mesin saya membersihkan sendiri. Saya tidak tahu di mana ini dikonfigurasi tetapi berfungsi.
Ken Sharp

Jawaban:

13

Anda hanya perlu menambahkannya di file konfigurasi yang tepat. Lari saja:

sudo sh -c "echo 'DSELECT::Clean "always";' >> /etc/apt/apt.conf.d/99AutomaticClean"

Ini akan memicu pembersihan otomatis setiap kali Anda melakukannya upgrade.

Mari kita jelaskan entri ini, dari halaman manual:

Clean

Mode Pembersihan Tembolok; nilai ini mungkin salah satu dari selalu, cepat, otomatis, pra-otomatis dan tidak pernah. selalu dan prompt akan menghapus semua paket dari cache setelah pemutakhiran, prompt (default) melakukannya secara kondisional. otomatis menghapus hanya paket-paket yang tidak lagi dapat diunduh (diganti dengan versi baru misalnya). pra-otomatis melakukan tindakan ini sebelum mengunduh paket baru.

Info lebih lanjut:

https://groups.google.com/d/msg/linux.debian.user/aK2jvfL_tuw/rUd6i6bd4YQJ

Braiam
sumber
Saya kira itu perlu titik koma di akhir ;! dan karena itu seharusnyasudo sh -c "echo 'APT::Get::Clean=always;' >> /etc/apt/apt.conf.d/99AutomaticClean"
India
@Braiam Saya sudah mencobanya dan tidak berhasil. Saya bahkan mencoba APT :: Get :: Clean "always" seperti di file lain tetapi tidak berhasil. ada petunjuk?
Tiago Carrondo
@Braiam tidak beruntung
Tiago Carrondo
@TiagoCarrondo bagaimana kalau sekarang? Pesan usenet ini mengatakan itu adalah pemenangnya.
Braiam
Saya sudah mencobanya setelah posting pertama Anda. Akan mengubah lokasi file ... tunggu
Tiago Carrondo
2

Tulis skrip shell!

sudo nano /usr/bin/aptinstaller 

Di dalam jenis file ini:

#!/bin/bash
sudo apt-get install $1
sudo apt-get -y autoclean
sudo apt-get -y autoremove  

Simpan dan keluar dari nanodan ketik:

sudo chmod +x /usr/bin/aptinstaller 

Sekarang setiap kali Anda mengetik

sudo aptinstaller <package-name> 

Itu akan menginstal dan kemudian bersih.

Indian
sumber
Saya lebih suka opsi, tapi terdengar seperti rencana bagus, B, thx
Tiago Carrondo
2
/usr/local/bin/sepertinya lebih benar.
Ken Sharp
0

Solusi saya, meskipun bukan solusi nyata, adalah mengatur direktori arsip /tmp. Ini tidak akan dibersihkan secara otomatis setelah instalasi tetapi akan dibersihkan saat reboot.

Saya membuat /etc/apt/apt.conf.d/99cleandan menambahkan:

Dir::Cache::archives /tmp;

Atau Anda bisa melakukan mount /var/cache/apt/archivesmenggunakan tmpfs, meskipun itu jelas akan menggunakan RAM dan saya tidak akan merekomendasikan opsi itu.

Dalam /etc/fstab, misalnya:

tmpfs /var/cache/apt/archives tmpfs size=128m,mode=755 0 0
Ken Sharp
sumber
0

Retasan tampaknya menambahkan yang berikut ke eg /etc/apt/apt.conf.d/clean( via ):

DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};

Ini akan menghapus cache secara otomatis setelah dpkg dipanggil oleh apt.

Ini tidak membersihkan cache setelah apt-get update, kait APT::Update::Post-Invokemungkin digunakan untuk ini.

Metode terbaik tampaknya masih memanggil apt-get clean/ aptitude cleansecara manual.

kebiru-biruan
sumber