Sincronizando o Linux com a Hora Legal Brasileira usando o NTP.br

O NTP define um jeito para um grupo de computadores conversar entre si e acertar seus relógios, baseados em alguma fonte confiável de tempo. Neste artigo vamos falar sobre como funciona o NTP. Apresentaremos também o projeto NTP.br, que fornece a Hora Legal Brasileira para a Internet. E mostraremos como sincronizar seu Linux.

[ Hits: 146.939 ]

Por: Antonio M. Moreiras em 31/01/2008 | Blog: http://www.ceptro.br


Interpretando os logs do NTP



Os principais logs do ntp são o loopstats, que apresenta as informações do loop local, ou seja, as variáveis do sistema, e o peerstats, que apresenta as informações de cada associação.

loopstats

Seu formato é o seguinte:

day, second, offset, drift compensation, estimated error, stability, polling interval dia, segundo, deslocamento, escorregamento, erro estimado, estabilidade, e intervalo de consulta.

Exemplo:

54475 73467.286 -0.000057852 31.695 0.000015298 0.006470 4
54475 73548.286 -0.000084064 31.688 0.000017049 0.006471 4
54475 73682.286 -0.000077221 31.678 0.000016130 0.006988 4
54475 73698.286 -0.000077448 31.677 0.000015103 0.006550 4
54475 73761.286 -0.000083230 31.672 0.000014275 0.006376 4
54475 73889.286 -0.000059100 31.665 0.000015846 0.006487 4

peerstats

Seu formato é o seguinte:

day, second, address, status, offset, delay, dispersion, skew (variance)
dia, segundo, endereço, estado, deslocamento, atraso, dispersão, variância

Exemplo:

54475 34931.294 200.20.186.75 9074 0.009958844 0.008390600 0.000390895 0.000132755
54475 34931.301 200.192.232.43 f0f4 0.000348814 0.015550265 0.001120348 0.000023645
54475 34932.303 200.189.40.28 f0f4 0.000810708 0.017701986 0.188995109 0.000043145
54475 34934.286 200.160.0.28 f0d4 0.000332344 0.000271801 0.000620139 0.000037467
54475 34935.286 200.160.7.165 9614 0.000003557 0.000216088 0.000826694 0.000022076
54475 34935.301 200.19.119.69 9334 0.002667663 0.015740055 0.001858731 0.001733883

Gerando gráficos

A interpretação dos arquivos de log fica bastante facilitada com o uso de gráficos. E uma vez que se conhece seu formato fica muito fácil gerá-los. Recomenda-se o uso do gnuplot.

Como exemplo, crie um arquivo chamado deslocamento.txt com o seguinte conteúdo:

set term gif
set output '| display'
set title "Deslocamento"
plot "/var/log/ntpstats/loopstats" using 2:3 t"deslocamento" with linespoints lt rgb "#d0d0d0";

Observe que o comando plot faz referência ao arquivo loopstats, e usa suas colunas 2 e 3, 2 representa o tempo, no dia, em segundos e é o eixo x; e 3 representa o deslocamento, em milissegundos e é o eixo y.

Execute então o seguinte comando:

# gnuplot deslocamento.txt

E pronto, como a saída esta redirecionada para display, você verá o gif gerado na tela.

Escolhendo diferentes colunas dos logs você poderá obter gráficos de outras variáveis.

Página anterior     Próxima página

Páginas do artigo
   1. A importância de manter o relógio sincronizado.
   2. O NTP
   3. O projeto NTP.br
   4. Instalando o NTP no Linux
   5. Configurações adicionais
   6. Usando o ntpq para monitorar o NTP
   7. Interpretando os logs do NTP
   8. A questão do horário de verão
   9. Não use ntpdate no cron: use o daemon ntpd!
   10. Concluindo e apresentando referências para consulta
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando o driver de placas Nvidia no Fedora 11 Leonidas

Habilitando DDNS com BIND e DHCP remoto

MultiHeads no Linux

Instalando e usando o Gentoo GNU/Linux

Dúvidas freqüentes após instalação do Linux

  
Comentários
[1] Comentário enviado por sdrconsulting em 01/02/2008 - 08:38h

Antonio,

Há muito tempo eu não via um artigo de tão boa qualidade e bem estruturado. Parabéns.

Tenho certeza que muitos iniciantes não sabem o que é e para que serve o NTP, lendo o seu artigo ele saberá " tudo" .

Abs.

Sylvio Carlos

[2] Comentário enviado por jmadrid em 01/02/2008 - 09:02h

Legal Moreiras, tava dando uma lida no artigo e conhecendo coisas bem interessantes e quando me vejo, quem escreveu foi tu. Muito bom artigo.

[]s
João Madrid

[3] Comentário enviado por tcorreia em 01/02/2008 - 15:46h

Moreiras,

Mais uma vez você surpreende a comunidade de software livre com o vosso trabalho. Parabéns pelo projeto e publicação na comunidade de software livre, sabemos que esse projeto foi o primeiro e com certeza não será o único.

Boa Sorte!!!

Thiago A. Correia

[4] Comentário enviado por Ruy_Go em 02/02/2008 - 19:30h

ótimo artigo amigo, aqui foi perfeito mesmo.....

Obrigado e muito sucesso para voce!

[5] Comentário enviado por elgio em 03/02/2008 - 21:20h

Muitos aqui acham que eu só comento em artigos quando não gosto.

Hehehehe. Uma fama que adquiri aqui!

Mas Antonio, teu artigo é exatamente aquilo que eu considero um artigo. Estou cansado de ver no VOL apenas receitas de bolo, com uma série de comandos que fazem algo mesmo que o leitor não entenda para que serve.

Este teu excelente artigo é uma rara excessão. Foste muito a fundo no porquê das coisas, como é... Um OÁSIS no meio de um deserto de artigos fracos e sem conteúdo.

MEUS PARABÉNS!

[6] Comentário enviado por capitainkurn em 04/02/2008 - 15:06h

Ótima artigo Antônio, de grande utilidade e com ótima didática. Ví que é novo aqui no VOL, por favor contiunue nos brindando com artigos tão bons e de tanta utilidade para o dia a dia dos profissionais.
Este já adcionei a meus favoritos.

[7] Comentário enviado por albfneto em 09/11/2008 - 22:23h

Olá. eu tenho uma dica parecida, posterior a sua. O servidor do NIC, Stratum 1, não é público?

[8] Comentário enviado por antonio.moreiras em 10/11/2008 - 10:32h

Olá... Hoje os servidores estrato 1 do NTP.br não são públicos. Apenas a, b e c.ntp.br, que são estrato 2.

Isso acontece basicamente porque eles são appliances (spectracom, symmetricom) e não confiamos em certos aspectos de desempenho e segurança.

Mas não há, na prática, degradação considerável na qualidade do tempo fornecido.

Antonio M. Moreiras.

[9] Comentário enviado por albfneto em 30/03/2009 - 12:04h

Ola.
Estou com um problema, meu comando ntpd, não funciona no sabayon....
a mensagem é:

albfneto@linux ~ $ sudo ntpd -q -g
*** WARNING *** The program 'ntpd' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=ntpd>
albfneto@linux ~ $ sudo ntpd -q -g
*** WARNING *** The program 'ntpd' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=ntpd>


Abaixo, este é meu ntp.conf:

# NOTES:
# - you should only have to update the server line below
# - if you start getting lines like 'restrict' and 'fudge'
# and you didnt add them, AND you run dhcpcd on your
# network interfaces, be sure to add '-Y -N' to the
# dhcpcd_ethX variables in /etc/conf.d/net

# Name of the servers ntpd should sync with
# Please respect the access policy as stated by the responsible person.
#server ntp.example.tld iburst

# Common pool for random people
#server pool.ntp.org

# Pools for Gentoo users

##
# A list of available servers can be found here:
# http://www.pool.ntp.org/
# http://www.pool.ntp.org/#use
# A good way to get servers for your machine is:
# netselect -s 3 pool.ntp.org
##

# you should not need to modify the following paths
# driftfile /var/lib/ntp/ntp.drift

#server ntplocal.example.com prefer
#server timeserver.example.org

# Warning: Using default NTP settings will leave your NTP
# server accessible to all hosts on the Internet.

# If you want to deny all machines (including your own)
# from accessing the NTP server, uncomment:
#restrict default ignore


# To deny other machines from changing the
# configuration but allow localhost:
restrict default nomodify nopeer
restrict 127.0.0.1


# To allow machines within your network to synchronize
# their clocks with your server, but ensure they are
# not allowed to configure the server or used as peers
# to synchronize against, uncomment this line.
#
# restrict 192.168.0.0 mask 255.255.255.0 nomodify nopeer notrap
restrict default kod notrap nomodify nopeer noquery noserve

# servidores varios
server ntp.usp.br iburst
server a.ntp.br iburst
server b.ntp.br iburst
server c.ntp.br iburst
server br.pool.ntp.org iburst

# "memoria" para o escorregamento de frequência do micro
# pode ser necessário criar esse arquivo manualmente com
# o comando touch ntp.drift
driftfile /etc/ntp.drift

# estatísticas do ntp que permitem verificar o histórico
# de funcionamento e gerar gráficos
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

Coloquei o servidor de tempo da USP como primeiro, pq. trabalho na USP, mas ele é Stratum 2, também.
O Stratum 1 do Observatório Nacional, também não é mais público?
Uma curiosidade minha Stratums 3 e 4 ainda são usados ou não mais?

[10] Comentário enviado por antonio.moreiras em 30/03/2009 - 12:32h

Olá Alberto,

à princípio essa mensagem é só um warning alertando para que os desenvolvedores mudem a forma de acesso a uma determinada biblioteca. Ela não indica que não esteja funcionando.

Peço que publique os resultados dos comandos:

ntpq -c rl

e

ntpq -p

para que eu possa tentar ajudá-lo.

Se preferir, entre em contato via email: ntp@nic.br ou no canal #ntp.br do irc.freenode.net.

O ON tem 2 servidores públicos: ntp.on.br e ntp2.on.br. Você pode também utilizá-los.

[]s
Moreiras.

[11] Comentário enviado por albfneto em 30/03/2009 - 12:44h

Olá. postando a saída dos comandos.
meu micro fica 3 horas atrasado e o comando ntpd, não acerta a hora.
Saida dos comandos:

albfneto@linux ~ $ sudo ntpq -c rl
assID=0 status=c011 sync_alarm, sync_unspec, 1 event, event_restart,
version="ntpd 4.2.4p6@1.1549-o Sun Feb 8 21:28:54 UTC 2009 (1)",
processor="x86_64", system="Linux/2.6.28-sabayon", leap=11, stratum=16,
precision=-20, rootdelay=0.000, rootdispersion=2.205, peer=0,
refid=INIT, reftime=00000000.00000000 Thu, Feb 7 2036 4:28:16.000,
poll=6, clock=cd7b3c3f.94b88942 Mon, Mar 30 2009 9:40:31.580, state=0,
offset=0.000, frequency=0.000, jitter=0.001, noise=0.001,
stability=0.000, tai=0

albfneto@linux ~ $ sudo ntpq -p
No association ID's returned

Acabei de ver seu outro post, conm o ntp.conf, bem completo. legal são vários os servidores que podem ser usados.

http://www.vivaolinux.com.br/etc/ntp.conf

[12] Comentário enviado por leandromoreirati em 11/05/2011 - 09:01h

Caros,

Estou montando um servidort NTP e estou precisando de ajuda, pois ele sincroniza com o servidor stratum 2 sem problemas mas meu servidores windows 2003/2008 nao sincronizam com ele retona TIME OUT.

O firewall do windows esta desativado e abaixo segue as minhas configurações do NTP

# "memoria" para o escorregamento de frequencia do micro
# pode ser necessario criar esse arquivo manualmente com
# o comando touch ntp.drift
#driftfile /etc/ntp.drift
driftfile /var/lib/ntp/ntp.drift

# estatisticas do ntp que permitem verificar o historico
# de funcionamento e gerar graficos
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# servidores publicos do projeto ntp.br
server a.ntp.br iburst
server b.ntp.br iburst
server c.ntp.br iburst

# outros servidores
# server outro-servidor.dominio.br iburst

# configuracoes de restricao de acesso
#restrict default kod notrap nomodify nopeer
restrict 10.0.0.0 mask 255.0.0.0 kod notrap nomodify nopeer notrust


Desde já agradeço a atenção.

Att.

Leandro Moreira


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts