Fix ‘sch_htb Module Not Found’ Error in Virt-Manager on Arch Linux

While setting up virt-manager on Arch Linux, I encountered the following error when trying to start the default network:

modprobe: FATAL: Module sch_htb not found in directory /lib/modules/6.14.3-arch1-1

This error prevented virtual machines from accessing the network through virt-manager.


Cause

The sch_htb module (Hierarchical Token Bucket) is critical for network traffic shaping. If missing, it usually means:

  • Kernel headers are missing.
  • The current kernel lacks needed networking modules.

Solution

Install the correct packages:

sudo pacman -S linux-zen-headers linux-lts

Then reboot:

sudo reboot

After reboot, check if the module is available:

sudo modprobe sch_htb

And verify your networks:

virsh net-list --all

Optional: Set LTS Kernel as Default

Set Linux LTS as default in your bootloader, and regenerate GRUB config:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Conclusion

Installing linux-zen-headers and linux-lts ensures important modules like sch_htb are available, fixing networking in virt-manager on Arch Linux.

Happy virtualizing! 🚀