Работая с виртуальной машиной Linux, я регулярно испытываю панику в ядре, которая вызывает полезный вывод с вещами, которые я не понимаю, и это, вероятно, не помогает мне.
Паника в основном возникает во время initramfs
фазы. Я использую VirtualBox
.
Нормальный Shift+ Pg Upне работает (в моем случае).
Есть ли другой способ прокрутить назад и посмотреть на результат того, что было раньше?
terminal
kernel-panic
Minix
источник
источник
Ответы:
Серийный порт
Последовательный порт - это старое и надежное оборудование протокола связи, которое поддерживается ядром Linux, и большинство эмуляторов имитируют.
Вы можете передавать сообщения ядра в файл или консоль через него:
VirtualBox: как захватить всю панику ядра при загрузке | Переполнение стека
QEMU:
Вот минимальная настройка для воспроизведения проблемы: https://github.com/cirosantilli/linux-kernel-module-cheat/blob/b366bac0c5410ceef7f2b97f96d93d722c4d9ea6/kernel_module/panic.c
Реальное аппаратное обеспечение: последовательный порт не выставляется на большинстве современных ноутбуков, что обидно ... но на настольных компьютерах это выглядит так:
Источник .
И на Raspberry Pi:
Более подробная информация по адресу: В чем разница между ttys0, ttyUSB0 и ttyAMA0 в Linux?
Серийные альтернативы
Есть даже более причудливые методы, упомянутые в: Определение причины паники ядра Linux | Unix & Linux Stack Exchange
netdump: отправляет трассировку по сети.
Предполагается, что паника не сломала сети, что более вероятно, чем серийный.
Преимущества перед серийными:
работает для систем, которые не имеют серийной экспозиции, таких как современные ноутбуки
Максимальная длина проводов у последовательных кабелей довольно ограничена, что проблематично, если вы хотите, чтобы все платы вашей компании располагались в удаленной комнате для совместного использования ресурсов разработчиками.
Однако есть последовательные разъемы с сервером Ethernet, которые я бы порекомендовал, если ваша цель выставляет последовательный порт, например, такой :
kdump: загружает вторичное ядро Linux, которое проверяет испуганное ядро. Что возможно могло пойти не так?
Эти методы более гибкие, но менее надежные.
Смотрите также: Прокрутка экрана с ошибками с помощью паники ядра | Супер пользователь
источник
С каким гипервизором вы работаете?
Shift+ Pg Upподходит почти для всех ситуаций, но может не работать, если виртуальная машина зависает или не загружается полностью.
В случае Mac: «Shift + Fn D-pad UP или DOWN на Macbook позволит вам прокручивать». Это из Как вы прокручиваете вверх / вниз на сервере Linux (терминал)? | Переполнение стека
источник