Uma ferramenta que achei mais fácil de usar é a dpkg-reconfigure . Use:
sudo dpkg-reconfigure tzdata
Você receberá várias opções, incluindo algumas que não estão incluídas em tzselect .
Dreamhost parece pensar que gostamos do PDT, apesar de estar no meio-oeste. Como faço para mudar o fuso horário?
Isso é presumivelmente um pouco atrasado para o OP e mais destinado a outros pesquisadores que chegam aqui.
Se você precisar de uma solução não interativa, tente esta solução em mudando o fuso horário com o dbkg-reconfigure tzdata e o debconf-set-selections
echo "Europe/Zurich" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata
Você pode descobrir seu fuso horário pesquisando em / usr / share / zoneinfo. Na verdade, o comando dpkg-reconfigure acima copia o arquivo apropriado de lá para / etc / localtime. Eu costumava fazer isso manualmente, e parece funcionar bem.
Não fique surpreso se processos de longa duração não atenderem à mudança. Por exemplo, os timestamps de log do Apache vêm à mente. Considere se isso é importante e, portanto, se você precisa reiniciar os processos em execução ou mesmo reinicializar.
Atualização:
A resposta canônica (para a qual o Ynhockey merece crédito) parece ser:
dpkg-reconfigure tzdata
Minha resposta original está abaixo. Eu simplesmente teria deletado essa resposta completamente, mas o superuser.com não permite que as respostas aceitas sejam apagadas.
link diz
the simple way to edit your timezone is to use the
/usr/bin/tzselectcommand.
...
Once you've set your timezone you might wish to change the UTC setting, upon Debian machines you can find that in the file/etc/default/rcS. Although changing this will require a reboot.
Para editá-lo de forma não interativa em versões recentes do Debian e do Ubuntu (Stretch / Xenial etc.), você também precisa remover /etc/localtime , caso contrário, /etc/timezone será sobrescrito.
echo 'Europe/Zurich' > /etc/timezone
rm /etc/localtime
dpkg-reconfigure -f noninteractive tzdata
Esta resposta é baseada na resposta do mc0e '. Eu não posso adicionar um comentário com a minha reputação.
TL; DR
echo "TZ=Etc/UTC" >> /etc/environment
tzconfig
onde Etc/UTC é o seu fuso horário preferido que você encontrou usando tzselect .
Versão mais longa
Quando você está usando
dpkg-reconfigure tzdata
as informações de fuso horário não são mantidas após a reinicialização. Você pode verificar suas configurações com
diff -s /etc/localtime /usr/share/zoneinfo/'cat /etc/timezone'
Se você está apenas atualizando /etc/timezone , a atualização não será consistente com /etc/localtime , portanto é melhor executar a>
tzconfig
Use tzselect para descobrir quais fusos horários realmente existem (ou simplesmente navegue pelo diretório /usr/share/zoneinfo ).
Nos sistemas POSIX, o TZ deve ter precedência antes de /etc/localtime :
export TZ='Europe/Berlin'
$ date
Tue Apr 10 08:51:03 CEST 2018
export TZ='Pacific/Efate'
$ date
Tue Apr 10 18:28:33 +11 2018
Usar diretamente TZ pode você economiza muitas chamadas de sistema , já que as funções relacionadas a data / hora freqüentemente usadas precisam acessar o sistema de arquivos toda vez que algum programa solicita a data atual. É uma micro otimização, mas bastante simples.
Tags linux debian-squeeze time-zone