Crear un USB de Instalacion de CentOS 7
By: Date: octubre 24, 2014 Categories: Consultoria y Manuales,Personal

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.

USB CentOS 7
Ver mas grande

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

USB CentOS 7
Ver mas grande

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

USB CentOS 7
Ver mas grande

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.

USB CentOS 7
Ver mas grande

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

12 thoughts on “Crear un USB de Instalacion de CentOS 7

  1. Mozilla Firefox 33.0 Ubuntu Linux

    Pregunto, ¿no es mas facil hacer?
    cat imagen.iso > /dev/sdX
    Es lo que hago yo cuando necesito instalar un linux en un equipo sin lecto DVD.

    Saludos.

    1. Mozilla 11.0 Windows 7

      Depende del contenido de la imagen y si el destino es un USB o un disco duro, en teoría si viene con el “El Torito” es posible, pero es algo sucio y mal hecho, en sistemas todo debe ser elegante…

  2. Mozilla Firefox 33.0 Ubuntu Linux

    Pensé que hablabamos de pasar la imagen del instalador de CentOS 7 a un pendrive.
    Mas elegante que hacer un cat o un dd al dispositivo sin tener que hacer todo lo demás, no se que puede haber.
    Normalmente lo hago para instalar CentOS a un servidor, después reutilizo el pendrive. Se tarda lo que se tarda en que termine el cat o dd y luego un sync.

    Saludos.

  3. Mozilla 11.0 Windows 7

    Si es tener una imagen, pero también tener preparado el USB para una instalación en VIVA en la cual llevo programas como Asterisk con parches para R2 modificado para líneas digitales E1, por supuesto mis propias VPN para usarla en redes hostiles y la capacidad de almacenar cualquier osa y sea de la red o de los discos duros de la maquina que este usando, mientras mas grande y veloz el USB mejor

  4. Mozilla 11.0 Windows 7

    Administrator, Excelente post, no conocía el método para “instalación VIVA”

    Y teniendo en cuenta su último comentario el título del post debería ser actualizado, ya que como está actualmente se puede abarcar ejecutando sólo dd.

  5. Google Chrome 42.0.2311.152 Windows 7

    Consulta amigo! en el paso 4, no entendí a que te referías, soy novato en esto, y necesito instalar el Centos 7. A que te refieres con “Inyecta a la USB el Master Boot Record de syslinux”. No se que son ambas cosas, estoy preparando el USB desde Ubuntu 14.04, pero no entiendo este punto, si me lo puedes explicar te lo agradecería mucho 🙂

  6. Google Chrome 42.0.2311.152 Windows 7

    Juan el MBR ( Master Boot Record ) es un programa basico pequeñito que solo mide 512 bytes, solo tiene una instruccion muy sencilla y es cargar el sistema operativo, en el caso de linux lo que carga es el ” Valga la redundancia ” el cargador de Linux que su vez carga el kernel de linux, el cargador de linux puede ser lilo o grub u otro.

    Algunos USB solo se consideran como dispositivos de almacenamiento no para arrancar un un equipo desde el USB, sin el MBR el USB no podria arrancar, algunos USB no lo tienen, asi que se le inyecta uno que viene con el syslinux para que entonces el USB tenga un MBR y pueda arrancar desde el USB del PC

  7. Mozilla Firefox 40.0 Ubuntu Linux

    Decirte quiero que tu paso 4 está mal; si haces un dd a tu partición de 100Mb estás transformando tu sistema de archivo FAT32 al que tiene la imagen mbr.bin….

    Por ende a partir del paso 7 es imposible seguir con el tutorial.

    Saludos,
    Uno que usa programas framework pero es tan macho que puede modificar los mismos para hacer que hagan las cosas actualizadas.

  8. Google Chrome 44.0.2403.155 Linux

    David, el paso 4 dice lo siguiente:

    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

    ———————————————————————-

    No estoy inyectando nada a ninguna partición, sino al dispositivo de bloques aka el USB, luego entonces el paso 7 es posible : )

  9. Konqueror 4.3 RedHat Linux

    me encanto como dices si eres hombre usa fdisk y si estas en el closet usa gparted hahaha deberias de poner los pasos a segir para ambos casos paralos que no son hombres hahaha y sigen en el closet

  10. Google Chrome 53.0.2785.143 Windows 7

    Saludos.

    Realmente no entiendo, he bajado varios iso de centos 7, se instalo tanto en windows y ubuntu el unetbootin, se tomo la distribuccion, tanto 7 como 6 y por ningun lado puedo generar el booteable, me dan error. Lo estoy generando en un pendriver, es requisito que sea en un CD, o que se requiera un requisito de hardware… Que no este manejando y por tal motivos, todos los booteables estallan….

    Mil Gracias…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *