Relógio

De LinuxPédia
Ir para: navegação, pesquisa

O tempo correto é fundamental para um bom funcionamento de sistemas e protocolos de rede. Para isto a sincronia entre servidor e clientes deve ter tolerância mínima.

Relógios

Existem dois relógios no sistema:

Hora da máquina (RTC)

O relógio de tempo real (RTC), hardware clock ou "relógio da BIOS" é responsável por manter a hora certa do sistema enquanto este não está em pleno funcionamento. O dispositivo é independente da CPU e funciona mesmo com a máquina desligada. É fundamental em funções como real time clock alarm, um despertador que liga automaticamente o sistema. É comum que a hora corrente no RTC não corresponda ao fuso horário local.

Hora do sistema (System Time)

É o relógio interno do kernel, representado pelo número de segundos desde a meia-noite de primeiro de janeiro de 1970 (Era Unix). Funciona apenas durante a execução do kernel e serve base para a data e horário do sistema, serviços e programas no espaço de usuário. Quando o sistema inicia — processo de boot — o kernel copia a hora da máquina (RTC) para a hora do sistema e não mais interage com este até o desligamento ou reinício correto, quando a hora do sistema é sincronizada com a hora da máquina.

UTC e Fuso Horário

Em sistemas que seguem o padrão POSIX o relógio de hardware segue o horário UTC (Tempo Universal Coordenado) o que o coloca entre duas ou três horas adiantado em relação à hora local de Brasília. Independentemente, a hora do sistema é ajustada de acordo com as configurações regionais e de fuso horário do sistema.

Fuso horário do sistema

O fuso horário do sistema é configurado durante a instalação. A configuração pode ser alterada a qualquer momento, como root:

dpkg-reconfigure tzdata

Escolha a cidade mais próxima e confirme.

Dual boot

É comum que a diferença do sistema POSIX para outros, obsoletos, cause problemas de inconsistência no RTC. Um caso em particular é o dual boot.

Para dirimir o problema no Debian GNU/Linux e derivados, mude o RTC para o localtime:

$ su -
nano /etc/adjtime

Mude UTC para LOCAL.

Ajuste manual

O relógio do sistema pode ser ajustado manualmente através do comando date, como root:

date -s "01/16/2015 11:19"

Como o relógio do sistema e o RTC não são o mesmo é preciso sincronizá-los para que a hora esteja certa no próximo boot. Como root:

hwclock -w

O comando hwclock permite exibir e/ou modificar a hora desses relógios.

Dependendo das configurações do sistema, o RTC e o relógio do sistema podem divergir por causa do fuso horário mas nunca na data, minutos e segundos.

Referências