Keeping your System clock current, automatically via Network Time Protocol (NTP)
ntpdate is a simple NTP client which allows a system's clock to be set to match the time obtained by communicating with one or more servers.
ntpdate is optional (but recommended) if you're running an NTP server, because initially setting the system clock to an almost-correct time will help the NTP server synchronize faster.
The ntpdate client by itself is useful for occasionally setting the time on machines that are not on the net full-time, such as laptops.
Install ntp client in Ubuntu
sudo apt-get install ntpdate
ntpdate will automatically run while bboting your system. Ubuntu stores script at /etc/network/if-up.d/ntpdate location.
If you wish to just run script again just type command
sudo ntpdate pool.ntp.org
If you want to use you own ntp servers you need to edit the /etc/default/ntpdate file using the following command
sudo vi /etc/default/ntpdate
File looks like below
# servers to check. (Separate multiple servers with spaces.)
NTPSERVERS="0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org"
# additional options for ntpdate
If you wan to use your own NTP server enter the list of NTP servers under NTPSERVERS
To avoid stepping the clock you must run ntpdate every 1 or 2 hours using cronjob
Save and close the file.
You can also use the following script to run every hour from your cronjob