追加読書

追加読書

毎月繰り返されるジョブの実行をテストするために、Ubuntu 18.04(systemd 237)で偽の時間を設定しようとしています。

仮想マシン(ゲストアドインを持つVirtualbox)で実行されます。

ntp同期が無効になっていても、時間は数秒後に正しい時間にリセットされます。

はい。

# Disable the sync
timedatectl set-ntp 0
# There aren't any ntp daemons running
systemctl -a | grep ntp    # Returns nothing

# This confirms there is no sync active
timedatectl status         
#                       Local time: Mo 2019-03-11 15:22:13 CET
#                   Universal time: Mo 2019-03-11 14:22:13 UTC
#                         RTC time: Mo 2019-03-11 14:22:13    
#                        Time zone: Europe/Berlin (CET, +0100)
#        System clock synchronized: no                        
# systemd-timesyncd.service active: no                        
#                  RTC in local TZ: no           

# Setting up the fake time       
timedatectl set-time '2015-11-20 16:14:50'

# It worked! Wuhuu!
timedatectl status         
#                       Local time: Fr 2015-11-20 16:14:51 CET
#                   Universal time: Fr 2015-11-20 15:14:51 UTC
#                         RTC time: Fr 2015-11-20 15:14:51    
#                        Time zone: Europe/Berlin (CET, +0100)
#        System clock synchronized: no                        
# systemd-timesyncd.service active: no                        
#                  RTC in local TZ: no

# 5 sec later
timedatectl status         
#                       Local time: Mo 2019-03-11 15:25:35 CET
#                   Universal time: Mo 2019-03-11 14:25:35 UTC
#                         RTC time: Fr 2015-11-20 15:14:51    
#                        Time zone: Europe/Berlin (CET, +0100)
#        System clock synchronized: no                        
# systemd-timesyncd.service active: no                        
#                  RTC in local TZ: no

同期サービスがない場合、どのように同期を維持しますか?

ベストアンサー1

同期サービスがない場合は[… ]

しかし、あります。ゲストオペレーティングシステムで実行されるVirtualBoxサービスに組み込まれています。

残念ながら、ゲストオペレーティングシステムのサービスはVBoxService一度に多くのタスクを実行し、サービスを停止すると実行したすべてのタスクが完全にキャンセルされます。基本的なサービス管理ツールによる制御がないため、利用可能な唯一の詳細な制御はOracleのツールです。

VBoxManageは追加データを設定します。仮想マシン名""VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1

同期サービススレッド自体は無効になりません。これにより、このスレッドによって呼び出されたスーパーバイザ呼び出しは失敗を返します。同期サービススレッドは引き続き実行されます。ホスト時間の繰り返し取得に失敗します。

追加読書

おすすめ記事