题 是否可以将Linux机器上的日期设置为2040年?


我需要能够将Ubuntu(8.04.4 LTS)上的日期设置为2040年(以测试与此问题无关的内容)。那可能吗?

我可以跑:

$ sudo date -s "15 JAN 2038 18:00:00"
Fri Jan 15 18:00:00 PST 2038

...但:

$ sudo date -s "15 JAN 2039 18:00:00"
date: invalid date `15 JAN 2039 18:00:00'

是在2038年(或2039年1月15日之前)的某个地方?这会随着Linux的不同版本而改变吗?


6
2018-06-18 00:02




你做得很好,为一个问题创建了两个新的(并且完全有效)标签。 :) - John Gardeniers


答案:


在表示时间为32位整数的系统中,没有。看到 http://en.wikipedia.org/wiki/Year_2038_problem 更多细节。根据那篇文章,大多数系统可以代表的最新时间是2038年1月19日星期二03:14:07 UTC。

请注意,大多数64位系统已经使用64位来存储时间,因此一旦升级就不会出现问题(无论如何都应该这样做,以便您可以使用在新快速机器中购买的所有RAM)。


10
2018-06-18 00:07



+1,我希望当2038年左右滚动时,没有多少32位系统... - Chris S
@Chris,希望你喜欢但只记得今天仍然有很多8和16位(非PC)系统在使用,所以不要期望太多。 - John Gardeniers