Data e hora
Contents
Ver a data e hora atuais
Para ver a data e hora em um sistema GNU/Linux Debian, use o comando date sem argumentos. Ele mostrará a data e hora do sistema no formato definido em fusos horários.
Para ver no formato do horário UTC, use o comando date --utc (ou abreviado como date -u). Veja a página do manual do date.
Ajustar manualmente a data e hora
Quando ajustar o horário e a data do sistema manualmente, o formato necessário pode ser confuso (o POSIX convencionou o formato MMDDhhmmYYYY). No entanto, no uso do argumento --set, date aceita datas e horários em muitos formatos. Você pode ler a página do manual do date ou usar o exemplo abaixo para um formato possível e bem útil. O argumento --set usado no exemplo abaixo é especificado no formato estendido do padrão ISO 8601 como YYYY-MM-DD para Ano-Mês-DiaDoMês, e o horário HH:MM:SS usando o formato 24 horas. Zeros a esquerda são significativos:
date --set 1998-11-02
date --set 21:08:00Os dois comandos acima configuram a data para dois de novembro de 1998, e o horário para nove horas e 8 minutos da noite.
Nota: usar apenas o comando date define o horário do sistema (conhecido como relógio do software (software clock), mas não tem efeito no relógio do hardware (conhecido como relógio de tempo real - RTC - "real time clock"). Quando o sistema inicia, não há referências de tempo absoluto e o sistema obterá o horário do relógio do hardware. Portanto, para garantir que o horário definido com date se mantenha entre as reinicializações, é necessário salvá-lo no relógio do hardware.
A maioria dos ambientes de área de trabalho disponibilizam um utilitários de configuração de data e hora. Veja, por exemplo, o programa time-admin do pacote gnome-system-tools.
Ajustando o relógio de hardware
Para armazenar o horário atual do sistema no relógio de hardware, de modo a ser recuperado em reinicializações subsequentes, corrija o horário como explicado anteriormente e então use o comando hwclock --systohc para armazená-lo no hardware (veja a página de manual hwclock para mais opções).
Distribuições modernas do Debian (2.2 em adiante) automaticamente salvam o horário do sistema no relógio de hardware ao desligarem corretamente, e definem o horário do sistema a partir do relógio de hardware ao ligar. Isto é feito pelo script /etc/init.d/hwclock.sh.
Configure o horário automaticamente
O protocolo usado para configurar horário e data é o Network Time Protocol (NTP - Protocolo de Tempo para Redes). Para configurar automaticamente o horário e data, é necessário acesso a um servidor NTP. Sua rede local pode fornecer tal servidor, mas a maioria das pessoas acessam um servidor NTP pela Internet.
Na Internet, há servidores que fornecem o horário correto. Seu servidor de Internet provavelmente disponibiliza um servidor de tempo e deve ser sua mais próxima e mais precisa fonte. Apesar de existirem muitos servidores NTP independentes nos quais é possível se conectar, sua melhor fonte é http://pool.ntp.org.
Instalação de clientes NTP
O Debian fornece diversos pacotes para instalar um cliente NTP, dependendo da versão do sistema operacional. Desde o Debian 12, o cliente NTP padrão é o systemd-timesyncd do Systemd.
Você pode usar chrony, ntp ou ntpsec com Systemd. No Debian 12, ntp foi substituído por ntpsec; consulte Alterações em pacotes que definem o relógio do sistema. Systemd não requer que você execute systemd-timesyncd.
pacote chrony
chrony é uma implementação independente do NTP licenciado sob a GNU GPL v2.
Faça o seguinte para instalar o chrony:
apt-get install chrony
Para configurar o pacote chrony, você deve modificar /etc/chrony/chrony.conf.
pacote ntp
ntp é um porte da implementação de referência original.
Faça o seguinte para instalar o ntp:
apt-get install ntp
Para configurar o pacote ntp, você deve modificar /etc/ntp.conf.
pacote ntpsec
ntpsec é um fork com segurança reforçada da implementação de referência. No Debian Bookworm (e posteriores), NTP é um pacote de transição para ntpsec.
Faça o seguinte para instalar o ntpsec:
apt-get install ntpsec
Para configurar o pacote ntpsec, você deve modificar /etc/ntpsec/ntp.conf
systemd-timesyncd
systemd-timesyncd é a implementação do Systemd do protocolo SNTP. Se o Systemd está instalado, você pode habilitar o cliente NTP usando sudo timedatectl set-ntp true.
Para configurar o timesyncd, você deve modificar /etc/systemd/timesyncd.conf.
Gerenciando NTP Pools
Você pode usar mais fonte locais. Altere a linha server pool.ntp.org para server XX.pool.ntp.org, onde XX é seu continente ou o código de país com duas letras.
Para melhor precisão, inclua linhas de servidores extras, tais como
server 0.XX.pool.ntp.org server 1.XX.pool.ntp.org server 2.XX.pool.ntp.org
Incremente o número para cada linha que adicionar ao arquivo.
Você deve usar pelo menos 3 fontes de tempo ao usar um pool. Como diz o ditado, uma pessoa com um relógio sabe que horas são. Uma pessoa com dois relógios nunca tem certeza.
Estratégia de boot duplo com Windows
Se sua máquina inicializa Windows e Linux, você poderá ter problemas porque o Windows usa localtime para o relógio de hardware; enquanto o Linux e o Debian usam o UTC para o relógio de hardware. Neste caso, você tem duas opções. A primeira é usar localtime para o relógio de hardware, e definir o Debian para usar localtime. A segunda é usar o UTC para o relógio de hardware e definir o Windows para usar o UTC.
Se for dada uma escolha, você deve preferir a opção de usar UTC, porque UTC não sofre mudanças de horário de verão e fuso horário durante viagens. Um relógio de hardware configurado para UTC aumentará monotonicamente e não saltará devido aos horários de verão e mudanças de fuso horário.
Relógio de hardware em localtime
Se o relógio de hardware da máquina está em localtime, você deve modificar a configuração do Debian. O Debian usa o arquivo /etc/adjtime para manter as informações do fuso horário do relógio de hardware:
0.000000 14602224559 0.000000 1460224559 UTC
Para modificar a configuração, edite o arquivo /etc/adjtime e altere "UTC" para "LOCAL" usando seu editor favorito. Você deve usar sudo ou su para editar o arquivo.
Relógio de hardware em UTC
Se o relógio de hardware da máquina estiver em UTC, você deve modificar a configuração do Windows. O Windows usa o registro (registry) para armazenar informações de fuso horário do relógio do hardware. O valor padrão é localtime se a chave do registro estiver faltando.
Para modificar a configuração, execute regedit como administrador(a). Navegue até HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation. Crie uma chave chamada RealTimeIsUniversal com tipo QWORD, e defina o valor para 1.
Referências externas
Hora de sistema no wiki do Gentoo
Protocolo de tempo de rede (Network Time Protocol)
8.9. Outras configurações: Sincronização de tempo, Logs, Compartilhando acessos… - O guia do administrador(a) Debian
