Bagaimana cara mengubah tanggal dan waktu server ubuntu melalui baris perintah?

40

Tanggal dan waktu server Ubuntu saat ini berbeda dari tanggal dan waktu zona waktu. Saya sudah mencoba menggunakan:

sudo date "30 Sep 2015 4:43:42"

untuk mengubahnya tetapi tidak mengubah tanggal dan waktu, hanya dicetak pada terminal tanggal dan waktu saya berubah, tetapi ketika saya dieksekusi:

sudo hwclock --show

Tanggal dan waktu masih lama.

Apa cara yang benar untuk mengubah tanggal dan waktu Server Ubuntu?

Priska Aprilia
sumber
Anda benar-benar mengetik "sudo date newdate" - kata "newdate"?
Wolfgang
1
Nggak. Saya telah mengedit pertanyaan saya. Saya mengetik "30 September 2015 4:43:42"
Priska Aprilia

Jawaban:

68

Anda dapat mengatur tanggal sistem dengan perintah ini:

sudo date --set="2015-09-30 10:05:59.990"

Maka ketika menggunakan date, itu harus ditunjukkan dengan benar.

Sekarang Anda juga harus menetapkan jam perangkat keras di BIOS sistem, bahwa pengaturan tetap berlangsung selama reboot (selama startup, waktu sistem diatur ke nilai jam perangkat keras). Lakukan itu dengan hwclock:

sudo hwclock --systohc

Ini mendapatkan nilai jam sistem (sys) dan mengatur jam perangkat keras (hc). Periksa dengan hwclockperintah. Keduanya hwclockdan datesekarang harus menunjukkan tanggal dan waktu yang sama.


Untuk mengatur zona waktu Anda, Anda dapat menggunakan perintah ini:

sudo dpkg-reconfigure tzdata

BTW : Jika Anda menggunakan mesin ini sebagai server, saya sangat menyarankan menggunakan NTP-Client untuk menyinkronkan waktu melalui jaringan . Jadi, Anda dapat menjamin bahwa semua server Anda memiliki waktu yang sama persis. Ini akan menyinkronkan waktu saat mesin berjalan. Jika Anda memiliki aplikasi yang bergantung pada waktu yang disinkronkan melalui server, saya sarankan NTP-Daemon. Semakin lama berjalan di latar belakang, semakin tepat waktu.

kekacauan
sumber
1
Saya melewatkan langkah sinkronisasi jam. Terima kasih atas jawaban Anda, itu membantu saya!
Priska Aprilia
1
3 pilihan membantu, itu berubah dll / timezone =) seperti php.net/manual/en/timezones.php !!! sangat identik !!!
Vladimir Ch
@VladimirCh Nama zona waktu Fortunatelly dibintangi, jadi kami tidak perlu melakukan penyesuaian antara sistem. Oh, tunggu ... ada beberapa versi Microsoft juga ...
PeterM
1
Saya mencoba mengubah tetapi tidak berubah: - $ sudo date --set = "2015-09-30 10: 05: 59.990" Rab 30 Sep 10:05:59 +0530 2015 $ date Kamis 23 Mei 15 15:10:37 +0530 2019
Vinod
7
  1. Cari zona waktu Anda
timedatectl list-timezones
  1. Tetapkan zona waktu Anda
sudo timedatectl set-timezone America/Toronto
  1. Memungkinkan timesyncd
sudo timedatectl set-ntp on

Dengan ini, waktu harus diatur dan disinkronkan.

Anda dapat melihat lebih banyak pada tutorial ini: https://www.digitalocean.com/community/tutorials/how-to-set-up-up-time-synchronization-on-ubuntu-18-04

NatoBoram
sumber
1
Cara terbaik untuk memperbaikinya tanpa secara manual mengatur jam dan menit! Terima kasih banyak!
Rafael Moni
4

Saya tidak suka mengatur waktu sistem secara manual. Jadi untuk memperbaiki masalah ini saya harus menggabungkan dua jawaban yang berbeda.
Untuk memperbaiki waktu sistem Anda harus menggunakan kode ini:

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

seperti yang diberikan dalam jawaban ini
Kemudian Anda menyinkronkan jam perangkat keras dengan jam sistem menggunakan

sudo hwclock --systohc

seperti yang diberikan oleh @chaos di utas ini.

twitu
sumber
1

cukup ketik

sudo date newdatestring

dengan newdatestring dalam format nnddhhmmyyyy.ss

  • nn: bulan (dua digit) (01 hingga 12)
  • dd: hari (dua digit) (01 hingga 31), dengan aturan reguler untuk hari sesuai bulan dan tahun berlaku
  • jj: jam (dua digit) (00 hingga 23)
  • mm: menit (dua digit) (00 hingga 59)
  • yyyy: tahun; bisa dua digit atau empat digit
  • ss adalah dua digit detik (00 hingga 59). Perhatikan periode '.' sebelum ss.

Tetapi di samping perintah tanggal, mungkin Anda lebih suka NTP "solusi" (protokol waktu jaringan): Serverguide - NTP , jauh lebih mudah untuk ditangani dan lebih tepat daripada mengatur tanggal dengan tangan. Anda dapat menggunakan cronjob atau daemon ntp (ntpd) untuk memperbarui waktu Anda setiap x jam / menit ...

Semoga ini membantu!

Wolfgang
sumber
rentang tanggal tidak valid ketika saya mencoba dengan "093005082015.15" yang merupakan singkatan dari 30 September 2015, 05:08:15
Priska Aprilia
sudo date "093005082015.15" mengerjakan milikku.
vusan
0

Bagi mereka yang mencari versi detik zaman

  1. Tetapkan tanggal dan waktu saat ini

    sudo date -s @1565864862
  2. Dapatkan tanggal dan waktu saat ini

    date +%s
    

    output 1565864862

Jossef Harush
sumber