108.1 Manutenção de Tempo do Sistema (Peso 3)
Habilidade para manter o sistema de tempo e sincronizar o relógio pelo NTP.
- Setar a data e tempo no sistema
- Setar o relógio do hardware para o tempo correto em
UTC
- Configurar o timezone correto
- Configuração básica de NTP
- Conhecimento em utilizar o serviço depool.ntp.org
- Conhecimento em utilizar o comando ntpq
Introdução
No linux existem dois tipo de relógios. O relógio de hardware, também conhecido como relógio da bios e o sofware colck que após o boot do linux o software clock assume. Existem comandos para exibir esses dois horários.
Comando date
O comando mais commum é o date
que exibe a data e horário de software, esse comando pode ser executado por qualquer usuário, abaixo a execução do comando sem nenhum argumento:
date
Mon Oct 15 14:48:47 -03 2018
Podemos passar também o parametro -u
, que é o horário coordenado universal (UTC), com GMT 0:
date -u
Mon Oct 15 18:10:20 UTC 2018
É possivel formatar o output com parametros, abaixo vamos exibir apenas o ano corrente:
date +%Y
2018
Agora com a data completa:
date +%d/%m/%Y
15/10/2018
Agora apenas o horário:
date +%H:%M:%S
15:19:30
O comando date
além de exibir a data e horário também pode alterar esses dados.
Para alterar a data usamos o comando da seguinte forma:
sudo date MMDDHHMMYYYY
Substituindo as letras pelos dados correspondentes, dessa forma podemos mudar a data para o dia 13/12/2018 12:00. Ficaria assim:
sudo date 121312002018
Comando hwclock
Já o comando hwclock
exibe dados de horário do hardware e só pode ser executado pelo root
. Abaixo o comando sendo executado por um usuário comum:
hwclock
hwclock: Sorry, only the superuser can use the Hardware Clock.
Agora o comando executado pelo root
:
hwclock
Seg 15 Out 2018 14:54:36 -03 .076655 seconds
Para setar uma outra data para o horário de máquina, usamos o comanod abaixo:
hwclock --set --date "MM/DD/YYYY HH:MM"
Supondo que queremos alterar a data para 31/12/2018 01:00 o comando ficaria assim:
hwclock --set --date "12/31/2018 01:00"
É aceitável que exista uma diferença de tempo entre esses dois comandos;
Mas caso o administardor deseja sincronizar esses horários podemos realizar isso de duas formas. Igualar o horário do hardware com o software, ou pegar os dados do software e atualizar o hardware.
Sincronizar, copiando do software para o hardware
hwclock -w
Ou usando o comando extendido:
hwclock --systohc
Sincronizar, copiando do hardware para o software
hwclock -s
Ou usando o comando extendido:
hwclock --hctosys
- /usr/share/zoneinfo/
- /etc/timezone
- /etc/localtime
- /etc/ntp.conf
- date
- hwclock
- ntpd
- ntpdate
- pool.ntp.org