USB Installation Media (Español)

From ArchWiki
Revision as of 07:32, 27 September 2013 by Pedro (Talk | contribs) (Sobreescribir la unidad USB)

Jump to: navigation, search

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary end

Esta página aborda varios métodos sobre cómo escribir la instatánea de Arch Linux en una unidad USB (también conocida por «unidad flash», «lápiz USB», «llave USB», etc.) El resultado será un sistema de tipo LiveCD («LiveUSB», si se prefiere) que, debido a la naturaleza de SquashFS, descarta todos los cambios una vez que se apaga el equipo.

Si desea realizar una instalación completa de Arch Linux desde una unidad USB (es decir, con valores persistentes), véase Installing Arch Linux on a USB key.

Nota: Para arrancar desde un sistema UEFI, cree un lápiz USB booteable siguiendo estas instrucciones.

En GNU/Linux

Sobreescribir toda la unidad USB

Advertencia:
  • Esta acción destruirá irreversiblemente todos los datos en /dev/sdx
  • Este método no funciona con el arranque UEFI.
Sugerencia: Compruebe con la orden lsblk que el soporte de instalación de la llave USB no está montado.
Nota: Utilice /dev/sdx en lugar de /dev/sdx1.
# dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx && sync

Cómo restaurar la unidad USB

Debido a que la imagen ISO es un híbrido que puede ser grabada en un disco o escribirse directamente en una unidad USB, no incluye una tabla de particiones por defecto.

Después de instalar Arch Linux y, por tanto, acabado de utilizar la unidad USB, en esta se debe ajustar a cero los primeros 512 bytes (es decir, donde se ubica el código de arranque en el MBR y la tabla de particiones no estándar) si desea restaurar la funcionalidad del USB completamente:

# dd count=1 bs=512 if=/dev/zero of=/dev/sdx && sync

A continuación, cree una nueva tabla de particiones (por ejemplo, «msdos») y un sistema de archivos (por ejemplo, EXT4, FAT32) utilizando gparted, o desde un terminal:

  • Para EXT2/3/4 (ajústelo en consecuencia), sería:
# cfdisk /dev/sdx
# mkfs.ext4 /dev/sdx1
# e2label /dev/sdx1 USB_STICK
  • Para FAT32, instale el paquete dosfstools y ejecute:
# cfdisk /dev/sdx
# mkfs.vfat -F32 /dev/sdx1
# dosfslabel /dev/sdx1 USB_STICK

Sin sobreescribir toda la unidad USB

Este método es un poco más complicado que escribir la imagen directamente con la orden dd, pero, en cambio, mantiene la unidad utilizable para el almacenamiento de datos distintos de la imagen a grabar. Antes de empezar, asegúrese de que el dispositivo USB está formateado como FAT32, EXT2/3/4 o Btrfs. Para arrancar UEFI y/o interactuar con otros sistemas operativos se debe utilizar FAT32. Por lo tanto, asegúrese de que tiene el paquete syslinux (versión 4.04 o más reciente).

1. Extraiga la carpeta arch de la ISO a la unidad USB. Para las placas base UEFI siga estas instrucciones.

2. Instale el gestor de arranque Syslinux:

Advertencia: Tenga mucho cuidado cuando establezca el punto de montaje para la orden dd y utilice la unidad completa en las órdenes siguientes, no la primera partición. Esto es un error muy común.
Nota: En algunas distribuciones el archivo mbr.bin puede estar disponible en /usr/share/syslinux/mbr.bin.
$ cd /media/alguna_carpeta/arch/boot/syslinux    #El punto de montaje de la unidad USB. No se salte este paso.
# extlinux --install .                           #Escribir exactamente como se ve, incluyendo el punto.
# dd bs=440 conv=notrunc count=1 if=/usr/lib/syslinux/mbr.bin of=/dev/sdx
# parted /dev/sdx toggle 1 boot

3. Ajuste los archivos de configuración:

Advertencia: Se podría etiquetar el disco como " ARCH_2013XX" (con el mes de lanzamiento correspondiente), pero tal vez sería incluso mejor opción utilizar la UUID (de esta manera se puede volver a etiquetar como se quiera después, sin tener que preocuparse de él, o se podría dejar en blanco). Si no se hace bien será lanzado el famoso error: 30 seconds.

A continuación se muestra cómo se reemplaza la parte archisolabel=ARCH_2013XX con su equivalente de archisodevice=/dev/disk/by-uuid/47FA-4071 para ambos archivos de configuración al mismo tiempo, utilizando una sola orden:

Nota: Ajuste de modo correcto /dev/sdx1 antes de ejecutar la orden, de lo contrario obtendrá un resultado en blanco (desde el momento en que la unidad sdx no existe).
$ sed -i "s|label=ARCH_.*|device=/dev/disk/by-uuid/$(blkid -o value -s UUID /dev/sdx1)|" archiso_sys{32,64}.cfg

Si el paquete syslinux en su distribución es anterior a la versión 4.06, como una solución para los sistemas de archivos FAT32 (no es necesario para EXT4), la línea APPEND de syslinux.cfg debería también modificarse:

$ sed -i "s|../../|/arch|" syslinux.cfg

Usar UNetbootin

UNetbootin se puede utilizar en cualquier distribución de Linux o Windows para copiar la ISO en un dispositivo USB. Sin embargo, Unetbootin sobrescribe syslinux.cfg, por lo que crea un dispositivo USB que no arranca correctamente. Por esta razón, Unetbootin no se recomienda —en su lugar, use dd o uno de los métodos descritos abajo—.

Advertencia: UNetbootin escribe, por defecto, syslinux.cfg; este debe ser restaurado antes, a fin de que el dispositivo USB arranque correctamente.

Edite syslinux.cfg:

sysconfig.cfg
default menu.c32
prompt 0
menu title Archlinux Installer
timeout 100

label unetbootindefault
menu label Archlinux_x86_64
kernel /arch/boot/x86_64/vmlinuz
append initrd=/arch/boot/x86_64/archiso.img archisodevice=/dev/sdx1 ../../

label ubnentry0
menu label Archlinux_i686
kernel /arch/boot/i686/vmlinuz
append initrd=/arch/boot/i686/archiso.img archisodevice=/dev/sdx1 ../../

En /dev/sdx1 debe sustituir x con la primera letra libre después de la última letra en uso en el sistema en el que va a instalar Arch Linux (por ejemplo, si tiene dos unidades de disco duro, utilice c). Puede hacer este cambio durante la primera fase del arranque pulsando Tab cuando se muestra el menú.

En Mac OS X

Para poder utilizar la orden dd sobre un dispositivo USB en un Mac, tiene que hacer algunas operaciones especiales. En primer lugar, inserte el dispositivo USB, OS X lo montará automáticamente, y en Terminal.app ejecute:

$ diskutil list

en el Terminal.app. Hay que averiguar cómo se llama el dispositivo USB (sólo tiene que utilizar la orden `mount` o `sudo dmesg | tail`). Ahora ejecute:

$ diskutil unmountDisk /dev/disk1

para desmontar las particiones en el dispositivo (por ejemplo, /dev/disk1s1) mientras se mantiene montado el dispositivo adecuado (es decir, /dev/disk1). Ahora se puede continuar de acuerdo con las instrucciones de Linux anteriores (pero use bs=8192 con la orden dd, si está utilizando el OS X, el número viene de 1024*8).

dd if=image.iso of=/dev/disk1 bs=8192
20480+0 records in
20480+0 records out
167772160 bytes transferred in 220.016918 secs (762542 bytes/sec)

es probablemente una buena idea expulsar el disco en este momento antes de la extracción física :

$ diskutil eject /dev/disk1

En Windows

Win32 Disk Imager

Advertencia: Esto destruirá toda la información en su unidad flash USB

En primer lugar, descargar el programa desde aquí. A continuación, extraiga el archivo y ejecute el ejecutable. Ahora, seleccione la ISO de Arch Linux en la sección Image File y la letra del dispositivo flash USB (por ejemplo [D:\]) en la sección Device. Por último, haga clic en Write cuando esté listo.

Sugerencia: Por defecto, el navegador de archivos Win32 Disk Imager asume que los archivos de la imagen del disco terminan con la extensión .img. Sin embargo, puede diferenciar simplemente los Files of type desplegando una lista con *.* y continuar con la selección de la ISO de Arch Linux.
Nota: Después de la instalación, es posible que tenga que restaurar la unidad flash USB siguiendo un proceso similar al que se indica aquí.

USBWriter para Windows

Descargue el programa desde http://sourceforge.net/projects/usbwriter/ y ejecútelo. Seleccione el archivo de imagen de Arch Linux, la memoria USB de destino, y pulse el botón write. Ahora debería ser capaz de arrancar desde el dispositivo USB e instalar Arch Linux desde el mismo.

El método Flashnul

flashnul es una utilidad para comprobar la funcionalidad y el mantenimiento de memorias flash (USB-Flash, IDE-Flash, SecureDigital, MMC, MemoryStick, SmartMedia, XD, CompactFlash, etc.).

Desde un intérprete de órdenes, invoque flashnul con el parámetro -p, y determine qué dispositivo indica como unidad USB. Por ejemplo:

C:\>flashnul -p
Avaible physical drives:
Avaible logical disks:
C:\
D:\
E:\

En este caso, la unidad USB es E:

Una vez que haya determinado qué dispositivo es el correcto, puede escribir la imagen al disco, invocando la orden flashnul, con la letra del dispotivo, el parámetro -L, y la ruta a la imagen. En este caso, sería:

C:\>flashnul E: -L ruta\a\arch.iso

Si está realmente seguro de que desea escribir los datos, escriba «yes», y luego esperar un poco para que pueda escribir. Si se obtiene un error de «access denied error», cierre todas las ventanas que tenga abiertas con Explorer.

Si está en Vista o Win7, debe abrir la consola como administrador, o de lo contrario flashnul fallará al abrir el lápiz usb como si fuese un dispositivo de bloque y solo será capaz de escribir a través del manejo de la unidad proporcionada por Windows.

Nota: Necesita utilizar la letra de la unidad en lugar del número. flashnul 1rc1, Windows 7 x64.

El método Cygwin

Asegúrese de que la instalación de Cygwin contiene el paquete dd. O si no se desea instalar Cygwin, solo tiene que descargar dd para Windows desde http://www.chrysocome.net/dd.

Coloque el archivo de imagen en su directorio personal, por ejemplo:

C:\cygwin\home\nombre_de_usuario\

Ejecute cygwin como administrador (necesario para que cygwin pueda acceder al hardware). Para escribir en el disco USB utilice la siguiente orden:

dd if=image.iso of=\\.\[x]: bs=4M

donde image.iso es la ruta al archivo de imagen ISO en el directorio cygwin y \\.\[x]: es el dispositivo USB, donde x es la letra designada por windows, en el ejemplo seguido es: \\.\d:.

En cygwin 6.0 busque la salida de la partición correcta con:

cat /proc/partitions

y escriba la imagen ISO con la información obtenida de la salida.

Ejemplo:

Advertencia: La orden de abajo borra irremediablemente todos los archivos de la memoria USB, así que asegúrese de que no tiene archivos importantes en el lápiz usb antes de hacer esta operación.
dd if=image.iso of=/dev/sdb bs=4M

dd para Windows

Una versión dd con licencia GPL para Windows está disponible en http://www.chrysocome.net/dd. La ventaja de este sobre Cygwin es que la descarga es más pequeña. Úselo como se indica para las instrucciones de Cygwin mencionadas más arriba.

Cargar el soporte de instalación desde la RAM

Este método usa Syslinux y MEMDISK para cargar toda la imagen ISO en la memoria RAM, así que asegúrese de que tiene suficiente RAM para sostenerlo. Una vez que se realiza la carga y aparece el menú gráfico se puede simplemente remover la memoria USB y, tal vez, incluso utilizarla en otro equipo para iniciar el proceso de nuevo. Por lo tanto, permite el arranque y la instalación de Arch desde (y para) el mismo lápiz USB.

1. Formatee la memoria USB en FAT32 y cree las siguientes carpetas:

X:\Boot
X:\Boot\ISOs
X:\Boot\Settings

2. Copie la imagen ISO que desea arrancar a la carpeta «ISOs» (por ejemplo, archlinux-2012.08.04-dual.iso), y extraiga la última liberación de syslinux desde aquí (por ejemplo, syslinux-4.05.zip), donde:

  • ./win32/syslinux.exe podría ubicarse en el escritorio o donde quiera.
  • ./memdisk/memdisk iría a la carpeta «Settings».

Y, en esta última carpeta, cree el archivo syslinux.cfg:

X:\Boot\Settings\syslinux.cfg
DEFAULT arch_iso

LABEL arch_iso
        MENU LABEL Arch Setup
        LINUX memdisk
        INITRD /Boot/ISOs/archlinux-2012.11.01-dual.iso
        APPEND iso
Sugerencia: Si desea agregar más distribuciones (Debian y Parted Magic fueron probados) es posible hacerlo editando este archivo. Tal vez, incluso, pueda obtener un buen menú y una imagen de fondo, en lugar del predefinido por la ISO de Arch Linux. Remítase a la wiki de Syslinux.

3. Por último, cree un archivo *.bat en la carpeta donde esté ubicado syslinux.exe y ejecútelo («ejecute como administrador» si está en Vista o Windows 7):

C:\Documents and Settings\username\Desktop\install.bat
@echo off
syslinux.exe -m -a -d /Boot/Settings X:

Terminado.

Universal USB Installer

La herramienta de Windows [1] se puede utilizar para crear fácilmente un dispositivo USB live, con múltiples Instaladores de distintas distribuciones de Linux. Una vez creada, los Instaladores pueden ser añadidos o eliminados sin formatear la unidad USB.

Solución de problemas

Nota:
  • Para el Método MEMDISK, si obtiene el famoso error «30 seconds», intente arrancar la versión i686, para lo cual pulse la tecla Tab para desplazarse hasta la entrada Boot Arch Linux (i686) y añada vmalloc=448M al final. Como referencia: Si la imagen es más grande de 128MB y tiene un Sistema Operativo de 32 bits, entonces tiene que aumentar el uso de la memoria máxima de vmalloc. (*)
  • Si obtiene el error «30 seconds» debido a que no se monta /dev/disk/by-label/ARCH_XXXXXX, pruebe cambiando el nombre del soporte USB a ARCH_XXXXXX (por ejemplo, ARCH_201302).

Véase también