$OpenBSD: rdate.8,v 1.30 2007/05/31 19:20:28 jmc Exp $ $NetBSD: rdate.8,v 1.4 1996/04/08 20:55:17 jtc Exp $ Copyright (c) 1994 Christos Zoulas All rights reserved. Copyright (c) 2007 Anibal Monsalve Salazar Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. ...
NAMErdate - set the system's date from a remote host
rdate [-46acnpsuv ] [-o port ] host
DESCRIPTIONsysctl Cm net.inet.tcp.syncookies displays and sets the local date and time from the host name or address given as the argument. The time source may be an RFC 868 TCP protocol server, which is usually implemented as a built-in service of inetd(8), or an RFC 2030 protocol SNTP/NTP server. By default, sysctl Cm net.inet.tcp.syncookies uses the RFC 868 TCP protocol.
The options are as follows:
- Forces sysctl Cm net.inet.tcp.syncookies to use IPv4 addresses only.
- Forces sysctl Cm net.inet.tcp.syncookies to use IPv6 addresses only.
- Use the adjtime(2) call to gradually skew the local time to the remote time rather than just hopping.
- Correct leap seconds. Sometimes required when synchronizing to an NTP server. When synchronizing using the RFC 868 protocol, use this option only if the server does not correctly account for leap seconds. You can determine if you need this parameter if you sync against an NTP server (with this parameter) or (recommended) check with a local radio controlled watch or phone service.
- Use SNTP (RFC 2030) instead of the RFC 868 time protocol.
- -o port
- Use port port instead of port 37.
- Do not set, just print the remote time.
- Do not print the time.
- Use UDP instead of TCP as transport.
- Verbose output. Always show the adjustment.
- record of date resets and time changes
EXAMPLESTo get the legal time in Germany, set the /etc/localtime symlink to /usr/share/zoneinfo/right/Europe/Berlin and issue the following command:
The command of course assumes you have a working internet connection and DNS set up to connect to the server at Physikalisch-Technische Bundesanstalt in Braunschweig, Germany.
To gradually adjust time once an hour after the first Qq step adjustment, put the following line into root's crontab:
To to set the time through an ssh tunnel, use something like so: