2012-03-25 83 views

回答

3

如果系统使用了BusyBox,这个命令添加到/etc/inittab:如果不使用busybox的

setenv TZ PDT 

,只需设置一个环境变量在应用程序的初始化代码:

putenv ("TZ=PDT"); 

我已经为这些示例选择了美国太平洋夏令时,但也许这不适用于您。

+0

听起来不错,很快就会试用。我从哪里得到官方的时区名称清单?例如。 “PDT”等? – 2012-03-25 19:20:24

+0

@fredbasset:美国的价值在http://www.worldtimezone.com/time-usa12.php左下角附近的链接转到http://www.worldtimezone.com/wtz-names/timezonenames.html看起来相当彻底。 – wallyk 2012-03-25 19:30:19

+0

我尝试了你的建议,但它还没有工作,由“date”命令报告的系统时间仍然是UTC。 TZ env。变种。肯定是设置为“PDT”。我使用Busybox busybox-1.11.2并使用Larry Doolittle的ntpclient(http://doolittle.icarus.com/ntpclient/)。 – 2012-03-25 19:40:26

0

我导出TZ = PDT(我的系统没有setenv),并且TZ肯定被设置并且可用于运行ntpclient的后续脚本。 /var/log/messages中的日志条目均为UTC,与date命令的输出一样。

export TZ=PST8PDT 
0

编辑$HOME/.profile$HOME/.bash_profile追加以下行:

TZ='Asia/Kolkata'; export TZ 

然后注销并重新登录。