-1 - устаревшее значение. Как вы можете видеть в этом выпуске 0, новый -1
https://github.com/moby/moby/pull/33898
Если это действительно паника ядра, то она не будет записана в журнал с помощью обычных методов. Поскольку ядро в этот момент разбилось, запись в файловую систему представляет собой рискованную операцию - не многие из ядер могут быть доверены больше, поэтому запись в журналы может фактически извергать случайное дерьмо над вашим загрузчиком!
Вместо этого , вы можете сбросить содержимое памяти в свою своп, а затем отладить ее позже.
У Ubuntu Wiki есть CrashdumpRecipe, который может быть полезен - хотя он выглядит немного устаревшим, я не думаю, что слишком много должно было измениться. [ ! d2]
Последовательный порт
Последовательный порт представляет собой простой механизм связи низкого уровня между компьютерами.
Преимущества:
простая настройка один раз (если у вас есть аппаратное обеспечение ) надежны, поскольку передача данных зависит только от простых проводов и API ядра, на которые, скорее всего, будет влиять паника, а не подсистема TCP / IP.Недостатки:
простая настройка один раз (если у вас есть аппаратное обеспечение) вам также нужен второй компьютер с последовательным портом, а также для получения данных, но это касается практически всех встроенных плат разработки, таких как малина Pi. надежна, поскольку передача данных зависит только от простых проводов и API ядра, на которые, скорее всего, не влияет паника, а не на подсистему TCP / IP.Серийный порт выглядит так:
и RPI доступен через GPIO.
Затем, если у вас есть необходимое оборудование, подключитесь со второго компьютера на главный компьютер с:
screen /dev/ttyS0 115200
Это фактически дает вам оболочку.
Затем на главной машине запустите операцию, которая панически.
Когда
Последовательный порт
Последовательный порт
] Существуют и другие методы, которые устраняют упомянутые выше аппаратные ограничения ценой более сложной и менее надежной. Известные методы:
вам также нужен второй компьютер с последовательным портом, а также для получения данных, но это касается практически всех встроенных плат разработки, таких как Raspberry Pi. kdump: похоже, является основным механизмом linux-crashdump, упомянутым в: https://askubuntu.com/a/104793/52975 Загружает второе ядро Linux для проверки разбившегося ядра. Что возможно могло пойти не так?! :-)См. также этот отличный ответ: https://unix.stackexchange.com/questions/60574/determining-cause-of-linux-kernel-panic
Отладка шага
В конечном итоге получение панического вывода требует, чтобы некоторые функции ядра работали, и любая функциональность ядра могла быть повреждена паникой.
Но кому нужна паника, если вы можете использовать GDB на ядре? Если вы такой хардкор, посмотрите:
kdump: похоже, является основным механизмом linux-crashdump, указанным по адресу: https://askubuntu.com/a/104793/52975 Сапоги второе ядро Linux для проверки разбившегося ядра. Что возможно могло пойти не так?! :-) JTAGКаждая проблема падает, когда у вас есть полная видимость (и достаточно времени!).