1 Explaining the "No working init found." boot h 2 ============================================== 3 :Authors: Andreas Mohr <andi at lisas period d 4 Cristian Souza <cristianmsbr at gmai 5 6 This document provides some high-level reasons 7 (listed roughly in order of execution) to load 8 9 1) **Unable to mount root FS**: Set "debug" ke 10 config file or CONFIG_CMDLINE) to get more 11 12 2) **init binary doesn't exist on rootfs**: Ma 13 root FS type (and ``root=`` kernel paramete 14 partition), required drivers such as storag 15 USB!) and filesystem (ext3, jffs2, etc.) ar 16 modules, to be pre-loaded by an initrd). 17 18 3) **Broken console device**: Possibly a confl 19 --> initial console unavailable. E.g. some 20 due to serial IRQ issues (e.g. missing inte 21 Try using a different ``console= device`` o 22 23 4) **Binary exists but dependencies not availa 24 dependencies of the init binary such as ``/ 25 broken. Use ``readelf -d <INIT>|grep NEEDED 26 are required. 27 28 5) **Binary cannot be loaded**: Make sure the 29 your hardware. E.g. i386 vs. x86_64 mismatc 30 hardware. In case you tried loading a non-b 31 you should make sure that the script specif 32 shebang header line (``#!/...``) that is fu 33 library dependencies). And before tackling 34 simple non-script binary such as ``/bin/sh` 35 execution. To find out more, add code ``to 36 kernel_execve()s return values. 37 38 Please extend this explanation whenever you fi 39 (after all loading the init binary is a CRITIC 40 which needs to be made as painless as possible 41 Further TODOs: 42 43 - Implement the various ``run_init_process()`` 44 which can then store the ``kernel_execve()`` 45 log it all by iterating over **all** results 46 - Try to make the implementation itself more h 47 providing additional error messages at affec 48
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.