Recientemente instalé Arch Linux y descubrí que estoy consumiendo mucho almacenamiento relativamente rápido. Por alguna razón, ya he usado 17GB en solo 2 semanas. No tengo una gran cantidad de software instalado, así que me hacen creer que todos los paquetes antiguos se mantienen en algún lugar.
Para respaldar esto, he notado que si instalé un paquete, lo elimino y luego lo reinstalo de manera que pacman simplemente desempaqueta y reinstala el software sin tener que volver a descargarlo.
Después de instalar mi sistema base, antes del software adicional, usé aproximadamente 2 GB o menos. Desde entonces solo he instalado Matlab, Skype, Wine y algunos otros pequeños programas. Por supuesto, también he instalado bibliotecas faltantes y similares, pero no valen casi 15 GB.
¿Estoy completamente equivocado aquí o Arch nunca borra los paquetes antiguos al descargar / actualizar a nuevas versiones?
Si es así, ¿cómo elimino estos paquetes no utilizados?
Además, cuando elimino los paquetes instalados, uso pacman -R ...
fuente

crono regularsystemd.Respuestas:
No, pacman no elimina los paquetes antiguos de su caché (
/var/cache/pacman/pkg), por lo que, con el tiempo, puede llenarse.Puede adoptar dos enfoques para borrar el caché: la fuerza bruta con
pacman -Sc:O, para un enfoque más matizado, puede usar una de las utilidades que se incluye con pacman-contrib
paccache:De manera predeterminada,
paccacheeliminará todas las últimas tres versiones de un paquete instalado, pero puede cambiar este número con el-k, --keepinterruptor. También hay un-d, --dryruninterruptor para previsualizar sus cambios. Verpaccache --helptodos los interruptores.Hay una serie de utilidades en el paquete pacman-contrib para ayudar con la administración del paquete, vale la pena analizarlas todas y obtener una comprensión de cómo funcionan y pueden hacer que la ejecución de Arch sea mucho más fácil. Puedes ver la lista completa con:
fuente
--cleaninterruptor doble : eso prohíbe volver fácilmente al paquete de trabajo, en caso de que ocurra algún problema con la última versión (por ejemplo, el nuevo paquete se basa en una versión anterior de lib o Python; lo mismo con el hardware y la última versión núcleo). Encuentro configurar el caché pacman en otro lugar que no sea/una solución mucho mejor (solo configure la ruta en /etc/pacman.conf ).paccache, puede obtenerlo instalando elpacman-contribpaquete.$ pacman -Ql pacman-contrib | awk -F"[/ ]" '/\/usr\/bin\/./ {print $NF}'evitar una línea en blanco en los resultados? ;-)rm -rf /var/cache/pacman/pkgera lo incorrectoSu paquete de caché está en
/var/cache/pacman/pkg/.NOTA: los
pacmanpaquetes se actualizaron en 2018 y además requieren instalaciónpacman-contribpara usar scripts / herramientas como sepaccachedescribe a continuación.Hacer:
Para hacer
-dryruny ver qué puede eliminar una ejecución de esa utilidad la próxima vez que lo haga:Para eliminar paquetes en caché. 17 gbs suena empinado. Asegúrese de no tener algunos registros de fuga. Hacer:
O incluso solo:
Para una idea más general de lo que está sucediendo.
fuente
pacman -Scchace lo que pides, pero no es recomendable. De la WikiPor otro lado, cuando desinstalo paquetes, prefiero usarlos
pacman -Rnsc, ya que también elimina las dependencias de paquetes y los paquetes que dependen de este. Como siempre, lea cuidadosamente qué paquetes se están eliminando, ya que podría dejar nuestro sistema en un estado inutilizable.fuente
rm /var/cache/pacman/pkg/*entonces? O bien, al menos por defecto, supongo. He reubicado mi caché de paquetes/tmpen la mayoría de las máquinas hace mucho tiempo y dejésquidmanejar una única caché central en el enrutador. No es tan fácil comopacman -Sccsi.Sugiero encarecidamente el uso de en
paccachelugar depacman -Sc. Incluso hay un indicador muy efectivo para eliminar selectivamente las versiones de paquetes desinstalados-u. Las banderas depaccacheRecomiendo son (como parte de paccache v5.0.2):-d,--dryrun: realiza una ejecución en seco, solo encuentra paquetes candidatos-r,--remove: eliminar paquetes candidatos-u,--uninstalled: solo paquetes desinstalados-k,--keep <num>: mantenga "num" de cada paquete en el caché (predeterminado: 3)Ejemplo: compruebe las versiones de caché restantes de los paquetes desinstalados
fuente
-udepaccache. Ejemplos de paquetes grandes son, por ejemplo, Gnome, KDE o Texlive para darle una idea.-kbandera era nueva para mí y no estaba muy bien explicada en el diálogo de ayuda, por lo que su uso aquí fue útil.