LPIC-2 Linux Kernel and System Startup Practice Question
A system administrator has compiled a custom Linux kernel (version 5.15.19) with ext4 filesystem support built as a module. The administrator installed the kernel to /boot and built an initramfs using dracut with default options. After rebooting, the system fails with a kernel panic: 'VFS: Unable to mount root fs on unknown-block(0,0)'. The administrator confirms that the root partition is /dev/sda1 formatted as ext4 and that the kernel configuration includes the ext4 module. The kernel command line includes 'root=/dev/sda1' and 'rd.auto'. The administrator also notices that the initramfs file is only 5 MB in size, which seems smaller than expected. Which of the following is the most likely cause and best solution?
⚠ Common exam trap
Candidates often assume the kernel command line or root device specification is wrong, when the real issue is that the initramfs lacks the necessary filesystem module, which is a common oversight when using custom kernels with modular filesystem support.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The initramfs is missing the ext4 module because dracut did not include it. The administrator should run 'dracut --force --add-drivers ext4 /boot/initramfs-5.15.19.img 5.15.19' to regenerate the initramfs including the ext4 module.
The initramfs is only 5 MB, which is too small to contain the ext4 kernel module and its dependencies. Dracut with default options may not automatically include modules for the root filesystem if they are not already loaded or detected during initramfs generation. Running 'dracut --force --add-drivers ext4' explicitly forces the ext4 module into the initramfs, ensuring the kernel can mount the root filesystem during boot.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
The initramfs is missing the ext4 module because dracut did not include it. The administrator should run 'dracut --force --add-drivers ext4 /boot/initramfs-5.15.19.img 5.15.19' to regenerate the initramfs including the ext4 module.
Why this is correct
Dracut may fail to detect the module; --add-drivers forces inclusion, and --force overwrites the existing initramfs.
- ✗
The kernel command line needs the 'rd.shell' parameter to allow interactive debugging. The administrator should add 'rd.shell' to the kernel parameter and boot again to investigate.
Why it's wrong here
rd.shell provides a shell before root mount but does not solve the missing module problem; it only allows manual investigation.
- ✗
The root filesystem label or UUID is incorrect. The administrator should change the kernel command line to use 'root=LABEL=root' or 'root=UUID=...'.
Why it's wrong here
The error indicates no root device found at all (unknown-block 0,0), not a wrong device. The device identity is correct.
- ✗
The kernel is missing the ext4 module because it was not compiled. The administrator should recompile the kernel with ext4 compiled directly into the kernel (y) instead of as a module.
Why it's wrong here
The kernel config includes ext4 as a module; the module exists but is not in initramfs. Recompiling as built-in is a workaround but not best practice.
Go deeper
Related to this question
About these practice questions
This LPIC-2 question is part of Courseiva's 507-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This LPIC-2 practice question is part of Courseiva's free LPI certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the LPIC-2 exam.