Похоже, вы действительно ищете способ запустить программу, чтобы программа думала, что она работает с другой датой и временем.  
Ранее задавался вопрос об этом: аналог Linux RunAsDate?  Ниже приведен ответ, который я дал там.  Обратите внимание, что вы, кажется, пытаетесь вариант 3.  
Пакет ntpdate не является демоном и не должен обновлять системное время автоматически (он должен запускаться один раз при загрузке и не более).  Я не слишком знаком с VirtualBox, но я предполагаю, что у вас либо установлен ntpd либо гостевые дополнения VirtualBox синхронизируют время напрямую с хост-ОС, и в этом случае вам нужно отключить их или использовать один из них. библиотек-оболочек, указанных ниже в варианте 2.
Обновление: похоже на то, что VirtualBox Guest Additions устанавливает /usr/sbin/vboxadd-timesync - я предполагаю, что это исполняемый файл, который синхронизирует гостевые часы с часами хоста.  Проверьте, установлен ли сценарий запуска (возможно, /etc/init.d/vboxadd-timesync); если это так, вы можете остановить синхронизацию с помощью sudo /etc/init.d/vboxadd-timesync stop .  Если нет сценария запуска, вы можете просто kill процесс.
Что RunAsDate делает следующее:
  RunAsDate перехватывает вызовы API ядра, которые возвращают текущую дату и время (GetSystemTime, GetLocalTime, GetSystemTimeAsFileTime), и заменяет текущую дату / время указанной вами датой / временем.
Под Linux у вас есть несколько вариантов, чтобы выполнить то же самое:
- Если вы можете получить версию программы для Windows, вы можете запустить RunAsDate под Wine (но следите за недавней ошибкой). 
- Найдите для этого библиотеку-обертку или напишите свою.  Некоторые варианты приведены ниже.   
- Используйте виртуальную машину.  Это излишне, но, поскольку ОС в гостевой виртуальной машине полностью отделена от базового хоста, вы можете установить системное время на что-то совершенно другое.  Это может быть быстрее настроить, чем другие параметры. 
Вариант 2 может быть реализован разными способами, в зависимости от того, что вы пытаетесь запустить.  Ответ DaveParillo ниже ссылается на самодельный подход, который объясняет различные методы и включает в себя код для исполняемого файла.  Некоторые другие варианты включают в себя:
- datefudge, доступный в репозиториях Debian/Ubuntu и других местах.
 
- Perl-модуль Time-Fake, также в репозиториях Debian как пакет - libtime-fake-perl.
 
- Библиотека предварительной загрузки FakeTime (также известная как - libfaketime, ссылка на freshmeat), библиотека, которая может перехватывать системные вызовы в динамически связанных двоичных файлах.  Доступно в репозиториях Debian для Squeeze и Sid.