date
não faz nenhum esforço para sincronizar com nada, e apenas faz alguma chamada de sistema (que no linux a strace date ...
pode ou não mostrar) para procurar o tempo desde a época como é conhecido pelo sistema. / p>
O próprio sistema pode sincronizar com o relógio do BIOS, ou se uma máquina virtual pode obter a hora atual do pai em que é executado, ou pode usar o NTP (ou outro software que faça mais ou menos a mesma coisa, por exemplo rdate
ou, em vez disso, o Precision Time Protocol (PTP)) para sincronizar a hora com outros computadores, ou pode usar um hardware de GPS ou dispositivo de rádio para definir a hora. Nenhuma delas envolve date
, a menos que o administrador esteja ouvindo, digamos, BBC Radio e definindo manualmente a hora do sistema com date
no topo da hora (eles ainda fazem a parte doo doot doot dee no topo da a hora?).
A precisão do relógio do sistema depende da configuração NTP (ou qualquer outro software usado), se o NTP (ou similar) está quebrado, o BIOS, se o BIOS está quebrado (eu vi uma inicialização do sistema quatro anos o futuro e esse host tinha uma configuração de NTP quebrada por outras razões, boa diversão, sendo este um servidor NFS com Makefile
...), se o clock do hardware está se comportando mal e vários outros detalhes. Se você estiver usando NTP, o comando peers
para ntpq
ou o arquivo derivado pode valer a pena ser visto.
Para o momento mais preciso (além de colocar um relógio atômico em cada host ...) você pode querer ler em PTP em "Toward Higher Precision" (e também aprender que O tempo é uma ilusão ).