Время работы системы при последней загрузке

A|B

выполняет A и B (параллельно ), и стандартный вывод A подается на стандартный ввод B. В случае

A $(B)

оболочка сначала выполняет B, собирает стандартный вывод B, затем выполняет A, но для этого выполнения назначает отдельные слова вектору ARGV -A (, т.е. A может получить доступ к этим словам с помощью обычного argv механизм, известный из C и других языков ).

Кроме того, что в обоих случаях задействованы две программы А и Б, я не вижу между ними ничего похожего.

0
08.04.2020, 16:58
1 ответ

Вы можете узнать, когда система была перезагружена, несколькими способами... "время безотказной работы", "последняя перезагрузка" и т. д. Узнать, когда она была выключена, немного сложнее. Предполагая, что у вас регулярно ведется системный журнал через rsyslogd, вы можете использовать модуль immark в качестве подпрограммы «регистрировать что-то каждые несколько секунд», добавив следующее в /etc/rsyslogd.conf:

$ModLoad immark
$MarkMessagePeriod <your time granularity here, in seconds>
$ActionWriteAllMarkMessages on

Можно тоже не заморачиваться, а лучше посмотреть одну из двух вещей в файле сообщений. Если файл ротируется при загрузке системы, вы можете просто посмотреть дату предыдущей версии файла, используя «ls -l», чтобы получить довольно точное представление о том, когда система прекратила запись в него. Если вы не чередуете системный журнал, вы можете добиться той же точности, посмотрев временную метку строки непосредственно перед строкой, указывающей на перезапуск. Наши перезапуски выглядят примерно так:

2020-03-29T03:20:01.529437-04:00 [hostname] rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-41.el7_7.2" x-pid="1615" x-info="h
ttp://www.rsyslog.com"] rsyslogd was HUPed

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

Если вы отключили ведение системного журнала, все это, конечно, становится спорным. Если вы все еще записываете что-то в системные журналы, вы можете получить статистику некоторых файлов и примерно определить, когда система отключилась, просмотрев время модификации :

.
root# stat /var/log/messages-01.gz
  File: '/var/log/messages-01.gz'
  Size: 185529          Blocks: 368        IO Block: 4096   regular file
Device: fd06h/64774d    Inode: 12689803    Links: 1
Access: (0640/-rw-r-----)  Uid: (    0/    root)   Gid: (658178/  mssgro)
Access: 2020-04-08 10:27:47.691311523 -0400
Modify: 2020-04-05 03:01:34.000000000 -0400  <=== that's what you're after ==
Change: 2020-04-07 18:16:40.252668164 -0400
 Birth: -

Выберите самый последний из выбранных файлов, и вы получите довольно точную оценку времени остановки системы.

Просто несколько идей, надеюсь, они помогут.

0
28.04.2021, 23:18

Теги

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