起因是这样的,在项目中有一个机器人是使用的ARM版本的Ubuntu操作系统,但是它上面没有纽扣电池用于保存时间,因此每次重启后时间错误,需要手动校正,非常麻烦。所以使用NTP来同步服务器时间,但并没有公网环境,且局域网中只有一台Windows10电脑(可同时连接内外网),因此使用Windows10作为NTPserver为ubuntu提供校时服务。
搭建NTP服务
Windows10本身是可以作NTP时间同步服务器的,无需安装其它软件,只需要修改一些配置。
1.修改注册表
使用win+R组合键在运行窗口中输入regedit,打开注册表编辑器。
image
依次展开数据项目,计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer,把Enabled设置为1,为打开NTP服务,操作如下图所示。
image
依次打开,计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config,并把AnnounceFlags的值设置为5(系统默认为a)。
image2.启动NTP服务
使用win+R组合键在运行窗口中输入services.msc,打开服务。
image
在服务项中找到WindowsTime
image
设置为自动后确定,点击右键重新启动此服务,至此服务启动成功。
image
注:启动和关闭windowsNTP的方式,还可以使用命令行来管理
启动:netstartw32time
停止:netstopw32time
3.本机测试
在cmd窗口中输入w32tm/stripchart/