Как заставить виртуальную виртуальную машину (запускать Ubuntu) запускать команду после возобновления ее состояния?

Я запускаю несколько виртуальных машин Ubuntu на хосте MacBook Pro.

Всякий раз, когда я приостанавливаю виртуальную машину или сохраняю ее состояние на диск, в следующий раз, когда я ее перезапущу, системные часы не синхронизируются.

Есть ли способ, чтобы виртуальная машина узнала, что она только что была возобновлена, и запустить команду? (Например, запуск ntpdate -u time.nist.gov поскольку root будет делать трюк)

Я попытался изменить сценарии в /etc/pm/sleep.d , но они, похоже, не вызываются на приостановление / возобновление VM.

Для этого конкретного использования гостевые дополнения должны синхронизировать часы виртуальной машины автоматически. (См. «Синхронизация времени» на странице http://www.virtualbox.org/manual/ch04.html или если вы хотите настроить его, http://www.virtualbox.org/manual/ch09.html#changetimesync .) Возможно, это обновление, возможно, перестало работать при использовании более старой версии гостевых дополнений, чем версия VirtualBox на хосте.

Чтобы установить или обновить гостевые дополнения, смонтируйте образ компакт-диска Guest Additions с помощью соответствующей команды меню на хосте и запустите скрипт с компакт-диска на гостевой. Подробнее см. В разделах http://www.virtualbox.org/manual/ch04.html#idp11850096 .

Самое простое решение – установить DKMS на сервер, который синхронизирует время и делает много других полезных вещей. Это работает на моей OSX-системе, запустив VirtualBox с гостевым Ubuntu VM.

Все, что мне нужно было сделать, это запустить это на моей виртуальной машине:

 sudo apt-get install virtualbox-guest-dkms sudo reboot 

Люди могут нуждаться в разных упаковках, специфичных для их вкуса в стиле linux.

Ссылка Ubuntu DKMS: https://help.ubuntu.com/community/DKMS

Вы можете использовать crontab в Linux, если хотите, это не полное исправление, но вы можете настроить его так, чтобы он запускался каждые 5 минут, если вы хотите, чтобы он выполнил нужную команду, поэтому обновляйте время с сервером.

Это сообщение в блоге показывает, как использовать crontab. Также вы можете посмотреть документацию CronHowTo @ Ubuntu

Это может быть полезно для вас.

Давайте будем гением компьютера.