質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Q&A

解決済

1回答

3302閲覧

VirtualBoxでの設定変更によるLaravel homesteadでの時刻変更

naoyoshi

総合スコア13

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

0グッド

2クリップ

投稿2019/01/25 14:07

編集2019/01/25 14:10

Virtual 6.0.2 r128162 (Qt5.6.3)
Vagrant: 2.2.3
macos 10.14.2(mojave)

VirtualBoxにインストールしたVagrant+Laravel 5.5 Homesteadにおいて、過去や将来の時刻に意図的に変更して、プログラムの試験を行いたいです。

http://wisdomtrees.net/?p=573
https://www.virtualbox.org/manual/ch09.html#disabletimesync
を参考にして、下記のように行いました。
仮想環境が停止している状態で、下記の順番にターミナルでコマンドを打ちました。

1. VBoxManage modifyvm homestead-7 --biossystemtimeoffset 604800000
※604800000とは、7日間のミリ秒数

2. VBoxManage setextradata "homestead-7" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1

3. vagarant up

その後、仮想環境が起動して、自分のLaravelプロジェクトをブラウザで表示しました。
本日から7日後の日付でデータが表示できたのが1分くらいで、その後に元の日時に戻りました。
vagrant sshでログインして、dateで日時表示をしましたが、7日後の日時になっていたのが1分くらいでした。

・VirtualBoxとクライアントOSの時刻同期停止
・任意の時刻変更
こちらの2つができているように見えるのですが、すぐに元に戻ります。
せめて30分位は意図する変更日時が維持される方法や、意図する時に元に戻す方法があるのでしょうか。

どなたか、ご教示ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

scsi

2019/01/25 20:44

仮想サーバでchronyは動いてますか?止めたらどうなりますか?
naoyoshi

2019/01/25 23:11 編集

ご回答有り難うございます。 vagrant sshでログイン後、下記のような結果になりました。 vagrant@homestead:~$ sudo systemctl stop chronyd Failed to stop chronyd.service: Unit chronyd.service not loaded.
naoyoshi

2019/01/25 23:19 編集

補足情報です。 現在の環境は、 https://qiita.com/7968/items/68b3566d92d2b007038e に沿って構築しました。 HomesteadにあるVagrantfileにて、設定の最後尾に config.vm.provider :virtualbox do |vb| vb.customize ["setextradata", :id, "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled", 1] end を追記しています。
scsi

2019/01/25 23:24

Chronyを停止しても時間が戻るかという意味です!
naoyoshi

2019/01/25 23:32

ご回答有り難うございます。 初歩的なことで恐縮ですが、Chronyの停止のさせ方が私がわからないのと、そもそも現在のvagrantにChrony自体がインストールされていないようです。 vagrant@homestead:~$ sudo service --status-all [ - ] acpid [ + ] apparmor [ + ] apport [ + ] atd [ + ] beanstalkd [ - ] blackfire-agent [ - ] console-setup.sh [ + ] cron [ - ] cryptdisks [ - ] cryptdisks-early [ + ] dbus [ + ] ebtables [ + ] grub-common [ - ] hwclock.sh [ - ] irqbalance [ + ] iscsid [ - ] keyboard-setup.sh [ + ] kmod [ - ] lvm2 [ + ] lvm2-lvmetad [ + ] lvm2-lvmpolld [ + ] lxcfs [ - ] lxd [ - ] mdadm [ - ] mdadm-waitidle [ + ] memcached [ + ] mysql [ - ] nfs-common [ + ] nginx [ - ] ntp [ - ] open-iscsi [ - ] open-vm-tools [ + ] php7.1-fpm [ + ] php7.2-fpm [ + ] php7.3-fpm [ - ] plymouth [ - ] plymouth-log [ + ] postfix [ + ] postgresql [ + ] procps [ + ] redis-server [ + ] rpcbind [ - ] rsync [ + ] rsyslog [ - ] screen-cleanup [ + ] ssh [ + ] supervisor [ + ] sysstat [ + ] udev [ + ] ufw [ + ] unattended-upgrades [ - ] uuidd [ - ] x11-common という状態です。
scsi

2019/01/26 00:05

なるほど、勝手に時間が調整されるとの事だったのでChronyかntpdでも動いているのかと思いましたが違うようですね。
naoyoshi

2019/01/26 00:42

ご回答有り難うございます。 VirtualBoxで、ゲストの時計の補正を停止するコマンドを打てば、時刻補正は止まるだろうと私は推測します。 現状、私はそのコマンドを打っているものの、時刻補正が停止しない理由がわかりかねてます。
guest

回答1

0

自己解決

いろいろと調査と検証を行った結果、自己解決ができました。
下記の手順です。

vagrantの停止状態で、ターミナルから下記のコマンドを入力します。
homestead-7とは、私の環境における、VMの名前になります。

ssh

1VBoxManage setextradata homestead-7 "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1 2 3VBoxManage setextradata homestead-7 "VBoxInternal/TM/TSCTiedToExecution" 1

次に、Homesteadのあるフォルダで

ssh

1vagrant up

を入力して起動します。

次に、

ssh

1vagrant ssh

を入力して、ログインします。

ログイン後、次のコマンドを入力します。

ssh

1sudo service vboxadd-service stop 2 3sudo /usr/sbin/VBoxService --disable-timesync 4 5sudo service vboxadd-service start

これでvagrantで独自に時刻を設定ができるようになりました。

ssh

1sudo date -s "2019/02/01 10:00:00"

のように、任意の日時を指定して、変更が可能になります。

一度vagrantを停止すると効果が切れるので、vagrantを起動する度に都度設定が必要です。

投稿2019/01/26 11:49

編集2019/01/27 07:38
naoyoshi

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問