--utc
informa hwclock
que o clock do hardware mantém UTC e --localtime
diz que o clock do hardware mantém o mesmo fuso horário que o clock do sistema. (Mais precisamente, ele diz que o clock do hardware mantém o mesmo offset do UTC que o clock do sistema atualmente faz - os relógios de hardware geralmente não sabem se o DST está ativo.) Estas opções não têm relação com o fuso horário do clock do sistema. / p>
Em teoria, isso diz tudo o que você precisa saber. Na prática, isso pode ser confuso.
# date -u; hwclock -u;
Tue Apr 9 20:08:44 UTC 2013
Tue Apr 9 15:08:45 2013 -0.397120 seconds
“Primeiro, diga-me a hora do sistema no UTC. Então, assumindo que o clock do hardware mantém o UTC, qual é a hora no fuso horário local? ”
# date; hwclock --localtime
Tue Apr 9 15:09:07 CDT 2013
Tue Apr 9 20:09:08 2013 -0.686601 seconds
Primeiro, diga-me a hora do sistema no fuso horário local. Então, assumindo que o relógio do hardware mantém a hora local, qual é a hora no fuso horário local? ”
Na maioria dos sistemas, você pode definir a variável de ambiente TZ
para definir o fuso horário de um processo. É um recurso POSIX. BusyBox suporta isso (eu não vejo uma opção para desligá-lo em tempo de compilação), e eu acredito que o faz uClibc. Ao trabalhar na sincronização do relógio, pode ajudar a operar tudo no UTC por um curto período:
export TZ=UTC0
date
hwclock