Ada perpustakaan bernama libfaketime
(juga di GitHub) yang memungkinkan Anda membuat sistem melaporkan waktu tertentu ke aplikasi Anda. Anda dapat membuat sistem melaporkan waktu tetap selama eksekusi program, atau memulai jam pada waktu tertentu (misalnya, 01:59:30). Pada dasarnya, Anda mengaitkan perpustakaan faketime ke gambar dalam memori program Anda melalui pemuat perpustakaan, dan ia menangkap dan menangani dengan caranya sendiri semua panggilan sistem yang berhubungan dengan waktu sistem. Itu tidak benar-benar berubah waktu sistem, tetapi mengubah jam berapa dilaporkan ke aplikasi spesifik Anda tanpa memengaruhi apa pun yang sedang berjalan, yang mungkin memang Anda cari (jika tidak, saya tidak melihat alasan untuk tidak hanya mengubah waktu sistem global).
Ada sejumlah kemungkinan varian tentang cara menggunakannya, tetapi sepertinya Mengubah waktu yang dianggap sebagai proses dengan libfaketime memiliki daftar yang cukup menyeluruh bersama dengan kode contoh untuk mencobanya. Google juga harus dapat menemukan beberapa contoh mengingat Anda tahu apa yang harus ditelusuri.
Tampaknya itu tidak tersedia dalam kemasan melalui repositori RHEL, tetapi misalnya Debian menyediakannya dengan nama paket faketime
. Ini juga terlihat lurus ke depan untuk membangun dari kode sumber (tampaknya bahkan tidak memerlukan configure
langkah atau semacamnya).
Apa yang akan saya lakukan adalah menginstal ntp
terlebih dahulu layanan untuk menyinkronkan waktu dengan server jarak jauh. Kemudian, hentikan layanan, ubah tanggal secara manual, mainkan dan mulai ulang layanan:
service ntpd stop
date -s "Aug 11 2012"
[ do stuff ]
service ntpd start