向开发板上移植ip工具:将ip工具移植到开发板系统中

一. 简介

前面一篇文章对 ip工具源码进行了交叉编译,生成了ip工具。文章如下:

向开发板上移植ip工具:交叉编译 ip工具-CSDN博客

本文对生成的 ip工具进行移植,即移植到开发板系统中,并确定是否可用。

二. 向开发板上移植ip工具:将ip工具移植到开发板系统中

1. 将交叉编译得到的 ip 拷贝到开发板中

首先,打开ubuntu系统,终端进入 iproute2-4.4.0工程目录的 /ip目录下, 将交叉编译到的 ip 命令拷贝到开发板中。
注意:这里先 不要替换开发板根文件系统中原有的 ip 命令!切记!切记!
先拷贝到开发板根文件系统的其他目录里面。比如,我这里就拷贝到 /lib/modules/4.1.15 这个目录里面,命令如下:

复制代码
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/tools/iproute2-4.4.0/ip$ sudo cp ip /home/wangtian/linux/nfs_File/rootfs/lib/modules/4.1.15/ -f

开发板上电后,进入 系统目录 /lib/modules/4.1.15 下,在开发板上先执行一下新的 ip 命令,查看一下版本号,命令如下:

复制代码
./ip -V  //执行新的 ip 命令,查看版本号

可以看到如下信息:

可以看出,新编译生成的 ip工具是有版本号的,版本号为:

复制代码
ip utility, iproute2-ss160111

2. 将开发板上新的 ip 命令替换原来的ip命令

注意,此步骤在开发板中执行!
开发板根文件系统中原来的 ip 命令是 busybox 自带的,存 放在 /sbin 目录下。接下来,我们使用新的 ip 命令替换原来的,在开发板中执行如下命令:

复制代码
/lib/modules/4.1.15 # cp ip /sbin/ip -f
/lib/modules/4.1.15 # 

拷贝完成以后将 /lib/modules/4.1.15/ 目录下的 ip 命令删除掉:

重启开发板,查看根文件系统 是否可以正常启动! 如果正常启动的话,输入如下命令查看 ip 命令版本号:

复制代码
ip -V  //查看 ip 命令版本号

执行后如下所示:

至此, iproute2 中的 ip 命令就已经移植好了, CAN通信 测试的话,我们会使用 ip 命令来设置 can0 网卡的相关信息。

3**. 替换 ip 命令以后系统启动失败怎么办?**

如果在替换 ip 命令的时候操作失误可能会导致开发板系统启动失败,如下图 所示:


可以看出,系统启动失败,提示" Object "it" is unknown, try "ip help". ",这是因为 ip 命令替换错误导致的!
所以说一定要严格按照本节教程讲解的步骤替换 ip 命令。遇到上图 中的错误以后,解决方法就是把以前的 ip 命令替换回来就行了。 这就是前面强烈 建议大家对根文件系统做个备份的原因!!!
最简单的方法就是用备份的根文件系统重新做一遍!

相关推荐
Kusunoki_D2 分钟前
使用 VIM 编辑器对文件进行编辑
linux·编辑器·vim
低头不见2 小时前
tcp的粘包拆包问题,如何解决?
网络·网络协议·tcp/ip
SKYDROID云卓小助手3 小时前
三轴云台之相机技术篇
运维·服务器·网络·数码相机·音视频
东方佑3 小时前
自动调整PPT文本框内容:防止溢出并智能截断文本
linux·运维·powerpoint
zhougl9964 小时前
html处理Base文件流
linux·前端·html
泥土编程5 小时前
kubekey -实现懒人一键部署K8S集群
linux·运维
yuzhangfeng6 小时前
【云计算物理网络】从传统网络到SDN:云计算的网络演进之路
网络·云计算
TDengine (老段)6 小时前
TDengine 中的关联查询
大数据·javascript·网络·物联网·时序数据库·tdengine·iotdb
zhu12893035567 小时前
网络安全的现状与防护措施
网络·安全·web安全