Найти время последнего отключения

9

Это команда, которую я использую:

last -x|grep shutdown | head -1

но это дает мне продолжительность с +2 часа:

shutdown system down  3.14-1-amd64     Mon Jul 21 08:43 - 22:19  (13:36)

Время последнего отключения (08:43) является правильным, но время запуска (22:19, должно быть 20:19) является неправильным.

Есть ли лучшая команда, чтобы проверить, как давно компьютер был выключен? или мои настройки DST или что-то еще вызывает это?

PS: я использую тестирование Debian (Linux rig 3.14-1-amd64 # 1 SMP Debian 3.14.12-1 (2014-07-11) x86_64 GNU / Linux)

şaloma
источник
Какую ОС вы используете?
Тахоми
1
Вы уверены, что время дается +2 часа, я попробовал, и это сработало.
Нидал
В строке перезагрузки, которая находится рядом с этой строкой выключения, также отображается неверное время запуска?
Марк Плотник
2
who -bдает последнее время загрузки системы, last rebootдает также то, что говорит команда. Если вы подозреваете настройки DST, проверьте текущую дату, сравните ее с реальными значениями и сообщите нам
клерк
1
@klerk who -bдает неверное значение: semko@rig:~$ who -b system boot 2014-07-22 00:24 semko@rig:~$ date Mon Jul 21 22:41:35 CEST 2014 . так что вы можете видеть, что он выключен на 2 часа от date. semko@rig:~$ last reboot reboot system boot 3.14-1-amd64 Tue Jul 22 00:24 - 22:41 (-1:-42)последняя запись, а -1: -42 просто абсурдно.
Шалома

Ответы:

8

Согласно вашему выводу:

shutdown system down  3.14-1-amd64     Mon Jul 21 08:43 - 22:19  (13:36)

Вы выключаете свою систему 21 июля в 08:43, а затем после 13 часов и 36 минут 21 июля в 22:19 вы снова загружаете ее. Вы можете видеть, сколько времени ваша система работает с uptimeкомандой. Если вы хотите увидеть, когда вы в последний раз загружались (не выключались), используйте следующую команду:

 last -x | grep reboot

Например, мой вывод:

reboot   system boot  4.4.0-31-generic Mon Aug  1 12:59   still running
reboot   system boot  4.4.0-31-generic Mon Aug  1 01:28 - 08:54  (07:25)

Теперь легко понять, что я загрузил свою систему 1 августа в 12:59, и она все еще работает. И я работал с моим компьютером в течение 7 часов и 25 минут с 01:28 до 08:54 1 августа. Надеюсь, это будет полезно! :-)

Саджад Ховиегар
источник
3

Я использую ОС Fedora и команду:

last -1x shutdown
shutdown system down  3.15.3-200.fc20. Fri Jul 11 12:31 - 12:31  (00:00)
wtmp begins Sat Dec 28 12:28:14 2013

Rhim
источник
2

Если вы используете systemd (и журналы journald постоянно хранятся на диске), вы можете использовать journalctl -b-1и перейти к концу журналов.

Бигон
источник
1

Другой хорошей альтернативой является использование команды tupime .

В следующем примере приведен список последних двух запусков с регистрами «Выключение» и «Время простоя», которые вас интересуют:

$ tuptime  -l -S-2
Startup:  1379  at  13:51:57 06/01/18
Uptime:   10 minutes and 54 seconds
Shutdown: OK  at  14:02:51 06/01/18
Downtime: 19 hours, 31 minutes and 53 seconds

Startup:  1380  at  09:34:44 07/01/18
Uptime:   22 minutes and 59 seconds
Rfraile
источник
0

Вы можете позвонить uptimeи сделать математику:

# uptime
 11:56:42 до 64 дней, 13:27, 4 пользователя, средняя загрузка: 0,00, 0,03, 0,11
Майкл
источник
Это не поможет узнать о выключении или перезапуске, потому что вы уже во время командования. Этот вопрос больше о том, чтобы «знать, когда компьютер выключился», и это тоже мой случай. Все, что мы знаем о журналах, но всегда есть хороший способ сделать что-то, например last.
m3nda
0

Как сказали друзья who, так lastи uptimeпоможет, но вы можете проверить /var/log/messages. Если ваша система простаивала, вы можете найти Markв журналах и найти последнюю, Markкоторая поможет вам определить, когда система выключена и когда система запускается. Syslog пишет ядро ​​и сервисы входят в систему /var/log/messages. Вы можете узнать, когда услуги начинаются.

Али Гасемпур
источник