Inspecting the initramfs

From postmarketOS
Jump to navigation Jump to search
Note This is considered a security hole. Only use it for debugging, and uninstall the debug-shell hook afterwards.

This page explains how to connect to your device when it has booted to the initramfs by installing the debug-shell hook. This is useful if you want to know more about the boot process, simply inspect the initramfs or if you want to debug why something doesn't work.

It is possible to enable a telnet daemon that gives you a shell this way:

$ pmbootstrap initfs hook_add debug-shell
$ pmbootstrap flasher boot # or however you flash/boot the kernel
(wait until the device booted up and you are connected to it)
$ telnet
Connected to
Escape character is '^]'.

Type 'pmos_continue_boot' to continue booting:
# echo "hello world"
hello world
# pmos_continue_boot
Connection closed by foreign host.

If the telnet command does not work out of the box, read connect via USB Networking in the Initramfs.

Enable initramfs-extra

To enable functionality from initramfs-extra, run the following commands in the shell:

# .
# mount_boot_partition
Mount boot partition (/dev/dm-0)
# extract_initramfs_extra $initramfs_extra
Extract /boot/initramfs-sony-amami-extra
24128 blocks

Here '$initramfs_extra' is the path of the file .(for lg-bullhead whole command will be 'extract_initramfs_extra ./boot/initramfs-lg-bullhead-extra')

Additional programs

After installing the debug-shell initramfs hook, the evtest, fftest and fbdebug programs are available in the initramfs (#1358).

Tips and tricks