这时所有设置之间的事件的时间信息都能统一转换,不在是相差6个小时,但是,我在设备界面实现手动调时后,所有设备的时间也都统一转换,也执行了hwclock,但一上电重启后,时间又被改了6小时,具体操作是这样的:
上电内核打印信息:
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 10:20:29 UTC (1344248429)
/ # date
Mon Aug 6 04:20:53 MDT 2012
在界面调整时间后,或使用命令date -s 10:21:00,并hwclock -w后,
在date查看
/ # date
Mon Aug 6 10:21:17 MDT 2012 (时间也是对的,时区是MDT)
重新断电重启后,
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 10:25:00 UTC (1344248700) (这个是什么时间????)
/ # date
Mon Aug 6 04:25:23 MDT 2012(为什么又04点,时区也是MDT啊)
不知道这问题出现在哪里,
在终端执行hwclock -r和date查看时间后,显示如下
/ # hwclock -r
Mon Aug 6 10:46:36 2012 0.000000 seconds
/ # date
Mon Aug 6 04:46:56 MDT 2012
/ #
什么硬件时间和本地时间差一个时区,
5 个解决方案
#1
或者说date写入的本地时间??
date -s 11:50:00 设置本地时间
hwclock -w 写入时钟芯片,实际上写入的是本地时间
hwclock -r 查看硬件时间
Mon Aug 6 11:50:09 2012 0.000000 seconds 硬件时间为本地时间
/ # date
Mon Aug 6 11:50:32 MDT 2012 本地时间为MDT时区
断电重启---》
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 11:51:14 UTC (1344253874)
显示的为硬件时间,即上次写入的时间信息
/ # date
Mon Aug 6 05:52:03 MDT 2012 显示本地时间
/ # hwclock -r
Mon Aug 6 11:52:14 2012 0.000000 seconds 显示硬件时间
我认为系统开机后,认为rtc里面的时间为utc时间,设置系统时间后,在读取localtime信息转换成本地时间,但是在写入rtc时,date写入的是本地时间,这样在上电重启后,认为rtc的时间为utc时间则会进行时区转换,实际上rtc中的时间已经是本地时间,这个问题应该怎样解决
1.如何让写入的时间为utc时间
2.如何让系统支持/etc/TZ文件
date -s 11:50:00 设置本地时间
hwclock -w 写入时钟芯片,实际上写入的是本地时间
hwclock -r 查看硬件时间
Mon Aug 6 11:50:09 2012 0.000000 seconds 硬件时间为本地时间
/ # date
Mon Aug 6 11:50:32 MDT 2012 本地时间为MDT时区
断电重启---》
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 11:51:14 UTC (1344253874)
显示的为硬件时间,即上次写入的时间信息
/ # date
Mon Aug 6 05:52:03 MDT 2012 显示本地时间
/ # hwclock -r
Mon Aug 6 11:52:14 2012 0.000000 seconds 显示硬件时间
我认为系统开机后,认为rtc里面的时间为utc时间,设置系统时间后,在读取localtime信息转换成本地时间,但是在写入rtc时,date写入的是本地时间,这样在上电重启后,认为rtc的时间为utc时间则会进行时区转换,实际上rtc中的时间已经是本地时间,这个问题应该怎样解决
1.如何让写入的时间为utc时间
2.如何让系统支持/etc/TZ文件
#2
应该和RTC有关吧
#3
你的根文件系统基于busybox做的还是lfs做的
buxybox的话我也没有经验
你可以google busybox localtime 看看老外解决没
buxybox的话我也没有经验
你可以google busybox localtime 看看老外解决没
#4
是busybox做的,较早的系统是MST7MDT时区,支持/etc/TZ文件,是uclibc解析的,现在的没有支持这个文件(或者我没有找到),可以使用/etc/localtime配置时区文件,这个我已经做好了,但是现在又有个新问题,以前的系统较老,时区转换是4月的第一个周日和10月的最后一个周日,但是2007年美国又通过修订了能源法案,将时区拉长了,变成3月的第二个周日,和11月的一个周日,我在pc端(FC14)复制的zoneinfo下的MST7MDT的文件全部是按照新法案的,最后google发现墨西哥还是4月开始,在pc端测试后,发现使用American/Mazatlan这个时区文件是可以的,4月进10月出,但是我感觉支持不是很好,哪位大哥有较早版本的发行版本下的时区文件啊,我估计FedoraCore1下的MST7MDT应该是可以的?
可以在PC端查看时区文件信息
zdump -v MST7MDT | grep 2012 会显示进入夏令制和退出夏令制的日期
MST7MDT Sun Mar 11 08:59:59 2012 UTC = Sun Mar 11 01:59:59 2012 MST isdst=0 gmtoff=-25200
MST7MDT Sun Mar 11 09:00:00 2012 UTC = Sun Mar 11 03:00:00 2012 MDT isdst=1 gmtoff=-21600
MST7MDT Sun Nov 4 07:59:59 2012 UTC = Sun Nov 4 01:59:59 2012 MDT isdst=1 gmtoff=-21600
MST7MDT Sun Nov 4 08:00:00 2012 UTC = Sun Nov 4 01:00:00 2012 MST isdst=0 gmtoff=-25200
很明显是3月进11月出,谁有老的MST7MDT发给我下,谢谢
zdump -v MST7MDT可以显示每一年的时区信息
而zdum -v Mazatlan只显示了1902和2038年的信息,还有警告,所以想找个老的MST7MDT文件
#5
复制了一个FedoraCore4下的MST7MDT到FC14下,zdump查看,是按照旧标准的时间,但是把它设置成该时间后,发现不起作用,好像解析不了?
#1
或者说date写入的本地时间??
date -s 11:50:00 设置本地时间
hwclock -w 写入时钟芯片,实际上写入的是本地时间
hwclock -r 查看硬件时间
Mon Aug 6 11:50:09 2012 0.000000 seconds 硬件时间为本地时间
/ # date
Mon Aug 6 11:50:32 MDT 2012 本地时间为MDT时区
断电重启---》
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 11:51:14 UTC (1344253874)
显示的为硬件时间,即上次写入的时间信息
/ # date
Mon Aug 6 05:52:03 MDT 2012 显示本地时间
/ # hwclock -r
Mon Aug 6 11:52:14 2012 0.000000 seconds 显示硬件时间
我认为系统开机后,认为rtc里面的时间为utc时间,设置系统时间后,在读取localtime信息转换成本地时间,但是在写入rtc时,date写入的是本地时间,这样在上电重启后,认为rtc的时间为utc时间则会进行时区转换,实际上rtc中的时间已经是本地时间,这个问题应该怎样解决
1.如何让写入的时间为utc时间
2.如何让系统支持/etc/TZ文件
date -s 11:50:00 设置本地时间
hwclock -w 写入时钟芯片,实际上写入的是本地时间
hwclock -r 查看硬件时间
Mon Aug 6 11:50:09 2012 0.000000 seconds 硬件时间为本地时间
/ # date
Mon Aug 6 11:50:32 MDT 2012 本地时间为MDT时区
断电重启---》
rtc-rs5c372 3-0032: setting system clock to 2012-08-06 11:51:14 UTC (1344253874)
显示的为硬件时间,即上次写入的时间信息
/ # date
Mon Aug 6 05:52:03 MDT 2012 显示本地时间
/ # hwclock -r
Mon Aug 6 11:52:14 2012 0.000000 seconds 显示硬件时间
我认为系统开机后,认为rtc里面的时间为utc时间,设置系统时间后,在读取localtime信息转换成本地时间,但是在写入rtc时,date写入的是本地时间,这样在上电重启后,认为rtc的时间为utc时间则会进行时区转换,实际上rtc中的时间已经是本地时间,这个问题应该怎样解决
1.如何让写入的时间为utc时间
2.如何让系统支持/etc/TZ文件
#2
应该和RTC有关吧
#3
你的根文件系统基于busybox做的还是lfs做的
buxybox的话我也没有经验
你可以google busybox localtime 看看老外解决没
buxybox的话我也没有经验
你可以google busybox localtime 看看老外解决没
#4
是busybox做的,较早的系统是MST7MDT时区,支持/etc/TZ文件,是uclibc解析的,现在的没有支持这个文件(或者我没有找到),可以使用/etc/localtime配置时区文件,这个我已经做好了,但是现在又有个新问题,以前的系统较老,时区转换是4月的第一个周日和10月的最后一个周日,但是2007年美国又通过修订了能源法案,将时区拉长了,变成3月的第二个周日,和11月的一个周日,我在pc端(FC14)复制的zoneinfo下的MST7MDT的文件全部是按照新法案的,最后google发现墨西哥还是4月开始,在pc端测试后,发现使用American/Mazatlan这个时区文件是可以的,4月进10月出,但是我感觉支持不是很好,哪位大哥有较早版本的发行版本下的时区文件啊,我估计FedoraCore1下的MST7MDT应该是可以的?
可以在PC端查看时区文件信息
zdump -v MST7MDT | grep 2012 会显示进入夏令制和退出夏令制的日期
MST7MDT Sun Mar 11 08:59:59 2012 UTC = Sun Mar 11 01:59:59 2012 MST isdst=0 gmtoff=-25200
MST7MDT Sun Mar 11 09:00:00 2012 UTC = Sun Mar 11 03:00:00 2012 MDT isdst=1 gmtoff=-21600
MST7MDT Sun Nov 4 07:59:59 2012 UTC = Sun Nov 4 01:59:59 2012 MDT isdst=1 gmtoff=-21600
MST7MDT Sun Nov 4 08:00:00 2012 UTC = Sun Nov 4 01:00:00 2012 MST isdst=0 gmtoff=-25200
很明显是3月进11月出,谁有老的MST7MDT发给我下,谢谢
zdump -v MST7MDT可以显示每一年的时区信息
而zdum -v Mazatlan只显示了1902和2038年的信息,还有警告,所以想找个老的MST7MDT文件
#5
复制了一个FedoraCore4下的MST7MDT到FC14下,zdump查看,是按照旧标准的时间,但是把它设置成该时间后,发现不起作用,好像解析不了?