Arch Linux Initramfs - ryzendew/Linux-Tips-and-Tricks GitHub Wiki

Arch Linux Initramfs Guide

Complete beginner-friendly guide to initramfs on Arch Linux, including configuration, regeneration, and troubleshooting.


Table of Contents

  1. Understanding Initramfs
  2. Configuring Initramfs
  3. Regenerating Initramfs
  4. Troubleshooting

Understanding Initramfs

What is Initramfs?

Initramfs is initial RAM filesystem loaded before root filesystem.

Purpose:

  • Load kernel modules
  • Mount root filesystem
  • Start init system

Configuring Initramfs

mkinitcpio Configuration

Edit config:

# Edit config
sudo vim /etc/mkinitcpio.conf

Common hooks:

HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block filesystems fsck)

Add Hooks

For encryption:

HOOKS=(base udev ... encrypt ... filesystems)

For LVM:

HOOKS=(base udev ... lvm2 ... filesystems)

Regenerating Initramfs

Regenerate

Regenerate all:

# Regenerate for all kernels
sudo mkinitcpio -P

# For specific kernel
sudo mkinitcpio -p linux

After Changes

Regenerate after:

  • Kernel updates
  • Hook changes
  • Module changes

Troubleshooting

Boot Issues

Check initramfs:

# List images
ls -lh /boot/initramfs-*

# Check config
cat /etc/mkinitcpio.conf

Rebuild

Force rebuild:

# Force rebuild
sudo mkinitcpio -P -v

Summary

This guide covered initramfs configuration, regeneration, and troubleshooting.


Next Steps


This guide is based on the ArchWiki. For the most up-to-date information, always refer to the official ArchWiki.