Courseiva
System Architecture →hardMultiple Choice

LPIC-1 System Architecture Practice Question

A system administrator needs to ensure that a custom kernel module named 'mydriver.ko' is loaded automatically at boot on a system that uses systemd. The module is located in /lib/modules/$(uname -r)/extra/. Which approach is most appropriate?

⚠ Common exam trap

The trap here is assuming that any file named /etc/modules will be honored by systemd, when the correct directory is /etc/modules-load.d/.

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

✓

Create a file /etc/modules-load.d/mydriver.conf containing the line 'mydriver'.

On systemd-based systems, the systemd-modules-load service is responsible for loading modules at boot based on configuration files in /etc/modules-load.d/, /run/modules-load.d/, and /usr/lib/modules-load.d/. Creating a .conf file with the module name in /etc/modules-load.d/ is the correct, supported method. Other approaches may work incidentally but are not the intended mechanism.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Add the line 'mydriver' to /etc/modules.

    Why it's wrong here

    The /etc/modules file is used by some non-systemd distributions and by the kmod package's modules-load.d compatibility, but on a systemd system the authoritative location is /etc/modules-load.d/. Relying on /etc/modules may not work if the systemd-modules-load service is not configured to read it.

  • ✗

    Insert the module into the initramfs using 'mkinitrd' and rely on it being loaded during early boot.

    Why it's wrong here

    Including a module in the initramfs makes it available during early userspace, but it does not automatically load it unless something in the initramfs triggers it or it is listed for loading. The initramfs is for essential boot modules, not general automatic loading of arbitrary drivers.

  • ✗

    Run 'modprobe mydriver' and add it to /etc/rc.local.

    Why it's wrong here

    modprobe loads the module immediately, but /etc/rc.local is not guaranteed to be executed on modern systemd systems unless the rc-local.service is enabled. Using rc.local is a legacy approach and may fail if the service is not active, so it is not the most appropriate method.

  • ✓

    Create a file /etc/modules-load.d/mydriver.conf containing the line 'mydriver'.

    Why this is correct

    The systemd-modules-load.service reads configuration files from /etc/modules-load.d/ and loads the listed modules at boot. Placing the module name in a .conf file there ensures it is loaded automatically. This is the systemd-native method for specifying modules to load at startup.

About these practice questions

Courseiva writes every LPIC-1 question from scratch — 402 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official LPI exam blueprint

This LPIC-1 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-1 exam.