Linux

在 debian 8 中手動設置日期

  • September 24, 2018

在 Debian 8 中設置日期時,它會在幾秒鐘後恢復到目前時間。如何在 Debian 8 中實際手動設置日期和時間?NTP 未執行。

+ set -x
+ sudo timedatectl set-time 2000-01-01
+ timedatectl
     Local time: Sat 2000-01-01 00:00:00 CET
 Universal time: Fri 1999-12-31 23:00:00 UTC
       RTC time: Fri 1999-12-31 23:00:00
      Time zone: Europe/Vienna (CET, +0100)
    NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
     DST active: no
Last DST change: DST ended at
                 Sun 1999-10-31 02:59:59 CEST
                 Sun 1999-10-31 02:00:00 CET
Next DST change: DST begins (the clock jumps one hour forward) at
                 Sun 2000-03-26 01:59:59 CET
                 Sun 2000-03-26 03:00:00 CEST
+ date
Sat Jan  1 00:00:00 CET 2000
+ sleep 10
+ date
Fri Sep  7 23:14:18 CEST 2018

通常,虛擬機可以通過虛擬化管理程序按時同步(取決於配置和虛擬化技術以及安裝的工具)

您的虛擬機正在通過 Virtualbox Hypervisor 同步時間。

因此,要不斷將時間調整為虛擬主機的時間,您必須禁用該同步。

您可以在命令行中暫時禁用它,如下所示:

VBoxManage setextradata "VMname" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1

其中 VMName 是 VirtualBox 所知道的 VM 的名稱。

當您不重新啟動 VM 時,它將停止時間同步。

要永久執行此設置,您必須停止該 VM,編輯 yourVMname.vbox 並將此條目添加到該部分:

<ExtraDataItem name="VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" value="1"/>

Jessie 也是 systemd 的預設發行版,對於那些使用 的發行版,systemd預設systemd-timesyncd啟用。

systemd-timesyncd還可以讓您的時間保持最新。您還需要停止/禁用它。

您可以通過以下方式暫時停止它:

sudo service systemd-timesyncd stop

最近,VirtualBox Guest Utilities 的 Debian 維護者已經使guest 實用程序服務發生衝突,systemd-timesyncd.service因此如果執行 Guest Utilities,systemd 將根本不會執行後者。Debian 人也希望 chrony 和 ntpd 服務也一樣。

引用自:https://unix.stackexchange.com/questions/467624