First 50 of 199 questions. Each one lists the choices, the correct answer, and an explanation. The checker at the top of this page saves progress in this browser when it is available.
Continue in the practice tool above to load more questions, 50 at a time.
Question 1System Architecture
Where does a modern PC normally keep firmware settings such as the boot device order and whether virtualization extensions are enabled?
- In the /boot/grub/grub.cfg file
- In the first sector of the boot disk
- In NVRAM on the motherboard Correct answer.
- In the kernel image itself
Explanation
Settings that belong to the platform firmware, such as boot order, clock configuration and CPU feature toggles, are stored in non-volatile memory on the mainboard and edited through the firmware setup screen. The boot loader configuration and the kernel image are files on disk and play no part in storing those settings.
Question 2System Architecture
Which directory of the virtual filesystem presents the kernel's device, bus and driver model as a tree of directories and attribute files?
- /var
- /dev
- /sys Correct answer.
- /etc
Explanation
sysfs, mounted at /sys, exports the kernel object model so that every device, bus and driver appears as a directory with readable and sometimes writable attributes. /dev instead contains device nodes that programs open, not the kernel's internal device hierarchy.
Question 3System Architecture
Which command prints the contents of the kernel ring buffer, including hardware detection messages from the last boot?
- journalctl --list-boots
- dmesg Correct answer.
- cat /var/log/syslog
- lsmod
Explanation
The kernel writes boot and driver messages into an in-memory ring buffer, and dmesg is the tool that prints it. Log files and journal queries show what a logging daemon captured, which is not the same as reading the buffer directly.
Question 4System Architecture
In a SysV init system, which runlevel provides full multi-user operation with networking but without a graphical login?
- Runlevel 0
- Runlevel 1
- Runlevel 6
- Runlevel 3 Correct answer.
Explanation
The traditional numbering reserves 0 for halt, 1 for single-user mode, 6 for reboot, and 3 for the normal networked text console. Runlevel 5 is used on many distributions for the graphical environment.
Question 5System Architecture
Which systemd target corresponds to the traditional runlevel 3, that is, a networked multi-user system without a display manager?
- poweroff.target
- rescue.target
- multi-user.target Correct answer.
- network-online.target
Explanation
systemd maps the old runlevels onto targets: multi-user.target is the normal text-mode system with networking, while graphical.target adds the display manager. The other targets serve narrower special purposes.
Question 6System Architecture
What is the main purpose of an initramfs image?
- To provide an early userspace with drivers needed to mount root Correct answer.
- To collect kernel boot messages for later analysis by an administrator
- To keep the kernel configuration available for later reference
- To store a compressed copy of the boot loader configuration
Explanation
The initramfs is a small archive unpacked into memory by the kernel; it contains modules and tools such as LVM, RAID or encryption helpers that are needed to find and mount the real root filesystem before switching to it. After the switch it is normally discarded.
Question 7System Architecture
Which MBR partition type identifier marks a partition as Linux swap space?
- 0x83
- 0x82 Correct answer.
- 0x07
- 0x8e
Explanation
In a classic MBR partition table the single-byte type field distinguishes partition content: 0x82 means Linux swap, 0x83 plain Linux, 0x8e Linux LVM and 0x07 NTFS or exFAT. Tools such as fdisk show these values when printing the table.
Question 8System Architecture
Which command installs the GRUB boot loader into the boot area of /dev/sda on a BIOS-based system?
- grub-mkrescue /dev/sda
- update-grub /dev/sda
- grub-mkconfig -o /boot/grub/grub.cfg
- grub-install /dev/sda Correct answer.
Explanation
grub-install copies the boot loader stages to the target disk, using the MBR gap on BIOS systems or the EFI System Partition on UEFI systems. Generating menu entries is a separate step performed by grub-mkconfig.
Question 9System Architecture
Which file holds the variable GRUB_CMDLINE_LINUX, which grub-mkconfig adds to every generated kernel entry?
- /boot/grub/grub.cfg
- /etc/fstab
- /etc/default/grub Correct answer.
- /etc/grub.d/40_custom
Explanation
grub-mkconfig reads /etc/default/grub for user settings such as the timeout and the default kernel command line, then combines them with the templates in /etc/grub.d to write the final configuration. Keeping edits in /etc/default/grub means they survive regeneration.
Question 10System Architecture
Which command shows kernel uevents and the resulting udev processing in real time, for example while a USB device is plugged in?
- udevadm monitor Correct answer.
- journalctl --list-boots
- dmesg --follow
- lsusb --tree
Explanation
udevadm monitor subscribes to the kernel's event socket and prints both the raw uevents and the events udev generates after applying its rules, which makes it the standard tool for observing hotplug handling. dmesg shows driver messages but not udev's rule processing.
Question 11System Architecture
In which directory are administrator-created udev rules normally placed?
- /etc/init.d
- /usr/lib/udev/rules.d
- /etc/udev/rules.d Correct answer.
- /lib/modules
Explanation
Local rules go into /etc/udev/rules.d and are read in lexical order; distribution-provided rules live in /usr/lib/udev/rules.d and can be overridden by a file of the same name in /etc. Rules are re-read when udev is reloaded or the system boots.
Question 12System Architecture
Which file in /proc lists the I/O port ranges that drivers have registered for their devices?
- /proc/interrupts
- /proc/dma
- /proc/meminfo
- /proc/ioports Correct answer.
Explanation
/proc/ioports reports the port address ranges claimed by each driver, which is useful when diagnosing an address conflict between two devices. Interrupt lines and legacy DMA channels are reported in separate files.
Question 13System Architecture
Which GRUB 2 command loads a Linux kernel image from the boot partition so that it can be started?
- set
- initrd
- linux Correct answer.
- chainloader
Explanation
In GRUB 2 the linux command loads the kernel and takes its command line as arguments, while initrd loads the matching initramfs afterwards. Only after both are loaded does the boot command transfer control to the kernel.
Question 14System Architecture
Which command makes graphical.target the default boot target for all future boots?
- systemctl enable graphical.target
- systemctl set-default graphical.target Correct answer.
- systemctl isolate graphical.target
- systemctl start graphical.target
Explanation
set-default rewrites the default.target symlink so that the chosen target is started on the next boot. isolate changes only the currently running target and leaves the default untouched.
Question 15System Architecture
On a Debian-based system using SysV init, in which directory are the service control scripts located?
- /etc/rc.local
- /usr/lib/systemd/system
- /etc/systemd/system
- /etc/init.d Correct answer.
Explanation
SysV init runs scripts stored in /etc/init.d and links them into per-runlevel directories such as /etc/rc3.d to select which services start. The init scripts themselves accept start, stop, restart and status arguments.
Question 16System Architecture
Where does GPT keep its backup copy of the partition table?
- In the /boot filesystem
- In the first sector of the disk
- At the end of the disk Correct answer.
- In the extended boot record
Explanation
GPT writes a primary header and partition entry array near the beginning of the disk and a duplicate at the last usable sector, so a damaged primary copy can be repaired from the backup with tools such as gdisk. This redundancy is one of the advantages over MBR.
Question 17System Architecture
Which tool generates the initramfs image on Fedora and RHEL systems?
- mkinitcpio
- dracut Correct answer.
- grub2-mkconfig
- update-initramfs
Explanation
dracut builds the initramfs from the running system's modules and configuration, writing the result to /boot. Its options differ from the distribution-specific tools used elsewhere, so the correct choice depends on the distribution family.
Question 18System Architecture
Which kernel parameter specifies the device that should be mounted as the root filesystem at boot?
- init=
- root= Correct answer.
- rdinit=
- vga=
Explanation
root= names the block device, for example root=/dev/sda2 or root=UUID=..., that the kernel or initramfs mounts as /. The init= parameter instead names the first program executed in the real root after mounting.
Question 19System Architecture
Which of the following commands performs an orderly shutdown and then removes power from the machine?
- poweroff Correct answer.
- init 6
- shutdown -H now
- reboot
Explanation
poweroff stops services cleanly and then signals the hardware through ACPI to cut power. Halting with shutdown -H stops the CPU but may leave the power supply on, which is the key difference.
Question 20System Architecture
Which file lists the filesystems, mount points and options used to mount the non-root filesystems after the root filesystem is up?
- /etc/fstab Correct answer.
- /etc/crypttab
- /etc/mtab
- /proc/mounts
Explanation
/etc/fstab is the administrator-maintained table read by mount and by the boot process to bring up remaining filesystems, including swap. It also carries the dump and fsck order fields.
Question 21System Architecture
In GRUB 2 device naming, what does (hd0,gpt3) identify?
- Partition 3 on the first GPT disk Correct answer.
- Partition 1 on the third GPT disk
- Logical partition 3 on the first disk
- The third GPT disk in the system
Explanation
GRUB numbers disks from zero in firmware enumeration order and appends the partition number, with gpt or msdos indicating the partition table type. The first number is therefore the disk and the second the partition on that disk.
Question 22System Architecture
Which systemd target mounts the root filesystem read-only and starts only the most minimal services?
- rescue.target
- sysinit.target
- multi-user.target
- emergency.target Correct answer.
Explanation
emergency.target is the most minimal mode: the root filesystem is mounted read-only and only a root shell is offered, which makes it useful when the disk must not be modified. rescue.target goes further and mounts filesystems read-write with basic services.
Question 23System Architecture
Which command creates a new entry in the UEFI boot manager so that the firmware can start a Linux boot loader?
- efibootmgr -v
- grub-install --recheck
- efibootmgr -c Correct answer.
- bootctl list
Explanation
efibootmgr writes Boot#### variables into the firmware's non-volatile store, and -c creates a new one pointing at a loader file on a specified disk and partition. Listing existing entries and reinstalling boot files do not add a new boot variable.
Question 24System Architecture
Why is /boot frequently placed on a separate, unencrypted partition when the root filesystem is encrypted?
- Because the Linux kernel cannot reside on any encrypted block device
- Because the boot loader must read the kernel before the root is decrypted Correct answer.
- Because /boot is required to be mounted read-only during normal operation
- Because GRUB cannot load a kernel from a filesystem that is not encrypted
Explanation
At boot the firmware and boot loader execute before any root-device decryption happens, so they must be able to read the kernel and initramfs from storage that is accessible at that moment. Placing them on a plain /boot partition, or teaching GRUB to decrypt, solves that ordering problem.
Question 25System Architecture
Which command asks the kernel to re-emit uevents for devices that already exist, so that udev applies its rules to them again?
- udevadm settle
- udevadm trigger Correct answer.
- udevadm control
- udevadm info
Explanation
udevadm trigger replays events for devices present in sysfs, which is how coldplug devices are processed after udev starts or after rules change. It only requests events; the other subcommands wait for, query or configure the daemon.
Question 26System Architecture
Which directory in a Linux system contains files such as cpuinfo, meminfo and interrupts that report kernel and hardware information?
- /proc Correct answer.
- /sys
- /dev
- /etc
Explanation
The proc filesystem is mounted at /proc and presents kernel and process data as virtual files that are generated on access. Files such as cpuinfo and meminfo therefore exist only in memory and always reflect the current state.
Question 27System Architecture
Which command lists the USB devices attached to the system together with their vendor and product identifiers?
- lspci
- lsmod
- lsusb Correct answer.
- lsblk
Explanation
lsusb reads the USB bus information and prints one line per device, including the vendor and product ID in hexadecimal form. It is the USB counterpart of lspci.
Question 28System Architecture
Which command displays the kernel modules that are currently loaded, along with their size and usage count?
- depmod
- lsmod Correct answer.
- insmod
- modinfo
Explanation
lsmod prints the contents of /proc/modules in a readable table with the module name, its memory size and how many other modules use it. It only reports modules that are already resident in the kernel.
Question 29System Architecture
In the traditional SysV init scheme, which runlevel is used to halt the system?
- 0 Correct answer.
- 3
- 6
- 1
Explanation
Runlevel 0 is defined as system halt, so init stops all services and then tells the kernel to power off. Runlevel 6 is reserved for reboot and runlevel 1 for single-user mode.
Question 30System Architecture
Which command displays the default target that systemd will boot into?
- systemctl default
- systemctl get-default Correct answer.
- systemctl show-default
- systemctl list-targets
Explanation
systemctl get-default prints the name of the target unit that default.target links to, which is the target reached at the end of boot. Changing it requires set-default rather than get-default.
Question 31System Architecture
Which command prints the contents of the kernel ring buffer, including hardware detection messages generated during boot?
- uptime
- last
- who
- dmesg Correct answer.
Explanation
dmesg dumps the kernel ring buffer, which stores messages emitted by the kernel and its drivers, including device probing at boot time. Access may be restricted by the kernel.dmesg_restrict sysctl parameter.
Question 32System Architecture
What is the name of the firmware routine that tests and initializes hardware before a boot loader is started?
- MBR
- GRUB
- POST Correct answer.
- initramfs
Explanation
The power-on self-test runs from firmware immediately after power is applied and verifies that essential hardware such as memory and processors is functional. Only after it finishes does the firmware hand control to a boot loader.
Question 33System Architecture
Which file did traditional SysV init read to determine the default runlevel?
- /etc/init.d/rc
- /etc/default/grub
- /etc/inittab Correct answer.
- /etc/rc.local
Explanation
The init daemon parsed /etc/inittab at startup and used the initdefault entry to select the runlevel to enter. On systems using systemd the equivalent setting is the default.target symbolic link.
Question 34System Architecture
How many primary partitions can a disk with an MBR partition table hold at most?
- 2
- 16
- 4 Correct answer.
- 8
Explanation
The MBR partition table has room for exactly four 16-byte entries, so only four primary partitions can exist. If more are needed, one entry is used as an extended partition that contains logical partitions.
Question 35System Architecture
Which command loads a kernel module together with any modules it depends on?
- rmmod
- insmod
- modprobe Correct answer.
- modinfo
Explanation
modprobe consults the dependency information generated by depmod and loads the requested module plus everything it needs. It also applies options and blacklist rules configured under /etc/modprobe.d.
Question 36System Architecture
Which file can an administrator create to stop modprobe from loading a particular kernel module automatically?
- /etc/modprobe.d/blacklist.conf Correct answer.
- /etc/modules
- /etc/default/modules
- /etc/sysctl.conf
Explanation
Configuration files in /etc/modprobe.d may contain blacklist lines that prevent modprobe from loading a module when it is requested as an alias. The file name is arbitrary as long as it ends in .conf and lives in that directory.
Question 37System Architecture
Which command prints every kernel parameter that is currently available through sysctl?
- sysctl -n
- sysctl -a Correct answer.
- sysctl -w
- sysctl -p
Explanation
The -a option makes sysctl dump all currently known parameters and their values. Other options are used to change values or to alter the output format.
Question 38System Architecture
Which file reports, for each IRQ line, how many interrupts have been handled by each CPU?
- /proc/interrupts Correct answer.
- /proc/devices
- /proc/softirqs
- /proc/ioports
Explanation
The proc file /proc/interrupts contains one row per interrupt line with a counter for every processor, plus the driver that registered the handler. It is the standard way to check whether a device is generating interrupts.
Question 39System Architecture
Which systemd unit type starts a service on demand when traffic arrives on a network port?
- .mount
- .target
- .socket Correct answer.
- .timer
Explanation
A socket unit owns a network or UNIX socket and activates the associated service unit only when a connection or datagram arrives. This socket activation lets services start lazily and be restarted without losing the listening socket.
Question 40System Architecture
Which command switches the running system immediately to the rescue target, stopping units that are not required by it?
- systemctl enable rescue.target
- systemctl start rescue.target
- systemctl set-default rescue.target
- systemctl isolate rescue.target Correct answer.
Explanation
isolate starts the named target and stops everything that is not part of its dependency tree, which is how runlevel changes are performed under systemd. Without isolate the target's units are merely started alongside the current ones.
Question 41System Architecture
Which command shows log entries from the current boot only?
- journalctl -b Correct answer.
- journalctl -n 20
- journalctl -f
- journalctl --since today
Explanation
The -b option limits journal output to messages recorded since the last system start, and a numeric offset such as -b -1 selects an earlier boot. Other options filter by count, time or follow mode instead of by boot.
Question 42System Architecture
Which command configures a unit so that it is started automatically at boot by creating the required symbolic links?
- systemctl mask
- systemctl enable Correct answer.
- systemctl start
- systemctl daemon-reload
Explanation
enable reads the [Install] section of a unit and creates the links that connect it to the appropriate target's wants or requires directory under /etc/systemd/system. It does not start the unit right away.
Question 43System Architecture
Which command reports the total time spent in firmware, the boot loader and userspace during the most recent boot?
- systemd-analyze Correct answer.
- systemd-analyze critical-chain
- systemd-analyze verify
- systemd-analyze blame
Explanation
Run without arguments, systemd-analyze prints a startup summary that splits the boot into firmware, loader, kernel and userspace phases. Additional subcommands drill into individual units or configuration problems.
Question 44System Architecture
Which command lists block devices in a tree, showing their size, type and mount point?
- lsblk Correct answer.
- df -h
- fdisk -l
- mount
Explanation
lsblk reads sysfs and prints all block devices in a parent-child tree, including size, type, name and, where applicable, the mount point. It shows empty devices that hold no filesystem as well.
Question 45System Architecture
Which command prints total, used and available memory together with buffer and cache usage in human-readable units?
- du -sh
- vmstat
- top
- free -h Correct answer.
Explanation
free summarises the memory figures taken from /proc/meminfo, and the -h option scales the values to KiB, MiB and GiB. It distinguishes buffers and cache from memory actually consumed by processes.
Question 46System Architecture
Which mechanism allows a new kernel to be loaded and started from the running kernel without going through the firmware boot process?
- kexec Correct answer.
- kprobe
- kdump
- kmod
Explanation
kexec loads a kernel image into memory and jumps to it directly, skipping firmware initialization and shortening the reboot. It is commonly used together with kdump so that a crash kernel can be started after a panic.
Question 47System Architecture
Which command rebuilds the modules.dep file that records the dependencies between kernel modules?
- modprobe
- modinfo
- insmod
- depmod Correct answer.
Explanation
depmod scans the module tree under /lib/modules and writes modules.dep and its associated index files so that modprobe can resolve dependencies. It is normally run automatically after a kernel or module package is installed.
Question 48System Architecture
Which command saves the contents of memory to the swap area and powers the machine down, restoring the saved state at the next start?
- systemctl poweroff
- systemctl suspend
- systemctl hibernate Correct answer.
- systemctl hybrid-sleep
Explanation
hibernate writes an image of memory to swap and then powers off, so the state survives without power. On resume the kernel reads the image back and the session continues where it stopped.
Question 49System Architecture
Which command displays, as a tree, the units that a given unit pulls in through its dependency declarations?
- systemctl list-dependencies Correct answer.
- systemctl status
- systemctl list-units
- systemctl list-unit-files
Explanation
list-dependencies walks the Requires, Wants and similar relationships of the named unit and prints the resulting tree. The output shows what will be started or stopped together with that unit.
Question 50System Architecture
Which command reboots the machine in 15 minutes after warning every logged-in user?
- shutdown -r +15 Correct answer.
- shutdown -c +15
- shutdown -k +15
- shutdown -h +15
Explanation
The -r option selects a reboot and the +15 form schedules it relative to the current time, while the default message is broadcast to all terminals. The scheduled action can still be called off with -c before it runs.