Introduction:
Encountering an error message during boot can be frustrating, especially when it prevents you from accessing your system. One such error is the “Missing modules” and “UUID doesn’t exist” issue in BusyBox. In this article, we will explore the possible causes of this error and provide step-by-step solutions to help you resolve it.
Understanding the Error:
When you encounter the error message “Missing modules (cat /proc/modules; ls /dev)” and “ALERT! UUID=XXXX does not exist. Dropping to a shell!” in BusyBox, it indicates that the system is unable to find the required modules and the specified UUID does not exist. This can prevent the system from booting properly and leave you stuck in the initramfs shell.
Possible Causes:
There are several reasons why you might encounter this error. Let’s explore some of the common causes:
- Incorrect Root Device: The root device specified in the boot configuration may be incorrect or unavailable. This can happen if the UUID or device path is misconfigured.
- Missing Modules: The necessary kernel modules required for the system to boot are not available or loaded.
- Filesystem Corruption: The filesystem containing the root device might be corrupted, preventing the system from locating the specified UUID.
Solutions:
Now, let’s delve into the solutions to help you overcome the “Missing modules” and “UUID doesn’t exist” error in BusyBox. Follow these steps carefully to resolve the issue:
Verify the Correct Root Device
The first step is to ensure that you have identified the correct root device. In the initramfs shell, use the following command to display the boot arguments:
code
cat /proc/cmdline
Check the output for the root parameter, which contains the UUID or device path. Make a note of it.
Confirm Module Availability
Next, check if the required modules are available. Use the following command to view the loaded modules:
code
cat /proc/modules
If the output is empty or doesn’t include the necessary modules, it indicates that they are missing. This can contribute to the error.
Update Boot Configuration
To resolve the error, you may need to update the boot configuration to specify the correct root device. Follow these steps:
- Identify the correct device path of your root partition. You can use the following command to list the available devices:
code
ls /dev
Look for the device that corresponds to your root partition, such as /dev/sda1 or /dev/nvme0n1p1.
- Modify the boot configuration. In the initramfs shell, use the editor available (such as vi or nano) to update the configuration. For example, if you are using GRUB, locate the configuration file (e.g., /boot/grub/grub.cfg) and modify the root parameter to the correct device path.Before:makefileCopy code
root=UUID=XXXX ro quiet splash
After:javascriptCopy coderoot=/dev/sda1 ro quiet splash
Save the changes.
Reboot the System
After updating the boot configuration, exit the initramfs shell by typing “exit” and pressing Enter. This will initiate the system reboot.
Upon reboot, the system should now be able to locate the correct root device and boot successfully without encountering the “Missing modules” and “UUID doesn’t exist” error.