debian.swirl

[ACTUALIZADO 03-11-2015] Gracias a frandelacal (ver comentarios), en lugar de eliminar la configuración, un procedimiento más correcto permite la conexión por cable además de inalámbrica. Investigando el archivo de marras, veo que ahora la configuración por defecto ha cambiado (Jessie ya es estable desde hace un tiempo) y quizás el problema haya desaparecido.

[ACTUALIZADO 04-11-2015] Los nuevos aportes de frandelacal en los comentarios muestran que la configuración completa de una red en /etc/network/interfaces no siempre soluciona el problema. Si es así, debería comentarse toda línea después de loopback.

Tras una actualización de Debian 8 «Jessie», el tan cacareado arranque fulgurante de systemd se fue al traste. De pronto, tras montar los sistemas de ficheros, aparece un mensaje que informa que se está esperando el levantamiento de la interfaz de red y un reloj que cuenta desde 0 segundos hasta 1 minuto y medio. Tras ese tiempo, el arranque continúa. En otros foros he leído que el arranque se cuelga aquí o que sigue pero no hay sesión gráfica. En mi caso, en un Asus EeePc 900, sí que finaliza, pero de menos de 40 segundos de arranque se pasa a más de dos minutos.

El mensaje es, exactamente, un motivo de asteriscos que se desplazan para mostrar que el sistema espera y un texto:

A start job is running for LSB: Raise network interfaces

seguido del contador de tiempo hasta 90 segundos.

¿Cuál es el problema? El sistema espera a la interfaz de red, configurada en /etc/network/interfaces, pero en este archivo se indica que la interfaz primaria es eth0, normalmente desconectada. Ignoro si conectando el ordenador por cable con el router se soluciona el asunto, pero estaría bien saberlo. Lo investigaré cuando tenga tiempo, pero si alguien sabe algo y lo quiere dejar en los comentarios…

¿La solución? Eliminar la configuración problemática. Como root edita el archivo /etc/network/interfaces con el comando

nano /etc/network/interfaces

Allí están las configuraciones de la red. Busca las líneas finales, donde pone:

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

Y coméntalas anteponiendo un símbolo «#», así:

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

Un reinicio y todo debería ir a las mil maravillas, vuelta al arranque rápido de systemd.

Sin embargo, una solución bastante mejor y más elegante es la propuesta por frandelacal en los comentarios. En lugar de comentar las líneas añadiendo una almohadilla al comienzo, es preferible modificarlas para que el sistema no espere la respuesta de un servidor DHCP como el del router en su red por defecto (eth0) y tenga ya asignada una configuración fija. En este caso voy a mostrar lo que debería ser un archivo completo para que la red esté disponible desde el arranque, de modo que no se necesiten herramientas dependientes del sistema gráfico para conectarse (como wicd o network-manager).

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.0.10

netmask 255.255.255.0

broadcast 192.168.0.255

gateway 192.168.0.1

auto wlan0

iface wlan0 inet static

wpa-ssid “nombre-de-la-red-wifi”

wpa-psk “contraseña-de-la-red-wifi”

address 192.168.0.10

netmask 255.255.255.0

broadcast 192.168.0.255

gateway 192.168.0.1

donde address es la IP fija que cogerá el ordenador (es mejor que esté fuera del rango DHCP que tenga configurado el router para que no haya conflicto con otros dispositivos) y gateway es la dirección del router. Las líneas correspondientes a netmask y broadcast han de ser tal cual están escritas.

En teoría esto debería dejarlo todo funcionando perfectamente, aunque no le pasa a todo el mundo (ver los comentarios de frandelacal). En ese caso, opta por la primera opción: comentar todas las líneas.

8 comentarios en “Cómo solucionar el cuelgue de sytemd durante el arranque de la red

  1. Excelente puntualización. Tu comentario me sirvió y me hizo seguir investigando. Y según mis pruebas, no es necesario eliminar esas líneas del todo (y por lo tanto eliminar la posibilidad de conectar el dispositivo por cable Ethernet). Basta con definir la conexión eth0 como “auto” (en lugar de “allow-hotplug”) y ADEMÁS asignarle una IP estática en lugar de dhcp (cambiar “dhcp” por “static” y añadir una línea “address 193.168.0.x” justo debajo).

      1. Te paso mi archivo interfaces entero, por si sirve de algo. Y una aclaración: el mensaje “A start job is running for LSB: Raise network interfaces” no desaparece… pero vuelve a tardar poco tiempo (20 segundos) en lugar de los 180 que tardaba antes.

        auto lo
        iface lo inet loopback

        auto wlan0
        iface wlan0 inet static
        wpa-ssid “ssid”
        wpa-psk “yyyy-clave”
        address 192.168.0.204
        netmask 255.255.255.0
        gateway 192.168.0.1

        auto eth0
        iface eth0 inet static
        address 192.168.0.204
        netmask 255.255.255.0
        gateway 192.168.0.1

      2. Yo tenía limpio el archivo por culpa de este problema, confiando la red
        a network-manager, pero he vuelto a configurar una interfaz de cable e
        inalámbrica después de tu comentario y no ha vuelto el mensaje. La red
        está conectada desde el arranque, funciona sin sesión gráfica y el
        tiempo de arranque es igual de corto que antes.
        ¿Puede ser que tengas algo sin actualizar? Si tienes todo actualizado y
        te sigue saliendo este contador de 20″, yo lo que haría sería borrar
        estas líneas y dejar que sea wicd o network-manager los que gestionen
        las redes.
        Muchas gracias por tus aportes, gracias a ellos está quedando una
        entrada mucho más completa, je, je.

      3. Se me ha venido a las meninges una intuición y he hecho algunas pruebas.
        Resulta que la misma configuración que en un Asus EeePc900 me permite incluso desinstalar un gestor de redes (léase network-manager), en un Toshiba Satellite L500 me deja sin red (ni cable, ni wifi, ni nada).
        Pienso que tu problema (y el del Toshiba) es de hardware, de controladores propietarios concretos que no se llevan bien con determinadas configuraciones. Esto me reafirma en mi impresión de que lo mejor que puedes hacer es obviar una configuración manual y delegar en un gestor de redes.
        Ya me dirás cómo te va en los experimentos.
        Saludos.

  2. Saludos, Amigo te pregunto: ¿esta configuración descrita trabaja con cualquier red wifi? te pregunto esto por si se da el caso de que utilice mi portatil en una red distinta a la que tengo en casa. Gracias, soy nuevo en linux, aguardo tu respuesta.

    1. Esta solución propone dos actuaciones distintas: por un lado configurar la red a mano para evitar esta espera y que se conecte con ip estática, y por otro delegar todo esto en un gestor de redes como Network Manager, Wicd u otro.
      Si te conectas a redes diferentes yo lo que haría, sin lugar a dudas es optar por lo segundo. Comenta (o elimina, pero mejor comenta) anteponiendo una # las líneas a partir de loopback y listo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s