Sempre pensei que os sistemas Linux usassem /etc/timezone para o fuso horário, mas:
$ cat /etc/timezone
Etc/UTC
$ date
Tue May 28 12:34:01 PM PDT 2024
Aqui, o /etc/timezone é UTC, mas date
está reportando em PDT.
Como é date
determinar o fuso horário?
Este é o Ubuntu 22.04, se for importante.
/etc/timezone
é usado por alguns aplicativos (principalmente aplicativos Java), mas/etc/localtime
normalmente é a fonte oficial de informações de fuso horário para um sistema./etc/timezone
geralmente é um link simbólico para um arquivo no diretório /usr/share/zoneinfo que contém os dados do fuso horário e é usado internamente pela maioria das implementações de libc quando nenhumaTZ
variável de ambiente é definida. systemd também adicionatimedatectl
controle, o que você deve ter no Ubuntu.No seu caso específico, embora /etc/timezone mostre Etc/UTC, a saída do comando date mostra a hora em PDT. Essa discrepância geralmente indica que o arquivo /etc/localtime está configurado para um fuso horário diferente daquele indicado em /etc/timezone.
Para verificar e resolver essa discrepância:
ls -l /etc/localtime
, que provavelmente mostra PDT ou um fuso horário semelhante;sudo dpkg-reconfigure tzdata
, ousudo timedatectl set-timezone Etc/UTC
.