背景是有两台电脑,一个名为A,另一个为B。两台均安装了ubuntu14.04及ROS indigo。目标是通过远程的方式在A上启动B上的节点,并在A上显示B上的运行结果。A是台式机,B是机器人,通过台式机远程控制机器人,并在台式机的rviz上显示出机器人上面的实时运行结果。
首先,按照白巧克力亦唯心的两篇博客进行调试:
http://blog.csdn.net/heyijia0327/article/details/42080641
http://blog.csdn.net/heyijia0327/article/details/42065293
一、两台电脑通信前的准备工作:
1.首先查看两台电脑各自的ip信息和主机名hostname:
查看ip:在终端中输入下面的命令
2.修改/etc文件夹下的hosts文件:修改hosts文件的目的是将两电脑的ip和主机名绑定,两台电脑之间通过hostname就能找到对方。没有这一步的时候,你直接去ping 对方主机名时,结果是无法解析对方主机名。
这里以修改台式机上的hosts文件为例,笔记本上也要相同操作。由于电脑上的 hosts文件是只读文件,直接修改后是保存不了的。因此先用root方式对该文件属性进行修改。
sudo chmod a+w /etc/hostssudo gedit /etc/hosts
sudo /etc/init.d/networking restart
二、实现两台电脑间通信:
1.在两台电脑上装上chrony包,用于实现同步: