Cuentos de la Sysadmin: Volcado en la línea de mando de Grub

Hoy tengo una historia de misterio, de horror y de esperanza. El encanto de un nuevo núcleo y paquetes era demasiado para resistirse, así que me encontré actualizando a Fedora 30. Todos los paquetes se habían descargado, todo lo que quedaba era dejar que DNF reiniciara la máquina e instalara todos los nuevos paquetes. Empecé el proceso y me fui a buscar una taza de café: negro, y más oscuro que la mancha que esta línea de trabajo deja en el alma. Después de que el tiempo suficiente había transcurrido, volví, esperando la cálida luz de un escritorio recién actualizado. En cambio, lo único que me saludó fue la dura oscuridad de una línea de mando de la comida. Algo estaba mal, y era malo.

(Aparte del lector, tuve esta experiencia en dos máquinas diferentes, que surgió de dos problemas de raíz diferentes. Uno era un ajuste de la configuración y el otro un problema de permisos inusual).

¿Cómo se recupera el joven administrador de sistemas Linux de un problema de este tipo? La línea de comandos grub es un misterio inescrutable para los no iniciados, pero una vez que entienda lo básico, no es terriblemente difícil arrancar su sistema e intentar restaurar el proceso de arranque normal. Esto depende de lo que se haya roto, por supuesto. Si el disco que contiene su partición raíz se ha roto, entonces lo siento, este artículo no le ayudará.

Para poder arrancar el sistema, ¿qué es lo que tiene que pasar exactamente? ¿Cómo funciona el arranque de Linux, incluso? Dos componentes necesitan ser cargados en la memoria: el kernel y los initramfs. Una vez que estos dos elementos se cargan en memoria, grub realiza un salto al código del kernel, que toma el control y termina el arranque de la máquina. Hay un detalle más importante que nos preocupa: el núcleo necesita saber dónde encontrar la partición raíz. Esto es típicamente parte de los parámetros del núcleo, especificados en la línea de arranque del núcleo.

Cuando se trabaja con un shell desconocido, el comando help es un buen punto de partida. grub se ejecuta en un entorno muy limitado, y la ejecución del comando help desplaza la mayor parte del texto fuera de la pantalla. Hay una variable de entorno que ayuda aquí, habilitando la salida paging:set pager=1.


Encontrar lo que estás buscando

Es tu amigo. ¿No sabes qué unidad es cuál? lsis al rescate. grub utiliza una nomenclatura única para acceder a las particiones. Puede que vea entradas como (HD0,0) o (hd0,msdos1). Un grub moderno incluso le permitirá listar los archivos y carpetas contenidos en esa partición usando un comando como ls (hd0,msdos1)/.

Queremos empezar averiguando qué partición almacena los archivos del kernel y del initrd. Esos archivos pueden estar en una carpeta de arranque, o sólo en una de las particiones. El kernel se llama generalmente vmlinuz-kernel_version.architecture así que por ejemplo: vmlinuz-5.3.7-200.fc30.x86_64. El initrd que necesitamos coincidirá con la versión del núcleo. Algo así como initramfs-5.3.7-200.fc30.x86_64.img.

La última información necesaria, la ubicación del sistema de archivos raíz, puede ser un poco más difícil de encontrar. Mientras busca en las particiones, puede encontrar una con una disposición del sistema de ficheros raíz, que contenga el arranque, la papelera, etc, home, etc. Es probable que pueda averiguar cómo llamará el núcleo a la partición basándose en el nombre en grub.

hd0 es probablemente sda, hd1 es probablemente sdb. La segunda mitad del nombre de grub le dice qué partición es, así que (hd0,msdos1)es probablemente sda1.


Poniéndolo todo junto

Para arrancar realmente, emitimos tres comandos en grub. El primer comando establece la imagen del kernel y cualquier opción de arranque del kernel. La única opción requerida es establecer la ubicación de la raíz:linux (hd0,msdos1)/boot/vmlinuz-4.19.0-6-amd64 root=/dev/sda1

A continuación establecemos la opción initrd:initrd (hd0,msdos1)/boot/initrd.img-4.19.0-6-amd64

Una vez que esas opciones están establecidas, podemos decirle a grub que intente arrancar el núcleo. Es un simple comando:boot

Asumiendo que establezcamos las opciones correctas, y que el sistema no esté por lo demás terriblemente roto, eso debería arrancar su máquina de nuevo a la normalidad. Es hora de solucionar los problemas que causaron que Grub se descarrilara para empezar. Eso, sin embargo, es para otra ocasión.

Ya que estamos aquí, hay algunos otros trucos que vale la pena saber sobre la comida y el arranque. El más útil es probablemente el modo monousuario, que se activa añadiendo un “1” a las opciones de arranque.

linux (hd0,msdos1)/boot/vmlinuz-4.19.0-6-amd64 root=/dev/sda1 1

En algunas distribuciones, esto incluso evita la necesidad de saber una contraseña de root, lo cual es útil si se encuentra bloqueado en un sistema. Muchos sistemas modernos todavía requieren registrarse como root para proceder. Aún así, el modo monousuario es útil para solucionar otros problemas de arranque y del sistema.

Un truco más para tener en la manga es la capacidad de poner en la lista negra a un conductor. Añadir a la lista negra amdgpu, por ejemplo, evitaría que se cargara el controlador amdgpu, independientemente del hardware presente. Si un controlador defectuoso o mal configurado está causando un fallo durante el arranque, ponerlo en la lista negra probablemente le permitirá arrancar con éxito.

Esperemos que esto sea suficiente para darle la ventaja la próxima vez que esté depurando un problema de arranque de Linux, y añada un par de herramientas a su repertorio. Feliz pirateo.

Programación de Arduinos con comandos de voz

Programación de Arduinos con comandos de voz

La programación es una habilidad valiosa, aunque puede ser difícil de aprender. Añade hardware a la mezcla, y las cosas ...
Leer Más
¡Jackpot!: Las pruebas y tribulaciones de convertir una tragaperras en un cajero automático

¡Jackpot!: Las pruebas y tribulaciones de convertir una tragaperras en un cajero automático

¿Alguna vez has deseado que las máquinas tragaperras dispensen dinero tan fácilmente como un cajero automático? Bueno, también lo deseaba ...
Leer Más
Esta semana en seguridad: Tegra Bootjacking, Leaking SSH, And StrandHogg

Esta semana en seguridad: Tegra Bootjacking, Leaking SSH, And StrandHogg

CVE-2019-5700 es una vulnerabilidad en el cargador de arranque Nvidia Tegra, descubierto por [Ryan Grachek], y que se rompió primero ...
Leer Más
Angela Sheehan está desarrollando una tecnología que se puede llevar puesta con capricho

Angela Sheehan está desarrollando una tecnología que se puede llevar puesta con capricho

Como concepto, la tecnología de vestir nos entusiasma a muchos de nosotros, pero en la práctica, ha sido difícil de ...
Leer Más
ATX2AT hace que la retrocomputación sea más segura, se dirige al inicio

ATX2AT hace que la retrocomputación sea más segura, se dirige al inicio

Es fácil dar por sentado que las fuentes de alimentación están en la informática moderna, pero alimentar el hardware antiguo ...
Leer Más
Un altavoz de madera de un solo dígito de espesor micrométrico

Un altavoz de madera de un solo dígito de espesor micrométrico

Los investigadores han creado un altavoz de audio utilizando una película de madera ultrafina. El nuevo material demuestra una alta ...
Leer Más
¿Qué hora es en Marte?

¿Qué hora es en Marte?

El tiempo es complicado, y sólo empeorará cuando nos convirtamos en una especie multi-planeta. Afortunadamente, [Folkert van Heusden] tiene un ...
Leer Más
Deje que un robot de RCP salve el día

Deje que un robot de RCP salve el día

Cuatro estudiantes de secundaria en Lyon, Francia, están construyendo un robot de RCP, con el objetivo de eliminar el problema ...
Leer Más
Desmontaje: El PreComputador 1000 de VTech es un PC icónico en una envoltura de juguete

Desmontaje: El PreComputador 1000 de VTech es un PC icónico en una envoltura de juguete

En los días anteriores a que los niños pudieran ser aplacados con un teléfono Android de 50 dólares, a muchos ...
Leer Más
Este árbol RGB tiene sus raíces en un PCB

Este árbol RGB tiene sus raíces en un PCB

El árbol RGB de [Paczkaexpress] es una mezcla de ingeniosas técnicas de construcción y formas artísticas que se unen en ...
Leer Más
Una División en Estándares de Voltaje

Una División en Estándares de Voltaje

Durante mi reciente viaje a Europa, descubrí que los convertidores no se vendían tan comúnmente como los adaptadores, y por ...
Leer Más
Digan lo que digan, un traje de piel es mucho trabajo.

Digan lo que digan, un traje de piel es mucho trabajo.

Una cosa que el Dr. Cucaracha demuestra es que un traje de piel no es algo fácil de hacer. Las ...
Leer Más
Una fantástica frontera de flexibilidad FPGA en la insignia Supercon de 2019

Una fantástica frontera de flexibilidad FPGA en la insignia Supercon de 2019

Acabamos de concluir una exitosa Superconferencia de Digital Lithium en la que para muchos fue un punto culminante el estudio ...
Leer Más
Programador Pogo simple para módulos ESP8266

Programador Pogo simple para módulos ESP8266

Las tarjetas de desarrollo ESP8266 como la Wemos D1 Mini y NodeMCU son una excelente manera de poner en marcha ...
Leer Más
Esta semana en seguridad: Más información sobre WhatsApp, Nextcry, Hover To Crash y Android Permissions Bypass

Esta semana en seguridad: Más información sobre WhatsApp, Nextcry, Hover To Crash y Android Permissions Bypass

Hay otro fallo de WhatsApp, pero en lugar de GIF maliciosos, esta vez se trata de archivos mp4 maliciosos. Facebook ...
Leer Más
¿Qué tan seguro es ese baño ultrasónico para la remoción del flujo?

¿Qué tan seguro es ese baño ultrasónico para la remoción del flujo?

¿Cómo se limpia el flujo residual de las tablas? Hay muchas maneras de hacer el trabajo, desde "para qué molestarse" ...
Leer Más
En caso de que no pueda llegar a una sala de escape

En caso de que no pueda llegar a una sala de escape

Las salas de escape son increíbles para las personas a las que les gusta resolver puzles, ver cómo funcionan las ...
Leer Más
Sara Adkins se está atascando con las máquinas

Sara Adkins se está atascando con las máquinas

Pedirle a las máquinas que hagan música por sí mismas es una noción extraña. Son máquinas, después de todo. No ...
Leer Más
DTMF a su ordenador, con un Gamepad

DTMF a su ordenador, con un Gamepad

Aunque muchos de nosotros nunca habremos experimentado con él, la mayoría de los lectores deberían estar familiarizados con el DTMF ...
Leer Más
El Plotter Vintage recibe una actualización de Bluetooth

El Plotter Vintage recibe una actualización de Bluetooth

Recientemente [iot4c] tropezó con este magnífico plotter Robotron Reiss de 1989, completamente nuevo y todavía en su caja original. Construido ...
Leer Más
Impresora Gigante 3D Para Proyectos Gigantes

Impresora Gigante 3D Para Proyectos Gigantes

Los diseños de las impresoras 3D FDM establecidas generalmente se llevan bien a la escala, siempre y cuando se tenga ...
Leer Más
Desglose de los órganos de la botella

Desglose de los órganos de la botella

Un comentarista de mirada aguda nos señaló un órgano de botella casero que toca como un piano. La complejidad aparece ...
Leer Más
Construcción de un oscilador mecánico, estilo Tesla

Construcción de un oscilador mecánico, estilo Tesla

Antes de que Tesla concibiera una maquinaria rotativa bellamente sencilla, exploró otros métodos de generación de corriente alterna. Uno de ...
Leer Más
Está ayudando a Santa Claus a matar este año

Está ayudando a Santa Claus a matar este año

Conocemos al menos a una persona que debería estar en la lista de los "buenos" de Santa este año. Probablemente ...
Leer Más
Te veo en el lado oscuro de la luna: Observatorio de la Radio Lunar de China

Te veo en el lado oscuro de la luna: Observatorio de la Radio Lunar de China

Durante casi todo el tiempo que ha habido radio, ha habido antenas entrenadas en el cielo, mirando el universo de ...
Leer Más
El escudo de aislamiento del micrófono es un gran "hack" de IKEA; definitivamente no es un huevo de Xenomorfo

El escudo de aislamiento del micrófono es un gran “hack” de IKEA; definitivamente no es un huevo de Xenomorfo

Como cualquier creador de contenidos sabe, un buen audio es la clave para mantener una audiencia. Tener un micrófono de ...
Leer Más
¿Tienes correo?

¿Tienes correo?

La vida está llena de decisiones difíciles, como decidir si quieres ir al final del viaje para comprobar si ha ...
Leer Más
Puesta a punto del panel de intercomunicación ThinkGeek Star Trek

Puesta a punto del panel de intercomunicación ThinkGeek Star Trek

En Star Trek , todo lo que Kirk y sus amigos tenían que hacer era apretar el botón en el ...
Leer Más
Barcaderator es un arcade de monedas arriba y Kegerator abajo

Barcaderator es un arcade de monedas arriba y Kegerator abajo

Es común en nuestra comunidad que un gabinete de arcada que ha expirado su vida sea reutilizado como un gabinete ...
Leer Más
Linux Fu: Los trucos de WSL desdibujan la línea de Windows/Linux

Linux Fu: Los trucos de WSL desdibujan la línea de Windows/Linux

Tenemos que admitir que tenemos una extraña fascinación por WSL - el subsistema de Windows para Linux. Por un lado, ...
Leer Más

Deja un comentario