当前位置: 首页 > news >正文

在qemu中挂载镜像文件

将镜像文件作为交换分区

创建镜像文件:

dd if=/dev/zero of=swap.img bs=512 count=131072
qemu-system-arm -nographic -M vexpress-a9 -m 64M -kernel arch/arm/boot/zImage -append "rdinit=/linuxrc console=ttyAMA0 loglevel=8" -dtb arch/arm/boot/dts/vexpress-v2p-ca9.dtb -sd swap.img

~ # mkswap /dev/mmcblk0
Setting up swapspace version 1, size = 67104768 bytes
[   62.306076] random: mkswap urandom read with 112 bits of entropy available
UUID=f1837026-d957-4153-97ab-31f549ec0534
~ # [   72.694766] random: nonblocking pool is initialized
swapon /dev/mmcblk0
[   83.105627] Adding 65532k swap on /dev/mmcblk0.  Priority:-1 extents:1 across:65532k SS
~ # df -h
Filesystem                Size      Used Available Use% Mounted on
tmpfs                    24.8M         0     24.8M   0% /tmp
tmpfs                    24.8M         0     24.8M   0% /dev
~ # freetotal        used        free      shared  buff/cache   available
Mem:          50840       11948       32708        2152        6184       34028
Swap:         65532           0       65532

将镜像文件作为外挂磁盘

dd if=/dev/zero of=ext4.img bs=512 count=131072

格式化:

mkfs.ext4 ext4.img

 挂载 ext4 文件系统需要打开如下配置的选项。

[arch/arm/configs/vexpress _ defconfig]
CONFIG _ LBDAF=y
CONFIG_EXT4 _ FS=y 

 

重新编译内核

qemu-system-arm -nographic -M vexpress-a9 -m 64M -kernel arch/arm/boot/zImage -append "rdinit=/linuxrc console=ttyAMA0 loglevel=8" -dtb arch/arm/boot/dts/vexpress-v2p-ca9.dtb -sd ext4.img

系统启动后,手动挂载。 

 挂载成功。

未验证

在启动命令后使用-sd swap.img报错

WARNING: Image format was not specified for 'swap.img' and probing guessed raw.
         Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
         Specify the 'raw' format explicitly to remove the restrictions.
qemu-system-aarch64: -sd swap.img: machine type does not support if=sd,bus=0,unit=0
 

解决办法: 将-sd swap.img替换为下面的形式

-drive format=raw,file=swap.img

http://www.lryc.cn/news/115499.html

相关文章:

  • 报错注入(主键重复)攻击原理
  • Golang基础教程
  • ppt压缩文件怎么压缩最小?文件压缩技巧分享
  • 实例033 制作闪烁的窗体
  • 【JavaEE进阶】Spring创建与使用
  • PHP8的循环控制语句-PHP8知识详解
  • 第八次作业
  • LeetCode //C - 290. Word Pattern
  • [保研/考研机试] 括号匹配问题 C++实现
  • springBoot集成caffeine,自定义缓存配置 CacheManager
  • 【瑞吉外卖】Git部分学习
  • 如何阐述自己做了一个什么样的东西
  • TC3XX - MCAL知识点(二十二):QSPI 同步与异步 Mcal配置及代码实战
  • led台灯哪些牌子性价比高?推荐几款性价比高的护眼台灯
  • 什么情况下容易发生锁表及如何处理
  • elk开启组件监控
  • Java Random 类的使用
  • 完美的分布式监控系统——Prometheus(普罗米修斯)与优雅的开源可视化平台——Grafana(格鲁夫娜)
  • pycharm的Terminal中如何设置打开anaconda3的虚拟环境
  • Jmeter(四) - 从入门到精通 - 创建网络测试计划(详解教程)
  • Flowable-结束事件-空结束事件
  • Elasticsearch:如何创建 Elasticsearch PEM 和/或 P12 证书?
  • 数仓架构模型设计参考
  • RedisTemplate.opsForGeo()用法简介并举例
  • Android OkHttp源码分析--拦截器
  • docker:如何传环境变量给entrypoint
  • kuboard安装和使用
  • 海外直播种草短视频购物网站巴西独立站搭建
  • C#图像均值和方差计算实例
  • 【动态规划】数字三角形