Pesquisa de site

Como definir hora, fuso horário e sincronizar o relógio do sistema usando o comando timedatectl


O comando timedatectl é um novo utilitário para distribuições baseadas em RHEL/CentOS 7/8 e Fedora 30+, que vem como parte do timedatectl. Strong>systemd gerenciador de sistema e serviço, um substituto para o antigo comando tradicional date usado em distribuições Linux baseadas em daemon sysvinit.

O comando timedatectl permite consultar e alterar a configuração do relógio do sistema e suas configurações. Você pode usar este comando para definir ou alterar a data, hora e fuso horário atuais ou ativar a sincronização automática do relógio do sistema com um servidor NTP remoto.

Neste tutorial, mostrarei como você pode gerenciar o tempo em seu sistema Linux, definindo data, hora, fuso horário, e sincronize a hora com o NTP do terminal usando o novo comando timedatectl.

É sempre uma boa prática manter a hora correta em seu servidor ou sistema Linux e pode ter as seguintes vantagens:

  • manter uma operação oportuna das tarefas do sistema, uma vez que a maioria das tarefas no Linux são controladas pelo tempo.
  • o horário correto para registrar eventos e outras informações no sistema e muito mais.

Como encontrar e definir o fuso horário local no Linux

1. Para exibir a hora e a data atuais em seu sistema, use o comando timedatectl na linha de comando da seguinte forma:

timedatectl  status

No screencast acima, a hora RTC é a hora do relógio do hardware.

2. O horário em seu sistema Linux é sempre gerenciado através do fuso horário definido no sistema, para visualizar seu fuso horário atual, faça o seguinte :

timedatectl 
OR
timedatectl | grep Time

3. Para visualizar todos os fusos horários disponíveis, execute o comando abaixo:

timedatectl list-timezones

4. Para encontrar o fuso horário local de acordo com sua localização, execute o seguinte comando:

timedatectl list-timezones |  egrep  -o "Asia/B.*"
timedatectl list-timezones |  egrep  -o "Europe/L.*"
timedatectl list-timezones |  egrep  -o "America/N.*"

5. Para definir seu fuso horário local no Linux, usaremos a opção set-timezone conforme mostrado abaixo.

timedatectl set-timezone "Asia/Kolkata"

É sempre recomendável usar e definir o horário universal coordenado, UTC.

timedatectl set-timezone UTC

Você precisa digitar o nome correto do fuso horário, caso contrário poderá obter erros ao alterar o fuso horário. No exemplo a seguir, o fuso horário “Ásia/Calcutá” não está correto, causando o erro.

Como definir hora e data no Linux

6. Você pode definir a data e a hora em seu sistema usando o comando timedatectl da seguinte maneira:

Definir hora no Linux

Para definir apenas a hora, podemos usar uma chave definir hora junto com o formato da hora em HH:MM:SS (hora, minuto e segundos).

timedatectl set-time 15:58:30

Você pode receber o erro abaixo ao definir a data conforme mostrado acima:


Failed to set time: NTP unit is active

7. O erro indica que o serviço NTP está ativo. Você precisa desativá-lo usando o comando abaixo.


systemctl disable --now chronyd

Definir data e hora no Linux

8. Para definir a data e a hora, podemos usar uma opção definir hora junto com o formato da data em AA:MM:DD ( Ano, Mês, Dia) e hora em HH:MM:SS (hora, minuto e segundos).


timedatectl set-time '2015-11-20 16:14:50'

Como encontrar e definir o relógio de hardware no Linux

9. Para definir o relógio do seu hardware para o tempo universal coordenado, UTC, use a opção set-local-rtc boolean-value da seguinte maneira:

Primeiro descubra se o relógio do seu hardware está configurado para o fuso horário local:

timedatectl | grep local

Defina o relógio do seu hardware para o fuso horário local:

timedatectl set-local-rtc 1

Defina o relógio do seu hardware para o tempo universal coordenado (UTC):

timedatectl set-local-rtc 0

Sincronizando o relógio do sistema Linux com um servidor NTP remoto

NTP significa Network Time Protocol é um protocolo de Internet usado para sincronizar o relógio do sistema entre computadores. O utilitário timedatectl permite sincronizar automaticamente o relógio do sistema Linux com um grupo remoto de servidores usando NTP.

Observe que você deve ter NTP instalado no sistema para ativar a sincronização automática de horário com servidores NTP.

Para iniciar a sincronização automática de horário com um servidor NTP remoto, digite o seguinte comando no terminal.

timedatectl set-ntp true

Para desabilitar a sincronização de horário NTP, digite o seguinte comando no terminal.

timedatectl set-ntp false

Resumo

Estes são exemplos muito fáceis descritos neste tutorial e espero que sejam úteis para definir vários relógios e fusos horários do sistema Linux. Para saber mais sobre esta ferramenta, acesse a página de manual timedatectl.

Se você tiver algo a dizer sobre este artigo, fique à vontade para deixar um comentário para adicionar mais informações. Fique conectado com a Tecmint.