树莓派4基于U-Boot实现无SD卡内存根文件系统启动的问题求助
树莓派4基于U-Boot实现无SD卡内存根文件系统启动的问题求助
各位大佬好,想请教个树莓派4无SD卡启动的问题:
我现在要在树莓派4上实现无SD卡启动Linux,思路是通过U-Boot把根文件系统放到内存中运行,完全不依赖SD卡。
最开始我尝试用tftp把ext3格式的rootfs镜像加载到内存,执行的命令是:
tftpboot 0x00800000 rootfs.ext3
然后给内核传递启动参数:
root=/dev/ram0 rw initrd=0x00800000,300M ramdisk_size=307200
结果内核启动到一半就panic了,报错信息是:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
我现在有点懵,想问问大家:是我漏了创建ramdisk的关键步骤?还是ext3格式本身不适合这么用?或者是我的内核参数配置错了?
补充一下后续的尝试:
后来我查了资料,说用cpio.gz格式的镜像才是常规的内存根文件系统方案,结果生成镜像后启动,又报了这两个错:
Wrong Ramdisk Image Format
Ramdisk image is corrupt or invalid
之后我用mkimage工具对cpio.gz镜像做了打包处理,命令是:
mkimage -A arm -O linux -T ramdisk -C gzip -d ramdisk.cpio.gz uRamdisk
结果启动后又回到最开始的那个内核panic了...
有没有大佬能帮我分析下问题出在哪?
备注:内容来源于stack exchange,提问作者Thugmek
相关产品推荐
相关产品推荐

