UPDATE: 16/Jul/2014, the script was updated to compile the 3.15.5 kernel version
-ck is the name for the Con Kolivas patchet which main purpose is to increment the performance for Linux in PC’s and laptops. Traditionally the kernel comes with a lot of things for enterprise environments, that’s why this patchset have some relative popularity with people who wants to improve their machine for games, multimedia and tradicional work (browsing the web, editing texts, im, etc).
The steps to compile a kernel with these modifications are:
- Download the vanilla kernel
- Download and apply the: -bfq, -ck patchsets
- Configure the kernel
- Compile
- Install
Fortunately some users at ubuntu-br.org have been following the -ck branch, close enough to create a script that automatize the process:
- Kernel Omnislash (Unofficial) – Aprendendo a voar sem segredos!!! (learning to fly without secrets)
- http://sourceforge.net/projects/scriptkernel/files/
After check it out, I’ve edited it (to avoid some errors and to add some bells and whistles) and I’ve put the result in: https://github.com/chilicuil/learn/blob/master/sh/is/kernel-ck-ubuntu
The idea is that from time to time I check the script to see that it compiles the last -ck patchset version for the last Ubuntu LTS version. If you want to use it, run the following commands:
$ wget --no-check-certificate \ https://raw.github.com/chilicuil/learn/master/sh/is/kernel-ck-ubuntu $ time sh kernel-ck-ubuntu $ sudo dpkg -i ./linux-*.deb
And reboot your system, if you don’t want to compile it yourself, I’ve build some .deb packages for amd64 and x86
3.4.5
3.7.1
3.8.2
3.9.2
3.11.7
3.12.1
3.13.7
3.14.4
3.15.5
Hey I am having some hard times running your script. I am running it on a server machine atm as my PC is broken with Ubuntu 12.04 32b and I am getting stucked at debian/ruleset/targets/common.mk:286: *** Cannot find lguest tools. Stop. Any help here ?
Yep, Lupajz, it seems related to bug #663474 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=663474), you can install the x86 packages in the meantime, I’ll disable the lguest option in the script, Greetings =)!
Lupajz, I’ve update the script, it should work now, remove your ~/.tmp file, download it (from github) and run it, have fun =)
Cheers :) I’ll test that as soon I get to my Ubuntu desktop :) I was wondering if you could make the script for selecting other kernels :P I mean like 3.5 or even to be relesed 3.6 kernel ?
Hi Lupajz, well actually you should use the Optimus Kernel [1] instead. I discovered that this script don’t borrow the Ubuntu changes, it just patches a vanilla kernel with the -ck branch and package it.
I’ll keep updating this script for the latest kernel that support the -ck changes mostly for personal use, it hasn’t break my laptop after all (the -ck modifications [2] use to have delays from the main branches, so right now it’s not possible to have a kernel 3.6 with this goodies, unless I create the patches myself x_X) If you’re still interested you can always borrow the latest version from the script at github.
However as I said before I highly recommend to use Optimus Kernel instead.
[1] http://optimus-linux.blogspot.mx/
[2] http://ck-hack.blogspot.mx
Does this work on the quantal development builds?
it should epikvision, however I’ve not test it, actually the -ubuntu patches are borrowed from the quantal kernel (precise doesn’t have patches for the 3.4.5 version), have fun!
You should know that when building over vanilla kernel, the Ubuntu patches that you apply are not Ubuntu patches, but just Debian Packaging. There some things like AppArmor, Unredahead, Aufs and much more that are missing and actually you can not get them like that. The only way is to use the Ubuntu Kernel from Git that incorporates all the patchsets that make “Ubuntu Kernel”. This patches are also called “sauces”
Or if you need a stable kernel releases, 100% ubuntu kernel with BFS+BFQ+inhouse tweaks, then you should try Optimus Kernel
I’ll edit the post and recommend the Optimus kernel instead, thanks for your feedback Salih
This is great, thank you! I was looking for a way to easily get BFQ on my Precise install, and the pf-kernel would just hang on boot. This one works great, and as an added bonus it appears that my long-lasting issue with stuttering audio in Flash and quirky PulseAudio allround is now also remedied!
Beautiful :) Please keep posting packages if you make new ones :)
Thanks!!!
Thanks for the script. May I suggest you also install fakeroot automatically, since this happened on my machine:
[+] running make-kpkg …
kernel-ck-ubuntu: line 347: fakeroot: command not found
————————————- DONE ———————————-
[+] copying the debs files …
cp: cannot stat `../linux-*.deb’: No such file or directory
I’ve updated it the script for working with 3.6.5 version and added fakeroot, thanks for your suggestion
Hey would you mind updating script once again ? :) For 3.7.1 kernel ? As I am trying to run that script but I get looped on sudo password :P
Hi Lupajz, thanks for your comment, I’ve updated the script for the 3.7.1 kernel also verified and fixed the issue with the sudo command, hope it works now for you, greetings.
This is extremely nice! Finally, Enemy Territory runs without visual lag! Thanks!
Hi.
The link to the amd64 packages does not work : https://files.one.ubuntu.com/EIay6Vw4QA2d1cQ8IHtsRA
Regards.
Hey Laurent,
Yep, I forgot to press the ‘publish’ button and they were only accessible from my account, it should work now, thanks for your comment
Nope, that still does not work :(
Sorry that works now.
Hey there,
thanks a lot for taking the time to maintain this script and the deb packages. I just installed your 3.8.2 deb build and it’s working perfectly fine. The BFQ scheduler is fantastic. No more frozen interactive apps when I/O heavy processes run in the background!
Anyway, I was going to ask if you have made any progress with the PPA. It would be awesome to be bale to update your system with automatically patched revisions of new kernels!
Thanks again for all your work. Really appreciate it!
Best regards
– Feltzer
Hi Feltzer,
Indeed, the BFQ and -CK patchsets are really good, I’m going to try to setup a ppa for these packages during the weekend, I’ve previous experience maintaining ppa’s however I bet kernel packages are harder to upload. Thanks for your feedback.
I patched my 12.04 system with version 3.9.2 for x86 and now my Wireless+Bluetooth indicator blinkes all the time. Is there any way I can unpatch my system?
Hi,
Yep, you can do it easily by uninstalling the kernel package you installed previously, if you downloaded the linux-image-3.9.2-ck1.deb package, then run $ sudo apt-get remove linux-image-3.9.2-ck1
Thank you, chilicuil, but I’m a bit afraid to do so since I deleted the previous kernel versions, so I’m curious if there is ‘ground zero’ for me to roll back to. I described my problem here, and your more specific instructions will be highly appreciated.
Hi again,
I’m sorry that the -ck kernel did’t work on your machine, I’ve read the thread on ubuntuforums and due to the fact that you have removed all previous kernels you need to install at least one of them previous to removing the -ck kernel.
$ sudo apt-get install linux-image-3.5.0-40-generic
#reboot and choose to boot in the grub the linux-image-3.5.0-40 kernel, by default it will choose the -ck kernel since it’s a more recent version
#once you’re logged and `uname -r` returns 3.5.0-40 you can uninstall the -ck kernel
$ sudo apt-get remove linux-image-3.9.2-ck1
In the future, I suggest you to keep at least one optional kernel package in case the new image you’re trying fails. Have a great day!
Sorry, by ‘here’ I meant http://ubuntuforums.org/showthread.php?t=2185783
Also, I feel obliged to warn other newbies, as I am, to consider the fact that VMware Workstation will require an update, too. My version, for instance, did not start up at all.
Pingback: Kernel -CK para Debian, Ubuntu e derivados « Mundo GNU
Nice job! this how-to was adapted to the brazilian language:
http://gnutwoall.wordpress.com/2013/11/24/kernel-ck-para-debian-ubuntu-e-derivados/#more-18164
Thank you!
[]’s
Hello,
Thank You for nice HowTo and for packaged kernels.
Any news on 3.13 patch?
Regards.
Hi Zika,
There are still no 3.13 patches, however once they’re in the air they should be announced at http://ck-hack.blogspot.com/
@chilicuil
Thank You for URL. I will follow…
Regards and happy holidays!
Pingback: Cómo mejorar el rendimiento de Ubuntu
Pingback: Consejos para mejorar el rendimiento de Ubuntu y hacerlo más rápido | Misiongeek
Pingback: Linux Mint Czech - Script pro instalaci Kernel-CK v Linux Mintu at Linux Mint CZ&SK
Pingback: Script pro instalaci Kernel-CK v Linux Mintu - Linux Mint CZ&SK
Pingback: Consejos para mejorar el rendimiento de Ubuntu. | RedUniv
Hi !
At first, thanks to share this script.
I tried the lastest version to compile the 3.15.5 version kernel. As far as I can see, there is no errors during the compilation, but the “copying debs files…” step ends in an error. I checked the folder, indeed there is no .deb files.
Actually, I’m running the elementaryOS latest beta.
Thanks in advance for any help.
Hi Sebas,
Try running the script this way:
bash -x script
And see if it outputs some information, also review /tmp/kernel-ck-ubuntu.error and see if there is something interesting.., packages for kernel 3.15.5 are available at the end of the post, they should work in elementaryOS since it also use apt-get as installation program.
Regards
I can confirm this, everythin ran ok but no deb files. Running with bash -x now.
Hello Mikael,
Indeed, the script now fails to build a kernel package because it depends of make-kpkg which is broken with recent kernels, https://lkml.org/lkml/2014/4/3/333 I won’t try to fix this by myself but will keep an eye on it in the case it gets fixed
Pingback: The Ultimate Guide to Speed Up Your Linux Computer | Code for Share
Pingback: Mejora el rendimiento de Ubuntu | UnChicoDespeinado
Pingback: Botta di vita ai miei PC: Kernel Liquorix , PF-Kernel e Linux-CK | osS) (Side blog
Pingback: Kernel -CK para Debian, Ubuntu e derivados (update) | Blog do edps