miércoles, 2 de diciembre de 2015

Crear un USB de Instalacion de CentOS 7

Si buscas en Internet como realizar un USB de CentOS 7 encontraras información de programas como Win32DiskImager para Windows o el UNetbootin para GNU/Linux, Windows y MacOS X y con fallos. Por ejemplo esto un mega FAIL
Solo hay un problema, como describí en este articulo RedHat/CentOS 6.x y anteriores VS RedHat/CentOS 7 ( INIT vs SYSTEMD ) CentOS 7 ha cambiado de raíz y prácticamente no se siente como un CentOS 6.x y anteriores, es otro bicho. Por lo que estas herramientas que aun no se actualizan no pueden crear USB de instalación de CentOS 7
Dicho lo anterior por eso estoy en contra de los framework y herramientas que hacen todo por el usuario, la falta del conocimiento profundo del sistema operativo o de los ataques o de cualquier cosa que ahora solo dan click sin entender que pasa de fondo. Afortunadamente yo soy más Hardcore ya y me reusó a migrar a cosas que faciliten la vida si no entiendo por que funciona, ojo no estoy encentra de que haya usabilidad y rapidez al solucionar problemas. Estoy encentra de quien usa esas herramientas no entiendan el por que funcionan.
Ahora redactare un articulo de cómo crear tu USB de instalación de CentOS 7, como lo hacen los hombres. Artesanalmente no con programas de dar click.
Entendiendo las nuevas condiciones.
CentOS 7 usa como sistema de archivo por default XFS, deja de lado Ext2,Ext3,Ext4 como opcionales, por lo que usare XFS para este caso.
Requerimiento
Un USB con al menos 6GB de espacio pero si tiene mas mejor, de forma que además de tener una USB para instalar tengamos un CentOS 7 vivo en una USB para tareas de mantenimiento.
Tener un GNU/Linux instalado, si no quieres batallar puede ser otro CentOS o Ubuntu.
Syslinux y una imagen del Master boot record para ser usada con Syslinux, normalmente Syslinux viene con estas imágenes al instalarse en tu distribución favorita como CentOS o Ubuntu.
Descargar la imagen del DVD de CentOS 7
Paso 1
Preparar el USB
Si eres hombre usaras fdisk pero si aun estas en el closet puedes usar Gparted, crea 2 particiones una de 100MB y la otra de 4.2GB
Paso 2
Si eres un hombre valiente usa mkfs para formatear con FAT32 la partición de 100MB y con XFS la de 4.2GB o usa Gparted para formatear las particiones.
Paso 3
La partición de 100MB debe ser booteable, puedes hacerlo con fdisk o con Gparted
Paso 4
Inyecta a la USB el Master Boot Record de syslinux, usa el comando dd para lograrlo, para este articulo mi maquina reconoció el dispositivo USB como /dev/sdf, antes de hacer este paso asegúrate de saber que /dev/sd(algo) fue asignado a tu USB o podrías inyectar el MBR en el lugar incorrecto.
Si tienes CentOS es probable que la imagen de MBR de Syslinux este en la ruta:
/usr/share/syslinux/mbr.bin
Ejemplo
dd if=/usr/share/syslinux/mbr.bin of=/dev/sdf
Paso 5
Monta la imagen de DVD de CentOS 7 y extrae las carpetas o directorios isolinux e images, desmonta la imagen de DVD
Paso 6
Monta la partición de 4.2GB de tu USB, la que formateaste con XFS y crear un directorio o carpeta llamado centos , dentro de centos copia el directorio o carpeta de images, cuando termine de copiarse images y todo su contenido copia la imagen DVD de CentOS dentro de la misma carpeta o directorio centos. Cuando termine de copiarse la imagen del DVD desmonta la partición de 4.2GB de tu USB.
Paso 7
Monta la partición con FAT32 la de 100MB y copia la carpeta isolinux, despues renombra isolinux por syslinux.
Entra a syslinux y elimina el archivo llamado isolinux.bin, despues de eliminar el archivo renombra isolinux.cfg por syslinux.cfg, básicamente solo cambias el iso por sys en el nombre del archivo
Edita el archivo syslinux.cfg , busca el siguiente bloque:
label linux
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img method=hd:UUID=1573a1e8-5b26-459f-b4cf-7bd2213b10e1:/centos
la línea append debe verse así, el valor UUID es importante, para mí en este articulo el valor es 1573a1e8-5b26-459f-b4cf-7bd2213b10e1 como es un numero único este valor no será válido para ti, para saber cual es e tu valor ejecuta el comando blkid obtendrás algo como esto
/dev/sdf1: LABEL=”GNUCENTOS” UUID=”6BAC-337B” TYPE=”vfat”
/dev/sdf2: LABEL=”IMAGEN” UUID=”1573a1e8-5b26-459f-b4cf-7bd2213b10e1” TYPE=”xfs”
Encuentra tu dispositivo, recuerda que para mí es /dev/sdf y la partición que quiero es la 2 la de 4.2GB para extraer su UUID
El valor que te es importante es el UUID, el UUID equivale al número de serie en los disquete formateados con MSDOS, es un numero único para cada volumen, copia el valor y ponlo en la línea append en la sección de method
Se usa el UUID por que en cada maquina el USB puede tener un dispositivo diferente, en mi caso fue /dev/sdf por lo que yo podría poner la línea append así:
append initrd=initrd.img method=hd:sdf2:/centos
Pero no es recomendable porque no en todas las computadoras será sdf, en otras podría ser sda o sdb y cuando eso ocurra no arrancara de forma correcta el USB, el UUID es el identificador único de la partición por lo tanto no cambia sin impotar que /dev/sd(algo) le toque en otras computadoras.
Paso 8
Ejecuta syslinux como parámetro pasa el dispositivo de tu usb en la partición 1 , la FAT32 ejemplo
syslinux -s /dev/sdf1
finalmente desmonta la partición FAT32 de 100MB.
Ahora tu memoria USB debe estar lista para arrancar e instalar CentOS 7
Asi debe verse tu USB cuando es montado en GNU/Linux
Paso 9 ( Opcional )
Ya habrás notado que si tienes un USB de 8GB o de 16 o más GB seria un desperdicio ya que las particiones que se han creado solo consumen 4.3GB de espacio en el USB, esto es a propósito porque ahora que tu USB puede bootear, también puede comportarse como un disco duro físico, puedes hacer que el USB se instale a si mismo CentOS 7 en el espacio disponible, sería una instalación viva, lo que haría que tu USB puede instalar CentOS 7 o arrancar con una instalación de CentOS 7 lo cual puede ser útil si no confías en la computadora en la que estas, cierra el Windows y arrancas con tu USB accesando a tus archivos dentro del USB evitando el malware o spyware que pudieran haber en tu esa computadora. Solo lleva contigo tu USB en tu llavero.
Finalmente.
Este articulo te ayudara a crear un instalador USB de CentOS 7 donde hoy 25 de octubre del 2014 aplicaciones automatizadas fallan, recuerda , siempre es importante entender por qué funciona. Si confías en aplicaciones automatizadas cuando fallen te quedaras a pie.
¿ Por que he creado 2 particiones una FAT32 y una XFS ?
Porque un sistema de archivos FAT32 tiene un límite físico de 2GB por archivo, la imagen del DVD completo pesa 4.1GB por lo tanto habría un error al intentar copiar el la imagen del DVD en FAT32


Fuente:

https://www.lastdragon.net/?p=1143

No hay comentarios:

Publicar un comentario