首页 > 其他分享 >正点原子IMX6ULL开发板-烧写自制系统-启动kernel后显示“No working init found”问题

正点原子IMX6ULL开发板-烧写自制系统-启动kernel后显示“No working init found”问题

时间:2023-03-03 20:12:34浏览次数:38  
标签:kernel working tar No 文件夹 归档 bz2 rootfs

环境

VMware 17.0.0
Ubuntu16
NXP提供的U-boot与Linux版本:
u-boot:uboot-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2
linux:linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2
开发板: 正点原子-IMX6ULL_EMMC版本,底板版本v2.2
busybox版本:busybox-1.29.0.tar.bz2


问题描述

将u-boot.imx、zImage、imx6ull-alientek-emmc.dtb、rootfs通过官方的MfgTool烧写到开发板的EMMC。启动板子后,log如下:
image


问题分析

1、从log来看,zImage应该无问题,板子应是进入了kernel。
2、kernel启动后会挂载跟文件系统,推测应该是rootfs出了问题,考虑到该rootfs在打包前曾通过nfs挂载到板子上测试过,文件应该无问题。
3、在使用MfgTool烧写前,需要对rootfs文件夹进行归档并复制到对应的文件夹。翻看历史信息,发现tar命令在rootfs文件夹的上一级目录,如下图,并且在归档的过程中产生了一个错误(.ash_history是根目录下的隐藏文件)。

(省略部分归档信息)

4、从第3步来看,产生的错误应该不是导致rootfs不可用的根因,应该是tar命令用错了位置导致的,命令的具体意思如下:

~/alientek/nfs tar -vcjf rootfs.tar.bz2 * 表示将nfs文件夹归档为rootfs.tar.bz2
~/alientek/nfs/rootfs tar -vcjf rootfs.tar.bz2 * 表示将rootfs文件夹归档为rootfs.tar.bz2

5、从第4步来看,应该是归档错文件夹,才导致kernel在挂载rootfs时找不到对应的文件。比如:原本是找根目录下的A文件夹中的a文件,归档错文件夹后,根目录下只有B文件夹,没有A文件夹了。
6、使用~/alientek/nfs/rootfs tar -vcjf rootfs.tar.bz2 *命令重新归档rootfs后,通过MfgTool重新烧录,进入kernel后就能成功挂载跟文件系统了,如下图。


总结

1、在linux中,归档与win下的压缩文件夹操作不同。在linux中,若需对A文件夹进行归档,需要进入到A文件夹下(cd A/)才可进行归档;而在win中,不需进入到A文件夹下,直接在A文件夹的上一级中,点击A文件夹即可进行压缩。

标签:kernel,working,tar,No,文件夹,归档,bz2,rootfs
From: https://www.cnblogs.com/hunghau/p/17176699.html

相关文章