(Network Time Protocol Client)
O NTP (Network Time Protocal) é um protocolo para a sincronização de hora.
Instalação de um cliente NTP manual
# apt-get update ; apt-get install ntpdate (o "ntpdate" é um cliente NTP que faz a sincronização da hora de maneira manual, ou seja, é necessário digitar o comando, conforme os citados a seguir)
# ntpdate IP_ou_HostName (o IP ou HostName deve ser substituído pelo endereço de um servidor NTP)
# ntpdate 192.168.0.1 (faz a sincronização da hora com o servidor NTP 192.168.0.1)
# ntpdate 0.debian.pool.ntp.org (idem, só que especificou um servidor do projeto Debian)
# ntpdate -d 3.debian.pool.ntp.org (idem, só que o "-d" entra no modo debug. Muito importante para resolver problemas)
# ntpdate -p 2 192.168.0.1 (o "-p" especifica a quantidade de pacotes que será enviado para sincronizar a hora. O padrão é 4)
# ntpdate -o 2 192.168.0.1 (o "-o" especifica a versão de pacote NTP que será enviado para sincronizar a hora. O padrão é 4)
# ntpdate -q 192.168.0.1 (o "-q" apenas consulta, não sincronizar a hora)
# ntpdate -u 192.168.0.1 (o "-u" especifica que o número da porta de origem vai ser escolhida aleatoriamente. O padrão é 123)
# ntpdate -s 192.168.0.1 (o "-s" é para jogar a saída do comando ntpdate para o /var/log/syslog. Isso geralmente é usado ao utilizar o ntpdate no CRON para não enviar a saída por e-mail)
Obs1: apesar do "ntpdate" ser um comando que deve ser realizado manualmente para sincronizar a hora, nada impede de colocá-lo no CRON. O ideal que a hora fosse sincronizada a cada 1 ou duas horas (man ntpdate).
Obs2: para sincronizar a hora com servidores que estão na Internet, o Firewall da rede precisa liberar a porta UDP 123 de origem e destino, pois é essa a porta utilizada pelo cliente e servidor NTP.
Comandos adicionais
# ntpdate-debian (sincroniza a hora com os servidores do Debian. O arquivo "/etc/default/ntpdate" é verificado ao usar esse comando)
Arquivos adicionais
# vi /etc/default/ntpdate (lista de servidores utilizados com o comando "ntpdate", sendo que esse arquivo também é utilizado durante a inicialização do sistema que tentará sincronizar a hora)
Obs1: durante a inicialização, o Debian tentará sincronizar a hora de acordo com a lista de servidores que ficam no arquivo "/etc/default/ntpdate".
Comandos adicionais
# /etc/init.d/ntpdate start (sincroniza a hora com os servidores definidos no arquivo "/etc/ntp/step-tickers". Por pardrão, não existem servidores definidos nesse arquivo)
Arquivos adicionais
# vi /etc/ntp/step-tickers (lista de servidores utilizados com o comando "/etc/init.d/ntpdate start", sendo que esse arquivo também é utilizado, se assim configurado, durante a inicialização do sistema que tentará sincronizar a hora)
Obs1: durante a inicialização, o Fedora não tentará sincronizar a hora. A menos que se insira um endereço de servidor no arquivo "/etc/ntp/step-tickers" e também utilize o comando "ntsysv" para inserir o "ntpdate" na inicialização do sistema.
Colocar o NTPDATE no CRON
# vi /etc/crontab
*/30 * * * * root /usr/sbin/ntpdate -s 192.168.0.1 (faz a sincronização de 30 em 30 minutos. O "-s" é para jogar a saída do comando ntpdate para o /var/log/syslog ao invés do padrão do CRON que envia por e-mail)
"the NTP socket is in use, exiting" (essa mensagem ocorre quando tentamos usar o comando "ntpdate address" e a porta UDP 123 já está sendo usada pelo daemon "ntpd")