Este tutorial foca nas técnicas para definir a data e hora no Linux usando timedatectl, NTP ou date.
como administrador de sistema, você pode ser convidado a definir a data do sistema em vários servidores.
eles podem estar configurados mal ou seus fusos horários podem não estar configurados corretamente.
Como consequência, alguns dos seus programas podem registar datas inválidas, o que leva a ser incapaz de inspeccionar alguns dos seus registos do servidor, por exemplo.,
neste tutorial, vamos ver como você pode definir corretamente a data no Linux, a fim de corresponder ao seu timezone geográfico atual.
Primeiro, vamos dar uma olhada no comando timedatectl com a opção systemd-timesync. Em seguida, vamos instalar serviços chrony ou NTP, a fim de sincronizar a nossa Data do sistema de forma eficiente.finalmente, vamos usar o comando “data” para definir estaticamente a data do nosso sistema.
Nós também vamos discutir as diferenças entre esses métodos e qual você pode querer usar de preferência.,
tabela de conteúdos
pré-requisitos
Antes de iniciar, terá de ter privilégios do sudo na sua máquina para executar alguns dos comandos.
certifique-se de que, você pode executar o seguinte comando
$ sudo -lUser user may run the following commands on localhost: (ALL) ALL
Se você não tiver privilégios sudo em sua conta, siga este tutorial para obter o sudo em sistemas baseados no Debian, ou em sistemas baseados em Red Hat (CentOS, RHEL)
data Definida no Linux usando timedatectl
Se você está trabalhando no Debian/Ubuntu ou no RHEL/CentOS, a maneira de definir a data é a mesma.,
para definir a data, você precisa definir a sua informação do fuso-horário e (opcionalmente) ativar o protocolo NTP, a fim de que o seu sistema se sincronize com os servidores NTP. Se você não usar o protocolo NTP (com ntpd ou chrony), seu sistema irá usar o serviço timesync por padrão.
Se o seu fuso-horário estiver mal configurado, terá de modificar a sua informação do fuso-horário.
para consultar o seu fuso-horário actual no Linux, pode executar o comando timedatectl.digamos que você quer modificá-lo.,
para listar os fusos-horários no Linux, use a opção “list-timezones” com o timedatectl.
$ timedatectl list-timezones
Como você pode ver, os fusos horários são apresentados usando a seguinte sintaxe : continente/região.
para definir o seu fuso-horário para Nova Iorque, você pode procurá-lo facilmente usando grep.
$ timedatectl list-timezones | grep YorkAmerica/New_York
para definir o fuso-horário, use o comando “set-timezone”.
$ timedatectl set-timezone America/New_York
para verificar a data actual do seu sistema, terá de executar o comando timedatectl de novo.,
no entanto, sua data atual não está sincronizada ainda, você terá que ativar o serviço NTP para que ele se sincronize.
Por omissão, se estiver a trabalhar com uma distribuição com o systemd, deverá ter o servidor do systemd-timesync por omissão.
A principal diferença entre systemd-timesync e NTP é que o daemon só implementa um lado cliente e não está usando mecanismos complexos como NTP.
para activar a sincronização de tempo, basta executar este comando.,
$ timedatectl set-ntp truesystemd-timesyncd.service active: true
Se preferir usar chrony ou NTP, as secções seguintes descrevem como pode definir NTP e chrony a fim de sincronizar a data do seu sistema.
define a data no Linux usando o chrony (NTP)
a maneira mais precisa de definir a data no Linux é usar o protocolo ntp.
Como uma chamada de atenção rápida, o protocolo NTP é usado para sincronizar o tempo entre diferentes servidores através de uma rede.
irá usar servidores de tempo de referência que serão sincronizados com o seu próprio servidor através da computação de latências para contactar servidores de referência.,
Usando o protocolo NTP, você será capaz de ter uma data muito precisa no Linux.
para definir a data, você vai usar o serviço de cronologia.
Em Primeiro Lugar, certifique-se de que o serviço de timesyncd não está em execução na sua máquina.
$ sudo systemctl stop systemd-timesyncd.service
a seguir, certifique-se que os seus pacotes estão actualizados no seu servidor.
$ sudo yum update
então, instale o pacote de chrony usando YUM.
$ sudo yum install chrony $ sudo apt-get install chrony
na maioria dos casos, o serviço chrony pode ser instalado por padrão na sua distribuição.,
para activar e iniciar o serviço chrony, tem de executar os seguintes comandos.
$ sudo systemctl enable chronyd$ sudo systemctl start chronyd
verifique o estado do seu serviço com o comando status.
$ sudo systemctl status chronyd
,
lembre-se que não tem de definir o protocolo NTP para o comando timedatectl, dado que o chrony inicial irá desactivar automaticamente o servidor systemd-timesync para usar o NTP.
Se você quiser ter certeza disso, você ainda pode executar o seguinte comando.
$ timedatectl set-ntp true
execute o comando timedatectl novamente para se certificar de que tudo está sincronizado.
nota : em vez de ter “serviço NTP”, você ainda pode ter o “systemd-timesyncd.service active” label set to yes., Isso não significa que o serviço esteja ativo, mas significa que o host está usando o chrony como uma maneira de sincronizar.
Também, você pode executar “date” para verificar a data do seu sistema atual.
$ date Thu Oct 17 13:16:10 EDT 2019
Awesome!
você definiu com sucesso a sua data no Linux (CentOS/RHEL) usando o chrony.
defina a data no Linux usando ntpd (NTP)
como descrito Antes, usar o protocolo NTP é provavelmente a maneira mais precisa de definir a sua data no Ubuntu e Debian.
Em primeiro lugar, você vai instalar o serviço ntp em seu host.,
para instalar um cliente NTP, basta executar o seguinte comando.
$ sudo apt-get install ntp $ sudo yum install ntp
por omissão, se executar este comando irá instalar e activar um serviço NTP (serviço de tempo de rede) na sua máquina.
para garantir isso, obter o status do serviço NTP.
$ sudo systemctl status ntp
Por padrão, executando ou reiniciar o serviço NTP não ativar o serviço NTP para o timedatectl de comando.
para activar a sincronização NTP, indique a opção “set-ntp”.,
$ timedatectl set-ntp true
novamente, execute um comando timedatectl simples, a fim de se certificar de que tudo está funcionando corretamente.fantástico!
você definiu corretamente a data no Linux usando ntp.
defina a data no Linux usando o comando date
uma das maneiras de definir a data no Linux é usar o comando date.
uma das principais falhas desta abordagem é o fato de que você nunca será tão preciso como definir o fuso-horário e sincronizá-lo com timesyncd ou cronyd.
no entanto, ainda é possível fazê-lo desta forma.,
Em primeiro lugar, a sincronização do tempo de desactivação na sua máquina, caso contrário a sua alteração manual da data será apagada sempre pelo serviço de sincronização.
$ sudo timedatectl set-ntp false
para definir a data, use “date” com a opção “-s”.
$ date -s <date>
por exemplo, usando o formato AAAA-MM-dd, poderá definir a data desta forma.
$ date -s '2019-10-17 12:00:00'Thu Oct 17 12:00:03 EDT 2019$ date -s '23 October 2019 12:00:00'Wed Oct 23 12:00:00 EDT 2019
Você também pode usar atalhos para definir a data facilmente.
Se quiser modificar apenas o ano, poderá usar o atalho” próximo ano” ou “último ano”.,
$ sudo date -s "next year"Sat Oct 17 12:02:21 EDT 2020$ sudo date -s "last year"Thu Oct 17 12:02:43 EDT 2018
Pode também optar por modificar apenas o mês, ou o dia com os seguintes atalhos.
Sincronize o seu relógio de ‘hardware’ com a data do seu sistema
Antes de prosseguir com as suas tarefas diárias de administração do sistema, pode ser uma boa ideia sincronizar o seu relógio de ‘hardware’ com a data do seu sistema.desta forma, está a certificar-se de que os seus dois relógios não mostram datas e horas diferentes.
para sincronizar o seu relógio de ‘hardware’ com a data do seu sistema, use o comando “hwclock” com a opção “–systohc”.
$ sudo hwclock --systohc$ sudo hwclock2019-10-23 13:03:56.466724-0400
Great!,
sincronizou com sucesso o seu relógio de ‘hardware’ com a data actual do sistema.
conclusão
no tutorial de hoje, você aprendeu como pode facilmente definir a data em qualquer sistema Linux.
Você Aprendeu que pode definir o fuso-horário e deixar o servidor systemd-timesyncd efectuar a sincronização do tempo.
Se você está procurando por técnicas de sincronização de tempo mais precisas e eficientes, você aprendeu que você pode usar chrony ou NTP, a fim de alcançar este resultado.
Você também viu que é possível definir a data estaticamente usando o comando date.,
Se você está interessado na administração do sistema Linux, temos muitos tutoriais sobre o assunto.
Deixe uma resposta