2011-05-30 41 views
6

Estoy pensando en tener una instalación de sitio de R, con una biblioteca compartida de paquetes R. Varias computadoras accederían a esta biblioteca para que todos compartan la misma configuración.actualización R paquetes mientras R se está ejecutando

El problema es que he notado que a veces no puede actualizar los paquetes porque otra instancia de R está bloqueando las librerías. No puedo pedirles a todos que cierren su instancia de R porque a veces hay largas simulaciones.

¿Existe un conjunto de mejores prácticas para la instalación del sitio de paquetes R y existe alguna forma de hacer que R acceda a sus libs en modo de solo lectura?

Respuesta

5

Debe estar hablando de Windows, sin mencionarlo, porque lo que describe ya ha estado funcionando en Unix durante muchos, muchos años.

Una solución común es tener /usr/local/lib/R/site-library/ exportado por NFS, y compartido por muchos clientes. He configurado soluciones como esta varias veces y se requieren exactamente cero esfuerzos adicionales desde el lado R.

+0

sí de hecho, windows. Finalmente tuve que crear una herramienta para supervisar las versiones de los paquetes para todas las computadoras, y pedirles a los usuarios que cierren todas sus consolas antes de actualizar. No tengo que elegir el sistema operativo. Desafortunadamente, Unix aún no es una solución obvia para todos – RockScience

+0

Una vez solucioné esto al tener un paquete que verifique en su propio código de inicio si el repositorio local tenía una versión más nueva y, de ser así, instalar esa. Eso funcionó, pero fue difícil porque tienes que hacer la verificación antes de cargar las bibliotecas dinámicas, etc. para evitar el temido problema de bloqueo de Windows. Entonces, la gente obtendrá nuevos paquetes automágicamente en el reinicio, que fue un compromiso bastante bueno. –

+0

Gracias por compartir tu experiencia. – RockScience

Cuestiones relacionadas