基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间

1.下载源码,在这里选择ntp-dev-4.2.5p10,并解压。
2.将该源码复制到虚拟机下,进入ntp-dev-4.2.5p10目录。
[email protected]: ./configure –prefix=$PWD/install –host=arm-none-linux-gnueabi CC=arm-none-linux-gnueabi-gcc

[email protected]:~/project-practice/ntp-dev-4.2.5p10$ mkdir install.生成install目录。

[email protected]:~/project-practice/ntp-dev-4.2.5p10$ make && make install

[email protected]:~/project-practice/ntp-dev-4.2.5p10$ cd /install/bin .可以看到在该目录下生成了如下的可执行文件:
基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间

[email protected]:~/project-practice/ntp-dev-4.2.5p10/install/bin$ file ntpdate
如果看到如下的信息,表明在目前的交叉编译环境下生成了可以在开发板上运行的可执行文件。
基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间

8.将ntpdate 拷贝到开发板上,也可以通过nfs进行文件共享。因为后面还需要虚拟机和开发板之间进行通信,所以将虚拟机IP设置如下:
sudo ifconfig eth0 169.254.191.95 netmask 255.255.0.0
将开发板IP设置如下:
ifconfig eth0 169.254.191.93 netmask 255.255.0.0
10.在虚拟机上安装ntp时间同步服务器并启动ntp服务:
[email protected]:sudo apt-get install ntp
[email protected]:sudo service ntp start
9.在开发板ntpdate所在的目录下执行:./ntpdate 169.254.191.95(虚拟机IP)
可能会出现如下现象
基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间
可以通过./ntpdate -d 169.254.191.95 查看整个通信过程。
10.在虚拟机/etc/ntp.conf中加上:
server 127.127.1.0
fudge 127.127.1.0 stratum 10
完成后如下:
基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间
11.udp 123 端口可能被防火墙挡住,执行下面命令,尝试关闭防火墙。
[email protected]:sudo iptables -t filter -A INPUT -p udp –destination-port 123 -j ACCEP
12.重新启动ntp服务器
[email protected]:
sudo /etc/init.d/ntp restart

13.在开发板ntpdate所在的目录下执行:./ntpdate -d 169.254.191.95(虚拟机IP)
基于创龙Omapl138开发板如何通过NTP同步虚拟机时间和开发板时间
14.上面加了-d,表示仍是调试模式,去掉-d,即可将开发板和虚拟机的时间进行同步。(有时在ntp服务器启动后要等5-10分钟才可以进行同步,否则仍会报错)
15.将世界时调整为北京时间可用如下命令:
[email protected]:/etc# export TZ=CST-8
[email protected]:/etc# date
Tue May 22 18:31:15 CST 2018