Паника ядра не выводит файлов журнала

У меня нет беспроводной карты на моем поле Arch, но я могу сделать то, что Вы требуете использования ip на запасном устройстве Ethernet eth1, как это:

# view network devices and addresses
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether __MAC_ADDRESS__ brd __IPv6_BROADCAST__
    inet __IP_ADDRESS__/24 brd __BROADCAST__ scope global eth0
    inet6 __IPv6 ADDRESS__/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether __MAC_ADDRESS__ brd __IPv6_BROADCAST__

$ # must bring down eth1 before renaming it.
$ sudo ip link set dev eth1 down

$ # rename eth1 to ethfoo
$ sudo ip link set dev eth1 name ethfoo

$ # show 'ethfoo' device status
$ ip addr show dev ethfoo
3: ethfoo: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 48:5b:39:5d:89:2c brd ff:ff:ff:ff:ff:ff

$ # bring ethfoo back up
$ sudo ip link set dev ethfoo up

Я воображаю ip должен также работать тождественно с беспроводным устройством, и в противном случае iw надо надеяться, обеспечил бы ту же функциональность..

8
26.05.2017, 23:12
2 ответа

, чтобы убедиться, что ваша машина генерирует файл «Core», когда возникает ошибка ядра, вы должны подтвердить настройки «SYSCTL» вашего компьютера.

IMO, следующие должны быть настройками (минимальными) в /etc/sysctl.conf :

kernel.core_pattern = /var/crash/core.%t.%p
kernel.panic=10
kernel.unknown_nmi_panic=1

Выполнить SYSCTL -P После внесения изменений в / etc /sysctl.conf файл. Вы, вероятно, должны также MKDIR / VAR / CRANC , если он еще не существует.

Вы можете проверить вышеизложенное, создавая ручную дамп Используя клавишу SYSRQ (комбинация клавиш для дамп ALT + SYSRQ + C ).

6
27.01.2020, 20:12

Когда ядро ​​паникует, это означает, что что-то пошло не так в ядре. Для записи файлов журнала и дампа памяти необходимо использовать драйверы для блочного устройства хранения (вашего диска) и файловой системы (необходимо выделить пространство и обновить размер файла журнала). Учитывая, что те службы, которые предоставляются ядром, необходимы для записи файлов, и ядро ​​знает, что оно находится в неисправном состоянии, оно не может записывать файлы или регистрировать что-либо, потому что оно больше не находится в безопасном состоянии, поэтому любая операция может усугубить ситуацию и может повредить / уничтожить вашу файловую систему. Таким образом, вы не можете заставить ядро ​​записывать в журнал или выгружать дамп ядра в случае паники.

Теперь, что вы можете сделать, если хотите, - это настроить систему с ядром обработки сбоев, которое является вторым ядром, загруженным в память, которому может быть передано управление в случае сбоя основного ядра. Поскольку у этого ядра есть драйверы и тому подобное, оно сможет сохранить для вас аварийный дамп. Однако это не очень распространенная установка и в основном используется для высокопроизводительных систем, которым требуется высокая доступность и где сбой является очень серьезной проблемой, которую необходимо исследовать.

См., Например, параметр crashkernel на Дамп сбоя ядра на ubuntu.com. (Обратите внимание, что на этой странице указано, что механизм аварийного дампа ядра включен по умолчанию, начиная с Ubuntu 16.04.)

Я считаю, что система фактически сохраняет дамп в зарезервированный фрагмент памяти а затем перезагружается, и ядро ​​сохраняет зарезервированную память на диск при следующей загрузке (поскольку новое загружаемое ядро ​​находится в нормальном состоянии и может это сделать).

2
27.01.2020, 20:12

Теги

Похожие вопросы