对于只有一个或几个站点的小型商店来说,这可能不是什么大问题,但对于较大的组织来说,这是我很好奇的事情。
您的所有/大部分服务器都使用 UTC 有什么优点和缺点?它肯定有助于报告和集中日志记录。还具有用于故障排除或安全审计的事件关联。人们也不必担心夏令时的变化。
一个缺点是,如果您希望它在本地地理时间的“凌晨 4 点”运行某些程序,则调度自动化事件(例如,cron)可能需要一些时间。对于 Unix-y 机器,您仍然可以通过在 /etc/profile 中设置“TZ”来让用户处于本地时区,但是对于将 RDesktop 放入服务器的 Windows 用户(无论出于何种原因),他们是否坚持查看 UTC?
我的系统使用 UTC 作为系统时钟,我并不特别想改变它。有没有一种简单的方法可以获取当前的 TAI 时间?(最好是命令行工具或标志)
我想在单个用户的 crontab 中使用 UTC 来安排时间,而不管服务器的当前时区如何。如何在 Debian Etch 上执行此操作?
我遇到了一个问题,过去的时间随机跳到 4 小时。因此,所有计划任务(例如备份)都不会在正确的时间发生,并且我们正在使用的某些时间关键型应用程序(例如会计系统)无法正常工作。
例如,如果实际时间是美国东部标准时间下午 4 点,则系统时钟将显示为下午 12 点。如果再次将系统时钟向前重置为正确的时间,它会再次随机跳回 4 小时。
我检查了事件查看器,并看到了一些与时间更改相关的“内核常规”事件。下面是一个例子:
<?xml version="1.0" encoding="UTF-8"?>
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-Kernel-General" Guid="{A68CA8B7-004F-D7B6-A698-07E2DE0F1F5D}" />
<EventID>1</EventID>
<Version>0</Version>
<Level>4</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x8000000000000010</Keywords>
<TimeCreated SystemTime="2014-05-09T17:04:34.500000000Z" />
<EventRecordID>39254</EventRecordID>
<Correlation />
<Execution ProcessID="4" ThreadID="68" />
<Channel>System</Channel>
<Computer>SERVER</Computer>
<Security UserID="S-1-5-18" />
</System>
<EventData>
<Data Name="NewTime">2014-05-09T17:04:34.500000000Z</Data>
<Data Name="OldTime">2014-05-09T21:05:19.806811800Z</Data>
</EventData>
</Event>
Run Code Online (Sandbox Code Playgroud)
此事件是在下午 5 点左右生成的。此事件发生后,系统时间显示为下午 …
我正在运行 CentOS 服务器,但似乎无法正确设置时间。我的问题是我已将时区设置为 UTC,服务器似乎承认这一点,但它仍然指出错误的时间!
真正的 UTC 时间 = 16:56(我当地的时区是 GMT)
# hwclock –show
wed 09 Mar 10:56:48 AM UTC -0.502715 seconds
# date
Wed Mar 9 10:56:51 UTC 2011
Run Code Online (Sandbox Code Playgroud)
即服务器似乎在说它是在 UTC 时间......但 6 小时后!
我已经采取了几个步骤来尝试纠正这个问题,包括:
1. Use setup to manually pick the timezone
# system-config-date (Set to Etc/UTC)
2. Set the timezone in the localtime file
# ln -sf /usr/share/zoneinfo/UTC /etc/localtime
3. Change the UTC value in the /etc/sysconfig/clock file
I have tried both UTC=true and UTC=false
Run Code Online (Sandbox Code Playgroud)
这些解决方案都没有奏效
请帮忙,
大卫
在智利,这种情况非常特殊,因为夏令时变化的日子每年都不同……
是否有一个函数可以在给定的 UTC 时间获取给定日期的 UTC 偏移量?
我在Suse 文档中看到,类似的东西zdump -v /usr/share/zoneinfo/Chile/Continental
使我能够通过多年进行所有更改,但工作仍然必须完成......有什么命令可以做到这一点?
或者/和是否有从给定时区到 UTC 的给定日期和时间的函数?而它的反面呢?
linux 如何处理这些变化?没有找到比 Suse 多的文档。
我很好奇有人使用非UTC
时区(尤其是夏令时)的理由是什么。我注意到 Gmail 的电子邮件标头显示PDT
( UTC-0700
) 时区(在Received
标头中),所以我假设他们的服务器正在运行PDT
,我可能是错的。
提前致谢
我的 arch linux 工作站上的时间搞砸了,所以我设置了系统时间,date
然后设置了硬件时间
sudo hwclock --systohc --utc
Run Code Online (Sandbox Code Playgroud)
现在hwclock
给出:
Do 04 Apr 2013 14:12:48 CEST -0.641471 seconds
Run Code Online (Sandbox Code Playgroud)
但我希望它使用 UTC,即 12:12:48!我如何实现这一目标?
编辑:
一些额外的奇怪之处:
$ hwclock --utc
Do 04 Apr 2013 14:20:56 CEST -0.188214 seconds
$ hwclock --localtime
Do 04 Apr 2013 12:21:01 CEST -0.438205 seconds
$ date -u
Do 4. Apr 12:21:11 UTC 2013
$ date
Do 4. Apr 14:21:16 CEST 2013
Run Code Online (Sandbox Code Playgroud)
UTC 和 localtime 似乎被 hwclock 混淆了......
我试图用 NTPD 做的是同步我们所有的交换机(3Com Baseline Switch 2928-PWR Plus),但不是获取本地时间,而是获取 UTC 时间。
服务器中的时间运行良好,唯一的问题是开关。
我们在一个集群中有 16 个 Linux RHEL 7.5 服务器,并且服务器与 crony 服务同步到 NTP 服务器
我们有两个问题
如何知道我们的服务器上是否配置了 DST?
如何在我们的 Redhat Enterprise Linux 7 服务器上禁用 DST?