¿Tienes problemas al arrancar Linux? Prueba estos trucos y consejos

Siempre estamos acostumbrados es que, al pulsar el botón del ordenador, se ejecute el POST, o arranque de la BIOS, y acto seguido empiece a cargar nuestro sistema operativo. En unos segundos ya estaremos en la pantalla de inicio de sesión, tras la cual veremos el escritorio y podremos empezar a usar el ordenador. Sin embargo, ni Linux, ni ningún otro sistema operativo, es perfecto. Por lo tanto, es muy probable encontrarnos alguna vez con que nuestro sistema operativo no arranca. En ese caso, ¿qué podemos hacer? Pues aprender a solucionar los problemas de Linux con estos consejos.

Linux no suele dar tantos problemas al arrancar como Windows, ya que, a mal andar, aunque no lleguemos hasta el escritorio, al menos podremos cargar un TTY básico desde el que poder reparar el sistema. Sin embargo, puede fallar. Y los fallos más comunes que pueden hacer que este sistema no arranque son, o bien del gestor de arranque (GRUB) o fallos en los discos duros.

A continuación, vamos a ver cuáles son estos principales problemas y cómo podemos solucionarlos.

Motivos por los que puede fallar el arranque de Linux

Siempre se ha dicho que Linux es mucho más estable que su rival, Windows. Sin embargo, esto no quiere decir que Linux no falle nunca, sino simplemente que es más complicado que ocurra. Pero, cuando ocurre, también suele ser más complicado solucionarlo.

Los motivos por los que puede fallar el arranque de nuestra distro Linux son, entre otros:

  • Un problema con la partición de arranque del disco duro. Es posible que se haya corrompido la partición, o que por el motivo que sea el sistema no es capaz de encontrarla. Tendremos que repararla y asegurarnos de que está correctamente asignada a la unidad de arranque.
  • Una mala actualización del Kernel. Si el núcleo se ha descargado o instalado mal, o la versión que hemos elegido no es compatible con nuestro hardware o sistema, tendremos este problema. Por suerte, casi siempre podremos elegir, en GRUB, la versión anterior.
  • Un parche mal aplicado en el sistema que hace que este no pueda terminar de cargar. Similar al anterior, si hemos intentado actualizar Linux, y el parche ha quedado a medio instalar, es posible que el controlador de demonios no pueda arrancar todos los servicios necesarios para que funcione el sistema.
  • Si tenemos Dual-Boot, Windows puede haber configurado el MBR como gestor de arranque principal. En este caso, lo que tendremos que hacer es asegurarnos de que volvemos a configurar GRUB como gestor de arranque principal, para poder iniciar sin problemas la distro Linux.
  • Problemas con el Fast Boot de Windows. Si usamos Windows, y tenemos activado el inicio rápido, al quedar parte del núcleo del sistema volcado en el disco, al intentar iniciar Linux nos encontraremos con un error, ya que la BIOS bloquea la unidad para que solo pueda iniciar ese sistema operativo. Tendremos que desactivar esta facultad para poder hacer uso del Linux.
  • Una mala configuración de GRUB. Si las entradas del gestor de arranque de Linux están mal configuradas, con razón no vamos a poder arrancar el equipo. Tendremos que reparar el gestor de arranque para que vuelva a funcionar.
  • Una mala configuración de la BIOS/UEFI, que no apunta a la partición correcta. Si estamos intentando arrancar el ordenador desde el disco duro incorrecto, entonces tendremos que cambiar la unidad de arranque para que el sistema pueda iniciar.
  • Si utilizamos una máquina virtual, ya sea VirtualBox o VMware (por nombrar las más habituales), debemos comprobar que no hemos eliminado la máquina virtual de la distribución Linux que queremos iniciar.

Lo bueno que tiene Linux es que prácticamente todo se puede solucionar fácilmente, ya sea desde el Modo Seguro o desde otra distro Live. Rara vez tendremos que reinstalar el sistema de cero.

A continuación, vamos a ver cómo solucionar los principales problemas que nos podemos encontrar.

Identifica el problema con el «modo verbose»

Por simplificar, Linux generalmente muestra una animación durante el arranque. Por desgracia, aunque queda bonito, dificulta la tarea de identificar errores en el arranque. Si queremos ver cómo se ejecutan todos los comandos, y detectar así cualquier posible fallo, error o cuello de botella, debemos activar el modo verbose manualmente. Para ello, lo primero que haremos será abrir el fichero de configuración de GRUB con un editor cualquiera. Este fichero se encuentra en:

/etc/default/grub

Aquí debemos localizar la siguiente línea:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Y la cambiamos por:

GRUB_CMDLINE_LINUX_DEFAULT=""

Guardamos los cambios, y actualizamos el arranque con el comando «update-grub». Ahora, cuando seleccionemos nuestro Linux en el gestor de arranque, podremos ver todos los pasos de carga.

Solución a los problemas de arranque de Linux

Puede haber muchas formas distintas de solucionar los problemas de arranque de cualquier sistema operativo Linux. A continuación, vamos a ver cuáles son las principales formas de solucionar estos problemas.

Comprueba que no hay problemas con el hardware del PC

Antes de nada, es muy importante asegurarnos de que los problemas no están relacionados con el hardware del PC. Lo más común es que el disco duro empiece a fallar (sobre todo si es mecánico), o puede que tengamos problemas con la placa, RAM o fuente de alimentación.

Si llegamos al GRUB, por ejemplo, podemos lanzar Memtest para comprobar la integridad de la RAM y la CPU. Pero si queremos conocer el estado del disco duro, por ejemplo, tendremos que recurrir a otros programas especializados que nos permitan ver el SMART del disco. Y para ello, podemos cargar un Ubuntu Live desde la RAM para evitar pasar por el disco duro.

Problemas con el gestor de arranque de Linux

Cuando instalamos una distribución Linux, esta suele instalar un gestor de arranque que será el que nos permita elegir la versión, o herramienta, que queremos cargar. El más común y usado es GRUB. Este gestor de arranque nos permite cargar Linux, otro sistema operativo diferente (si tenemos, por ejemplo, Windows en Dual-Boot), ejecutar Memory Test (para ver si la RAM está en buen estado) o ejecutar otras herramientas avanzadas y de recuperación de la distro en cuestión.

AutoTux - GRUB

Si solo tenemos un sistema instalado, seguramente no veamos GRUB, ya que arrancará el sistema principal automáticamente por defecto. Sin embargo, hay muchos motivos por los que se puede dañar este arranque, por ejemplo, una actualización del Kernel, o configurar para que arranque un Kernel antiguo que hayamos eliminado.

Si nuestro Linux deja de arrancar, podemos mantener pulsada la tecla Shift del PC mientras carga para poder ver esta pantalla de GRUB. Aquí veremos todos los sistemas que tengamos instalados, y podremos navegar por ellos usando las flechas del teclado.

Podemos intentar cargar una versión del Kernel diferente para ver si esta funciona. E incluso si usamos Dual Boot comprobaremos que podemos arrancar este sistema operativo. Sin embargo, si GRUB no llega a aparecer, entonces la culpa será del gestor de particiones.

Reparar GRUB con Boot-Repair

Si no podemos arrancar Linux, ¿cómo podemos reparar el arranque? La respuesta es muy sencilla: usando un sistema Live, por ejemplo, Ubuntu. Los sistemas Live se cargan en la memoria RAM de manera que se puedan ejecutar sin necesidad de instalar nada en el disco duro. Una vez cargado, tendrá acceso a todos los discos y todos los recursos del PC, por lo que podremos usar herramientas específicas, como Boot-Repair, para reparar problemas.

Abriremos un terminal e instalaremos esta herramienta para reparar el GRUB ejecutando el siguiente comando:

sudo apt-add-repository ppa:yannubuntu/boot-repair && sudo apt update && sudo apt install -y boot-repair

Una vez esté ya lista la herramienta, la ejecutamos con el comando «boot-repair» y la dejamos que analice nuestro sistema. El programa será capaz de detectar todos los sistemas operativos que tengamos instalados en nuestro ordenador y nos dará la opción de aplicar una reparación recomendada. La elegimos, esperamos uno segundos y listo.

Aplicamos los cambios, reiniciamos el PC y listo. Ahora podremos ver nuestro GRUB de nuevo, y todos los sistemas instalados en el PC. Seleccionamos el que queremos arrancar y listo, todo debería volver a funcionar con normalidad.

Solucionar problemas en el arranque de Linux

Si podemos ver GRUB, elegir el sistema operativo, y donde se encuentra el problema es en el proceso de arranque, entonces debemos recurrir a otras herramientas que nos ayuden a solucionarlo. Esto puede ocurrir, por ejemplo, cuando algún paquete queda mal instalado, o se corrompe algún archivo del sistema.

Dentro de las entradas que podemos encontrar en GRUB encontraremos una llamada «Advanced options«. En ella podremos encontrarnos distintas entradas, según los Kernel que tengamos instalados, y un modo «Recovery» para todos los kernels. Podemos intentar arrancar una versión más antigua del Kernel a ver si funciona, pero lo que vamos a explicar es cómo solucionar los problemas de la última versión.

GRUB - Opciones avanzadas

Dentro de estas opciones avanzadas, elegiremos el Recovery Mode de la última versión del Kernel. Tras unos segundos de carga, podremos ver una pantalla como la siguiente con una serie de opciones.

Recovery de Ubuntu

Las que nos interesan son:

  • fsck: analiza el disco duro y soluciona todos los errores que detecte. Es el equivalente a chkdsk de Windows.
  • clean: libera espacio utilizado de manera innecesaria en el PC.
  • dpkg: repara los paquetes rotos, bloqueados o que se han instalado mal.
  • grub: nos permite actualizar el bootloader.

Ejecutamos todas estas opciones para comprobar, liberar, reparar y actualizar nuestro Linux y su gestor de arranque, y listo. Cuando acabemos, ya podremos reiniciar el PC y comprobar si vuelve a arrancar.

Desactiva UEFI, Secure Boot y Fast Boot

Otro de los motivos por los que puede fallar nuestro Linux es por las medidas de seguridad del propio sistema operativo. Cuando compramos un ordenador nuevo, este viene con un sistema UEFI moderno (en lugar de las clásicas BIOS), así como con un sistema de arranque seguro, Secure Boot, que impide ejecutar código sin firmar en el sistema operativo. Un sistema como el de Microsoft no tiene problemas para arrancar en este modo, pero ¿qué pasa con los sistemas libres, como Linux?

La mayoría de las distribuciones modernas han sido actualizadas para funcionar sin problemas en sistemas UEFI con Secure Boot. Por tanto, esto no debería ser un problema para nosotros. No obstante, hay distros alternativas (con poca cuota de mercado, o pensadas para PCs antiguos) que no soportan esta medida de seguridad. Y, por tanto, no pueden arrancar.

Para solucionarlo, lo que debemos hacer es entrar en la configuración de la UEFI y activar el modo Legacy, para desactivar las medidas de seguridad de este sistema de arranque avanzado, así como desactivar el Secure Boot para que el PC pueda arrancar código sin firmar.

Activar modo UEFI

Si tenemos una configuración Dual Boot (es decir, dos sistemas, uno de ellos Windows), debemos también desactivar el Fast Boot. Esta es una configuración por la cual, en vez de apagar y encender el sistema completo, vuelca el kernel el disco duro y, al encender, lo carga automáticamente. Al cambiar a otro sistema, como Linux, este volcado del núcleo de Windows da problemas.

La función del Fast Boot se debe desactivar tanto en Windows (podemos encontrarla en las opciones de energía) como en la propia BIOS/UEFI del ordenador. Tras hacerlo, Windows y Linux arrancarán siempre de cero y cargarán su núcleo independientemente del sistema que hayamos usado antes.

Comprueba que la máquina virtual sigue disponible

Al utilizar una máquina virtual para ejecutar Linux, lo primero que debemos hacer es comprobar que la máquina virtual invitada, sigue estando disponible en el directorio de instalación ya que cabe la posibilidad de que, buscando liberar espacio en disco, hayamos eliminado los archivos tras comprobar que ocupan una gran cantidad de espacio en el disco duro.

Si durante la instalación, no cambiamos la ubicación por defecto, la máquina virtual creada con VirtualBox debería encontrarse en el directorio:

c:/usuarios/nombredeusuario/VirtualBox VMs/nombredelamáquina

Mientras que la máquina virtual creada con VMware se almacena en:

c:/usuarios/nombredeusuario/vmware

A través de la aplicación, dentro de las opciones de configuración de la máquina invitada, puedes buscar la ubicación exacta donde se encuentra instalada, si no estamos seguros de haber cambiado su ubicación durante el proceso de instalación.

Si el directorio de la máquina virtual no está disponible, lo primero que debemos hacer es acceder a la papelera de reciclaje para comprobar si todavía está disponible y recuperarla, aunque es poco probable, ya que los archivos y directorios de gran tamaño no suelen pasar por la papelera de reciclaje de Windows. En este caso, la única solución posible pasa por crear una nueva máquina virtual en nuestro equipo, máquina virtual que almacenaremos en un directorio que no debemos borrar en ninguna circunstancia si no queremos que se repita el problema, por lo que es recomendable tenerlo siempre a la vista, en la medida de lo posible.

Reinstalar Linux (y mantener los datos)

Si seguimos teniendo problemas, puede que haya llegado la hora de reinstalar nuestro sistema operativo. Muchas de las distros, como Ubuntu, tienen la opción de reinstalar solo el sistema operativo, manteniendo intactos todos los datos personales (documentos, música, fotos, vídeos, etc), e incluso las aplicaciones que tenemos ya instaladas. El nuevo instalador de Ubuntu, disponible desde la versión 21.10 de esta distro, ofrece una entrada como tal pensada precisamente para esto mismo.

Nuevo instalador Ubuntu 21.10

En el asistente de instalación debemos elegir esta opción para reinstalar la distro pero, a la vez mantener nuestros datos para que no se borren del PC. Sin embargo, siempre puede haber fallos y problemas. Por tanto, es mejor asegurarnos y no correr riesgos innecesarios haciendo una copia de seguridad de los mismos.

En caso de que la reinstalación no funcione correctamente, si ya tenemos la copia de seguridad que hemos mencionado antes, podemos realizar una instalación completa, desde cero, para asegurarnos de que todos los problemas quedan solucionados. Además, podemos aprovechar así para instalar la última versión del sistema para poner nuestro PC al día.

Además de reinstalar todo el sistema operativo, se regenerará y reinstalará automáticamente el gestor de arranque GRUB. Yo en él deberían aparecer todos los sistemas operativos que tengamos en el PC (por ejemplo, un Windows en caso de usar Dual Boot).

Consejos para evitar volver a tener problemas

Si al final hemos conseguido reparar nuestro Linux, estamos de enhorabuena, ya que todo debería volver a funcionar con normalidad. Por el contrario, si hemos tenido que reinstalar el sistema operativo, pues al menos tendremos el ordenador funcionando de nuevo. Pero lo importante ahora es asegurarnos de que el sistema no vuelve a dar problemas y no vuelve a fallar. O, si lo hace, al menos ser capaces de recuperarlo de la forma más sencilla posible.

Para ello, os vamos a dejar algunas recomendaciones que pueden ser de utilidad para evitar tener problemas de nuevo. El primero de ellos es tener mucho cuidado a la hora de instalar actualizaciones del sistema y las nuevas versiones del Kernel. Este suele ser uno de los motivos por los que más falla Linux, ya que, si algo ocurre mal en el proceso, el PC quedará inutilizado. Además, mantener el software actualizado, junto con todas sus dependencias, suele ayudar también a evitar este tipo de problemas. En Ubuntu, por ejemplo, los paquetes Snap ayudan a evitar todo tipo de conflictos de dependencias o paquetes ya que cada programa tiene los suyos propios. Sacrificamos algo de espacio en el disco a cambio de ahorrarnos estos problemas. Merece la pena.

Otro consejo es que, siempre que vayamos a modificar un archivo de configuración del sistema, hagamos una copia del original. Podemos llamarlo con el mismo nombre terminado en «bak» por ejemplo (de backup) para que, si tras modificar el archivo el sistema deja de funcionar, o algo empieza a dar problemas, podamos recuperar el original fácilmente desde, por ejemplo, un sistema Live.

Y, como siempre, hacer copias de seguridad de nuestros datos más importantes es esencial para garantizar que, en caso de desastre, podemos recuperar nuestros datos.

¡Sé el primero en comentar!