Debian / Ubuntu Linux Install Kernel Headers Package

See all Debian/Ubuntu Linux related FAQ
I need kernel headers to compile module for vmware tools or Virtualbox guest. How do I install the Linux kernel headers on Debian or Ubuntu Linux operating systems using command line options?

Tutorial details
Difficulty level Easy
Root privileges Yes
Requirements None
Est. reading time 2 minutes
You can easily install the Linux kernel headers for currently running kernel version using the following commands at shell prompt. Header files and scripts for building modules for Linux kernel are included in linux-header-YOUR-Kernel-Version package. Open a terminal and type the command as root user to install linux-headers* package for your running kernel.

Make sure you have updated version

Type the following apt-get command or apt command:
$ sudo apt-get update
OR as root user enter:
# apt-get update

Search for kernel version (optional)

Type the following apt-cache command :
$ apt-cache search linux-headers-$(uname -r)
OR
$ apt search linux-headers-$(uname -r)
Sample outputs:

Sorting... Done
Full Text Search... Done
linux-headers-4.9.0-3-amd64/testing,now 4.9.30-2 amd64 [installed]
  Header files for Linux 4.9.0-3-amd64

Install linux-header package under Debian or Ubuntu Linux

Type the following apt-get command:
$ sudo apt-get install linux-headers-$(uname -r)
Here is output from the latest Debian 9:

Fig.01: Installing the Linux kernel header using apt-get

Fig.01: Installing the Linux kernel header using apt-get

# apt-get install linux-headers-$(uname -r)
Sample outputs from older system:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  libftdi1
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  binutils cpp-4.3 gcc-4.3 gcc-4.3-base libc-dev-bin libc6-dev libgmp3c2 libgomp1 libmpfr4
  linux-headers-2.6.32-5-common linux-kbuild-2.6.32 linux-libc-dev manpages-dev
Suggested packages:
  binutils-doc gcc-4.3-locales gcc-4.3-multilib libmudflap0-4.3-dev gcc-4.3-doc libgcc1-dbg
  libgomp1-dbg libmudflap0-dbg glibc-doc
Recommended packages:
  gcc c-compiler
The following NEW packages will be installed:
  binutils cpp-4.3 gcc-4.3 gcc-4.3-base libc-dev-bin libc6-dev libgmp3c2 libgomp1 libmpfr4
  linux-headers-2.6.32-5-amd64 linux-headers-2.6.32-5-common linux-kbuild-2.6.32 linux-libc-dev
  manpages-dev
0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded.
Need to get 20.8 MB of archives.
After this operation, 68.9 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
....
..

Once installed you can compile modules for VMWare or VirtualBox or anything else you needed. Also make sure you install GNU GCC compiler collection on Debian/Ubuntu Linux:
$ sudo apt-get install build-essential

See page for more information.

🥺 Was this helpful? Please add a comment to show your appreciation or feedback.

nixCrat Tux Pixel Penguin
Hi! 🤠
I'm Vivek Gite, and I write about Linux, macOS, Unix, IT, programming, infosec, and open source. Subscribe to my RSS feed or email newsletter for updates.

40 comments… add one
  • Alexandre Ogrodovski May 5, 2016 @ 22:02

    Thank you.. it worked!

  • NoInternet NoEmailcom Mar 7, 2017 @ 3:06

    how to install gcc and kernel headers for Debian for VMware offline without internet?

    • 🛡️ Vivek Gite (Author and Admin) Vivek Gite Jun 17, 2017 @ 8:16

      You need to use a Debian CD or DVD .

  • Ale Jun 17, 2017 @ 9:25

    Use openvm tools,

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre> for code samples. Your comment will appear only after approval by the site admin.