Você está fazendo muitas perguntas boas, tentarei respondê-las, mas também sugiro que leia este unix.stackexchange q / a on time on linux . Ele deve fornecer informações mais aprofundadas do que apenas as perguntas específicas que você está fazendo.
Algumas informações básicas
timedatectl
é um programa para interagir com systemd-timesyncd
, que é um cliente NTP leve fornecido por systemd
. Execute man timedatectl
para obter uma descrição fácil do programa. Por exemplo, Network time on: yes
significa apenas que o serviço systemd-timesyncd
está ativado. É isso.
Isso também explica por que você não verá ps faux |grep ntp
retornar nada.
O cliente ntp interno é chamado de systemd-timesyncd
.
date
é um programa para consultar e manipular a data e a hora do sistema. Este é o tempo que o seu sistema operacional acha que está certo agora. Se você executou isso com o argumento -s
, ele permitirá que você ajuste a hora do seu sistema
Sobre suas máquinas de amostra
machine-1 você disse que é uma máquina que executa o virtualbox. Isso permite que você ajuste o relógio do sistema normalmente (e até mesmo tem um relógio de hardware virtual para você mexer se quiser).
O que você descreve parece normal, você distorceu o relógio por dia e o cliente ntp não sincronizará mais corretamente. É por isso que o comando ntpdate
existiu por muito tempo no Ubuntu, é um comando único para alinhar o relógio e entregá-lo a um cliente ntp. systemd-timesyncd
agora tem essa funcionalidade embutida, mas só é executada na inicialização, não o tempo todo.
machine-2 você disse que é uma máquina laravel forge . Não tenho certeza do que é especificamente. Se você executar sudo date -s '2018-04-18 12:00:00'
, isso permite que você faça isso? O que isso diz? Pode ser que você não tenha a capacidade de alterar o relógio do sistema nesse servidor. Pode ser um contêiner (docker, lxd) de algum tipo, por exemplo.