如何从 CLI 设置 gnome 日期/时间?

如何从 CLI 设置 gnome 日期/时间?

我们的网络(Debian wheezy 服务器和客户端)使用 Kerberos 进行身份验证,它的一大特点是票证服务器和客户端之间不应该有时间差 - 否则不会授予票证并且身份验证失败。

现在,我的一个用户为了做一些愚蠢的事情而将日期设置回了几天,gnome 因不活动而锁定了自己。显然,您不是只为一个用户设置日期/时间,而是为该计算机上的整个 gnome 设置日期/时间。

显然,您需要登录才能从 GUI 设置日期/时间,而我似乎找不到如何从 CLI 设置 gnome 日期/时间...我尝试寻找“gsettings”模式,但没有成功。有什么帮助吗?

答案1

没有“GNOME 日期/时间”这样的东西。只有一个设置,即系统时钟,所有桌面环境都会显示和调整它。也可以使用命令访问它date

时区是唯一可以针对每个用户进行调整的,因为程序将从$TZ环境变量中获取它;尽管如此,我记得 GNOME 的时区设置是系统范围的 - 也就是说,是更改/etc/localtime而不是$TZ。(无论哪种方式,时区与仅使用 UTC 时间戳的 Kerberos 无关。)


在 Linux 上,您可以使用date --set接受多种日期/时间格式:

# date --set="13:04"

你在 BSD 上可能需要的奇怪的传统语法是date MMDDhhmm[[CC]YY][.ss]

# date 02161304

通常,您会给它提供当地时间,并date在设置系统时钟(始终以 UTC 运行)之前自动将其转换为 UTC 时间。至少在 Linux 上,date --utc --set...这意味着它将直接接受 UTC 时间。

也可以直接从 NTP 时间服务器获取时间,使用以下任一项:

# ntpd -g -q

(“-g”表示“允许大幅度的时间调整”)

# ntpdate pool.ntp.org

我不知道 Chrony 是否有其他选择。但无论如何,这都不是问题——既然您使用 Kerberos,我假设您的所有客户端都运行 NTP 守护程序,并且会修复不准确的时钟。


好吧,我撒谎了。大多数电脑都有电池供电的硬件时钟

如果您运行ntpdchronyd,它将每隔几分钟自动更新。

如果由于某种原因您不运行 NTP 客户端,则可以使用hwclock --systohc将当前时间存储到硬件时钟中。

相关内容