En un sistema embebido con un espacio en disco muy limitado, tengo la carpeta /var/cache/apt
llena con unos 700 MB srcpkgcache.bin.*
y un par de *.bin
archivos grandes .
Actuar sudo apt-get clean
no hizo una diferencia visible.
¿Es seguro eliminar manualmente estos *.bin*
archivos?
*.bin
archivos en dicha carpeta, suponiendo que actualmente no se esté ejecutando ningún proceso relacionado con apt. El siguienteapt-get update
regenerará los*.bin
archivos. Esta pregunta definitivamente no se trata de los archivos/var/cache/apt/archives
, sino de los archivos/var/cache/apt/*.bin
. Gran diferencia. El primero se puede limpiar emitiendoapt-get clean
, el último debe eliminarse manualmente. Claramente, aquellos que votaron para cerrar la pregunta no la han leído correctamente. Lamentablemente, no puedo votar para reabrir después de otorgar algunos de mis representantes en recompensas.archives
dentro/var/cache/apt/
, este es sobre los*.bin*
archivos.Respuestas:
Realmente no. Esos archivos ayudan a su sistema a determinar qué está disponible y qué no. Vaciar ese directorio dará como resultado un sistema apt-get roto. Aquí hay un par de consejos.
Primero, limpieza automática
Agrega un
hasta el final de
/etc/apt/apt.conf
. Hará que los procesos apt y dpkg tarden más, pero lo hará para que su directorio de caché esté siempre limpio.A continuación, eliminar archivos
Comience eliminando y deshabilitando todos los archivos fuente (que no está usando). En un sistema integrado, es probable que no los necesite. Luego, elimine todos los archivos que no están en uso. Puede ejecutar
apt-cache policy
para averiguar de qué repositorio proviene un paquete si no está seguro.Más eliminación de archivos
Algunos PPA son horribles por tener una gran cantidad de paquetes en ellos cuando solo necesita 1 o 2. Intente deshabilitar esos PPA e instalar los archivos deb manualmente. Ahorra espacio en esos casos, pero pierde la actualización automática. Tenga en cuenta que dpkg manejará las dependencias, por lo que aún puede instalar thing-with-tons-of-deps.deb y luego ejecutar
apt-get -f install
para buscar las dependencias.Respuesta totalmente extrema 1
Debido a que estamos hablando de un sistema integrado, el 90% de los repositorios principales no te harán ningún bien. Para manejar esto, puede ejecutar su propio servidor apt-get repo. Vea este enlace . No es fácil, y es un PIA para una sola máquina. Pero si tiene varias de estas máquinas, vale la pena. (Su servidor de repositorios apto puede alojar solo un subconjunto de paquetes que realmente utiliza. No necesita duplicar todo)
Respuesta Totalmente Extrema 2
Si el espacio es realmente un problema tan grande, puede deshabilitar apt todo junto y volver a la instalación manual a través de dpkg. He tenido que hacer esto en varios sistemas integrados. Funciona, pero es una pesadilla administrativa.
fuente
*.bin
archivos? Cualquier ejecución deapt-get update
regenerará esos archivos desde cero (probado). Por ejemplo, mi caso de uso es que quiero crear plantillas de contenedor LXC y quiero eliminar el archivo tanto como sea posible. No veo ninguna razón para que sea inseguro. Y su respuesta no indica una razón, solo indica que no es segura. Probado que es perfectamente seguro en Ubuntu 14.04.apt-cache clean
una llamada dpkg dará como resultado un caché más limpio, pero el usuario diceapt-cache clean
que no limpió nada para ellos. Además, su respuesta es totalmente incorrecta porque dpkg no usa/var/cache/apt/*
contenido para informarse sobre la estadística del paquete.clean
como * clean borra el repositorio local de los archivos de paquetes recuperados. Elimina todo menos el archivo de bloqueo de / var / cache / apt / archives / y /var/cache/apt/archives/partial/.* Si es peligroso, no habría tal función para limpiar.Por supuesto, puede eliminar
pkgcache.bin
ysrcpkgcache.bin
no pasa nada. Solo correapt-get update
para recrearlos.fuente
.deb
archivos?Mantenga el
pkgcache.bin
ysrcpkgcache.bin
, puede eliminar con seguridad los otros. ¡No toques los directorios!fuente
*bin.*
archivos a una carpeta de respaldo. Sin embargo, ¿por qué apt-get gestiona el caché dentro del caché? Un directorio de caché debe ser un almacenamiento temporal por naturaleza.Por supuesto, puede crear un NFS-share (sistema de archivos de red) para esto. Deje estos archivos en un servidor y monte el recurso compartido solo cuando desee actualizar / instalar paquetes. En entornos integrados, la instalación generalmente será relativamente estática de todos modos.
sshfs es otra buena opción, es mucho más fácil de configurar (básicamente solo requiere SSH, que es estándar), pero tiene más sobrecarga (más lenta).
fuente