miércoles, 18 de marzo de 2020

Failed to start raise network interfaces

Hace mucho tiempo que recuperé un PC y me puse a reconfigurarle una Debian. Además del lío que tengo montado para dejarle un kernel perfecto (para mí), que me está llevando bastante más tiempo de lo que invertí en mis primeros pinitos con Gentoo, la lié bien con la configuración de la tarjeta de red.

El resumen: entre configuraciones del kernel (que esto es otra historia que ya veré si cuento) y toquetear la tarjeta de red, nadas más arrancarlo desde grub me aparecía un mensaje parecido a:

Failed to start Raise network interfaces

Lo que hacía que no cargasen las tarjetas de red y aunque las levantase a mano tampoco funcionaban. Con un poco de tiempo he podido buscar la solución, y no tenía nada que ver con el kernel (pero como lo estaba toqueteando me imaginé que iban por ahí los tiros).

La pena es que las direcciones de las soluciones las cerré por el pequeño afán de quitar pestañas y ventanas abiertas (y aún así tengo un montón más. ¡Muchas!).

Al lío: ¿Qué comandos encontré para debuguear o localizar la solución?  Estos los siguientes comandos (cuyos resultados acabé pasando posteriormente a un fichero para escribir este post).

journalctl -xe

Por lo que recuerdo, y buscando en los resultados, tampoco arrojó mucha luz sobre el problema.

journalctl -u networking.service

A pesar de que este comando me estaba gritando cuál era el problema:

-- Logs begin at Tue 2020-03-17 15:47:36 CET, end at Tue 2020-03-17 19:52:11 CET. --
mar 17 15:47:41 mihostname systemd[1]: Starting Raise network interfaces...
mar 17 15:47:41 mihostname ifup[409]: ifup: /etc/network/interfaces:27: option with empty value
mar 17 15:47:41 mihostname ifup[409]: ifup: couldn't read interfaces file "/etc/network/interfaces"
mar 17 15:47:41 mihostname systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
mar 17 15:47:41 mihostname systemd[1]: networking.service: Failed with result 'exit-code'.
mar 17 15:47:41 mihostname systemd[1]: Failed to start Raise network interfaces.

La típica lectura en diagonal hizo que no lo viera. El fichero /etc/network/interfaces.

systemctl status {systemd-network,systemd-resolved,networking,NetworkManadager}

Este comando, también daba un resultado similar. Y viendo lo que hice después en ese fichero de "log" improvisado que hice, en efecto, aquí me encontré con el problema para solucionarlo:

 systemd-resolved.service - Network Name Resolution
   Loaded: loaded (/lib/systemd/system/systemd-resolved.service; disabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/systemd-resolved.service.d
           └─resolvconf.conf
   Active: inactive (dead)
     Docs: man:systemd-resolved.service(8)
           https://www.freedesktop.org/wiki/Software/systemd/resolved
           https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
           https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients

networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2020-03-17 15:47:41 CET; 4h 13min ago
     Docs: man:interfaces(5)
  Process: 409 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=1/FAILURE)
 Main PID: 409 (code=exited, status=1/FAILURE)

mar 17 15:47:41 mihostname systemd[1]: Starting Raise network interfaces...
mar 17 15:47:41 mihostname ifup[409]: ifup: /etc/network/interfaces:27: option with empty value
mar 17 15:47:41 mihostname ifup[409]: ifup: couldn't read interfaces file "/etc/network/interfaces"
mar 17 15:47:41 mihostname systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
mar 17 15:47:41 mihostname systemd[1]: networking.service: Failed with result 'exit-code'.
mar 17 15:47:41 mihostname systemd[1]: Failed to start Raise network interfaces.

El fichero /etc/network/interfaces. En este punto me quedaba revisar qué podía tener mal. Es el típico fichero que has modificado tantas veces que deberías de saberte de memoria cómo se configura pero siempre hay algún pequeño punto que se queda colgando.

En mi caso, los datos importantes que contenía eran:

auto lo
iface lo inet loopback

# The primary network interface
#iface eth0 inet static
allow-hotplug eth0
iface eth0 inet dhcp

#allow-hotplug wlan0
iface wlan0 inet static
        wpa_supplicant

El problema, básicamente: era que el parámetro wpa_supplicant estaba mal. No sé si es porque en algún momento leí que poniéndolo buscaba el fichero de configuración directamente (si fue así me pregunto "¿¿¿por qué lo pensaría???"), ¿me olvidaría de que había que ponerlo? (una vez más, si fue así: ¿por qué no me daría cuenta?) pero, lo más sorprendente es que para verificar si me estaba dejando algo en esta configuración me encontré con que ahora ese parámetro no es así (o al menos, para lo que yo necesitaba). Esta tarjeta la tendría que dejar configurada de esta otra forma:

#allow-hotplug wlan0
iface wlan0 inet static
        wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Y así dejaría de quejarse. Eso sí, y como curiosidad o anécdota: no conseguí conectarme a la red cableada... Un poco más tarde acabaría crimpando dos cables de red: el de esta máquina y el de otra que también me estaba dando problemas de conexión.

Sólo como histórico para que cuando tenga problemas tan básicos de estos problemas, y aunque no debería de pasarme, me voy a dejar algunos enlaces por aquí:

2 comentarios:

  1. Respuestas
    1. Muchas gracias a tí por pasarte. Me alegra mucho de que te haya sido de utilidad.

      Eliminar