총 기계 가동 시간

총 기계 가동 시간

BIOS나 CPU에서 Linux 시스템의 총 실행 시간을 읽을 수 있는 방법이 있습니까?

dmidecode를 통해 BIOS 정보를 검색했습니다. 그러나 그것이 제공하는 출시 날짜는 내 문제에 적합하지 않습니다.

그 다음 나는 체크아웃했다 /proc. 그러나 마지막 재부팅 이후의 가동 시간 값은 유지됩니다. 아마도 부팅할 때마다 이러한 가동 시간 값을 작성하는 것이 옵션일 수 있습니다.

그런 다음 나는 그것을 찾아보았다 dumpe2fs. 특정 하드 드라이브의 총 실행 시간을 제공합니다. 내 응용 프로그램이 실행되는 동안 하드 드라이브가 변경될 수 있으므로 이는 나에게 소용이 없습니다.

위의 내용 외에도 시스템의 총 실행 시간을 읽거나 계산하려면 어떻게 해야 합니까? 어디서 읽을 수 있나요?

답변1

내가 아는 한, 이것은 펌웨어가 추적하는 것이 아닙니다. BMC조차도 총 가동 시간을 측정하지 않습니다.

이는 이전 출시의 가동 시간 기록에 도움이 되지 않지만, 다음 도구를 설치하여 지금 가동 시간 기록을 시작할 수 있습니다.uptimed값을 절대 버리지 않도록 설정합니다( LOG_MAXIMUM_ENTRIES에서 0으로 설정 uptimed.conf). 이는 총 CPU "켜짐" 시간이 아닌 OS 가동 시간을 측정하지만 충분히 가까워야 합니다. 일단 시작하고 실행하면 실행하여 총계를 볼 uptimed수 있습니다 .uprecords

    up  1492 days, 02:57:18 | since                     Sat Sep  7 00:50:06 2013
  down    61 days, 08:11:24 | since                     Sat Sep  7 00:50:06 2013
   %up               96.051 | since                     Sat Sep  7 00:50:06 2013

지적한대로비현실적인, 로그를 보면 과거 가동 시간을 이해할 수 있습니다. systemd를 실행 중인 경우 journalctl --list-boots. 그러나 로그 회전으로 인해 상당한 가동 시간 손실이 발생할 수 있습니다.

지적한대로제이드 BP, last reboot관련 가동 시간이 포함된 더 긴 부팅 목록을 제공할 수 있습니다.

답변2

운영 체제에서 해당 정보를 얻는 데 문제가 없다면 다음을 사용할 수 있습니다.시작 시간시스템 충돌을 포함하여 전체 Linux 시스템 시간에 대한 전체 보고서를 볼 수 있습니다.

예를 들어 기본 출력 및 복원은 다음과 같습니다.

# tuptime

System startups:    8   since   08:32:29 AM 11/24/2016
System shutdowns:   3 ok   -   4 bad
System uptime:      99.99 %   -   1 year, 195 days, 5 hours, 47 minutes and 14 seconds
System downtime:    0.01 %   -   1 hour, 6 minutes and 34 seconds
System life:        1 year, 195 days, 6 hours, 53 minutes and 48 seconds

Largest uptime:     240 days, 7 hours, 38 minutes and 10 seconds   from   08:41:51 AM 02/07/2017
Shortest uptime:    18 hours, 15 minutes and 14 seconds   from   02:26:05 PM 02/06/2017
Average uptime:     70 days, 0 hours, 43 minutes and 24 seconds

Largest downtime:   45 minutes and 15 seconds   from   10:00:01 AM 03/14/2018
Shortest downtime:  5 seconds   from   02:26:00 PM 02/06/2017
Average downtime:   9 minutes and 31 seconds

Current uptime:     85 days, 4 hours, 41 minutes and 1 second   since   10:45:16 AM 03/14/2018

또는 list 매개변수를 사용하여 종료 이벤트(불량(충돌) 또는 정상(종료 프로세스 후))을 이해할 수 있는 모든 기록 이벤트 목록을 가져올 수 있습니다.

# tuptime -l

Startup:  1  at  08:32:29 AM 11/24/2016
Uptime:   46 days, 16 hours, 52 minutes and 32 seconds
Shutdown: BAD  at  01:25:01 AM 01/10/2017
Downtime: 5 minutes and 10 seconds

Startup:  2  at  01:30:11 AM 01/10/2017
Uptime:   27 days, 12 hours, 55 minutes and 49 seconds
Shutdown: OK  at  02:26:00 PM 02/06/2017
Downtime: 5 seconds

Startup:  3  at  02:26:05 PM 02/06/2017
Uptime:   18 hours, 15 minutes and 14 seconds
Shutdown: OK  at  08:41:19 AM 02/07/2017
Downtime: 32 seconds

Startup:  4  at  08:41:51 AM 02/07/2017
Uptime:   240 days, 7 hours, 38 minutes and 10 seconds
Shutdown: BAD  at  05:20:01 PM 10/05/2017
Downtime: 3 minutes and 17 seconds

Startup:  5  at  05:23:18 PM 10/05/2017
Uptime:   7 days, 14 hours, 56 minutes and 43 seconds
Shutdown: BAD  at  08:20:01 AM 10/13/2017
Downtime: 11 minutes and 35 seconds

Startup:  6  at  08:31:36 AM 10/13/2017
Uptime:   25 days, 1 hour, 7 minutes and 4 seconds
Shutdown: OK  at  08:38:40 AM 11/07/2017
Downtime: 39 seconds

Startup:  7  at  08:39:19 AM 11/07/2017
Uptime:   127 days, 1 hour, 20 minutes and 42 seconds
Shutdown: BAD  at  10:00:01 AM 03/14/2018
Downtime: 45 minutes and 15 seconds

Startup:  8  at  10:45:16 AM 03/14/2018
Uptime:   85 days, 4 hours, 42 minutes and 9 seconds

이를 고려 last reboot하고 journalctl --list-boots로그에서 정보를 얻으면 이러한 로그의 수명이 가장 깁니다. 대신, tuptime정보는 해당 정보와 관련된 특정 데이터베이스 파일에 저장됩니다.

설치를 위해 Linux를 사용한다고 가정하면 Debian 및 그 파생 패키지에서 패키지를 사용할 수 있습니다.

# apt-get install tuptime

그렇지 않은 경우 저장소에서 설치 스크립트 "tuptime-install.sh"를 얻을 수 있습니다. https://github.com/rfrail3/tuptime/

관련 정보