Es una pregunta real no iniciar sesión, sino ver qué está ralentizando el arranque. Ahora usas systemd-analyze blamey / o systemd-analyze critical-chain . Lo encuentro más fácil que cavar a través de archivos de registro para encontrar lo que está causando un problema.
oldfred
entonces, ninguno de ustedes puede decir por qué boot.log se lleva a cabo el 22/04/2016 ...? ¿DE VERDAD?
Jasmines
1
@jasmines: Desafortunadamente, no podemos decirte por qué sucede esto ... no somos los desarrolladores ... Actualicé mi respuesta con información nueva de hoy ... deberías considerar presentar un informe de error en Launchpad. :)
cl-netbox
2
journalctl no muestra lo que veo en las salpicaduras durante el arranque, y lo necesito
Jasmines
1
ese bonito registro con "[FALLIDO]" en rojo, ¿lo lograste de nuevo? mi archivo es de 2017 ...
Aquarius Power
Respuestas:
33
Utilizar journalctl
Como journaldcontiene todos los registros, puede usar el journalctlcomando con los filtros adecuados. En el caso de boot.log, que solía contener mensajes del sistema init, podría hacer:
journalctl -b0 SYSLOG_PID=1
-b0muestra mensajes del arranque actual, -b1del arranque anterior, etc. Sin la -bopción, journalctlmostrará mensajes desde el principio del registro.
SYSLOG_PID filtra los mensajes del PID 1, también conocido como init.
O:
journalctl -b0 --system _COMM=systemd
_COMM=systemdbusca mensajes del systemdcomando. Como systemdes init, este es el que nos interesa.
--system filtra los mensajes del registro del sistema en lugar de los registros de sesión del usuario.
Ejemplo:
muru@muru-vm:~$ journalctl -b0 SYSLOG_PID=1
Apr 30 12:29:18 muru-vm systemd[1]: systemd 229 running in system mode. (+PA
Apr 30 12:29:18 muru-vm systemd[1]: Detected virtualization qemu.
Apr 30 12:29:18 muru-vm systemd[1]: Detected architecture x86-64.
Apr 30 12:29:18 muru-vm systemd[1]: Set hostname to <muru-vm>.
Apr 30 12:29:18 muru-vm systemd[1]: Initializing machine ID from random gene
Apr 30 12:29:18 muru-vm systemd[1]: Installed transient /etc/machine-id file
Apr 30 12:29:18 muru-vm systemd[1]: Set up automount Arbitrary Executable Fi
Apr 30 12:29:18 muru-vm systemd[1]: Listening on fsck to fsckd communication
Apr 30 12:29:18 muru-vm systemd[1]: Reached target User and Group Name Looku
Apr 30 12:29:18 muru-vm systemd[1]: Listening on udev Kernel Socket.
Apr 30 12:29:18 muru-vm systemd[1]: Started Forward Password Requests to Wal
Apr 30 12:29:18 muru-vm systemd[1]: Listening on /dev/initctl Compatibility
Apr 30 12:29:18 muru-vm systemd[1]: Listening on Journal Socket.
Apr 30 12:29:18 muru-vm systemd[1]: Created slice User and Session Slice.
Apr 30 12:29:18 muru-vm systemd[1]: Created slice System Slice.
Apr 30 12:29:18 muru-vm systemd[1]: Starting Braille Device Support...
Apr 30 12:29:18 muru-vm systemd[1]: Mounting POSIX Message Queue File System
Apr 30 12:29:18 muru-vm systemd[1]: Mounting Debug File System...
Apr 30 12:29:18 muru-vm systemd[1]: Mounting Huge Pages File System...
Apr 30 12:29:18 muru-vm systemd[1]: Starting Load Kernel Modules...
Apr 30 12:29:18 muru-vm systemd[1]: Starting Uncomplicated firewall...
Apr 30 12:29:18 muru-vm systemd[1]: Starting Create list of required static
lines 1-23
journalctlabre los registros en un buscapersonas de forma predeterminada, por lo que no necesita canalizar less.
Registro persistente
Ubuntu, por defecto, no habilita registros de diario persistentes. Gracias al comentario de @Auspex , debe hacer cualquiera de:
journalctl no muestra lo que veo en las salpicaduras durante el arranque, y lo necesito
Jasmines
1
Estoy viendo lo que se registró en boot.log antes, ese formato: [OK] Comenzó Daemon de tecnología de autocontrol e informes (SMART). Montaje del sistema de archivos de formatos de archivo ejecutables arbitrarios ... [OK] Se inició el servicio de inicio de sesión. Iniciando LSB: Inicie el demonio NTP ... [OK] Comenzó Avahi mDNS / DNS-SD Stack. [OK] Iniciado Hacer que las impresoras CUPS remotas estén disponibles localmente. [OK] Comenzó el Administrador de módem. [OK] Iniciado Network Manager. Iniciando Network Manager Espere en línea ... [OK] Red de destino alcanzada. [OK] Iniciado el Servicio de Cuentas. y así sucesivamente ...
Jasmines
1
Mantén tu tono y palabras agradables. Hay una buena política. Siguelo.
Septiembre
1
journalctl -bX es inútil para esto, la identificación no contiene mensajes que realmente aparecen en la pantalla durante el arranque, solo boot.log lo hace y solo funciona a veces en 16.04, la única forma es tomar una foto o escribirla. Tengo el mismo problema.
Mike
1
Como ya mencionó Jasmines, los mensajes de arranque que comienzan con [OK] ... estas cosas están en boot.log pero en journalctl es un poco diferente, incluso cuando se usan indicadores como -b0 SYSLOG_PID = 1 o -b1 para el arranque anterior, no todo fue allí, especialmente los errores que encontré y no pude encontrar en ningún lugar en los registros. La mayoría de los mensajes están allí, no sé cómo reproducir este problema, así que no puedo evitarlo, pero fue un error con el kernel y no se pudo encontrar, el problema desapareció ahora, pero aún no veo la razón por la que arranca los mensajes no se registran exactamente como aparecen en la pantalla.
No entiendo cómo funcionan las partes internas de Plymouth, pero como es responsable de la pantalla de inicio que aparece antes de la pantalla de inicio de sesión, solo puedo suponer que si no hay pantalla de inicio (pantalla negra) antes de llegar a la pantalla de inicio de sesión , el archivo no se modifica. Si tiene una pantalla de inicio que se muestra antes de la pantalla de inicio de sesión, la salida del proceso de arranque se redirige al archivo boot.log.
Por desgracia, tengo la pantalla inicial, pero sin boot.log ...
jazmines
1
Confirmo que al configurar GRUB_CMDLINE_LINUX_DEFAULT=""en /etc/default/grubque boot.logno está escrito. Al usar GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"que boot.logse escribe de nuevo. Yo uso Ubuntu 19.04.
adrhc
2
En Ubuntu 16.04, el boot.logarchivo todavía se encuentra en la /var/logcarpeta como puede ver aquí . El archivo de registro de arranque es de hoy (29/04/2016). Tal vez algo salió mal cuando instaló Ubuntu 16.04 o actualizó el sistema operativo de Ubuntu 15.10 a Ubuntu 16.04 LTS.
Alternativamente, puede examinar el comportamiento de arranque general desde el kern.logarchivo completo . Otra alternativa posible sería configurar manualmente el demonio syslog para generar el archivo de registro de arranque y aquí hay un tutorial sobre cómo hacer esto exactamente: Cómo ver y configurar registros de Linux
Información Adicional :
Investigué el comportamiento de inicio de sesión en dos máquinas diferentes. En una computadora con un BIOS basado en UEFI, el boot.logarchivo existe, pero en una computadora con BIOS basado en legado parece que no existe en absoluto. Entonces, en caso de que el sistema esté instalado en el modo BIOS heredado (MBR / msdos), esta podría ser la explicación de por qué su boot.logarchivo está fechado del 22/04/2016, es un sobrante de Ubuntu 15.10.
Información actualizada 2016-05-02:
Seguí investigando el comportamiento del archivo de registro de arranque y observé que el boot.logarchivo todavía existe en la máquina basada en UEFI, pero desde hace unos días el archivo está vacío. Otra alternativa que intenté ver qué sucede durante el proceso de arranque fue instalar BootChart , pero bootchart.pngno existía en la /var/logcarpeta como se esperaba después de reiniciar el sistema ... solo había una /var/log/bootchartcarpeta vacía que tampoco contenía el bootchart.pngarchivo esperado .
Información actualizada 2016-05-04:
Hoy el boot.logarchivo parece tener "funcionalidad" nuevamente, está lleno de información parcial del proceso de arranque. Parece ser un comportamiento que cambia al azar, que creo que no se puede resolver aquí en Ask Ubuntu, por lo que debe considerar presentar un informe de error en Launchpad para resolverlo.
Conclusión : después de una semana de investigación sobre el boot.logcomportamiento del archivo en Ubuntu 16.04: no debería preocuparse por /var/log/boot.logmás tiempo y simplemente acostumbrarse journalctl.
no piense que algo salió mal, de todos modos me gustaría aceptar su respuesta si pudiera agregar sugerencias sobre cómo resolver mi problema ...
Jasmines
Intenté configurar manualmente el demonio syslog para generar el archivo de registro de arranque siguiendo el tutorial. Agregué # Guardar mensajes de arranque también a boot.log local7. * /Var/log/boot.log a mi archivo /etc/rsyslog.d/50-default.conf sin suerte, /var/log/boot.log todavía está 2016-04-22
jasmines
En mi nueva instalación de Ubuntu 16.04 también descubrí que el boot.logarchivo no está en su ubicación habitual.
@ParanoidPanda: En las dos máquinas mencionadas, realicé una instalación limpia / nueva (no una actualización) de Ubuntu 16.04 LTS; parece que la forma anterior de inicio de sesión ya no es compatible. :)
cl-netbox
1
journalctl no muestra lo que veo en las salpicaduras durante el arranque, y lo necesito
systemd-analyze blame
y / osystemd-analyze critical-chain
. Lo encuentro más fácil que cavar a través de archivos de registro para encontrar lo que está causando un problema.Respuestas:
Utilizar
journalctl
Como
journald
contiene todos los registros, puede usar eljournalctl
comando con los filtros adecuados. En el caso deboot.log
, que solía contener mensajes del sistema init, podría hacer:-b0
muestra mensajes del arranque actual,-b1
del arranque anterior, etc. Sin la-b
opción,journalctl
mostrará mensajes desde el principio del registro.SYSLOG_PID
filtra los mensajes del PID 1, también conocido como init.O:
_COMM=systemd
busca mensajes delsystemd
comando. Comosystemd
es init, este es el que nos interesa.--system
filtra los mensajes del registro del sistema en lugar de los registros de sesión del usuario.Ejemplo:
journalctl
abre los registros en un buscapersonas de forma predeterminada, por lo que no necesita canalizarless
.Registro persistente
Ubuntu, por defecto, no habilita registros de diario persistentes. Gracias al comentario de @Auspex , debe hacer cualquiera de:
Editar
/etc/systemd/journald.conf
para incluir:Crea un
/var/log/journal
directorio manualmente:Relacionado:
fuente
journalctl -bX
es inútil para esto, la identificación no contiene mensajes que realmente aparecen en la pantalla durante el arranque, solo boot.log lo hace y solo funciona a veces en 16.04, la única forma es tomar una foto o escribirla. Tengo el mismo problema.Estaba revisando algunos informes de errores y noté en este: https://bugs.launchpad.net/ubuntu/+source/ubuntu-gnome-default-settings/+bug/1536771 que Plymouth realmente está escribiendo en boot.log.
Si mira https://launchpadlibrarian.net/257898272/plymouth-debug.log y busca en su navegador 'boot.log' obtendrá las siguientes líneas:
No entiendo cómo funcionan las partes internas de Plymouth, pero como es responsable de la pantalla de inicio que aparece antes de la pantalla de inicio de sesión, solo puedo suponer que si no hay pantalla de inicio (pantalla negra) antes de llegar a la pantalla de inicio de sesión , el archivo no se modifica. Si tiene una pantalla de inicio que se muestra antes de la pantalla de inicio de sesión, la salida del proceso de arranque se redirige al archivo boot.log.
fuente
GRUB_CMDLINE_LINUX_DEFAULT=""
en/etc/default/grub
queboot.log
no está escrito. Al usarGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
queboot.log
se escribe de nuevo. Yo uso Ubuntu 19.04.En Ubuntu 16.04, el
boot.log
archivo todavía se encuentra en la/var/log
carpeta como puede ver aquí . El archivo de registro de arranque es de hoy (29/04/2016). Tal vez algo salió mal cuando instaló Ubuntu 16.04 o actualizó el sistema operativo de Ubuntu 15.10 a Ubuntu 16.04 LTS.Alternativamente, puede examinar el comportamiento de arranque general desde el
kern.log
archivo completo . Otra alternativa posible sería configurar manualmente el demonio syslog para generar el archivo de registro de arranque y aquí hay un tutorial sobre cómo hacer esto exactamente: Cómo ver y configurar registros de LinuxInformación Adicional :
Investigué el comportamiento de inicio de sesión en dos máquinas diferentes. En una computadora con un BIOS basado en UEFI, el
boot.log
archivo existe, pero en una computadora con BIOS basado en legado parece que no existe en absoluto. Entonces, en caso de que el sistema esté instalado en el modo BIOS heredado (MBR / msdos), esta podría ser la explicación de por qué suboot.log
archivo está fechado del 22/04/2016, es un sobrante de Ubuntu 15.10.Información actualizada 2016-05-02:
Seguí investigando el comportamiento del archivo de registro de arranque y observé que el
boot.log
archivo todavía existe en la máquina basada en UEFI, pero desde hace unos días el archivo está vacío. Otra alternativa que intenté ver qué sucede durante el proceso de arranque fue instalar BootChart , perobootchart.png
no existía en la/var/log
carpeta como se esperaba después de reiniciar el sistema ... solo había una/var/log/bootchart
carpeta vacía que tampoco contenía elbootchart.png
archivo esperado .Información actualizada 2016-05-04:
Hoy el
boot.log
archivo parece tener "funcionalidad" nuevamente, está lleno de información parcial del proceso de arranque. Parece ser un comportamiento que cambia al azar, que creo que no se puede resolver aquí en Ask Ubuntu, por lo que debe considerar presentar un informe de error en Launchpad para resolverlo.Conclusión : después de una semana de investigación sobre el
boot.log
comportamiento del archivo en Ubuntu 16.04: no debería preocuparse por/var/log/boot.log
más tiempo y simplemente acostumbrarsejournalctl
.fuente
boot.log
archivo no está en su ubicación habitual.