标签: timezone

Linux 中的时区设置

我通过将 zoneinfo 文件复制到/etc/localtime,将 Linux 机器上的时区设置为 GMT+6 ,但该date命令仍将时间显示为UTCtime-6. 任何人都可以向我解释这种行为吗?

我假设date命令应该显示UTCtime+6时间。以下是我正在执行的步骤:

date
Wed Jan 22 17:29:01 IST 2014

date -u
Wed Jan 22 11:59:01 UTC 2014

cp /usr/share/zoneinfo/Etc/GMT+6 /etc/localtime

date
Wed Jan 22 05:59:21 GMT+6 2014

date -u
Wed Jan 22 11:59:01 UTC 2014
Run Code Online (Sandbox Code Playgroud)

linux date time timezone

182
推荐指数
3
解决办法
70万
查看次数

我怎样才能让`date` 输出不同时区的时间?

我有一个运行时区设置为的服务器UTC。这似乎是一种很好的做法(如果我错了,请纠正我)。

无论如何,为了scp文件,我连接到的其中一台服务器正在运行EDT并存储我需要以格式复制的文件/path/to/filename/data20120913

我看着尝试rsync使用类似 find-mtime -1标志的文件来处理最后一天修改的文件,但我没有任何运气。

我不介意只scp用来复制当天的文件,但截至目前,有一个 4 小时的窗口,在date +%Y%m%d该窗口中运行将在每个服务器上提供不同的一天,这让我有点烦恼。

仔细man date查看,我看到我可以将时间输出为UTC,但我没有看到将其输出为另一个时区的方法,例如EDT

我想我也可以使用类似GNU日期扩展的东西date -d 20100909 +%s来从纪元以秒为单位获取日期,应用手动4 * 60 * 60秒计算,然后查看将其渲染为日期 - 但是当夏令时开始时,它仍然需要一个小时.

是否有一种更简单的方法可以在设置YYYYMMDDEDT的服务器上以格式输出日期UTC

date timezone

157
推荐指数
6
解决办法
25万
查看次数

错误消息“日期:无效日期'2016-10-16'”

今天,我的时钟自动调整为夏令时,来自 crontab 的脚本开始失败。我查看了发生了什么,并显示了以下错误LC_ALL=C

日期:无效日期“2016-10-16”

我认为最好只是重新启动系统,但现在我已经重新启动,错误仍然出现:

$ date -d '2016-10-15'
Sat Oct 15 00:00:00 BRT 2016
$ date -d '2016-10-16'
date: data inválida “2016-10-16”
$ date -d '2016-10-17'
Mon Oct 17 00:00:00 BRST 2016
Run Code Online (Sandbox Code Playgroud)

什么可能导致这种情况?

date timezone

35
推荐指数
1
解决办法
4424
查看次数

如何检查 /etc/localtime 的内容?

我可以使用什么命令来检查时区文件的内容,例如/etc/localtime或 下的文件/usr/share/zoneinfo/*

timezone

30
推荐指数
1
解决办法
5万
查看次数

为什么 TZ=UTC-8 产生 UTC+8 的日期?

洛杉矶的当前时间是 18:05。但是当我运行时TZ=UTC-8 date --iso=ns,我得到:

2013-12-07T10:05:37,788173835+0800
Run Code Online (Sandbox Code Playgroud)

日期实用程序告诉我时间是 10:05,甚至说它报告为 UTC+8。为什么?

date timezone

29
推荐指数
2
解决办法
2万
查看次数

日期格式可以为 GMT 时区设置当前时间吗?

当我跑步时,date +"%Y%m%d%H%M%S"20171225203309在 CET 时区收到这里。

我可以用date相同的格式获取当前时间,但对于时区 GMT 吗?

date timezone

29
推荐指数
2
解决办法
4万
查看次数

在 Debian 上更改时区以 UTC 保持本地时间

为了我自己的理智,我正试图让程序在当地时间登录。

我已经更新了我的时区:

 dpkg-reconfigure tzdata
Run Code Online (Sandbox Code Playgroud)

但该命令的结果是:

Current default time zone: 'Australia/Adelaide'
Local time is now:      Mon May 20 03:09:52 UTC 2013.
Universal Time is now:  Mon May 20 03:09:52 UTC 2013.
Run Code Online (Sandbox Code Playgroud)

注意UTCLocal time

这可能是什么原因?

我已经做了很多谷歌搜索,但我的问题似乎与所有人不同:(

以下是更多详细信息:

# cat /etc/timezone
Australia/Adelaide

# date
Mon May 20 03:41:06 UTC 2013

# export TZ='Australia/Adelaide'; date
Mon May 20 13:16:11 CST 2013
Run Code Online (Sandbox Code Playgroud)

export TZ='Australia/Adelaide';在bash 会话中默认设置我的/etc/profile使date工作但不更改系统日志日期(重新启动服务后)

编辑:

# ls -l /etc/localtime
lrwxrwxrwx 1 root root 20 May 10 …
Run Code Online (Sandbox Code Playgroud)

debian timezone

27
推荐指数
2
解决办法
9万
查看次数

为什么`TZ=Asia/Kolkata date --date="1/1/1906"` 无效?

当我运行时:

TZ=Asia/Kolkata date --date="1/1/1906"
Run Code Online (Sandbox Code Playgroud)

我得到:

date: invalid date ‘1/1/1906’
Run Code Online (Sandbox Code Playgroud)

在这里我可以找到一篇很好的文章: 加尔各答时间

但混淆也来自于 1905 年是一个有效日期这一事实。只有 1906 年不是。任何线索为什么?

date timezone

27
推荐指数
1
解决办法
2023
查看次数

我应该(仍然)对我的所有服务器使用 UTC 吗?

我的雇主位于欧洲(CET),因此我们使用夏令时,这需要每年两次来回移动一个小时。我们的服务器在不同位置的云中运行。设置所有基础设施的员工已经消失了。他决定使用 UTC 作为所有服务器上的系统时区(当前为 Ubuntu 18.04、20.04 和 22.04)。

这并不理想,因为您必须在心里为日志文件中看到的每个日期添加 1/2 小时,具体取决于一年中的时间(夏季 +2 小时,冬季 +1 小时)。一些 cronjobs 的时间也需要每年调整两次,因为任务应该在 CET 中午运行。

是否有充分的理由(仍然)使用 UTC 作为系统时区?或者我应该切换到 CET,以便我的 cronjobs 和日志文件更好地与挂钟保持一致?

linux logs timestamps timezone

25
推荐指数
4
解决办法
6566
查看次数

根据位置自动设置Linux时区

如何在 Linux 中使用 Internet 自动设置系统默认时区?在我看来,NTP 服务器只能更新时间,不能更新时区。有没有可以更改时区的服务器?

linux networking timezone geolocation

23
推荐指数
2
解决办法
2万
查看次数

标签 统计

timezone ×10

date ×6

linux ×3

debian ×1

geolocation ×1

logs ×1

networking ×1

time ×1

timestamps ×1