Saltar al contenido

¿Es seguro eliminar manualmente todos los archivos en la carpeta pkgs en anaconda python?

Solución:

En realidad, bajo ciertas condiciones es una opción tener el pkgs subdivisiones eliminadas. Como se indica aquí por Anaconda Community Support “el pkgs El directorio es solo un caché. Puede eliminarlo por completo si lo desea. Sin embargo, al crear nuevos entornos, es más eficiente dejar los paquetes que estén en la caché “.

Según la documentación que puede utilizar conda clean --packages para eliminar paquetes no utilizados en pkgs (que los moverá a pkgs/.trash desde el cual puede eliminarlos de forma segura). Si bien esto no comprueba los paquetes instalados mediante enlaces simbólicos de regreso a la caché de paquetes, este no es un tema si no usa dichos entornos o no trabaja en Windows. Supongo que por eso conda clean --packages está incluido en conda clean --all.

Para ahorrar espacio de forma más agresiva, puede utilizar conda clean --force-pkgs-dirs para eliminar todos cachés de paquetes grabables (con la misma advertencia de que podría haber entornos vinculados a estos directorios). Si no usa entornos o usa Anaconda en Windows, probablemente esté a salvo. Personalmente, utilizo esta opción sin problemas.

Editar comentario

Después de revisar la documentación señalada en la respuesta de @ Robert, debo admitir que mi respuesta inicial fue demasiado alarmista y, en algunas partes, descaradamente incorrecta. Mis disculpas por la respuesta engañosa.

Sin embargo, creo que algo de lo que planteé todavía tiene algún mérito para este hilo, por lo que estoy decidiendo retener la respuesta con enmiendas. En particular, creo que vale la pena enfatizar que eliminar el pkgs Es posible que el directorio no logre realmente lo que OP esperaba (para ahorrar espacio) y que la eliminación de la caché de paquetes socava la estrategia de minimización de redundancia de Conda en el futuro al hacer imposible compartir paquetes ya instalados.

En cambio, mi recomendación final coincide con lo que sugirió @Robert, es decir, usar conda clean -p para eliminar paquetes no utilizados, pero mantener la caché (pkgs dir) para que los entornos futuros aún puedan aprovechar los enlaces duros. Un último punto a tener en cuenta es que algunas herramientas, como conda-pack, confíe en la integridad de la caché del paquete para que funcione, por lo que eliminar pkgs evitará su uso.


Respuesta original modificada

No, definitivamente no es seguro y, de hecho, la única forma en que realmente liberaría espacio en el disco es si rompiera su base env. El problema es que todos los envs usan enlaces duros al pkgs directorio, por lo que incluso si elimina el Enlace ubicado en el pkgs directorio, los que están en los envs seguirán allí, por lo que no eliminará ningún archivo físico en el disco. La única eliminación real que puede hacer es algo a lo que solo hace referencia base, es decir, la única copia está en pkgs, de ahí el potencial de una ruptura base.

Corrección: Los base env todavía vincula los paquetes a otras ubicaciones, por lo que elimina pkgs no impactará base como concluí originalmente.

Recomiendo encarecidamente mirar esta otra publicación sobre la estimación del uso real del disco de Conda. Es posible que esté sobrestimando la cantidad de espacio que realmente se está utilizando. Para la mayoría de archivos en pkgs, sólo hay uno físico copiar, por lo que no hay que realizar ninguna optimización manual adicional.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *