Pesquisa de site

LFCA: Aprenda a gerenciar hora e data no Linux – Parte 6


Este artigo é a Parte 6 da série LFCA. Aqui nesta parte você se familiarizará com os comandos gerais de administração do sistema para gerenciar as configurações de hora e data no sistema Linux.

O tempo é crucial em qualquer sistema Linux. Vários serviços, como crontab, anacron, serviços de backup e restauração, dependem do tempo preciso para realizar suas tarefas conforme o esperado.

Linux tem 2 tipos de relógios:

  • Relógio de hardware – Este é o relógio alimentado por bateria, também conhecido como relógio CMOS ou RTC (Relógio em tempo real). O relógio funciona independentemente do sistema operacional e continua funcionando mesmo quando o sistema está desligado, desde que a bateria CMOS esteja presente.
  • Relógio do sistema ( Relógio do software ) – Também é conhecido como relógio do kernel. No momento da inicialização, o relógio do sistema é inicializado a partir do relógio do hardware e assume o controle a partir daí.

Normalmente, existe uma diferença de horário entre os dois relógios, de modo que eles se afastam gradualmente. Chegaremos a isso mais tarde e mostraremos como você pode sincronizar esses relógios.

Por enquanto, veremos como você pode verificar a hora e a data em um sistema Linux.

Verifique a hora e a data em um sistema Linux

Existem dois utilitários principais usados para verificar a hora e a data em um sistema Linux. O primeiro é o comando de data. Sem quaisquer argumentos, fornece um pouco de informação mostrada

date

Friday 26 March 2021 11:15:39 AM IST

Para visualizar a data apenas no formato de hora dd-mm-aa, execute o comando:

date +"%d-%m-%y"

26-03-21

Se você deseja apenas ver a hora atual e nada mais, use o comando:

date "+%T"

11:17:11

O comando timedatectl é um novo utilitário usado em sistemas Linux modernos, como Ubuntu 18.04, RHEL 8 e CentOS 8. É uma substituição do comando date que era proeminente nos antigos sistemas SysVinit. Ele pode ser usado para consultar e ajustar a hora em um sistema Linux.

Sem nenhuma opção, o comando timedatectl imprime uma série de informações, como hora local, hora UTC, hora RTC e fuso horário, para mencionar algumas.

timedatectl

Como definir um fuso horário em um sistema Linux

Em um sistema Linux, a hora depende do fuso horário definido. Para verificar o fuso horário configurado em seu sistema, emita o comando:

timedatectl | grep Time

Pelo resultado do trecho acima, estou no fuso horário África/Nairobi. Para visualizar os fusos horários disponíveis, execute o comando:

timedatectl list-timezones

Pressione ENTER para percorrer toda a lista de possíveis fusos horários disponíveis.

Os fusos horários também são definidos no caminho /usr/share/zoneinfo/ conforme mostrado.

ls /usr/share/zoneinfo/

Existem algumas maneiras que você pode usar para configurar o fuso horário. Usando o comando timedatectl, você pode definir o fuso horário, por exemplo, para América/Chicago, usando a sintaxe mostrada.

timedatectl set-timezone 'America/Chicago'

A outra maneira de definir o fuso horário é criar um link simbólico a partir de um arquivo de fuso horário no caminho /usr/share/zoneinfo para /etc/localtime. Por exemplo, para definir o fuso horário local como EST (Horário Padrão do Leste), emita o comando:

sudo ln -sf /usr/share/zoneinfo/EST /etc/localtime

Definir data e hora em um sistema Linux

Para definir a hora apenas em um sistema Linux usando o formato HH:MM:SS (Hora: Minuto: Segundo), use a sintaxe abaixo

timedatectl set-time 18:30:45

Para definir a data apenas no formato AA-MM-DD (Ano: Mês: Dia), use a sintaxe:

timedatectl set-time 20201020

Para definir a data e a hora, execute:

timedatectl set-time '2020-10-20 18:30:45'

NOTA: Definir manualmente a hora e a data dessa maneira não é recomendado, pois é provável que você defina configurações de hora e data imprecisas. Na verdade, por padrão, a sincronização automática de hora está ativada para evitar que você faça configurações manuais de hora e data.

A maneira mais recomendada de definir a hora é especificando o fuso horário em que você está, conforme mostrado anteriormente, ou ativando a sincronização automática de hora com um servidor NTP remoto.

Defina a sincronização automática de horário usando o servidor NTP

NTP é a abreviação de Network Time Protocol, que é um protocolo de Internet usado para sincronizar automaticamente o relógio do sistema com um pool em servidores NTP online.

Usando o comando timedatectl, você pode definir a sincronização automática de horário da seguinte maneira:

timedatectl set-ntp true

Para desativar a sincronização automática de horário NTP, execute:

timedatectl set-ntp false
Conclusão

Os comandos timedatectl e date são ferramentas úteis de linha de comando que podem ajudá-lo a verificar e ajustar seu tempo no Linux.