Estamos utilizando un repositorio yum para distribuir nuestro software a nuestras instancias de producción. Desafortunadamente, createrepo se está convirtiendo en un cuello de botella, y solo tenemos 469 paquetes en el repositorio.
$ time createrepo /opt/tm-yum-repo
Spawning worker 0 with 469 pkgs
Workers Finished
Gathering worker results
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
real 0m43.188s
user 0m37.798s
sys 0m1.296s
¿Qué puedo hacer para hacerlo más rápido?
Respuestas:
La
--cachedir
opción dada por dmourati en su respuesta lo ayudará, pero también debe usarla--update
, especialmente si no está reemplazando todos los 469 paquetes a la vez.Además, considere hacer un repositorio separado para este paquete si implementarlo de esta manera es realmente urgente y
--update
no ayuda lo suficiente.fuente
Desde la página de manual createrepo, verá una opción para un caché.
Yo comenzaría por allí.
Si eso no acelerara suficientemente createrepo, miraría SSD o tmpfs .
fuente
¿Has intentado utilizar --workers para CPU multi-core? Normalmente uso --workers 4 para generar 4 hilos de createrepo
fuente
Utilice createrepo_c , implementación C de createrepo
fuente