O que é a instrução de linha de comando para alterar o relógio do sistema?

48

Existe tal comando para alterar a data e a hora do relógio do sistema?

Por exemplo:

A data e hora atuais são January 1, 1970 22:30:59:980 , onde 59 e 980 referem-se a segundos e milissegundos respectivamente

E eu quero mudar isso para January 2, 1971 23:31:59:990

Existe um comando para isso?

    
por Abel Melquiades Callejo 08.09.2013 / 09:11

6 respostas

55

Para definir a hora no Ubuntu a partir do terminal, você pode usar o seguinte comando:

sudo date new_date_time_string

em que new_date_time_string precisa seguir o formato MMDDhhmmyyyy.ss , que é descrito abaixo:

  • MM é um mês de dois dígitos, entre 01 e 12
  • DD é um dia de dois dígitos, entre 01 e 31, com as regras regulares para dias, de acordo com o mês e o ano, aplicando-se
  • hh é a hora de dois dígitos, usando o período de 24 horas, por isso é entre 00 e 23
  • mm é um minuto de dois dígitos, entre 00 e 59
  • yyyy é o ano; pode ser dois dígitos ou quatro dígitos
  • ss é de dois dígitos. Observe o período . antes do ss .

Fonte: Gerenciar o tempo no Ubuntu através da linha de comando .

Então, no seu caso particular, você pode usar:

sudo date 010224311971.59

Ou você pode usar:

sudo date --set="1971-01-02 23:31:59.990"  && date --rfc-3339=ns

que é exatamente o que você pediu.

Fonte: link .

    
por Radu Rădeanu 08.09.2013 / 09:16
14

O caminho mais fácil:

ntpdate -s ntp.ubuntu.com

Para alterar o fuso horário:

dpkg-reconfigure tzdata

Provavelmente você precisa de sudo .

    
por Ninecols 30.04.2015 / 10:00
4

Você pode usar o comando date para alterar a hora e precisará da permissão sudo para fazer isso; um exemplo para definir a data para 27 de junho de 2014 e o horário para 1:17 é:

sudo date --set "27 Jun 2014 1:17:00"
    
por aabhas 26.06.2014 / 21:51
3

Desde que o systemd foi introduzido no Ubuntu, a maneira correta é:

# timedatectl set-time "RFC 3339-compliant string"

por exemplo,

# timedatectl set-time "2002-10-02T10:00:00-05:00"
# timedatectl set-time "10:35"
# timedatectl set-time "+2 hours"
    
por jojman 12.09.2016 / 00:05
0

Versões curtas para definir apenas a data ou a hora:

Para definir a data (definirá a hora como 0: 0: 0):

date +%Y%m%d -s "19710102"

Para definir apenas a hora:

date +%T -s "23:31:59"

Você pode adicionar o ".990" desejado aos segundos.

Leia a página man para mais opções e formatos sobre o comando date:

man date

Nota: você também pode querer verificar ou definir o relógio do hardware. Leia sobre isso aqui .

    
por elomage 13.06.2016 / 06:33
-3
sudo date --set="Mon Feb 16 08:49:56 IST 2015"

Essa seria a afirmação correta em UBUNTU 14.04.

    
por Soumya Kanti Naskar 16.02.2015 / 04:23