Most of my pool computers show the wrong time and most of them are different. Just for fun, here are the times shown by those running at the moment of the poll:
8:36 (2x), 8:40, 9:36 (2x), 10:35, 10:36 (3x), 10:39 (6x), 11:36 (2x), 11:40
I assume it is the result of setting the time wrong in the installation and then a few semesters of trying to fix some of them (those running at the moment, the first three rows, until the admin was bored, a single one now and then, …), adjusting to daylight savings time or forgetting it and so on.
So this is what I tried to get them back on track (courtesy of AskUbuntu.com):
sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"
The line first gets a random web page (here google.com) and prints the header of the HTTP response, e.g.,:
HTTP/1.1 302 Found
Content-Type: text/html; charset=UTF-8
Date: Thu, 14 Dec 2017 10:46:49 GMT
The line then retrieves the part of the response with the date using
grep. It splits the line with the date at spaces with
cut -d ' ' and uses the parts 5 to 8. In this line, part 4 is the day of the week, part 3 is the text
Date: and parts 1-2 are empty because of the leading spaces. So using parts 5 to 8 results in a date and time in a format that the tool
date can understand. Before passing the time on to
date, the letter
Z is appended. This
Z stands for UTC, meaning the time zone set on the computer will be taken into account.
So the line after evaluating
cut for the example page we got will be:
sudo date -s "14 Dec 2017 10:46:49Z"
-s sets the date to the specified value. So if the request ran in a reasonable time, we should have a reasonably accurate time set for the computer.
PS: Yes, I know that there is such a thing as NTP and I know that time synchronization is not a problem that you need to hack on your own. But this version is much more freaky and cool!! [Also NTP and the university firewall don’t seem to be friends]