在信息安全系统实验箱中部署、运行代码

在信息安全系统实验箱中部署、运行代码

交叉编译环境的搭建

实验要求

  1. 实验两人一组,最多三人一组

  2. 可以使用自己的笔记本,也可以使用实验室台式机,使用实验室机器的不用做本题

  3. 安装老师提供的software目录中的“VMware-workstation-full-10.0.1-1379776.exe”

  4. 解压老师提供的software目录中的“Ubuntu1204.rar”

注意:虚拟机Linux的口令为1

注意:本实验所有虚拟机都要在桥接网络模式下进行,右击虚拟机标签页->设置->网络->交接模式(不复制物理网络)

准备实验箱

统一网段

实验大家注意按云班课上的顺序做,要点是所有系统(实验箱,交叉编译环境,Win7)的IP要在同一网段,还有,网线,串口线不要插错位置了(注意:网线一定接入实验箱net1,串口线接入COM0)。

因为有交叉编译环境,提供的虚拟机都是基于vmware的。

用Win7虚拟机主要是因为win10,win11没有超级终端。

超级终端是作为实验箱的终端使用的,必须首先保证超级终端能访问实验箱,通过ipconfig 查看实验箱的IP,然后交叉编译环境,Win7要配置成和实验箱的IP在同一网段。

win7虚拟机连接实验箱

首先需要修改Win7虚拟机默认的IP地址

控制面板->网络和Internet->网络和共享中心->本地连接

属性->Internet协议版本 4(TCP/IPv4)

将IP地址改为192.168.0.231

在win7 虚拟机(rocedu:rocedu)中查看ip地址:

通过设备管理器查看USB转串口的端口号为COM4(不同系统可能不一样)

打开超级终端,选择正确的串口号COM4(超级终端在00 bocsdexpvm-4stu\exp1\software\windows7st(Windows)文件中)

串口配置:

对实验箱重新加电,出现以下界面,登陆用户为root

用ifconfig 查看实验箱IP:192.168.0.232

实验箱(超级终端)(192.168.0.232),ubuntu(192.168.0.230),win7(192.168.0.231)要互相能ping通,如:


能ping通说明在超级终端中,建立了实验箱与虚拟机之间的通讯。

交叉编译

单击终端,打开Linux命令行:

终端输入ifconfig,可以查看IP是192.168.0.230

编写代码,交叉编译

输入mkdir hello在主目录下新建目录hello

输入cd hello进入目录

输入vi hello.c编辑代码

#include <stdio.h>
int main(){
    printf("Hello BESTI IS BOCSD World!");
    return 0;
}

ESC后输入:wq保存退出

输入vi armc.sh编辑这个脚本文件,由于在arm环境,所以需要用arm-none-linux-gnueabi-gcc的绝对路径替换gcchello.c进行编译

这里可以使用find / -name arm-none-linux-gnueabi-gcc寻找绝对路径

运行armc.sh 交叉编译出hello程序

在实验箱中运行代码

配置Network File System(NFS)——网络文件系统

输入vi /etc/exports进入exports文件修改nfs共享目录路径

在13行,修改本机代码路径为/home/linux/hello,然后保存

输入如下命令mount -t nfs -o nolock 192.168.0.230:/home/linux/hello ./hello

可以看到hello文件夹和里面的代码传入实验箱了

然后在超级终端中输入cd hello 运行./hello 就可以了

实验中常见的问题

  1. 在互ping的过程中如果不通,可能是因为虚拟机的网络配置未改为桥接模式。
    还有可能是Win7的防火墙没有关闭。
  2. 修改nfs共享目录文件/etc/exports后需要重启nfs服务,可以通过重启虚拟机的方法重启nfs服务,或者参考
  3. 如果在超级终端中mount过程出现报错,如:Device or resource busy或者Bad file descriptor,可以重启超级终端后重新运行mount命令。
  4. mount前保证目录都存在。比如mount -t nfs -o nolock 192.168.0.230:/home/linux/hello /bocsd/hello,文件夹bocsd要在超级终端这mkdir /bocsd

感谢 李祎铭、曾宇涛、谢绎、覃泳龙同学。也欢迎大家在这个基础上改进,添加自己遇到的问题。


欢迎关注“rocedu”微信公众号(手机上长按二维码)

做中教,做中学,实践中共同进步!

rocedu



如果你觉得本文对你有帮助,请点一下左下角的“好文要顶”和“收藏该文


posted @ 2022-10-12 08:56  娄老师  阅读(1198)  评论(3编辑  收藏  举报