Dalam tutorial ini, kita akan membahas cara menginstal dan mengkonfigurasi Chrony , klien dan server NTP alternatif untuk sistem mirip Unix. Chrony dapat menyinkronkan jam sistem lebih cepat dengan akurasi waktu yang lebih baik dan dapat sangat berguna untuk sistem yang tidak online sepanjang waktu. Chrony gratis, open source dan mendukung varian GNU/Linux dan BSD seperti FreeBSD, NetBSD, macOS, dan Solaris.
Memasang Chrony
Chrony tersedia di repositori default sebagian besar distribusi Linux. Jika Anda menggunakan Arch Linux, jalankan perintah berikut untuk menginstalnya:
$ sudo pacman -S chrony
Di Debian, Ubuntu, Linux Mint:
$ sudo apt-get install chrony
Di Fedora:
$ sudo dnf install chrony
Setelah terinstal, mulai chronyd.service daemon jika belum dimulai:
$ sudo systemctl start chronyd.service
Jadikan untuk memulai secara otomatis pada setiap reboot menggunakan perintah:
$ sudo systemctl enable chronyd.service
Untuk memverifikasi apakah Chronyd.service telah dimulai, jalankan:
$ sudo systemctl status chronyd.service
Jika semuanya OK, Anda akan melihat output seperti di bawah ini.
● chrony.service - chrony, an NTP client/server Loaded: loaded (/lib/systemd/system/chrony.service; enabled; vendor preset: ena Active: active (running) since Wed 2018-10-17 10:34:53 UTC; 3min 15s ago Docs: man:chronyd(8) man:chronyc(1) man:chrony.conf(5) Main PID: 2482 (chronyd) Tasks: 1 (limit: 2320) CGroup: /system.slice/chrony.service └─2482 /usr/sbin/chronyd Oct 17 10:34:53 ubuntuserver systemd[1]: Starting chrony, an NTP client/server... Oct 17 10:34:53 ubuntuserver chronyd[2482]: chronyd version 3.2 starting (+CMDMON Oct 17 10:34:53 ubuntuserver chronyd[2482]: Initial frequency -268.088 ppm Oct 17 10:34:53 ubuntuserver systemd[1]: Started chrony, an NTP client/server. Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 85.25.84.166 Oct 17 10:35:03 ubuntuserver chronyd[2482]: Source 85.25.84.166 replaced with 2403 Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 91.189.89.199 Oct 17 10:35:06 ubuntuserver chronyd[2482]: Selected source 106.10.186.200
Seperti yang Anda lihat, layanan Chrony dimulai dan berfungsi!
Konfigurasi Chrony
Klien NTP perlu mengetahui server NTP mana yang harus dihubungi untuk mendapatkan waktu saat ini. Kami dapat menentukan server NTP di server atau kolam direktif dalam file konfigurasi NTP. Biasanya, file konfigurasi default adalah /etc/chrony/chrony.conf atau /etc/chrony.conf tergantung pada versi distribusi Linux. Untuk keandalan yang lebih baik, disarankan untuk menentukan setidaknya tiga server.
Baris berikut hanyalah contoh yang diambil dari server Ubuntu 18.04 LTS saya.
[...] # About using servers from the NTP Pool Project in general see (LP: #104525). # Approved by Ubuntu Technical Board on 2011-02-08. # See http://www.pool.ntp.org/join.html for more information. pool ntp.ubuntu.com iburst maxsources 4 pool 0.ubuntu.pool.ntp.org iburst maxsources 1 pool 1.ubuntu.pool.ntp.org iburst maxsources 1 pool 2.ubuntu.pool.ntp.org iburst maxsources 2 [...]
Seperti yang Anda lihat pada keluaran di atas, Proyek Kumpulan NTP telah ditetapkan sebagai server waktu default. Bagi mereka yang bertanya-tanya, proyek kumpulan NTP adalah kumpulan server waktu yang menyediakan layanan NTP untuk puluhan juta klien di seluruh dunia. Ini adalah server waktu default untuk Ubuntu dan sebagian besar distribusi Linux utama lainnya.
Di sini,
- ledakan opsi digunakan untuk mempercepat sinkronisasi awal.
- maxsources merujuk jumlah maksimum sumber NTP.
Harap pastikan bahwa server NTP yang Anda pilih tersinkronisasi dengan baik, stabil, dan dekat dengan lokasi Anda untuk meningkatkan akurasi waktu dengan sumber NTP.
Kelola Chronyd dari baris perintah
Chrony memiliki utilitas baris perintah bernama chronyc untuk mengontrol dan memantau kroni daemon (chronyd).
Untuk memeriksa apakah kroni disinkronkan, kita dapat menggunakan pelacakan perintah seperti yang ditunjukkan di bawah ini.
$ chronyc tracking Reference ID : 6A0ABAC8 (t1.time.sg3.yahoo.com) Stratum : 3 Ref time (UTC) : Wed Oct 17 11:48:51 2018 System time : 0.000984587 seconds slow of NTP time Last offset : -0.000912981 seconds RMS offset : 0.007983995 seconds Frequency : 23.704 ppm slow Residual freq : +0.006 ppm Skew : 1.734 ppm Root delay : 0.089718960 seconds Root dispersion : 0.008760406 seconds Update interval : 515.1 seconds Leap status : Normal
Kami dapat memverifikasi sumber waktu saat ini yang digunakan chrony dengan perintah:
$ chronyc sources 210 Number of sources = 8 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- chilipepper.canonical.com 2 10 377 296 +102ms[ +104ms] +/- 279ms ^- golem.canonical.com 2 10 377 302 +105ms[ +107ms] +/- 290ms ^+ pugot.canonical.com 2 10 377 297 +36ms[ +38ms] +/- 238ms ^- alphyn.canonical.com 2 10 377 279 -43ms[ -42ms] +/- 238ms ^- dadns.cdnetworks.co.kr 2 10 377 1070 +40ms[ +42ms] +/- 314ms ^* t1.time.sg3.yahoo.com 2 10 377 169 -13ms[ -11ms] +/- 80ms ^+ sin1.m-d.net 2 10 275 567 -9633us[-7826us] +/- 115ms ^- ns2.pulsation.fr 2 10 377 311 -75ms[ -73ms] +/- 250ms
Utilitas Chronyc dapat menemukan statistik dari setiap sumber, seperti laju penyimpangan dan proses estimasi offset, menggunakan statistik sumber perintah.
$ chronyc sourcestats 210 Number of sources = 8 Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev ============================================================================== chilipepper.canonical.com 32 16 89m +6.293 14.345 +30ms 24ms golem.canonical.com 32 17 89m +0.312 18.887 +20ms 33ms pugot.canonical.com 32 18 89m +0.281 11.237 +3307us 23ms alphyn.canonical.com 31 20 88m -4.087 8.910 -58ms 17ms dadns.cdnetworks.co.kr 29 16 76m -1.094 9.895 -83ms 14ms t1.time.sg3.yahoo.com 32 16 91m +0.153 1.952 +2835us 4044us sin1.m-d.net 29 13 83m +0.049 6.060 -8466us 9940us ns2.pulsation.fr 32 17 88m +0.784 9.834 -62ms 22ms
Jika sistem Anda tidak terhubung ke Internet, Anda perlu memberi tahu Chrony bahwa sistem tidak terhubung ke Internet. Untuk melakukannya, jalankan:
$ sudo chronyc offline [sudo] password for sk: 200 OK
Untuk memverifikasi status sumber NTP Anda, cukup jalankan:
$ chronyc activity 200 OK 0 sources online 8 sources offline 0 sources doing burst (return to online) 0 sources doing burst (return to offline) 0 sources with unknown address
Seperti yang Anda lihat, semua sumber NTP saya sedang down saat ini.
Setelah Anda terhubung ke Internet, cukup beri tahu Chrony bahwa sistem Anda kembali online menggunakan perintah:
$ sudo chronyc online 200 OK
Untuk melihat status sumber NTP, jalankan:
$ chronyc activity 200 OK 8 sources online 0 sources offline 0 sources doing burst (return to online) 0 sources doing burst (return to offline) 0 sources with unknown address
Untuk penjelasan lebih rinci tentang semua opsi dan parameter, lihat halaman manual.
$ man chronyc
$ man chronyd
Dan, itu saja untuk saat ini. Semoga ini bermanfaat. Dalam tutorial berikutnya, kita akan melihat cara menyiapkan server NTP lokal menggunakan Chrony dan mengonfigurasi klien untuk menggunakannya guna menyinkronkan waktu.
Tetap disini!