Разные эпохи на 2 машинах: где правильно настроить?

У меня есть 2 Linux-машины, которые должны запустить Perl-скрипт и получить доступ к базе данных. Дата (как сообщается date а также date -u команды) является правильным (в течение пары минут), но при возврате эпохи из Perl разница в 1 час приводит к тому, что на одной машине UTC-timestamp, а на другой - требуемый CET.

дата на А:

Tue Dec 11 13:34:09 CET 2012

дата на B:

Tue Dec 11 13:33:20 CET 2012

Скрипт использует Time::HiRes и собирает localtime->epoch для генерации даты. Я строю минималистичный следующий скрипт для вывода поведения:

#/usr/bin/perl
#
use Time::HiRes qw(time);
use Time::Piece;
#
my $date = Time::Piece->strptime(localtime->epoch,"%s");
print "$date->datetime"."\n";
print $date->tzoffset."\n";
print $date->epoch."\n";

Выходная машина A:

Tue Dec 11 12:35:43 2012->datetime 
0 
1355229343

Выходная машина B:

Tue Dec 11 13:34:25 2012->datetime 
0 
1355232865

Итак, как вы видите, что-то должно быть не так, вероятно, с часовым поясом или что-то подобное. Но я не знаю, где искать и что настраивать как date Сам выводит правильное время.

0 ответов

Другие вопросы по тегам