Lidando com segundos bissextos com data

Lidando com segundos bissextos com data

Estou executando clockspeed-0.62 (software DJB) no Ubuntu 13.10. Eu configurei fusos horários para que /usr/share/zoneinfohaja um link para /usr/share/righte o meu /etc/leapsecs.datesteja atualizado, ou seja, contém 25 segundos bissextos.

Alguém poderia me ajudar a entender (e resolver) por que date -uo comando mostra o tempo 25 segundos à frente export TZ=UTC; date?

Saída de date; (export TZ=UTC; date); date -u:

Mon Feb  3 22:33:56 CET 2014
Mon Feb  3 21:33:56 UTC 2014
Mon Feb  3 21:34:21 UTC 2014

Responder1

TZ=UTCfaz com que a glibc use o arquivo zoneinfo chamado "UTC", que no seu caso contém /usr/share/zoneinfo/right/UTCajustes de segundos bissextos.

A -uopção é na verdade equivalente à configuraçãoTZ=UTC0. Já que existenenhum arquivo zoneinfo nomeadoUTC0, a configuração é reinterpretada como estando no formato "std offset" (como emtzset(3)). Neste formato, as três primeiras letras são usadas apenas como nome visível, eo "0" é usado como um deslocamento simples do UTC(ou seja, deslocamento do relógio do sistema).

informação relacionada