How i update my kernel?

Posted April 13, 2014 8.8k views
Changing a kernel is a potentially significant change and should only be done if you really need to. As always, make backups before you make any serious change to your server. Then, the typical procedure for updating your kernel is as follows: 1) Update your system using the package system. For Ubuntu or Debian, i use: apt-get update apt-get dist-upgrade For Fedora and Centos: (see /etc/yum.conf to make sure there is no 'exclude=kernel*' line in the [main] section) yum update For ArchLinux : (see /etc/pacman.conf and comment out any line that says "IgnorePkg=linux") pacman -Syu 2) Look in /lib/modules for the highest version of installed kernel library available. 3) In the control panel, in a droplet's settings, look for a kernel that matches your OS version, kernel library version, and architecture (x32 or x64). Select that kernel and submit. If the kernel doesn't exist there, stop and let us know your OS and version, your architecture, and what you saw in /lib/modules in a support ticket. 4) Once the kernel is set, reboot and test.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer
Are you asking a question or telling us?

If you're asking, you have to use the kernels provided by DO in the control panel. Shutdown your droplet, sudo shutdown -hP now, then login to the control panel at click the name of the droplet you want to change the kernel for, click settings tab, then kernel tab and you'll see the list of available kernels to use. Choose it and click change, then click the power tab and boot the droplet.
  • I found William’s information to be very useful. On archlinux, just because I updated the kernel in the control panel, it didn’t update any of the associated modules and docker, perhaps among other things, broke. I had to install the kernel (matching the latest version available in the control panel) in order for the matching modules to be placed in /lib/modules.

    Now, docker works again.