Parte 1 de 4 Todos sabem que o horário de verão começa em data/hora diferente todos os anos. Normalmente existe uma definição com grande antecedência, e essa informação é compartilhada com o resto do mundo, mas por diversos fatores/motivos o Brasil sempre consegue jogar a antecedência pelo ralo e redefinir a data poucas semanas antes. Esse ano o motivo alegado é relacionado ao segundo turno das eleições presidências. Seja como for quem sofre com a falta de antecedência rasoável da redefinição dessas informáções e pouca seriedade na definição oficial do governo é o setor de Tecnologia da Informação e de eletro-eletrônicos. Esse ano o horário de verão brasileiro foi adiado, e começa no dia 5 próximo. Com isso, sistemas como FreeBSD, OpenBSD, Windows, Linux, Solaris, todos entraram em horário de verão antes do momento oficial definido pelo governo.Felizmente sistemas operacionais são simples de ser modificados, e quando não é tão simples sempre existem medidas nada técnicas que servem de paleativo, como mudar a hora do sistema manualmente (tipico de administradores de sistemas Windows). Problema maior sofrem aplicações eletrônicos que não podem ser facilmente reconfiguradas. As vezes telefones sem fio, PDAs, receptores de satélite, retransmissores, ou microcontroladores desses que gerenciam semáforos de trânsito ou telões publicitários. Pior que a não trivialidade de adequar esses sistemas a um horário de verão definido "em cima da hora" e ver algumas vezes eles dispararem rotinas errôneamente, com uma hora de antecedência, é pensar nos equipamentos passivos, que não mudam nada de seu comportamento, mas podem gerar históricos - como logs - com horário alterado de forma incorreta. Vários países instituem anualmente o chamado Summer Time, mas o Brasil é um dos únicos que nunca respeita suas próprias definições e as revisam repentinamente. Essa ano as novas regras brasileiras de horário de verão foram discutidas três semanas antes da data inicialmente prevista e só fizeram parte da ata informativa da Anatel para o Itamaraty, duas semanas antes. Como resultado, temos vários sistemas mundo afora achando que o brasil já está em Time Zone oficial BRST enquanto ainda estamos em BRT. Passou da hora desse assunto ser tratado com seriedade. Quem trabalha com sistemas embarcados e de automatização de qualquer tipo, e que não ofereça acesso remoto para rápida reconfiguração sabe bem o preço dessa entropia governamental. Feitas as considerações, felizmente para usuários FreeBSD não há tanto transtornos. Não é nada que não se resolva em um ou dos minutos. Assim sendo Giancarlo Rubio nos enviou sua contribuição sobre como redefinir as regras do horário de verão no FreeBSD. Confira.
O horário de verão brasileiro esse ano, como é relativamente comum, vai comecar em dia/hora diferentes do esperado. Com isso, todos os que usam recursos de timezones automáticos (como o FreeBSD e outros sistemas Unix fazem) terão problemas com relação a essa timezone, visto que o sistema se colocará em horário de verao antes do tempo certo. Para resolver esse problema, é necessario "ensinar" ao sistema quando comeca e termina o horario de verao correto. Faremos isso criando um arquivo contendo as informacoes da timezone brasileira para 2006 e 2007. Os passos sao: Entrar no diretorio de timezones /usr/share/zoneinfo # cd /usr/share/zoneinfo/ Criar/editar o arquivo br2006.zic # ee br2006.zic Incluir o seguimte conteudo no arquivo br2006.zic: Rule Brazil 2006 only - Nov 05 00:00 1 S Rule Brazil 2007 only - Feb 25 00:00 0 - Zone hv2006 -3:00 Brazil BR%sT E entao "compilar" as informacoes dele # zic br2006.zic Isso vai gerar um arquivo chamado hv2006, que é o arquivo que contem as informacoes da timezone brasileira. Ele deve ser usado para substituir o /etc/localtime, que indica ao sistema qual timezone usar. Portanto, copiemos o hv2006 para /etc/localtime, mas fazendo um backup do anterior antes: # mv /etc/localtime /etc/localtime_bkp # cp hv2006 /etc/localtime E atribuimos as permissoes padrao ao arquivo: # chmod 444 /etc/localtime Nesse ponto, é só verificar se a hora foi alterada corretamente com o comando date. Em caso positivo, pode-se remover o backup do /etc/localtime: # rm -fv /etc/localtime_bkp É possivel que alguns servicos (como cron, syslogd, etc) se comportem de maneira estranha apos essa mudanca, porque a hora vai mudar repentinamente. Caso isso ocorra, é só reiniciar cada servico que apresentar esse comportamento. Para mais informações leia esta thread da FUG.
|