Mi guía de Instalación de ArchLinux

Escrito por systeminside en y tuvo 6 comentarios
ArchLinux

Desde que conocí a Antergos nunca más instalé Archlinux por su método tradicional, que seamos sinceros, será todo lo KISS que queramos pero está muy obsoleto para los tiempos que vivimos. Perfectamente Archlinux podría instalarse usando un instalador como Cnchi, y simplemente dejar la opción de instalar un Sistema Base sin Entornos de Escritorio. Pero nada, dudo mucho que los desarrolladores de ArchLinux escuchen una sugerencia como esa.

Vamos al lío, instalaremos ArchLinux desde cero teniendo en cuenta que para el ejemplo, partiré de un disco físico que no tiene particiones.

Consejos previos a la instalación

  1. Para instalar Arch lo 1ro que aconsejo es probar en una máquina virtual, de esta forma una vez que estemos seguro de lo que vamos a hacer, podemos proceder a ejecutar los pasos aprendidos en nuestro ordenador.
  2. Lo 2do que recomendaría es hacer una salva de todos nuestros ficheros por si algo llega a ocurrir, y si es posible, hacer una instalación con el disco duro vacío. Por si acaso.
  3. Y por último mi 3er consejo a la hora de instalar Arch, es tener otro ordenador con acceso a Internet por si se presenta algún problema o en su defecto, imprimir la guía de instalación que podemos encontrar en la Wiki de Arch Linux.

Instalación de Arch Linux paso a paso

Pues bien, supongo que ya tenemos a la mano una imagen actualizada del iso de Arch Linux. Lo primero es pasar nuestra imagen a una memoria USB, o quemarla en un CD-ROM «–¿En serio, en pleno siglo 21? Una vez que hemos puesto la memoria en el puerto USB, procedemos a conocer cual es su nombre, para ello podemos usar el comando:

dmesg |tail

Lo que nos devolverá algo como esto:

[14403.197153] sd 7:0:0:0: [sdc] Write Protect is off
[14403.197157] sd 7:0:0:0: [sdc] Mode Sense: 23 00 00 00
[14403.197299] sd 7:0:0:0: [sdc] No Caching mode page present
[14403.197303] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[14403.198325] sd 7:0:0:0: [sdc] No Caching mode page present
[14403.198329] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[14403.198726] sdc:
[14403.199372] sd 7:0:0:0: [sdc] No Caching mode page present
[14403.199376] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[14403.199379] sd 7:0:0:0: [sdc] Attached SCSI removable disk

Como pueden apreciar, en este caso mi memoria es sdc. Sabiendo esto, podemos proceder a pasar la imagen .iso a la memoria, que debe estar desmontada:

# dd if=archlinux-2015.08.01-dual.iso of=/dev/sdc bs=4M && sync

Esto demora un poco, pero cuando termine reinciamos nuestro ordenador y nos aseguramos que arranque por el dispositivo USB. Una vez que arranque la PC nos encontraremos con una pantalla como esta:

Bienvenida instalación ArchLinux

1. Configurando el teclado.

Cuando cargue el prompt lo primero que debemos hacer seleccionar la distribución del teclado que estamos usando. En mi caso:

# loadkeys us

Si, hablo español pero mi teclado está en Inglés.. así que uso us, pero si su teclado está en español, pues quedaría:

# loadkeys es

Podemos ver todas las distribuciones disponibles para el teclado con el siguiente comando:

# ls /usr/share/kbd/keymaps/i386/qwerty

2. Particionando el disco

Ahora viene la parte más crítica de la instalación. Para particionar el disco usamos una herramienta un poco compleja de manejar, llamada cfdisk. Con cfdisk lo que haremos es configurar nuestra tabla de particiones. Por lo general lo normal en Arch Linux es configurar 4 particiones:

  • La primera, /boot, es donde se almacenarán los archivos esenciales para bootear ArchLinux (tales como el kernel, imágenes ramdisk, el bootloader, etc). Se recomienda un tamaño de 100 MiB (no es necesario dejarle más espacio).
  • La segunda es la partición / (root), en donde se instalará el sistema operativo y las aplicaciones (entre muchas otras cosas). Su tamaño depende del uso que desees darle a ArchLinux. Unos 10 GiB deben ser más que suficientes para un sistema tradicional; si piensas que instalarás muchas aplicaciones (los juegos, entre ellas), será mejor pensar en unos 20 o 30 GiB.
  • La tercera es la partición /home, donde se almacenarán nuestras configuraciones personales, las configuraciones de las aplicaciones (y tus perfiles en ellas), y tradicionalmente nuestros datos (documentos, fotos, videos, etc), por lo que se recomienda asignarle un espacio considerable del disco duro.
  • Por último, toca elegir el tamaño de la partición swap, lugar donde se almacena temporalmente información de la memoria RAM (cuando ésta se llena) en el disco duro.¿Qué tamaño elegir para la swap?

Pero en mi caso, nunca instalo el /boot por separado, así que solo necesitamos 3 particones. Tecleamos:

# cfdisk

Como el disco es nuevo y no tiene particiones, nos aparece algo como esto:

Tabla de Particiones CFDisk

Yo recomiendo usar dos y no gpt si solo instalaremos ArchLinux en el disco duro. Escogemos dos damos Enter y no sale esto:

CFDisk

No hay particiones creadas, así que para comenzar a particionar, nos colocamos en New y damos Enter

CFDisk

Seleccionamos Primary y damos Enter. Ahora nos pedirá escribir el tamaño de la partición:

CFDisk

Y ya tenemos creada la primera partición. Nos paramos sobre ella y damos Enter donde dice Bootable.

CFDisk

Eso si, nada de esto tomará efecto hasta que demos Enter en Write pero aún no es el momento. Ahora creamos la segunda partición (para /home), usando el mismo procedimiento, solo que nos colocamos donde dice Free Space.

Para la tercera partición, la SWAP seguimos el mismo procedimiento, lo único que cambia es que una vez creada, debemos dar Enter sobre Type y no saldrá este listado:

CFDisk

Donde tenemos que escoger la opción Linux swap / Solaris. Al final todo debe quedarnos de esta forma:

CFDisk

Para guardar los cambios solo tenemos que dar Enter en Write, escribimos yes y seguimos adelante.

3. Formateando las particiones creadas

Ahora nos queda darle formato a las particiones que configuramos con cfdisk. No creo que sea necesario volver a decir que esto deben hacerlo bajo su completa y total responsabilidad.

Para ello hacemos uso de mkfs de la siguiente forma:

# mkfs -t ext4 /dev/sda1

Ahora formateamos las particiones correspondiente al /home. Estoy suponiendo que hemos dejado la partición de la Swap como sda4.

# mkfs -t ext4 /dev/sda2

Ahora pasamos a formatear la Swap con el comando mkswap y luego la activamos con swapon:

# mkswap /dev/sda3
# swapon /dev/sda3

5. Montando las particiones del disco duro

Vamos a montar las particiones que hemos creado y formateado en /mnt. Comenzamos por la partición destinada a la / y hay que tener en cuenta que no es sda1, sino sda2. Tengan cuidado con eso.

# mount /dev/sda1 /mnt

Ya montada esta partición, tenemos que crear en ella los directorios /boot y /home.

# mkdir /mnt/boot
# mkdir /mnt/home

Y procedemos a montar las particiones correspondientes:

# mount /dev/sda2 /mnt/home

6. ¿Estamos conectados a Internet?

Antes de proseguir al siguiente paso tenemos que estar seguro que tenemos conexión a Internet. Sinceramente no lo entiendo ¿Por qué no se pueden instalar los paquetes “base” del sistema desde el propio CD-ROM como en versiones previas? Si alguien lo sabe que me lo aclare.

Pues bien, hacemos un ping a cualquier IP o dirección que sabemos nos va a devolver una respuesta, por ejemplo:

# ping 8.8.8.8

Y si todo funciona bien, pasamos al siguiente paso. Si no lo hace (algo raro a no ser que uses el iso 2012.07.15), primero tenemos que conocer cual es el nombre de nuestra tarjeta, por lo que ejecutamos:

# ip link

Lo que nos devolverá algo como esto:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
link/ether 18:03:73:a3:f3:e1 brd ff:ff:ff:ff:ff:ff
3: wlp9s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
link/ether 4c:80:93:19:da:02 brd ff:ff:ff:ff:ff:ff

En mi caso, la tarjeta que voy a usar es la cableada, que es enp5s0. Activamos la red con el siguiente comando:

# ip link set enp5s0 up

y se le asigna una IP dinámica mediante DHCP:

# dhclient enp5s0

7. Instalando el Sistema Base

Bien, tenemos Internet y ahora lo que nos toca hacer es ejecutar:

# pacstrap /mnt base base-devel

Pacstrap es el nuevo script de instalación de Arch Linux. Cuando lo ejecutemos comenzará a descargar e instalar los paquetes necesarios para que Arch funcione.

Y hagamos otra pausa por acá. Si como yo, tienen los repositorios en un servidor local, tenemos que editar el fichero /etc/pacman.d/mirrorlist y añadir la ruta de nuestro repo. Por ejemplo, en mi caso solo añadí delante de los mirrors que viene configurado:

Server = http://192.168.1.1/archlinux/$repo/os/$arch

Y listo.

Si disponemos de conexión cableada instalamos:

# pacstrap /mnt ifplugd

Si nuestra conexión es wifi:

# pacstrap /mnt wireless_tools wpa_supplicant wpa_actiond dialog

Por último instalamos sudo

# pacstrap /mnt sudo

8. Instalando GRUB

Ahora procedemos a instalar el Gestor de Arranque, en este caso Grub2. Para ello ejecutamos:

# pacstrap /mnt grub-bios

Es válido aclarar que como indica el nombre, este paquete está destinado a los que usamos BIOS. Si lo que tienen es UEFI, por favor lean la documentación oficial al respecto en la Wiki de ArchLinux.

9. Generando el fichero fstab

Ahora vamos a decirle a fstab como tenemos establecidas nuestras particiones.. para ello ejecutamos:

# genfstab -p /mnt >> /mnt/etc/fstab

10. Configurando el resto del sistema

Para configurar el resto de las cosas del sistema, debemos hacerlo mediante un chroot. Para ello ponemos:

# arch-chroot /mnt

El paso siguiente es establecer cual será el nombre de nuestro ordenador. El mío se llama Vostro, así que solo ejecuto:

# echo Lenovo >> /etc/hostname

Ahora, creamos un enlace simbólico de /etc/localtime a /usr/share/zoneinfo// (reemplaza y según tu ubicación geográfica). Por ejemplo, para Cuba:

# ln -s /usr/share/zoneinfo/America/Havana /etc/localtime

Posteriormente debemos configurar el fichero que corresponde a los locales, ubicado en /etc/locale.gen.

Lo abrimos con un editor de texto (nano en este caso) y descomentamos los locales a usar.. En mi caso descomenté es_ES.UTF-8 UTF-8, pero podía haber descomentado es_CU.UTF-8 UTF-8. Me quedó de esta forma:

#es_EC ISO-8859-1
es_ES.UTF-8 UTF-8
#es_ES ISO-8859-1

Luego ejecutamos:

# echo LANG=es_ES.UTF-8 > /etc/locale.conf

Y por último, para que todo esto surta efecto (y lo digo por experiencia propia), deben ejecutar el comando:

# locale-gen

Para generar nuestra localización como es obvio.

Ahora nos queda establecer por defecto la distribución del teclado. Lo que hicimos en el primer paso solo fue establecerla para la sesión actual.

# echo KEYMAP=us >> /etc/vconsole.conf

¿Qué nos va quedando? Muy poco. En un paso más arriba instalamos GRUB pero no lo configuramos. Y eso es lo que haremos ahora:

# grub-install /dev/sda

Y creamos el fichero grub.cfg con el siguiente comando:

# grub-mkconfig -o /boot/grub/grub.cfg

Ahora procedemos a crear el disco RAM inicial:

# mkinitcpio -p linux

Y ya casi terminamos.. solo nos queda hacer algo muy importante: Cambiar, o mejor dicho, establecer la contraseña para root. Así que ejecutamos:

# passwd

Salidos del chroot, desmontamos las particiones y reinciamos:

# exit
# umount /mnt/{boot,home,}
# reboot

11. Creando nuestro usuario

Para añadir mi usuario, usé el siguiente comando:

# useradd -m -G audio,lp,optical,storage,video,wheel,games,power,scanner -s /bin/bash elav

Los grupos son los siguientes:

  • audio – Tareas que involucran la tarjeta de sonido y aplicaciones relacionadas.
  • lp – Administración de impresoras.
  • optical – Manejo de los dispositivos ópticos (CD, DVD, etc).
  • storage – Manejo de diversos dispositivos de almacenamiento.
  • video – Tareas que onvolucran la tarjeta de video y aceleración por hardware.
  • wheel – ¡Importantísimo! Para que el usuario pueda usar sudo.
  • games – Necesario para permisos de escritura para juegos.
  • power – Necesario para poder apagar y reiniciar el sistema.
  • scanner – Administración y uso de digitalizadores (scanners).

Accedemos al fichero /etc/sudoers y descomentamos la línea:

# %wheel ALL=(ALL) ALL

Fin

Y esto es todo con respecto a la instalación de ArchLinux.. En otra oportunidad haré un artículo sobre que hacer después de instalar.

systeminside

systeminside

Blogger, Melómano, Administrador de Sistemas, Diseñador Web.

¿Ideas? ¿Comentarios?

  1. Excelente artículo. Muchas gracias!
    Saludos.

    Responder
    1. @Diego:

      Gracias a ti por pasarte y comentar.

      Responder
  2. No me lo vas a creer, pero funciona :D. BTW, como le haces para tener un mirror local de Arch? rsync? lftp?

    Responder
  3. Anonimo 2 años atrás

    Llevo ya cerca de dos años usando esta distribucion, aunque en ese tiempo tambien he probado Antergos, KaOS, y Manjaro, sencillamente porque me fascina PACMAN.

    Las veces que he instalado Arch Linux ha sido a traves del script de helmuthdu que se encuentra en GitHub pero creo que ha dejado de ser mantenido por el creador.

    Esperando el articulo para luego de la instalacion basica.

    Gracias

    Responder
  4. Jose Luis 1 mes atrás

    Buenas , una pregunta quiero instalar Arch Linux como único OS , no dual boot. Es necesario instalar el GRUB ???.. Saludos …

    Responder

¿...?