Load a compiled kernel object into a running kernel to extend functionality without rebooting. 26.03.2026 | reading time: 2 min Want to add functionality to a running Linux kernel instantly? `insmod` inserts a compiled module file into the kernel and makes the new symbols and code available immediately. Quick hands-on example Build or obtain a module file and then try this: ```bash $ sudo insmod hello.ko $ dmesg | tail -n 5 [ 1234.567890] hello: Hello world module inserted [ 1234.567891] hello: parameter foo=1 ``` This shows `insmod` loading the module and the kernel log reporting its messages. What to watch for in practice `insmod` takes a path to a .ko file and inserts it as-is; it does not resolve dependencies, so missing symbols or wrong kernel version produce errors like "Unknown symbol in module" or "invalid module format"; pass module parameters as `insmod module.ko foo=1`, check `dmesg` for diagnostics, and ensure you built the module against the running kernel headers. Where `insmod` fits among tools Use `insmod` for direct, explicit insertion when you control the module file and dependencies; prefer `modprobe` when you want automated dependency resolution, and use `rmmod`, `lsmod` and `modinfo` to remove, list and inspect modules; run `depmod` after installing module files to update dependency maps. Next steps and why it matters Loading modules at runtime is a core skill for system troubleshooting and driver development; practice inserting, inspecting and removing modules, then deepen your knowledge and pursue certifications like CompTIA Linux+ or LPIC-1 with intensive exam preparation at bitsandbytes.academy. Join Bits & Bytes Academy First class LINUX exam preparation. utilities boot-process troubleshooting infrastructure