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: 141.741 ]

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


A questão do horário de verão



O NTP *não* trata da questão do horário de verão. O relógio dos computadores geralmente trabalha sincronizado com o UTC e, além disso, o Sistema Operacional sabe qual é o fuso horário adequado para utilizar. Quando entramos ou saímos do horário de verão e relógio do computador não é alterado, somente o fuso horário.

Use o comando zic para modificar o arquivo correspondente ao seu fuso horário:

1. Crie um arquivo com extensão .zic na pasta onde está o arquivo do fuso horário utilizado. Por exemplo, se você utiliza Brazil/East, crie o arquivo /usr/share/zoneinfo/Brazil/verao.zic. O conteúdo é o seguinte:

Rule Brazil 2007 only - Oct 14 00:00 1 S
      Rule Brazil 2008 only - Feb 17 00:00 0 -
      Zone Brazil/East -3:00 Brazil BR%sT

Altere as duas primeiras linhas para refletir o ano atual. Os valores exemplificados são válidos para o horário de verão que se inicia em 14/10/07 e termina em 17/02/08. A última linha indica qual o arquivo de fuso horário será alterado.

2. Execute o comando zic:

# zic verao.zic

3. Verifique o arquivo do fuso horário com o comando zdump.

# zdump -v Brazil/East
Brazil/East Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 17:45:52 1901 BRT isdst=0 gmtoff=-10800
Brazil/East Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 17:45:52 1901 BRT isdst=0 gmtoff=-10800
Brazil/East Sun Oct 14 02:59:59 2007 UTC = Sat Oct 13 23:59:59 2007 BRT isdst=0 gmtoff=-10800
Brazil/East Sun Oct 14 03:00:00 2007 UTC = Sun Oct 14 01:00:00 2007 BRST isdst=1 gmtoff=-7200
Brazil/East Sun Feb 17 01:59:59 2008 UTC = Sat Feb 16 23:59:59 2008 BRST isdst=1 gmtoff=-7200
Brazil/East Sun Feb 17 02:00:00 2008 UTC = Sat Feb 16 23:00:00 2008 BRT isdst=0 gmtoff=-10800
Brazil/East Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 00:14:07 2038 BRT isdst=0 gmtoff=-10800
Brazil/East Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 00:14:07 2038 BRT isdst=0 gmtoff=-10800

O daemon crond deve ser reiniciado após a entrada ou saída do horário de verão.

No site do CAIS/RNP há também informações sobre como se fazer essas alterações. Se restarem dúvidas, consulte:
Se você procura mais informações sobre o horário de verão, verifique o site da Agência Nacional da Energia Elétrica e o site do Observatório Nacional.

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

Como Redimensionar o Guest à Janela no KVM com Virt-Manager

O poderoso Nagios

Configurando o xorgconfig e o inittab para iniciar o Slackware em modo gráfico

Configurando o proftpd com autenticação de usuário pelo passwd

Criando pacotes no Slackware 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 é:

[email protected] ~ $ 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>
[email protected] ~ $ 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: [email protected] 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:

[email protected] ~ $ sudo ntpq -c rl
assID=0 status=c011 sync_alarm, sync_unspec, 1 event, event_restart,
version="ntpd [email protected] 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

[email protected] ~ $ 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