Dicas sobre configurações de hora no Linux

Share

Olá pessoal!

A dica de hoje foi enviada pelo nosso leitor Amaury Souza (@amaurybsouza):

Manutenção de data e hora do Linux.

–> É importante entender um conceito, numa máquina com Linux, existem dois tipos de relógios:

A) relógio do hardware (BIOS), mantido pela placa-mãe (usado apenas no processo de boot do sistema).

B) relógio do Linux (software clock) (depois de iniciado o sistema ele assume o software clock, relógio do Linux).

> COMANDOS QUE GERENCIAM ESSES DOIS TIPOS DE RELÓGIOS:

#date (mostra a data e o horário do sistema)

– Mostra a data, hora, timezone e o ano

$date

dom jul 29 11:27:08 -03 2018

$date -u (horário UTC, horário universal, que eu posso converter para o meu timezone BRT).

dom jul 29 14:29:32 UTC 2018

$date +%H:%M (eu posso alterar o formato que é exibido na tela) - usado em scripts.

11:31

$date 1211200 (podemos mudar o horário do sistema usando o date)

– o mês vai na frente do dia, depois o dia do mês e depois 1200 (horário) -> 01/12 às 12:00

#hwclock (comando que mostra o horário do hardware do Linux, o horário da BIOS)

1) Importante ressaltar que nem sempre a hora do comando date será igual a hora do hwclock, a máquina pode estar ligada a bastante tempo e isso acaba afetando, e eu posso usar o hwclock para sincronizar esses horários.

$hwclock

2018-07-29 11:37:31.216738-0300

a) $hwclock -w ou hwclock –systohc (pega a hora do sistema (Linux) e envia para a hora do hardware)

b) Podemos fazer ao contrário, pegar a hora da BIOS (hardware clock) e enviar para a hora do sistema:

hwclock -s ou hwclock --hctosys (deixa os horários iguais, sincronizados).

c) Posso usar o comando hwclock para setar a hora do hardware também, veja abaixo:

hwclock --set --date "12/01/2017 14:00" (define o horário de hardware da máquina)

–> O sistema usa a hora do Linux (hora do sistema) para gravar os logs, o sistema não usa a hora do hardware para gravar os logs.

–> Esses são os dois comandos manuais de setar a hora do Linux.

> NTP (Network Time Protocol)

1) Conceitos relevantes:

– mantém o horário sincronizado com um servidor externo;

– numa rede com servidores Linux, é importante que todas as máquinas estejam com os mesmo horário, segundo, minutos, sincronizados.

– com o NTP você terá um servidor que irá prover o horário para as outras máquinas, essas máquinas vão consultar esse servidor NTP e vão obter a hora a partir desse protocolo.

– muito utilizado em ambientes corporativos.

– ajuda na comunicação dos equipamentos, ativos de rede, servidores, monitoração de logs…

#ntpd (NTP daemon program)

2) Instalação do serviço ntpd (serviço que habilita isso na máquina Linux):

$apt-get install ntp ; apt-get install ntpdate

– O ntpd utiliza o protocolo UDP através da porta de comunicação 123

– Uma pequena observação, no Linux temos um arquivo que mostra as portas que cada serviço roda (/etc/services)

3) Duas formas básicas de uso do NTP:

a) Uma forma é com o serviço de daemon (processo que fica sempre executando na máquina):

$ps axu | grep ntp

ntp 21535 0.0 0.0 109504 4480 ? Ssl 15:00 0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 123:129

root 22807 0.0 0.0 21536 1056 pts/1 S+ 15:13 0:00 grep --color=auto ntp

* Esse daemon do NTP vai estar sempre indo em um servidor NTP externo para atualizar a data do meu sistema.

* E a minha máquina pode ser um servidor NTP, outras máquinas podem conectar na minha para utilizar a minha como servidor NTP.

* Esse deamon do NTP pode ser cliente e pode ser servidor, posso ajustar isso no arquivo de configuração e bloquear caso eu não queria que ninguem conecte na minha máquina.

#/etc/ntp.conf (principal arquivo de configuração do NTP) cai na prova

a) Entendendo o /etc/ntp.conf

– abaixo estão os servidores que minha máquina/processo NTP vai consultar o horário.

– pode aparecer ou pool ou server nos arquivos de configuração.

—————————————————————————————

Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board

on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for more information.

pool 0.ubuntu.pool.ntp.org iburst

pool 1.ubuntu.pool.ntp.org iburst

pool 2.ubuntu.pool.ntp.org iburst

pool 3.ubuntu.pool.ntp.org iburst

—————————————————————————————

#pool.ntp.org (conjunto de servidores NTP públicos, podem ser usados por todo o mundo para manter o horário atualizado com essa base)

–> posso usar os servidores de outras regiões do mundo, como South America — south-america.pool.ntp.org

–> e eles já estão ajustados para serem usados/trocados no arquivo de configuração (/etc/ntp.conf)

server 0.south-america.pool.ntp.org

server 1.south-america.pool.ntp.org

server 2.south-america.pool.ntp.org

server 3.south-america.pool.ntp.org

> COMANDOS PARA GERENCIAR O NTP:

#ntpq (comando para verificar se o serviço ntpd está ativo).

$ntpq -p (retorna os servidores que eu estou utilizando e algumas estatisticas sobre esses servidores)

remote refid st t when poll reach delay offset jitter

==============================================================================

0.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000

1.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000

2.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000

3.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000

ntp.ubuntu.com .POOL. 16 p - 64 0 0.000 0.000 0.000
#ntpdate (seta a hora e data via NTP, atualiza nesse momento o horário do sistema, manualmente) diferente do ntpd que fica atualizando direto.

$ntpdate 3.pt.pool.ntp.org (pega o horário desse servidor e atualiza o horário do meu sistema, não é horário de Portugual)

Quer continuar por dentro das novidades do Blog Seja Livre? Siga o nosso perfil no TWITTER, curta a nossa página no FACEBOOK ou adicione o Blog Seja Livre nos seus círculos do GOOGLE+.