项目需要使用同步时间,在arm-linux开发板上,移植了ntp客户端,查看了一些资料,最终发现使用windows自带的ntp服务器比较方便,而且很靠谱,使用配置了一番,已经能够正常使用
详细步骤:
1、在Windows 服务器下,按住“ windows+r ”打开“运行”对话框,输入regedit,点击“确定”打开注册表。
2、在注册表中依次展开:HKEY_LOCAL_MACHINE、SYSTEM、CurrentControlSet、Services、W32Time、TimeProviders、NtpServer,
在NtpServer项的右侧键值ENablied,将默认的0改为1,1为启用NTP服务器。
3、再在注册表中依次展开:HKEY_LOCAL_MACHINE、SYSTEM、CurrentControlSet、Services、W32Time、Config
找到Config项右侧的AnnounceFlags。
把默认的10改为5,5的意思就是自身为可靠的时间源。
接着,需要启动 windwos Time服务器,把手动改为自动,要不然会提示错误1058
4、windows + r,输入service.msc
进入服务后,找到如下图
把Windows Time改为自动,右键-->属性-->选择自动
5、修改完以上之后关闭注册表编辑器,以管理员身份打开命令行如下图,开始-->命令提示符-->右键以管理员身份运行。
注意:一定是管理员身份运行,否则也会提示错误。
6、在命令提示符中输入:net stop w32Time,回车
等待NTP服务停止。
然后再输入:net start w32Time,回车
启动NTP服务。
然后可以把 net stop w32Time net start w32Time 设置为开机启动,就可以开机自动启动ntp服务器,关于如何设置开机启动,可以网上搜索
在arm开发板中,只需要实行
ntpdate <ipaddress>