Как проверить, была ли последняя остановка чистой?

Есть много потоков на этом с различными решениями. В этом случае предлагается использовать «исправление сломанных пакетов» в режиме восстановления, чтобы включить r / w. В этой статье есть комментарий, предлагающий помощь в создании сетей.

19
задан 10 February 2012 в 18:39

5 ответов

Если машина была выключена правильно, тогда в файле kern.log должен быть журнал завершения работы в каталоге / var / log. После выключения всякий раз, когда происходит обычная загрузка, OS записывает журнал для того же самого в kern.log. Следовательно, каждому загрузочному журналу должен предшествовать журнал выключения, если процесс загрузки и выключения был нормальным.

Всякий раз, когда происходит нормальное завершение работы, « / var / log » записывается в kern.log. Аналогично, всякий раз, когда происходит загрузка, «imklog 5.8.1, log source = / proc / kmsg запущен». написано в kern.log

. Эти два сообщения должны быть в порядке, если выключение было нормальным, а не внезапным отключением питания. Не должно быть « imklog 5.8.1, log source = / proc / kmsg запущено. » сообщение без «Завершение записи ядра» (proc) ». если предыдущее завершение работы было нормальным. Оба эти сообщения должны всегда встречаться в паре в журнале.

Просто введите терминал: - Завершена запись в журнал (proc).

и проверьте выключение и паролей загрузки. Если они обнаружены не в парах, где остановка должна была быть крутой.

19
ответ дан 25 May 2018 в 14:25
  • 1
    замените gedit текстовым редактором по умолчанию. – Vikramjeet 28 February 2012 в 23:08
  • 2
    мой kern.log пуст – Nade 28 October 2013 в 00:29
  • 3
    @ Попробуйте kern.log.1. – a different ben 28 October 2013 в 04:50
  • 4
    ни одна из этих фраз в моем журнале. Даже часть из них. Мне действительно нужно знать, правильно ли закрывается мой компьютер. B / c. Я считаю, что у меня есть ребенок, который просто держит кнопку питания. – KI4JGT 28 December 2013 в 10:44
  • 5
    с Ubunutu 16.04 это кажется уже не правильным. т.е. я не получаю cat /var/log/syslog | grep -i "stopped" (и тому подобное, а также проверен на соответствие), несмотря на то, что это было явно частью предыдущих сообщений о завершении работы ... (видимый материал журнала при нажатии ESC, чтобы убить заставку во время закрытие) - кто-нибудь получил обновление? – Frank Nocke 27 October 2016 в 06:41

Если машина была выключена должным образом, в каталоге kern.log должен быть журнал завершения работы, зарегистрированный в каталоге / var / log . После выключения всякий раз, когда происходит обычная загрузка, OS записывает журнал для того же самого в kern.log. Следовательно, каждому загрузочному журналу должен предшествовать журнал выключения, если процесс загрузки и выключения был нормальным.

Всякий раз, когда происходит нормальное отключение " Запись в журнал (proc) остановлена. " написано в kern.log. Аналогично, всякий раз, когда происходит загрузка, « imklog 5.8.1 запускается log source = / proc / kmsg. " записывается в kern.log

Эти два сообщения должны быть в порядке, если выключение было нормальным, а не внезапным отключением питания. Не должно быть " imklog 5.8.1, log source = / proc / kmsg запущен. " сообщение без " Завершение записи ядра (proc). ", если предыдущий выключение было нормальным. Оба сообщения должны всегда встречаться в паре в журнале. enter image description here [/g6]

Просто введите терминал: - gedit /var/log/kern.log

и проверьте пары выключения и загрузки. Если они находятся не в парах, где остановка должна была быть крутой.

19
ответ дан 25 July 2018 в 19:57

Привет, вы можете запустить скрипт, чтобы проверить, было ли последнее закрытие правильным или нет. Просто поставьте следующие строки в сценарии bash и запустите его после загрузки системы.

#!/bin/bash
B="1"
touch data_file
echo $(($(grep -nr "$(cat  /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog   | grep $(cat  /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog | cut -d' ' -f3 | sort -k1 -r | sort --unique --stable -k2,3))" /var/log/kern.log | awk '{printf $1}' | grep -oE "[[:digit:]]{1,}")-$B))  >  data_file


if [[

($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $6}') == "Kernel") && 
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $7}') == "logging") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $8}') == "(proc)") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $9}') == "stopped.") 


]]; then

  echo Last Shutdown-proper

else

   echo Last Shutdown_not proper 

fi

rm data_file

ПРИМЕЧАНИЕ. Пожалуйста, будьте в корневом пользователе для запуска скрипта. Это не повредит вашей системе :)

0
ответ дан 25 May 2018 в 14:25

Начиная с Ubuntu 16.04, чистая остановка, за которой следует правильная перезагрузка, будет записывать эти две строки один за другим в / var / log / syslog

Mar  9 14:14:06 *YOUR-HOSTNAME* rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="1086" x-info="http://www.rsyslog.com"] exiting on signal 15.
Mar  9 15:23:42 *YOUR-HOSTNAME* rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="1069" x-info="http://www.rsyslog.com"] start
0
ответ дан 25 May 2018 в 14:25

Привет, вы можете запустить скрипт, чтобы проверить, было ли последнее закрытие правильным или нет. Просто поместите следующие строки в сценарий bash и запустите его после загрузки системы.

#!/bin/bash
B="1"
touch data_file
echo $(($(grep -nr "$(cat  /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog   | grep $(cat  /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog | cut -d' ' -f3 | sort -k1 -r | sort --unique --stable -k2,3))" /var/log/kern.log | awk '{printf $1}' | grep -oE "[[:digit:]]{1,}")-$B))  >  data_file


if [[

($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $6}') == "Kernel") && 
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $7}') == "logging") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $8}') == "(proc)") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $9}') == "stopped.") 


]]; then

  echo Last Shutdown-proper

else

   echo Last Shutdown_not proper 

fi

rm data_file

ПРИМЕЧАНИЕ. Пожалуйста, будьте в корневом пользователе для запуска скрипта. Это не повредит вашей системе :)

0
ответ дан 15 August 2018 в 20:13

Другие вопросы по тегам:

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