У меня есть два компьютера с Ubuntu 12.04, оба настроены с расположением в Сантьяго. Однако часовые пояса разные (синяя полоса под картой)
Это создает проблемы при программировании на c ++ и запрашивает разницу во времени localTime с Gmtime.
time_t t = time(0);
struct tm* now = localtime(&t);
struct tm* now2 = gmtime(&t);
Возможно ли, что такое поведение связано с указом Верховного министра внутренних дел Чили № 106, который изменил время летом в течение года?
Как настроить часовой пояс ПК1 так, чтобы он выглядел как ПК2?
PD: на обоих компьютерах я запускаю команды
sudo ntpdate -u ntp.ubuntu.com
dpkg-reconfigure tzdata
и проверяю:
/etc/default/rcS
с UTC=yes
отметьте флаг tm_isdst
со значением 0;
PD2: часовой пояс в ПК2 это правильный часовой пояс
Я нашел проблему! Это не было обновлено tzdata в одном компьютере. Для обновления tzdata выполняются в консоли
sudo apt-get install tzdata tzdata-java
С этой командой, конфигурация времени, когда выполняется
zdump -v America/Santiago | grep 2015
должна распечатать эти
America/Santiago Sun Apr 26 02:59:59 2015 UTC = Sat Apr 25 23:59:59 2015 CLST isdst=1 gmtoff=-10800
America/Santiago Sun Apr 26 03:00:00 2015 UTC = Sun Apr 26 00:00:00 2015 CLT isdst=0 gmtoff=-10800