Instalación de Arch Linux desde Bootstrap

Antes que nada, quiero agradecer y enviar un saludo a mi compañero malwaretroyano, quien se ha encargado de mantener este blog durante mi ausencia. Muchas gracias, amigo.

Muy buenas comunidad linuxera, en esta entrada estaré comentando como se instala la superconocida Arch Linux, haciendo un bootstrap. Para particionado en MBR. Sin embargo, la instalación en GPT no debería variar en gran significación

Sin entrar mas en detalles, vamos a explicar lo que, en este medio, significa un bootstrap.

Un bootstrap, en este medio, significa que los desarrolladores informáticos, en este caso la comunidad de Arch, facilitan a los usuarios las herramientas necesarias para el desarrollo de nuestro sistema sin la necesidad de utilizar un medio de instalación directo. Distribuciones como Gentoo, la cual soy usuario, lo hace, también lo hace Funtoo y Exherbo; todas por medio de los Stage 3. Arch Linux, en su simplicidad también ofrece su medio de instalación, pero a diferencia de los anteriores, este lo llama por su nombre “bootstrap”. Pero al final terminan siendo procesos similares, donde las instalaciones pasan por medio de la compilación del código fuente para los primeros casos y la instalación de paquetes binarios para el caso de Arch Linux.

Para hacer la instalación, es necesario hacer un enjaulamiento “chroot” desde otro sistema, puede ser un Live CD o DVD. Por lo que se debe montar algunos archivos para hacer correctamente el enjaulado. Sin embargo, Arch Linux ofrece el paquete “arch-chroot”, que si bien sabemos podemos utilizarlo en la instalación habitual, en la instalación por bootstrap nos simplifica las cosas, al no tener que montar esos archivos cuyos comandos podrían parecer engorrosos para el usuario novel.

Ya entrando en materia debemos:

Tener las particiones hechas, en el particular yo prefiero hacer el /boot y el /home en particiones diferentes. En este caso no voy a hablar del tamaño de las particiones, ni de la aplicación para particionar, eso lo dejo a manos de Uds.

Asumiendo que el orden es:

/dev/sda1 “boot”
/dev/sda2 “root”
/dev/sda3 “swap”
/dev/sda4 “home”

Formateamos nuestro /boot:

root# mkfs -t ext4 /dev/sda1

En el mismo orden lo haremos para las demás particiones:

root# mkfs -t ext4 /dev/sda2 

root# mkfs -t ext4 /dev/sda4

Si donde estamos haciendo la instalación no hay swap, entonces debemos:

root# mkswap /dev/sda3

root# swapon /dev/sda3

Muy bien, ya hemos hecho las particiones del disco. Ahora debemos crear, dentro del sistema, las carpetas donde montaremos dichas particiones.

Para ello, primero debemos:

root# mkdir /mnt/arch

root# mount /dev/sda2 /mnt/arch

Una vez montada la partición de la raíz del sistema, ingresamos a ella para descargar el archivo bootstrap desde un mirror de Arch Linux. Para ello, se debe:

root# cd /mnt/arch
root# wget https://mirrors.kernel.org/archlinux/iso/latest/archlinux-bootstrap-2017.08.01-x86_64.tar.gz

Tenga en cuenta que, por efectos de las fechas, se pueden liberar ediciones nuevas del bootstrap. Sugiero revisen con su explorador el directorio del archivo:

https://mirrors.kernel.org/archlinux/iso/latest

Una vez tengamos el archivo en la partición, debemos desempaquetarlo por medio del siguiente comando:

root# tar xpf archlinux-*

Nótese que solo utilizamos una parte del nombre y un asterisco, para este caso, no necesitamos escribir completamente el nombre del archivo.

Luego de esto, nos quedará una carpeta de nombre “root.x86_64”, por lo que debemos ingresar a esa carpeta para copiar todos los archivos a lo que será nuestro directorio raíz. Entonces hacemos:

root# cd root.x86_64
root# mv * /mnt/arch

Con esto, estaremos moviendo todo el directorio de nuestro nuevo sistema a lo que será nuestra carpeta raíz. Por lo que podemos borrar ya la carpeta “root.x86_64”

root# cd /mnt/arch
root# rm -r root.x86_64

Antes de hacer el enjaulamiento, debemos tener en cuenta que los mirrors estén configurados, por lo que con nuestro editor abrimos la carpeta: /mnt/arch/etc/pacman.d/mirrorlist y deseleccionamos algunos mirrors cercanos a nuestra ubicación, de modo que la base de datos de nuestro nuevo sistema se pueda actualizar.

Recuerden que solo deben eliminar el signo ‘#’.

Previo al enjaulamiento, debemos montar nuestro /boot y nuestro /home de modo que el generador de fstab “genfstab” nos reconozca ambas particiones:

root# mount /dev/sda1 /mnt/arch/boot
root# mount /dev/sda4 /mnt/arch/home

Ahora si, ya podemos ingresar a nuestro nuevo Arch, por lo que procederemos a hacer el enjaulamiento de nuestro sistema a traves del siguiente comando:

root# /mnt/arch/bin/arch-chroot /mnt/arch

Una de las cosas que se puede notar aquí es como cambia el prompt de la terminal, eso quiere decir que ya estamos en nuestro nuevo sistema. Por lo que ahora procederemos a iniciar el gestor de paquetería “pacman” de nuestro nuevo sistema. Para ello, debemos ingresar lo siguiente:

root@arch# pacman-key --init
root@arch# pacman-key --populate archlinux

Luego procederemos a instalar el keyring, necesario para el buen funcionamiento de “pacman”:

root@arch# pacman -S archlinux-keyring

Una vez hecho esto, refrescamos todos los servidores del sistema e instalamos algunos paquetes necesarios a través de un:

root@arch# pacman -Syyu

Asimismo, procederemos a instalar la paquetería base de nuestro nuevo sistema, por medio de:

root@arch# pacman -S base base-devel grub-bios networkmanager os-prober

De la misma forma, procederemos por medio de esa herramienta maravillosa, proporcionada por Arch, llamada “genfstab” a crear el archivo fstab de nuestro nuevo sistema.

root@arch# genfstab -U / >> /etc/fstab

Ahora podemos generar el initramfs de nuestro sistema, si tenemos el boot en otra particion es obligatorio tenerlo montado para que funcione correctamente.

root@arch# mkinitcpio -p linux

Instalamos y configuramos el grub. Para que reconozca los sistemas que están en las otras particiones, es obligatorio el os-prober.

root@arch# grub-install /dev/sda
root@arch# grub-mkconfig -o /boot/grub/grub.cfg

Hacemos nuestro password de root.

root@arch# passwd

Salimos del chroot y reiniciamos.

root@arch# exit
root# reboot

Al reiniciar, deberiamos tener un Arch Linux puro, con lo necesario para funcionar. Solo hagan login como root y coloquen la contraseña que colocaron en el penúltimo paso.

Ahora activen la red y hagan ping, para comprobar que todo marcha bien:

root# systemctl enable NetworkManager
root# systemctl start NetworkManager

root# ping -C 3 www.google.com

Ya con esto, quedan con su Arch Linux operativo. Sin embargo, va ya de cuenta de Uds. configurar los locales, usuarios y el Entorno de Escritorio. Por lo que dejaré algunos links, de la wiki, que podrían ser de utilidad.

Locale en Español. Wiki de Arch Linux

Usuarios y Grupos, Wiki de Arch Linux

Entorno de Escritorio, Wiki de Arch Linux

Esto es todo apreciados amigos, espero les sea de provecho y estoy agradecido por sus valiosas atenciones. Estaré atento a sus comentarios, sugerencias o dudas.

Muchas Gracias.

Anuncios

Hola, Soy Gentoo y no soy un monstruo

Muy buenas, este es mi primer post sobre Linux y bueno quería hablarles un poco sobre una gran distro y cuando me refiero a “gran” es porque lo es. Solo tenemos que dedicarnos un poco.

Como les venía diciendo, NO soy un informático de profesión, de hecho, soy un docente con niveles de conocimientos digamos “moderados” en torno a GNU/Linux. Llevo 1 año y 2 meses usando Linux para la fecha que estoy escribiendo este artículo y ya he pasado por: Ubuntu, Arch Linux y ahora Gentoo como mis distribuciones principales. He usado otras distros de manera experimental como: Debian, Slackware, Manjaro, OpenSuse (en sus dos ramas), Fedora incluso Elementary. Pero, como les decía, de manera principal las que arriba mencioné. Y de veras, la intención de este post es acercar de alguna manera al usuario promedio a esta genial distribución, puesto que muchos parecen tenerle miedo.

¿Por qué elijo ahora Gentoo en detrimento de Arch?

De ese año y 2 meses llevo 2 meses usando Gentoo, luego de unos 10 meses usando Arch. La razón principal es muy simple, el sistema vuela, tanto o mas que Debian; además de tener una estabilidad casi como una piedra. Honestamente, muy pocas veces he visto errores en mi nuevo sistema. Haciendo buen uso de las “USE” el sistema se te configura de acuerdo a tus necesidades y eso me encanta. De hecho, cuando usaba Arch tenía que usar Gnome, puesto que mi tan gustado KDE tanto en su versión 4 como en la plasma 5 han tenido ciertos conflictos con Skype y ese conflicto nunca lo pude superar en plasma 5. Mientras que aquí todo va de maravilla, y eso si, muy rápido.

Otra cosa que me motivó a cambiar fue el monopolio de systemd como sistema de inicio en las distribuciones principales (salvando Slackware). Con esto, no pretendo hacer una crítica directa a systemd como muchos lo han hecho, de hecho, considero a systemd como un muy buen init en torno a la velocidad y la practicidad para lanzar los servicios; pero me preocupa un poco que ya la mayoría de las distros principales se han apegado a el, sin dar pie a explorar posibilidades y cerrando en gran parte el espacio para otros sistemas de inicio. Ocurre que en cualquier distro para instalar GNOME, con la salvedad de Funtoo Linux y ayúdeme si conoce otra, es un excluyente el hecho de tener systemd. Esto no es algo que parezca muy democrático que digamos, y siendo honesto, la razón principal por la que abandoné Windows es por el hecho que no era  democrático en lo absoluto.

Otra cosa que no me está pareciendo mucho de systemd es el lanzamiento de ese comando “machinectl shell“, creo que esto fue lo que prendió mis alarmas, el cual es el nuevo comando “superusuario” para distribuciones con systemd. Algo que desde mi particular modo de ver la vida, pretende hacer desaparecer al legendario “su” (que hasta luce mas bonito, siendo mas corto). Esto nos haría  entender que el Sr. Lennart Poettering y su grupo, han estado utilizando “estrategias invasivas” para ocupar espacios en GNU/Linux que ya han sido ocupadas por otros y así ganar reconocimiento sobre lo que ya está hecho.

¿Saben lo bonito que tiene Gentoo en ese aspecto? Que te permite instalar el init (OpenRC o systemd) sin restricciones, creo que Manjaro también esta aplicando este mecanismo; algo a mi parecer debe ser reconocido, porque este mundo de GNU/Linux es libertad, es democracia y es configurar el sistema como mejor nos viene en gana (me perdonan si suena muy explicito, pero debe ser así) y a lo que según mi concepto de Arch Linux también debería estar apegado a esto. Pero lamentablemente no es así.

Siguiendo con el tema. Otra cosa que me gusta de Gentoo, es el hecho de que siendo un sistema “rolling” te ofrezca 2 ramas para las actualizaciones de los paquetes. Una “stable” y la “current”. De verdad que esta es otra de las posibilidades que ofrece esta genial distribución, además del poder escoger las versiones de los paquetes que se quieren instalar. Definitivamente, esto es un plus de esta distro en comparación con las otras distros “rolling release”.

La cereza del pastel es el Portage. Antes de usar Gentoo, solía decir que en el mundo GNU/Linux el paquete mas completo era el YAST del OpenSuse; pero cuando comencé a entender el Portage, me di cuenta que este superaba todas mis expectativas; en lo completo, lo complejo y lo flexible. Definitivamente, el hecho de tener a tu mano una herramienta capaz de añadir o quitar funciones, incluir o excluir actualizaciones a determinados paquetes, es definitivamente la joya de la corona. Confieso que, al principio, no sabia como rayos utilizarlo, pero de verdad cuando vas aprendiendo se va entendiendo sobre  la belleza  enfocada en la complejidad y eso es algo que se debe valorar.

Algo que me causa curiosidad, es la fama que se le ha adjudicado a Gentoo en torno a los tiempos de instalación del sistema, del entorno de escritorio y de determinados paquetes. He oído hablar de seis, ocho, nueve, diez, doce y hasta 24 horas, en el proceso de instalación. El proceso de instalación, en si, es relativamente corto, incluso he oido que para instalar KDE se requieren seis, siete u ocho horas (mentiras) pero claro, tampoco vamos a ser tan “geniales” de ponernos a instalar plasma 5 en una maquina con muy pero muy pocos recursos. Y cuando les digo esto, les digo que en una maquina intel pentium g630 con 4 Gb de RAM, me tardó un poco mas de una hora y media.

En el Handbook (Manual de Gentoo), aparecen las instrucciones para instalar el sistema. También existen manuales hechos como el hecho por el amigo ROOT-SUDO  bastante, pero bastante pedagógico en esta pagina:

https://rootsudo.wordpress.com/2014/09/14/manual-casi-facil-para-instalar-gentoo-paso-a-paso/

Otro manual bien explicado de un compañero que me asesoró un par de veces en un foro en el facebook es:

http://www.mediafire.com/view/?ja3s4rfh412nidd

Por ultimo les dejo un aproximado en los tiempos que me empleó para instalar gentoo en mi maquina (con las especificaciones que dicen arriba).

  • Descargar el Stage 3 (con 3 Mb/s de conexion) 15 min, pesa aproximadamente 200 Mb
  • Compilar el Kernel = 25 min usando genkernel
  • Actualizar el perfil para KDE = 3 Horas
  • Instalar plasma 5 = 2 Horas y media

Las demás instalaciones no deberían pasar de los 5 min / paquete. Pero, es posible detener la instalación y continuarla mas adelante.

Pero les confieso, todo valdrá la pena.