What is dkms
Last updated: April 1, 2026
Key Facts
- DKMS automatically handles kernel module compilation during kernel updates
- It stores module source code in /usr/src/ for persistent maintenance across reboots
- Commonly used for hardware drivers including graphics cards, network adapters, and storage controllers
- Reduces manual work by eliminating the need to manually rebuild drivers after kernel updates
- Saves time and prevents system instability from outdated or missing kernel modules
What is DKMS?
Dynamic Kernel Module Support (DKMS) is a framework for Linux systems that automatically maintains kernel modules throughout the lifecycle of your system. When you update your Linux kernel, drivers and other kernel modules often become incompatible because they were compiled for the previous kernel version. DKMS solves this by automatically recompiling and reinstalling these modules whenever necessary.
How DKMS Works
DKMS operates by storing the source code of kernel modules in the /usr/src/ directory. When a kernel update is detected, DKMS triggers the recompilation of all registered modules against the new kernel version. This happens automatically, either during installation or through system services, ensuring your hardware drivers remain functional without manual intervention.
Common Uses
DKMS is particularly valuable for:
- Graphics drivers (NVIDIA, AMD proprietary drivers)
- Network drivers and adapters
- Storage controllers and RAID software
- Virtual machine hypervisor drivers
- Custom or third-party kernel modules
Benefits
The primary advantage of DKMS is reduced system maintenance burden. Without DKMS, after every kernel update, users would need to manually recompile drivers, which could be time-consuming and error-prone. DKMS also prevents driver-related system crashes and ensures consistent hardware functionality across kernel versions. This is especially important for production systems where downtime is costly.
Installation and Management
DKMS is typically installed as a package on Debian/Ubuntu systems via apt and Red Hat systems via yum/dnf. Once installed, individual kernel modules can be registered with DKMS, and the system automatically manages them. System administrators can check the status of DKMS modules using command-line tools like dkms status to verify that all modules are properly maintained.
Related Questions
What is a Linux kernel module?
A kernel module is a piece of code that can be loaded into the Linux kernel at runtime without recompiling the entire kernel, allowing dynamic addition of features and drivers.
What happens if DKMS fails during a kernel update?
If DKMS fails, affected drivers may not load, potentially causing hardware to become unavailable. Most systems have fallback drivers or can boot into recovery mode for troubleshooting.
Do all Linux drivers require DKMS?
No, many drivers are built into the kernel directly. Only third-party and proprietary drivers typically need DKMS for ongoing compatibility with kernel updates.
More What Is in Daily Life
- What Is a Credit ScoreA credit score is a three-digit number, typically ranging from 300 to 850, that represents your cred…
- What Is CD rates make no sense based on length of time invested. Explain like I'm 5CD (Certificate of Deposit) rates often don't increase with longer lock-up times the way people expe…
- What is a phdA PhD (Doctor of Philosophy) is a doctoral degree earned after completing advanced academic research…
- What is a polymathA polymath is a person with deep knowledge and expertise across multiple different fields or academi…
- What is aaveAAVE stands for African American Vernacular English, a dialect with distinct grammar, pronunciation,…
- What is aarch64ARMv8-A (commonly called ARM64 or AArch64) is a 64-bit processor architecture developed by ARM Holdi…
- What is about menTopics and discussions about men typically encompass masculinity, male identity, gender roles, men's…
- What is abiturAbitur is the German academic qualification awarded upon completion of secondary education, typicall…
- What is abrosexualAbrosexual is a sexual orientation identity where a person's sexual attraction changes or fluctuates…
- What is abgABG is an Indonesian acronym standing for 'Anak Baru Gede,' which refers to adolescent girls or teen…
- What is aaaAAA batteries are a standard cylindrical battery size measuring 10.5mm in diameter and 44.5mm in len…
- What is aacAAC (Advanced Audio Codec) is a digital audio compression format that provides better sound quality …
- What is aaa gameAAA games are high-budget video games developed by large studios with budgets typically exceeding $1…
- What is a proxyA proxy is a server that acts as an intermediary between your device and the internet, forwarding yo…
- What is ableismAbleism is discrimination and prejudice against people with disabilities based on the assumption tha…
- What is absAbs, short for abdominal muscles, are the muscles in your core that flex your spine and stabilize yo…
- What is abortionAbortion is a medical procedure that ends pregnancy by removing the fetus before viability. It can b…
- What is accutaneAccutane (isotretinoin) is a powerful prescription medication derived from vitamin A used to treat s…
- What is acetaminophenAcetaminophen, also known as paracetamol, is an over-the-counter pain reliever and fever reducer use…
- What is acidAcid is a chemical substance that donates protons (hydrogen ions) to other substances, characterized…
Also in Daily Life
- How To Save Money
- Why are so many white supremacist and right wings grifters not white
- Does "I'm 20 out" mean youre 20 minutes away from where you left, or youre 20 minutes away from your destination
- Why are so many men convinced that they are ugly
- What does awol mean
- What does asl mean
- What does ad mean
- What does asap mean
- What does apex mean
- What does asmr stand for
- What does atp mean
- What causes autism
- What does abg mean
- What does am and pm mean
- What does a fox sound like
More "What Is" Questions
Trending on WhatAnswer
Browse by Topic
Browse by Question Type
Sources
- Wikipedia - Dynamic Kernel Module Support CC-BY-SA-4.0
- Dell DKMS GitHub Repository GPL-2.0