Ir para a pagina inicial dos Grupos do Google    Linux Educacional
Horário de verão - Como ajustar no Linux Educacional

vflaube <vfla...@gmail.com>

Embora o horário de verão já tenha começado a algum tempo, ainda há
muita gente com dúvidas sobre como ajustar seu computador para o
horário de verão.
Quando este ajuste não é feito, geralmente há inconsistência de datas
nos cabeçalhos de emails e distorções mais sérias em bancos de dados.

Em distribuições Debian versão etch em diante e derivadas, se o micro
estiver configurado para ser atualizado automaticamente, esta
configuração do horário de verão também é feita automaticamente. No
entanto, notei que no "Linux educacional" isto não ocorre de forma
automática.

Para contribuir passo a seguir o procedimento que usei nos servidores
da
Unerj e no meu desktop.

Em princípio este procedimento independe da distribuição  Linux (aqui
na
Unerj foi usado em sistemas RedHat 7.1(antigão mesmo, de 2001), RedHat
Enterprise Server 4, Conectiva 7, Ubuntu 7.04 e Fedora 6. E no meu
desktop foi aplicado no Ubuntu 7.10 e "Linux educacional 1.0".

O Linux segue o que o Unix já faz desde tempos imemoriais nessa
questão de fusos horários, possibilitando, por exemplo, distinguir
qual é o mais novo entre dois arquivos, mesmo que a diferença de
criação entre eles seja de menos de um segundo e um deles tenha sido
produzido por exemplo no Japão e o outro no Brasil.

Não se altera a hora do relógio de hardware, mas sim apenas o fuso
horário.
Os comandos abaixo devem ser executados com direitos de root ou com
sudo.

1)  Criar um arquivo com as datas e as configurações de fuso para o
horário
de verão

--> Comando:    vi    /etc/horario_verao_2007_2008.zic

2) Colocar o seguinte conteúdo no arquivo "/etc/
horario_verao_2007_2008.zic"

########### inicio conteúdo do arquivo ###########
Rule Brazil 2007 only - Oct 14 00:00 1 D
Rule Brazil 2008 only - Feb 17 00:00 0 -

Zone Brazil/East -3:00 Brazil BR%sT

###########fim conteúdo do arquivo ###########

As duas primeiras linhas dizem quando se inicia o horário de verão,
quando termina, e qual a ação a ser tomada.
A última linha diz qual o arquivo que será gerado pelo comando zic, no
exemplo será o arquivo 'East' (dentro do diretório Brazil). Esta linha
também informa o timezone da região, no caso de São Paulo é -3.

Os fusos horários brasileiros podem ser obtidos no site do
observatório nacional:
http://www.on.br/conteudo/modelo.php?endereco=dsho/servicos/fusos/fus...
OU:
http://www.timeanddate.com/news/time/brazil-dst-2007-2008.html
http://www.timeanddate.com/library/abbreviations/timezones/
http://worldtimezone.com/
http://worldtimezone.com/time-brazil24.php
http://en.wikipedia.org/wiki/List_of_zoneinfo_timezones

Referencia importante: http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/TimePre...

3 - Compilar o arquivo com comando - zic <nome do arquivo>  que
atualiza
/usr/share/zoneinfo/Brazil/East

--> Comando:   zic   /etc/horario_verao_2007_2008.zic

4 - Copiar o /usr/share/zoneinfo/Brazil/East para o /etc/localtime

--> comando:   cp    /usr/share/zoneinfo/Brazil/East /etc/localtime

5 - Conferindo...

Pode-se conferir com o comando date. Deve aparecer algo como:
Ter Out 16 20:50:10 BRDT 2007

   (BRDT indica horário de verão)- BRazil Daylightsaving Time"
   (BRST indica horário Standart - BRazil Standart Time)"

   Nota: aqui há certa polêmica. Diz-se também que:
         BRT  = horário padrão
         BRST = horário de verão
   Parece que isso tem a ver com a versão da biblioteca C utilizada
   no sistema. Mas no Debian a primeira regra é a válida.

Mais detalhes, ver: http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/TimePre...

Outra forma de conferir é digitando a linha de comando abaixo em um
terminal (como root):
-> comando:  zdump -v Brazil/East | grep 200[78]

Você deverá ver algo como abaixo (confira as datas de início e fim do
horário de verão):
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
BRDT isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 01:59:59 2008 UTC = Sat Feb 16 23:59:59 2008
BRDT 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

Caso você não queira digitar estes comandos, baixe o script de
http://groups.google.com.br/group/linux-educacional/files
(arquivo: ajuste-horario-verao.sh), torne-o executável e execute-o
como root.