
Estoy intentando crear una ISO de Red Hat 7.8 con un conjunto reducido de rpm que se han actualizado a la última versión. Descubrí cómo aislar los paquetes que necesito y descargarlos, pero cuando creo el nuevo ISO, arranca, inicia el instalador pero nunca encuentra la fuente de instalación en el medio local. He seguido estos pasos:
- Montar la fuente ISO
- Copie toda la estructura del archivo en una carpeta temporal
- Filtrar las rpm hasta solo las que necesito
- Utilice yumdownloader para descargar la última versión de cada RPM en nuevos paquetes
- Elimine la carpeta Paquetes original y cambie el nombre de los paquetes newPackages.
El siguiente paso es crear los nuevos repodata, lo cual hago ejecutando el siguiente comando en Paquetes:
createrepo -dpo .. .
Crea los nuevos archivos de repositorio en la carpeta repodata y reemplaza el archivo repomd.xml.
Sin embargo, cuando inicio, no puedo encontrar el repositorio en la ISO.
¿Hay algún otro archivo que deba actualizarse para reconocer el nuevo repositorio o alguna opción que necesito para crear un repositorio compatible con ISO? ¿Eliminé un rpm necesario para la instalación inicial?
Respuesta1
Encontré varias páginas que hacían referencia a comps.xml y finalmente descubrí que comps.xml en el ISO de origen tiene un nombre de archivo mucho más largo y está en un archivo. En mi caso, el nombre del archivo era:
c0dee7823d016c47d3d8ad66d65f6cbce5284a00f349dc4d7a72a971c283edd0-comps.xml.gz
Una vez que descubrí esto, extraje el archivo y lo coloqué en la carpeta principal de mi nuevo árbol ISO. Luego, usando el siguiente comando, pude actualizar con éxito el repositorio original con la lista de paquetes reducida de mi carpeta Paquetes (ejecute este comando desde su carpeta Paquetes):
createrepo --update -g ../../comps.xml -dpo .. .
Desglosando el comando:
- --update le dice a createrepo que actualice los archivos existentes en la carpeta repodata
- -g ../../comps.xml copia los grupos de paquetes del archivo fuente comps.xml
- -dp el indicador -d empaqueta los archivos de la base de datos y -p hace que los archivos XML sean bonitos
- -o especifica la ubicación de la salida. En este caso, la carpeta principal, que es donde estaba la carpeta de repodata original
El punto al final (.) se refiere a la carpeta actual, que es donde están todos los paquetes.