CERRADO: tiempos de arranque del sistema desconcertantemente largos, no sé por dónde empezar


9

Entiendo que resolver largos tiempos de arranque implica analizar cuánto tiempo lleva arrancar qué, pero la salida de systemd-analyze blamey systemd-analyze plotme ha dejado perplejo.

~ $ systemd-analyse
El inicio finalizó en 12.557s (firmware) + 4.516s (cargador) + 3.732s (kernel) + 26.720s (espacio de usuario) = 47.526s
~ $ systemd-analyse culpa | grep "\ s [1-9] * \."
          8.989s keyboard-setup.service
          8.757s dev-sda2.device
          6.055s apparmor.service
          4.948s cuentas-daemon.service
          4.446s NetworkManager.service
          3.383s gpu-manager.service
          3.134s systemd-udevd.service
          3.079s snapd.firstboot.service
          2.440s udisks2.service
          2.249s grub-common.service
          2.093s upower.service
          1.943s networking.service
          1.661s avahi-daemon.service
          1.461s rsyslog.service
          1.460s pppd-dns.service
          1.449s systemd-tmpfiles-setup-dev.service
          1.387s systemd-rfkill.service
          1.290s colord.service
          1.210s resolvconf.service
          1.192s apport.service
          1.188s systemd-modules-load.service
          1.187s systemd-remount-fs.service
          1.166s dev-mqueue.mount
          1.152s bluetooth.service
          1.032s lightdm.service
          1.013s plymouth-quit-wait.service

Salida de la trama systemd-analyse

Información

La máquina es una Dell Inspiron 5559; Lo he tenido desde febrero / marzo de 2016.

~ $ uname -imporvs
Linux 4.8.0-32-generic # 34-Ubuntu SMP martes 13 de diciembre 14:30:43 UTC 2016 x86_64 x86_64 x86_64 GNU / Linux

La distribución es Lubuntu 16.10 con LXDE.

~ $ sudo parted / dev / sda unit mib print
Modelo: ATA ST1000LM024 HN-M (scsi)
Disco / dev / sda: 953870MiB
Tamaño del sector (lógico / físico): 512B / 4096B
Tabla de particiones: gpt
Banderas de disco: 

Número Inicio Fin Tamaño Sistema de archivos Nombre Banderas
 1 1.00MiB 513MiB 512MiB fat32 EFI System Partition boot, esp
 2 513MiB 937591MiB 937078MiB ext4
 3 937591MiB 953869MiB 16278MiB linux-swap (v1)

La peor parte es que los tiempos de los módulos individuales varían un poco (1 a 2 segundos, observado después de este problema desde que instalé Lubuntu), lo que significa que necesitaría actualizar systemd-analyze blameconstantemente o registrar una serie de reinicios y luego hacer un promedio.

¿Alguien puede decirme dónde puedo comenzar ?

ACTUALIZAR

La actualización de 16.10 a 17.04 a través de sudo apt dist-upgradecambió la situación considerablemente.

~ $ systemd-analyse culpa | grep "\ s [1-9] * \."
         16.083s dev-sda2.device
         15.435s keyboard-setup.service
          8.015s systemd-udevd.service
          4.090s NetworkManager.service
          3.644s systemd-tmpfiles-setup-dev.service
          2.621s apparmor.service
          2.549s grub-common.service
          2.477s plymouth-read-write.service
          1.560s accounts-daemon.service
          1.107s systemd-modules-load.service
          1.002s colord.service
~ $ systemd-analyse cadena crítica
El tiempo después de que la unidad está activa o iniciada se imprime después del carácter "@".
El tiempo que tarda la unidad en iniciarse se imprime después del carácter "+".

target.gramical @ 25.631s
└─multi-user.target @ 25.631s
  └─getty.target @ 25.631s
    └─getty@tty1.service @ 25.631s
      └─system-getty.slice @ 25.630s
        └─setvtrgb.service @ 25.407s + 222ms
          └─sistema-usuario-sesiones.servicio @ 25.245s + 2ms
            └─network.target @ 25.245s
              └─NetworkManager.service @ 21.154s + 4.090s
                └─dbus.service @ 21.147s
                  └─basic.target @ 21.139s
                    Cketssockets.target @ 21.139s
                      └─snapd.socket @ 21.136s + 2ms
                        └─sysinit.target @ 21.110s
                          Parapparmor.service @ 18.488s + 2.621s
                            └─local-fs.target @ 18.488s
                              └─boot-efi.mount @ 18.387s + 100ms
                                └─sistema-fsck @ dev-disk-by \ x2duuid-7930 \ x2d6EDD.service @ 18.198s + 150ms
                                  └─dev-disk-by \ x2duuid-7930 \ x2d6EDD.device @ 18.198s

Salida de la trama systemd-analyse Al menos están apareciendo culpables claros.

CERRADO

La publicación se está cerrando porque he migrado a otra distribución (Gentoo) donde el problema no ha surgido, por lo que la pregunta ya no es relevante.


Ok, una pista que tengo es que algunos de los servicios mencionados por systemd-analyze blame(en particular keyboard-setup.service) son scripts de estilo SysVInit ubicados en /etc/init.d. Aunque no sé cómo reemplazaría un servicio basado en script ...
setun-90

grep "\s[1-9]\."¿Alguna razón por la que está filtrando servicios con tiempos de carga> 10 segundos? Ponga un +después del ]para que coincida con uno o más dígitos.
Jacob Krall

@JacobKrall No los filtré exactamente, es solo que no tenía ningún servicio con tiempos de carga> 10 segundos, de ahí el dígito único. Hice esto a toda prisa ... y '+' no funcionó para mí, '*' sí.
setun-90

Bien, perdón por la molestia. Eso es extraño que +no funcionó; es uno de los operadores de repetición en GNU Grep gnu.org/software/grep/manual/grep.html#Fundamental-Structure
Jacob Krall

@JacobKrall También pensé que era extraño también. Depurar luego.
setun-90

Respuestas:


1

¿Alguien puede decirme dónde puedo comenzar?

Ejecute una sesión de Ubuntu en vivo (o cualquier distribución que venga con la función "probar sin instalar")

Muchas veces, las distribuciones basadas en Linux tardan mucho tiempo en arrancar o incluso fallan cuando hay algún problema con un componente periférico como el teclado o la NIC, etc. Por ejemplo, la tecla "Arriba" del teclado de mi vieja computadora portátil permanece en estado presionado sin ser presionado físicamente . Debido a esto, keyboard-setup.sh espera mucho tiempo, no se completa y finalmente veo un montón de mensajes de error que me notifican que Ubuntu no puede arrancar. Desconectar el teclado durante el arranque fue la solución para mí para que se iniciara.

Probar su hardware para este tipo de errores sería un buen punto de partida. Si conoce un problema de hardware con su computadora portátil, puede intentar desconectar ese componente durante el arranque (probablemente NIC o teclado porque mencionó polktid y keyboard-setup.sh)


Gracias por mencionar el hardware, no había pensado en eso. Aunque también debería haber mencionado en la pregunta que hice una actualización de distribución a 17.04 y los tiempos de arranque han cambiado ligeramente (con udevd ahora es el principal culpable), pero creo que keyboard-setup.sh todavía está tomando mucho tiempo. Voy a actualizar
setun-90

Por favor mencione eso en su pregunta. ¿Desde qué versión actualizaste? La actualización de LTS a una versión siempre causa problemas. Si actualizó de 16.xx LTS a 17.04, tendrá que hacer una instalación limpia de 17.04. Insisto en probar una sesión en vivo de 17.04. Si la sesión en vivo arranca bien, una instalación limpia definitivamente arreglará las cosas.
sziraqui

Lo sentimos, hice la actualización mientras tanto, después de esta pregunta. Los tiempos de arranque en realidad se acortan en un segundo o dos. Pero sí, supongo que una reinstalación limpia podría hacer algo. Y por cierto, pensé que 16.10 no era LTS.
setun-90

Otro punto a tener en cuenta, no puede actualizar oficialmente desde un LTS (por ejemplo, 16.xx, 14.xx) a una versión (por ejemplo, 15.xx, 17.xx) o viceversa. Puede actualizar con un iso por supuesto, pero siempre hace que el sistema tenga errores. Supuse que te habías actualizado desde iso y por eso te sugerí hacer una instalación limpia. Si este es el caso, actualizaré mi respuesta que podría ayudar a alguien más en el futuro.
sziraqui

No utilicé un ISO, la oferta de actualización apareció un día a través de Synaptic y luego corrí sudo apt dist-upgrade.
setun-90
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.