Перезагрузка от LiveUSB и видит, сохраняется ли проблема. Это устранило бы проблемы программного обеспечения о Вашем локальном жестком диске/SSD.
Если так, я предложил бы проверить механические устройства; демонтируйте и затем повторно прикрепите плату беспроводной локальной сети. В конце концов, кабели "Состояний Закона Pournelle действительно имеют значение. Когда что-то не будет работать, всегда проверяйте кабели и их коннекторы сначала". Это, конечно, кажется, относится к intermittants как это.
Перезаписи документируются в системном журнале на системах, использующих systemd (например, RHEL 7, Fedora). Вы можете просмотреть их через:
# journalctl --list-boots
[..]
0 51545e9739db4eb1ab602dd338a937b1 Wed 2014-08-06 10:58:04 CEST—Mon 2014-08-18 22:31:43 CEST
Традиционно перезагрузки также документируются через wtmp, т.е. вы можете отобразить их с помощью команды last
:
# last
[..]
reboot system boot 3.11.10-301.fc20 Wed Jun 4 08:15 - 18:43 (10:27)
(Выход из системы Fedora 20)
Man-страница Ubuntu на last
объясняет этот механизм:
Псевдо-пользователь регистрирует перезагрузку каждый раз, когда система перезагружается. Таким образом, последняя перезагрузка покажет журнал всех перезагрузок, так как файл журнала был Cre- атед.
(В зависимости от вашего дистрибутива wtmp-файл может быть повернут в течение длительного времени работы, так что последняя перезагрузка не будет отображаться)
Для получения уведомлений о перезагрузках вы можете настроить их косвенно через задание cron, например:
#!/bin/bash
set -e
set -u
uptime=$(awk '{print $1}' /proc/uptime)
if [ -f /var/tmp/last_uptime ]; then
last_uptime=$(cat /var/tmp/last_uptime)
if [ $uptime -lt $last_uptime ]; then
echo System was rebooted
exit 1
fi
fi
echo $uptime > /var/tmp/last_uptime
Альтернативно, вы можете запустить почтовую команду как часть процесса загрузки. С помощью systemd
это можно сделать следующим образом:
# echo 'echo Just rebooted at $(date) | mail juser@example' >> /etc/rc.d/rc.local
# chmod 755 /etc/rc.d/rc.local
Другие дистрибутивы, которые используют нечто отличное от systemd, могут выполнить /etc/rc.local
в конце последовательности загрузки.
Есть ли способ распознать сбой питания при перезагрузке после сбоя?
См. DMI SMBIOS «Тип пробуждения».
$ sudo dmidecode | fgrep 'Wake-up Type'
Wake-up Type: AC Power Restored
Вы можете получить это программно через / sys / fireware / dmi / entries / 1-0 /…