RHEL 6.3
我们昨晚刚刚重新启动,我有许多许多进程显示他们已经运行FOREVER。 例子:
root 11 2 99 Feb23 ? 212429-04:31:07 [kworker/0:1] root 1 0 99 Feb23 ? 216-01:38:15 /sbin/init
NTP看起来很健康:
Feb 23 18:13:58 hostA ntpd[7539]: ntpd [email protected] Tue Jul 6 21:50:26 UTC 2010 (1) Feb 23 18:13:58 hostA ntpd[7540]: precision = 0.126 usec Feb 23 18:13:58 hostA ntpd[7540]: ntp_io: estimated max descriptors: 1024, initial socket boundary: 16 Feb 23 18:13:58 hostA ntpd[7540]: Listening on interface #0 wildcard, 0.0.0.0#123 Disabled Feb 23 18:13:58 hostA ntpd[7540]: Listening on interface #1 lo, 127.0.0.1#123 Enabled Feb 23 18:13:58 hostA ntpd[7540]: Listening on interface #2 em1, 192.168.1.9#123 Enabled Feb 23 18:13:58 hostA ntpd[7540]: Listening on interface #3 em2, <ip.addr.scrubbed>#123 Enabled Feb 23 18:13:58 hostA ntpd[7540]: Listening on routing socket on fd #20 for interface updates Feb 23 18:13:58 hostA ntpd[7540]: kernel time sync status 2040 Feb 23 18:13:58 hostA ntpd[7540]: getaddrinfo: "::1" invalid host address, ignored Feb 23 18:13:58 hostA ntpd[7540]: frequency initialized 27.053 PPM from /var/lib/ntp/drift Feb 23 18:17:08 hostA ntpd[7540]: synchronized to LOCAL(0), stratum 10 Feb 23 18:17:08 hostA ntpd[7540]: kernel time sync status change 2001 Feb 23 18:17:18 hostA ntpd[7540]: synchronized to <ip.addr.scrubbed>, stratum 1 Feb 23 18:22:43 hostA ntpd[7540]: synchronized to <ip.addr.scrubbed>, stratum 1 Feb 23 18:25:57 hostA ntpd[7540]: synchronized to <ip.addr.scrubbed> stratum 1 Feb 23 18:32:21 hostA ntpd[7540]: time reset -0.192626 s
proc中的PID文件看起来有明智的时间戳(全部从今天或者昨天开始)。
ps / htop从哪里得到他们的时间?
任何人都遇到过这个?
它没有相同的问题,但在我的情况下,如果/ proc / stat的大小从64KB增加开始显示奇怪的STIME输出。原因是它在代码内
procps-3.2.8/ps/global.c 359 void reset_global(void){ 360 static proc_t p; 361 reset_selection_list(); 362 look_up_our_self(&p); 363 set_screen_size(); 364 set_personality(); 365 int fd; 366 char *buf[BUFFSIZE]; 367 const char *b; 368 369 /* get boot time from /proc/stat */ 370 fd = open("/proc/stat", O_RDONLY, 0); 371 if (fd != -1) { 372 buf[BUFFSIZE-1] = 0; 373 read(fd, buf, BUFFSIZE-1); 374 b = strstr(buf, "btime "); 375 if (b) { 376 sscanf(b, "btime %lu", &time_of_boot);
RedHat已经有与此问题相关的内部错误https://bugzilla.redhat.com/show_bug.cgi?id=867906
检查您的服务器的BIOS和硬件时钟。
如果这是物理服务器,请确保在BIOS中正确设置时间,或者将NTP获取的时间与硬件时钟同步。
这是一个虚拟机,检查主机/pipe理程序的时间状态。