启动报错:Kernel panic - not syncing: No working init found. Try passing init= option to kernel.

前言

环境介绍:

1.编译环境

Ubuntu 18.04.5 LTS

2.busybox

busybox-1.29.0

3.gcc

gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabih

一、现象

根据正点原子的教程制作根文件系统,单板通过nfs挂载系统启动报错打印如下:

[    5.247191] IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.8
[    5.254767] IP-Config: Complete:
[    5.257995]      device=eth0, hwaddr=02:81:e5:3c:8e:ef, ipaddr=192.168.1.8, mask=255.255.255.0, gw=192.168.1.1
[    5.267988]      host=192.168.1.8, domain=, nis-domain=(none)
[    5.273733]      bootserver=0.0.0.0, rootserver=192.168.1.15, rootpath=
[    5.273737]      nameserver0=192.168.1.1
[    5.284518] ALSA device list:
[    5.287485]   No soundcards found.
[    5.390334] VFS: Mounted root (nfs filesystem) on device 0:15.
[    5.397796] devtmpfs: mounted
[    5.401825] Freeing unused kernel memory: 1024K
[    5.443456] Run /sbin/init as init process
[    5.447657] random: fast init done
[    5.465569] Run /etc/init as init process
[    5.472176] Run /bin/init as init process
[    5.477364] Run /bin/sh as init process
[    5.484286] Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance.

二、解决

问题出在库文件拷贝上,我使用的gcc版本与教程不一致,在处理ld-linux-armhf.so.3这个文件时不能像教程一样删掉而是保留,再将ld-linux-armhf.so.3所对应的文件ld-2.25.so拷贝过来即可。

zhoufeng@ubuntu:/usr/local/arm/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib$ ls ld-linux-armhf.so.3 -l
lrwxrwxrwx 1 11827 9000 10 12月  4  2019 ld-linux-armhf.so.3 -> ld-2.25.so
zhoufeng@ubuntu:/usr/local/arm/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib$ cp ld-2.25.so ~/linux/nfs/rootfs/lib/
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值