Como configurar data/hora
Autor: Patrick Brandão
E-mail: contato@tmsoft.com.br
Copyright: Proibida a cópia ou reprodução do conteúdo ou parte dele, exceto se o nome do autor, e-mail e este aviso constarem na cópia.

Antes de ensinar os comandos é necessário entender como funciona o sistema de data/hora em sistemas Linux.

Todo computador possui um relógio interno, chamado de relogio de hardware, que armazena a data e a hora mesmo quando o computador está desligado.
Este relógio é configurado inicialmente pela BIOS e só é resetado quando a bateria da placa-mãe acaba ou é removida.

Sempre que o Linux é iniciado ele copia a data/hora da BIOS para sí e mantem a contagem, criando assim um relógio de software. Esse relógio de software será usado por todos os programas executados no servidor.

Quando o sistema é desligado o relógio de software é perdido, no entando, é possivel copiar a data/hora do relógio de software para o relógio de hardware, salvando assim as alterações na data/hora do sistema. Normalmente as distrubuições Linux fazem isso automáticamente ao serem desligadas.

Comando para salvar a data/hora do relógio de software para a BIOS é:
root@servidor:~# clock -w
root@servidor:~# 

Verificando data/hora

Comando para verificar a data/hora interna copiada da BIOS:
root@servidor:~# date -u
Mon Oct 19 19:58:55 UTC 2009

Comando para verificar a data/hora do relógio de sofware (data/hora do sistema):
root@servidor:~# date
Mon Oct 19 17:58:55 BRST 2009

Configurando fuso horário

A data/hora o sistema considera que o relógio de hardware está no Meridiano Greenwich (clique aqui para mais detalhes), ou tambem chamado de UTC.
Para que a data seja exibida corretamente é necessário configurar o fuso horário, assim o sistema irá calcular a diferença entre o relógio UTC e sua hora local.

Para configurar o fuso horário no Slackware, execute o comando:
root@servidor:~# timeconfig

"NO Harware clock is set to local time" significa que o relógio de hardware está configurado com a data/hora usada na região e não será necessário
calcular a diferença para o meridiano de Greenwich.
"Yes Hadware clock is set to UTC" significa que o relógio de hardware está configurado no meridiano de Greenwith e será necessário saber em qual região você se encontra para calcular a data/hora a ser utilizada.


Escolha na lista de regiões a sua cidade ou a capital mais próxima.


Sincronizando data/hora via NTP

Para menter seu servidor com a data e a hora atualizadas fielmente, recomenda-se que periodicamente ele seja sincronizado com um servidor NTP.
NTP (network time protocol) é um protocolo que permite a um computador obter a data e a hora de um servidor central.

Lista de servidores NTP:
Brasil
	Comitê Gestor da Internet no Brasil, site: http://www.ntp.br/
		a.ntp.br
		b.ntp.br
		c.ntp.br

Para sincronizar o relógio local com o relógio do servidor NTP, use o seguinte comando (no exemplo será usado o servidor a.ntp.br):
root@servidor:~# ntpdate a.ntp.br
19 Oct 18:31:07 ntpdate[13736]: adjust time server 200.160.0.8 offset 0.035061 sec
Ajustando a data e a hora manualmente

O comando "date" permite que você altere o relógio de software, sintaxe do comando:
	date --set="AAAA-MM-DD HH:MM:SS"
		
		onde:
			AAAA = anos com 4 dígitos, entre 2000 e 2031
			MM = meses com 2 dígitos, entre 01 e 12
			DD = dias com dígitos, entre 01 e 31
			HH = horas com 2 dígitos, entre 00 e 23
			MM = minutos com 2 dígitos, entre 00 e 59
			SS = segundos com 2 dígitos, entre 00 e 59

Exemplo (ajustando para 19 de Outubro de 2009, as 18:41:00):
root@servidor:~# date --set="2009-10-19 18:41:00"
Mon Oct 19 18:41:00 BRST 2009
root@servidor:~#