Solución de problemas de tiempo de arranque extremo en Linux

Solución de problemas de tiempo de arranque extremo en Linux

No estoy seguro de si este es el lugar correcto para hacer preguntas relacionadas con el soporte técnico, pero definitivamente parece ser un problema de Linux o al menos con respecto a la forma en que Linux interactúa con mi hardware.

Tengo una PC de escritorio construida a partir de una estación de trabajo HP Z800 y puede ser relevante que el sistema esténoCompatible con UEFI, por lo que todos los sistemas operativos utilizan esquemas de partición BIOS y MBR heredados.

Por lo general, inicio dualmente Windows 10 y una distribución de Linux (actualmente Linux Mint 20.2, pero este problema existe durantetododistribuciones que he probado, incluidas Debian 11, Ubuntu 20.04-21.10, Fedora 33-35, OpenSUSE Tumbleweed y Arch Linux).

Como soy un usuario no técnico en su mayoría, no estoy seguro de cuál es la terminología adecuada, pero para poder describir correctamente mi problema tengo que separar el proceso de arranque en tres etapas (éstas son mi propia terminología y mi conflicto con las existentes). cosa que no conozco!):

  • Etapa 1: La parte que comienza presionando el botón de encendido y termina con llegar al gestor de arranque (GRUB2).
  • Etapa 2: La parte que comienza con el gestor de arranque y termina cuando el sistema operativo real comienza a arrancar, es decir, cuando recibo mensajes de la consola/systemd, la pantalla de Plymouth, etc.
  • Etapa 3: La parte que comienza con el final de la Etapa 2 finaliza cuando el sistema operativo se inicia por completo y estoy en el administrador de pantalla.

El problema es que la Etapa 2 lleva un tiempo increíblemente largo. Entonces, una vez que llego al gestor de arranque y selecciono (o selecciono automáticamente) una entrada de Linux, la pantalla se queda completamente en blanco (según la distribución, puede haber un mensaje parpadeante aquí, en Mint está completamente en blanco, pero, por ejemplo, en Fedora normalmente aparece un mensaje parpadeante), el sistema permanece inactivo aquí durante un tiempo extremadamente largo (La última vez midí aproximadamente 1 minuto y 44 segundos.), y luego comienza la Etapa 3.

Dado que la etapa 3 se desactiva sin problemas, no estoy seguro de cómo solucionarlo. Por ejemplo, systemd-analyze da Startup finished in 16.129s (kernel) + 2.863s (userspace) = 18.993s graphical.target reached after 2.120s in userspace, lo que me parece normal y definitivamente no tiene en cuenta el vacío de más de 1 minuto entre el gestor de arranque y el sistema operativo que comienza a arrancar.

Más información:

  • ventanasno escomportarse de esta manera. Si selecciono la entrada de Windows 10 en el gestor de arranque, se inicia el proceso de arranque instantáneamente (incluso si el inicio rápido está desactivado).
  • No siempre se comportó así. No estoy seguro de cuándo comenzó el comportamiento (probablemente hace aproximadamente un año), y creo que hice una reinstalación completa de ambos sistemas operativos en la PC, limpié todos los discos duros e instalé W10 y una distribución de Linux. desde cero. Pero no sucedió nada extraordinario que pudiera hacer pensar en la causa raíz de este problema.
  • Aparte de pequeñas diferencias (como el mensaje parpadeante que mencioné antes), todas las distribuciones de Linux que he probado desde entonces se comportan de la misma manera. Sin embargo, no medí los tiempos de arranque de diferentes distribuciones para determinar la variación. Pero en cada caso el tiempo de espera es mucho mayor del que sería apropiado y siempre es el mismo, entre la Etapa 2 y la Etapa 3.
  • Mi PC tiene tres discos duros, dos SSD y un HDD giratorio. Normalmente uso un SSD para Windows C:, otro SSD para la partición / Linux y el HDD giratorio para las particiones Linux /home y Windows D:. He experimentado escribiendo código de arranque MBR durante la instalación de Linux en cada uno de estos discos y ocurre el mismo problema en todos los casos. Entonces parece que cuál es el disco de arranque es irrelevante.

No necesariamente espero una solución mágica, pero como he dicho, no tengo ni idea de cómo empezar a solucionar este problema, ya que durante el tiempo de espera no recibo ninguna respuesta y es muy difícil buscar este problema (p. ej. la búsqueda de tiempos de arranque lentos generalmente supone un problema de Etapa 3).

EDITAR:

  • He eliminado quiety splashañadido systemd.show_status=yesa los parámetros de arranque. El problema persiste, es decir, hay un tiempo de espera de más de un minuto antes decualquieraparece el mensaje.
  • La salida de dmesg | grep commandes [ 0.064784] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.11.0-38-generic root=UUID=78354078-8fcd-4223-8fb0-9137207cb415 ro systemd.show_status=yes.
  • Acerca de las luces LED: Durante el "tiempo de espera", la luz verde al lado de mi botón de encendido emitía luz constantemente sin parpadear. Esta es la única luz LED que veo en mi chasis.
  • La salida de fdisk -ly lsblkse pega a continuación:
Disk /dev/sda: 447,13 GiB, 480103981056 bytes, 937703088 sectors
Disk model: CT480BX500SSD1  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00a879e5

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048    104447    102400    50M  7 HPFS/NTFS/exFAT
/dev/sda2          104448 936654957 936550510 446,6G  7 HPFS/NTFS/exFAT
/dev/sda3       936656896 937697279   1040384   508M 27 Hidden NTFS WinRE


Disk /dev/sdb: 1,84 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: WDC WD20EZRX-00D
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xfc1366de

Device     Boot      Start        End    Sectors  Size Id Type
/dev/sdb1  *          2048 2833283071 2833281024  1,3T  7 HPFS/NTFS/exFAT
/dev/sdb2       2833283072 3907028991 1073745920  512G 83 Linux


Disk /dev/sdc: 223,58 GiB, 240057409536 bytes, 468862128 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x143a208b

Device     Boot     Start       End   Sectors  Size Id Type
/dev/sdc1       452857856 468860927  16003072  7,6G 82 Linux swap / Solaris
/dev/sdc2  *         2048 452857855 452855808  216G 83 Linux

Partition table entries are not in disk order.

y

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 447,1G  0 disk 
├─sda1   8:1    0    50M  0 part 
├─sda2   8:2    0 446,6G  0 part 
└─sda3   8:3    0   508M  0 part 
sdb      8:16   0   1,8T  0 disk 
├─sdb1   8:17   0   1,3T  0 part 
└─sdb2   8:18   0   512G  0 part /Storage
sdc      8:32   0 223,6G  0 disk 
├─sdc1   8:33   0   7,6G  0 part [SWAP]
└─sdc2   8:34   0   216G  0 part /

información relacionada