欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux移植过程遇到系统崩溃(根文件原因)

程序员文章站 2022-03-03 20:47:55
在linux启动过程中报如下错误:Starting init: /sbin/init exists but couldn't execute it (error -8)request_module: runaway loop modprobe binfmt-464cStarting init: /bin/sh exists but couldn't execute it (error -8)Kernel panic - not syncing: No working init found. Try...

在linux启动过程中报如下错误:

Starting init: /sbin/init exists but couldn't execute it (error -8)
request_module: runaway loop modprobe binfmt-464c
Starting init: /bin/sh exists but couldn't execute it (error -8)
Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
---[ end Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.

linux移植过程遇到系统崩溃(根文件原因)
根据错误信息,定位到了/sbin/init这个文件,使用ls -la命令查看发现其指向/bin/busybox这个文件,说明问题出在busybox这个文件上。
linux移植过程遇到系统崩溃(根文件原因)
进入/bin文件夹后使用file命令查看busybox这个文件的属性,找到了问题,原来该文件使用的默认的编译器编译出来的,而默认编译器为x86平台的,在arm运行不出问题才怪。找到问题后,解决办法就有了,打开busybox工具的Mafile文件,将arm-linux-gnueabihf-赋值给CROSS_COMPILE变量,指定使用arm编译器编译。
linux移植过程遇到系统崩溃(根文件原因)
重新编译busybox

make install CONFIG_PREFIX=/home/linux/rootfs

重新查看/bin/busybox的属性
linux移植过程遇到系统崩溃(根文件原因)
显示为arm平台程序,烧录进开发板,成功进入根目录,问题解决。
linux移植过程遇到系统崩溃(根文件原因)

本文地址:https://blog.csdn.net/lxh1205509119/article/details/107934762

相关标签: linux ubuntu