시스템이 마지막으로 부팅된 두 가지 시간을 보여주는 Linux 시스템이 있습니다.
root@linux:~ # who -b; uptime
system boot 2009-07-09 20:51
11:48am up 1 day 0:54, 1 user, load average: 0.01, 0.03, 0.00
누가 /var/log/wtmp의 내용과 가동 시간을 표시하고 있는지 추측합니다.
이 차이를 해결할 수 있는 방법이 있나요? 어제 시스템을 재부팅하여 표시되는 가동 시간이 올바른지 확인했습니다.
답변1
[여기서 몇 가지 오해를 발견했는데 이 기사가 마침내 해결될 것이라고 생각합니다]
/var/run/utmp
둘 다 레코드를 저장하기 위한 고유한 형식을 갖는 파일을 참조하므로 차이가 없어야 합니다 . 차이가 있으면 utmp 파일이 손상된 것입니다.가동 시간은 시스템이 시작된 이후 경과된 시간 또는 시스템이 실행된 기간을 표시합니다. 시스템 시계나 시스템 부팅 시간은 알려주지 않습니다.. 시스템 시작 시간 정보는 파일에 저장됩니다 /var/run/wtmp
.
[centos@centos temp]$ date; uptime; who -b
Fri Dec 9 20:41:40 IST 2011
20:41:40 up 1:32, 2 users, load average: 0.50, 0.37, 0.29
system boot 2011-12-09 19:11
uptime은 또한 본질적으로 커널에 카운터를 유지하는 /proc/uptime을 나타냅니다.
[centos@centos temp]$ sleep 1; cat /proc/uptime; uptime; sleep 5; cat /proc/uptime ; uptime
5914.79 5271.83
20:47:39 up 1:38, 2 users, load average: 0.29, 0.31, 0.27
5920.07 5276.80
20:47:44 up 1:38, 2 users, load average: 0.56, 0.36, 0.29
/var/run/wtmp
last/lastb 명령에 의해 참조됩니다. who
& w
참고 /var/run/utmp
자료. last reboot
로그 파일이 생성된 이후 모든 다시 시작에 대한 로그가 표시됩니다.
또한 /proc 파일 시스템이 있는 경우 이와 같은 도구를 사용하면 procinfo
부팅 시간도 얻을 수 있습니다.
예:
bash$ procinfo | grep Bootup
Bootup: Wed Mar 21 15:15:50 2001 Load average: 0.04 0.21 0.34 3/47 6829
답변2
BIOS 시계가 동기화되지 않았을 때 이런 일이 발생하는 것을 보았습니다. 다음을 실행하여 이를 확인할 수 있습니다.
$ hwclock --show
Tue 30 Aug 2011 12:48:52 PM PDT -1.000516 seconds
이 옵션이 꺼져 있으면 동기식으로 백업해야 합니다(--set 옵션 사용). 이런 일이 자주 발생하는 경우 마더보드의 CR2032를 교체해야 할 수도 있습니다.http://www.hardwaresecrets.com/article/81