Преобразовать время безотказной работы Linux в дату формата скважины

Все, кроме корневой шины (которая обычно является шиной платформы, например, ACPI на ПК), соединены с корневой шиной, и их порядок зависит от перечисления.

Обычно перечисление шины в основном детерминировано, поскольку порядок, в котором обнаруживаются устройства на шине, обычно статичен, но для этого нет никакой гарантии, и когда два моста шины соединены в цепочку, перечисление выполняется параллельно:

  1. begin перечисление шины ACPI
  2. найти мост PCIe 1 на шине ACPI, назначить идентификатор шины 0
  3. начать перечисление шины PCIe 0
  4. найти мост PCIe 2 на шине ACPI, назначить идентификатор шины 1
  5. найти мост PCI 1 на PCIe шина 0, назначить идентификатор шины 2
  6. найти мост PCIe 3 на шине ACPI, назначить идентификатор шины 3

Между двумя потоками перечисления отсутствует порядок, поэтому мост PCI может получить идентификатор 1, 2 или 3.

1
20.11.2018, 23:40
3 ответа

Вы можете получить его бесплатно на выходеlast reboot:

$ last reboot
reboot   system boot  4.14.81-i7       Sat Nov 17 23:25   still running
reboot   system boot  4.14.80-i7       Fri Nov 16 09:16 - 15:49  (06:33)

$ printf "On since: "; last reboot | grep "still running" | cut -c 40-56
On since: Sat Nov 17 23:25 

$ printf "On since: " ; last reboot --time-format iso | grep "still running" | cut -c 40-49
On since: 2018-11-17

Ваша команда uptimeтакже может иметь параметр -s:

$ uptime -s
2018-11-17 23:25:23

Поскольку этот формат приемлем для date -d, вы можете переформатировать время по своему усмотрению::

$ date -d "$(uptime -s)" "+On since: %d:%m:%y"
On since: 17:11:18
7
27.01.2020, 23:14

Одиночная команда.

$ date -r /proc/1 '+The computer is on since %d-%b-%y'
The computer is on since 09-Oct-18
$
3
27.01.2020, 23:14

Использование последней модификации данных каталога /proc, заданногоstat:

date -d "@$(stat -c '%Y' "/proc")" +'%F %T %z'

Пример:

$ stat /proc
  File: `/proc'
  Size: 0               Blocks: 0          IO Block: 1024   directory
Device: 3h/3d   Inode: 1           Links: 188
Access: (0555/dr-xr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-09-04 16:36:02.016000956 +0200
Modify: 2020-09-04 16:36:02.016000956 +0200
Change: 2020-09-04 16:36:02.016000956 +0200
 Birth: -

$ date -d "@$(stat -c '%Y' "/proc")" +'%F %T %z'
2020-09-04 16:36:02 +0200
0
09.02.2021, 12:44

Теги

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