Tener un repositorio local puede ser muy útil. Es posible usarrsync
para crear un espejo de repositorio, pero esto hace que se descarguen todas las versiones, incluso las más antiguas, e incluiría archivos para arquitecturas que podrían no ser necesarias.
apt-mirror
le permite a uno elegir selectivamente partes del repositorio. mirrorkit
proporciona un front-end para apt-mirror.
¿Cuál es la mejor manera de crear un espejo de repositorio local para partes seleccionadas de los archivos de Ubuntu?
Por ejemplo, uno podría incluir:
Principal, Restringido, Universo, Multiverso, Todo Ubuntu y Lubuntu, pero excluye otros derivados, como Kubuntu y Xubuntu.
Solo AMD64 e i386, pero excluye otras arquitecturas.
Solo Trusty Tahr, pero no Precise Penguin o Utopic Unicorn.
Es posible que desee configurar el proceso para que se descargue desde un espejo local, en lugar de los archivos principales.
¿Cómo puedo crear un repositorio local usando apt-mirror
y mirrorkit
para una arquitectura seleccionada, versión o variante de Ubuntu?
fuente
Respuestas:
El repositorio de CD y el repositorio de software son dos componentes distintos (incluso tienen páginas separadas de Launchpad: cdmirrors y archivemirrors ). Por lo tanto, reflejarlos son dos tareas distintas. Además, si bien los diversos tipos tienen diferentes carpetas en el repositorio de CD, comparten un repositorio de software. Entonces puede reflejar selectivamente las imágenes por sabor, pero no el software. Para el repositorio de software, puede duplicar selectivamente en función de:
trusty
,precise
, etc.)amd64
,i386
, etc.)deb
] vs fuente [deb-src
])trusty
,trusty-updates
,trusty-backports
, etc.)main
,multiverse
, etc.)Para duplicar el repositorio de software, use
apt-mirror
.apt-mirror
se configura usando/etc/apt/mirror.list
. Tiene un formato muy similar asources.list
. El archivo de configuración instalado por el paquete tiene algunas opciones comentadas que enumeran sus valores predeterminados. Si lo desea, puede descomentarlos y cambiarlos.Para duplicar un repositorio, debe agregar una línea
mirror.list
como le gustaría parasources.list
:El valor predeterminado es reflejar solo la arquitectura del host, por lo que si está en un Ubuntu de 64 bits, solo
amd64
se reflejará. Necesita agregar otra línea del formulario:Y para paquetes fuente:
Si está buscando un espejo razonablemente completo, estas líneas serían las mínimas (también recomendaría el
-updates
canal):Finalmente, debe agregar una
clean
línea para que los paquetes que ya no estén disponibles en el repositorio se filtren para su eliminación:Digamos que sus variables son así (las predeterminadas):
Entonces:
$mirror_path/parent-hostname/directory
(so/var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu
)clean.sh
(que será un conjunto derm
comandos para eliminar paquetes y directorios obsoletos) será/var/spool/apt-mirror/var/clean.sh
./var/spool/apt-mirror/var
.El
apt-mirror
paquete instala un trabajo cron (/etc/cron.d/apt-mirror
), que debe editar para habilitar (descomentando la línea que contiene/usr/bin/apt-mirror
). También debe agregar un trabajo cron para ejecutarclean.sh
(lo ejecuto semanalmente).Por supuesto, debe reemplazarlo
http://us.archive.ubuntu.com./ubuntu
con el espejo que prefiera.fuente
deb-amd64
odeb arch=amd64
? Solo puedo encontrar este último en la página de manualsources.list
, que tiene un formato similar pero no idéntico. Consulte manpages.ubuntu.com/manpages/trusty/en/man1/apt-mirror.1.html , dondedeb-powerpc
está en el ejemplo.sources.list
. GraciasRecomiendo apt-cacher para aquellos con espacio limitado o aquellos que tienen precios exorbitantes de internet en sus países.
supuestamente, apt-mirror requiere al menos 15 GB por cada sabor (32/64 bits) de la distribución que desee. apt-cacher solo usa los paquetes que has instalado.
Lea Crear un repositorio local de Ubuntu usando Apt-Mirror y Apt-Cacher para obtener más detalles / instrucciones, por favor.
fuente