qemu搭建arm环境以及文件共享

几乎完全参照该文章

使用QEMU搭建ARM64实验环境 - 简书

 ubuntu 14.04,linux3.16, busybox-1.31.0

arm-linux-gnueabi-gcc -v

linux3.16以及busybox下载安装可参考链接

Ubuntu14.04安装qemu,运行linux-3.16+gdb调试_qemu 安装 ubuntu 14_这个我好像学过的博客-CSDN博客

注意事项

1、文章中的命令arm64换为arm即可

aarch64-linux-xxx替换为arm-linux-xxx

 2、文章中关于配置那个小节,可以不用执行

添加hotplug支持//这个我没有添加

添加initramfs的支持://这个可以通过make menuconfig进行配置

general setup--->initial ram filesystem

填入_install目录(文章里面是_install_arm64)

 3、制作磁盘文件章节

 dd if=/dev/zero of=rootfs_ext4.img bs=1M count=2048//我制作的2G的

mkfs.ext4 rootfs_ext4.img替换为了这个sudo mount -t ext4 rootfs_ext4.img tmpfs/ -o loop

4、执行qemu命令

qemu-system-arm -M vexpress-a9 -smp 4 -m 1024M -kernel arch/arm/boot/zImage --append "rootfstype=ext4 noinitrd root=/dev/vda rw console=ttyAMA0 loglevel=8 "  -nographic \
-drive if=none,file=rootfs_ext4.img,id=hd0 \
-device virtio-blk-device,drive=hd0 \
--fsdev local,id=kmod_dev,path=$PWD/kmodules,security_model=none \
-device virtio-9p-device,fsdev=kmod_dev,mount_tag=kmod_mount -dtb arch/arm/boot/dts/vexpress-v2p-ca9.dtb 

我环境里面报错了,启动失败,出现如下错误

EXT4-fs (vda): Filesystem with huge files cannot be mounted RDWR without CONFIG_LBDAF

我看网上是这样说的​​​​​​​为什么ext4 rootfs会被挂载成只读模式?_filesystem with huge files cannot be mounted rdwr _JiMoKuangXiangQu的博客-CSDN博客

 最后通过重新编译linux内核,开启CONFIG_LBDAF,问题解决

make menuconfig

enable the blocklayer-->support for largexxxx

 

 目前共享目录以实现,效果如下

内核使能kdb(内核进入异常时能够挂住,看现场信息)

linux内核调试(七)使用kdb/kgdb调试内核 - 知乎

KDB调试Linux4.2.6内核过程记录_Lidroid的博客-CSDN博客

具体哪个文章起作用不清楚。也可能是kernel hacking里面的配置起作用了

重点关注

(3)若未在启动参数中添加kgdboc选项,还可以在系统启动后通过如下命令手动添加

echo "ttyAMA0,115200" > /sys/module/kgdboc/parameters/kgdboc

 

给内核命令行添加参数 

qemu-system-arm -M vexpress-a9 -smp 4 -m 1024M -kernel arch/arm/boot/zImage --append "rootfstype=ext4 noinitrd root=/dev/vda rw console=ttyAMA0 loglevel=8 kdb=on kgdboc=ttyAMA0,115200 kgdbwait kgdbcon xxx"

可以通过上面的方式添加命令行参数
注意console=ttyAMA0 kgdboc=ttyAMA0保持一致就行

内核启动后可查看是否添加成功cat /proc/cmdline

 

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
QEMU是一种开源的虚拟机软件,它允许在主机上创建和运行虚拟机。要实现QEMU虚拟机与主机共享文件,可以使用QEMU提供的文件传输方式。 首先,在主机上创建一个用于共享文件的文件夹,并将需要共享的文件放入其中。然后,在QEMU虚拟机的配置文件中,添加共享文件夹的路径信息。 接下来,在虚拟机中安装相应的文件传输工具,例如scp(secure copy)或samba。scp是一种基于SSH协议的文件传输方式,而samba是一种支持Windows共享文件夹的协议。根据实际需求选择合适的方式。 如果选择scp方式,可以使用如下命令在虚拟机中将文件复制到共享目录: ``` scp /path/to/source/file username@host:/path/to/shared/folder ``` 其中,/path/to/source/file是需要共享的文件在虚拟机中的路径,username是主机上的用户名,host是主机的IP地址或域名,/path/to/shared/folder是在主机上创建的共享文件夹路径。 如果选择samba方式,在虚拟机中安装samba软件,并配置samba共享文件夹。然后,在主机上可以通过网络连接访问虚拟机的共享文件夹,进行文件的读写操作。 共享文件夹的需要注意的是,主机和虚拟机的网络配置需要正确设置,以确保它们可以相互通信。此外,主机和虚拟机的操作系统也需要支持所选用的文件传输方式。 通过上述步骤,QEMU虚拟机和主机即可实现文件的共享,方便用户在两者之间进行文件的传输和共享。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值