Bagaimana cara mengetahui waktu saat ini dari internet dari command line di Linux?
Misalnya dengan ntpq
program?
Catatan: bukan dari komputer atau sistem operasi jam, tetapi dari internet?
Catatan: Saya tidak ingin MENGUBAH atau waktu SYNC. TAHU saja.
linux
command-line
ntp
Dims
sumber
sumber
Jawaban:
Jika Anda menggunakan bash, baris berikut akan melakukan pekerjaan itu
Ini memanfaatkan kapabilitas jaringan built-in¹ dari bash shell. Jika Anda menggunakan shell POSIX atau shell lain, Anda dapat menggunakan mis . Netcat.
Kedua perintah meminta server timer pada port TCP 13 dari Institut Nasional Standar dan Teknologi dan mengeluarkan data yang diterima di stdout.
¹ EDIT: Dari halaman Bash man: Bash menangani beberapa nama file khusus ketika mereka digunakan dalam pengalihan, seperti yang dijelaskan dalam tabel berikut:
sumber
</dev/tcp/
formatnya?curl -G --data-urlencode "format=%D-%T\n" http://www.timeapi.org/cet/now?
Ada beberapa layanan NTP yang tersedia per distro.
Jika Anda ingin melakukan clocksync satu kali :
Atur waktu sistem ke perangkat keras Real-Time-Clock
(Catatan: ini bekerja dengan baik pada Google karena mereka memiliki severs di seluruh)
Jika Anda hanya ingin melihat jam berapa server terdekat Google mengirim:
sumber
The
ntpdate
perintah dapat melakukan ini dengan-q
bendera:Dari
man ntpdate
:sumber
Anda juga dapat memperoleh waktu melalui Internet menggunakan HTTP menggunakan HTP yang tersedia di banyak sistem karena
htpdate
biasanya hanya memiliki akurasi hingga detik terdekat, atau Anda dapat menggunakannya menggunakan TLStlsdate
yang dapat memberikan akurasi yang lebih baik:Juga karena ntpdate sedang tidak digunakan lagi, Anda dapat menggunakan
sntp
(ini diinstal secara default pada MacOS dan datang sebagai bagian dari distribusi ntp) untuk mendapatkan tanggal yang jauh lebih akurat:sumber