Linux: Как быстро посмотреть системные ошибки
В любой живой системе неизбежны изменения и линукс здесь не исключение, когда обновляются пакеты, и такие важные части как драйвера и ядро ОС. Естественно, такие изменения могут приводить к ошибкам и сбоям, которые необходимо как-то находить и диагностировать, и для этого в Linux есть необходимые сподручные инструменты.
В свою очередь я пользуюсь двумя консольными утилитами:
dmesg (diagnostic message)
Просмотр и управление буфером сообщений ядра Linux. Любимый формат вызова:
sudo dmesg -H --level=err
Выводит сообщения уровня ошибки, приводя вывод в вид удобный для чтения, к примеру вот в такой, говорящий о наличии проблем с bluetooth:
[апр14 10:07] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр14 15:13] Bluetooth: hci0: Opcode 0x203b failed: -2
[апр14 15:14] Bluetooth: hci0: command 0xfcf0 tx timeout
[ +0,000039] Bluetooth: hci0: Failed to read MSFT supported features (-110)
[ +2,016210] Bluetooth: hci0: command 0xfd53 tx timeout
[ +0,000000] Bluetooth: hci0: AOSP get vendor capabilities (-110)
[ +0,386195] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр14 21:33] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр14 23:22] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 00:02] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 09:27] Bluetooth: hci0: AOSP capabilities length 1 too short
[ +2,639139] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 09:57] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 11:29] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 18:13] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 18:14] Bluetooth: hci0: AOSP capabilities length 1 too short
[апр15 19:05] [drm:dc_dmub_srv_wait_idle [amdgpu]] *ERROR* Error waiting for DMUB idle: status=3
[ +3,111900] Bluetooth: hci0: AOSP capabilities length 1 too short
[ +34,771521] Bluetooth: hci0: AOSP capabilities length 1 too short
journalctl (journal control)
Просмотр systemd журнала загрузки Linux. Просмотр текущей сессии загрузки:
journalctl -b
И бывает нередко необходимо просмотреть как осущствлялась загрузка предыдущей сессии:
journalctl -b -1
Эти простые утилиты позволяют довольно эффективно провести начальную диагностику возможных проблем в системе. Надеюсь и вам они пригодятся и помогут в трудную минуту.