SUSE / openSUSEThis Forum is for the discussion of Suse Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Place config-x.y.z from /boot to the extracted folder, naming it .config
make oldconfig and usually say n to all, because I cut kernels as much as I can. I don't need additional drivers
make menuconfig if I need to cut even more, but usually skip it
make
make modules install
make install (GRUB automatically finds new entries). In case I don't have GRUB, I copy System.map, vmlinux.bin (from arch/x86/boot) and .config to /boot, renaming System.map-x.y.z, vmlinuz-x.y.z and config-x.y.z respectively. And then configure a bootloader.
I'd rather use longterm branches (3.18, 4.1, 4.4) instead of latest stable and mainline. But usually there is no difference between, say, 4.4 and 4.5. The biggest changes are mostly drivers included. As I don't have exotic hardware, it doesn't make a difference for me.
When configuring from scratch I do make allnoconfig, then make nconfig and start adding what I need. This results in leanest kernel possible. I do not build modules, everything is built into kernel when possible. Answering no to all questions in make oldconfig is not such a good idea, you are going to miss new features you may want.
Edit: There is also make localmodconfig for lazy people.
Distribution: openSUSE(Leap and Tumbleweed) and a (not so) regularly changing third and fourth
Posts: 627
Rep:
You can get an already compiled 4.5 kernel from the Kernel/HEAD:/ repository for opensuse. If you feel adventurous you can also get 4.6-rc2 from there.
Answering no to all questions in make oldconfig is not such a good idea, you are going to miss new features you may want.
Sometimes; for example, when moving to 4.5 from 4.4 a new menu for wireless cards appeared, and if I'd say no, I'd miss my card. So, yes, clicking n's should be done carefully.
Allnoconfig? That sounds extreme. It would be good indeed to know every single function in the kernel config.
Unfortunately I do not know every little chip and sensor in my computer, or every administrative function for flash devices and hardware bus systems, or in my BIOS and the 1000 other things.
I rather deactivate drivers for network and grapics adapters, and for special hardware that I don't have. And functions, protocols and filesystems that I obviously don't need.
I forgot, I don't use initramfs/initrd - I disabled support for it, so if you use and move files to /boot manually, don't forget to move initrd.gz, too.
I also mark drivers as built-in[*] instead of [M], where possible; it didn't work with ALSA and wireless though. In my experience, it reduces memory footprint.
It may sound extreme, but think. Kernel is the most important part of your installation. There are tons of information about kernel options on the net, sites dedicated to help with kernel configuration. And you have to do it just once, from there on you have your own kernel seed. I use my seed on all my computers, just modifying it to suit the hardware and functionality, much faster then starting from scratch every time. BTW, I my first took over four hours to complete, but I feel rewarded with the result.
I need to find a competent person that already made a kernel config starting from allnoconfig for exactly my Lenovo T60
If I tried to start with allnoconfig I'm sure it would take me 24 hours. But I think it would be near impossible to have missed no needed functionality, like a network protocol function, or a thermal sensor on my mainboard.
I also make the functions built-in for the hardware I know I have. If I'm unsure wheter I have or need it, and the help doesn't recommend "N" in that case, then I build a module.
Maybe you can dig something useful out from here. The author of kernel-seeds.org is out of business, methinks, but there are bits and pieces on the net.
I thought when I compile, why an old Kernel (actually it isn't even old, only 1 1/2 years).
Tumbleweed I did't install because it brings no support for 32-bit. The other day I found out that my supposedly so old Centrino is "Intel Core 2 Duo" (64-bit).
So I want to upgrade my 1 GB RAM to 3 - 4 GB
Then I will reinstall. But Slackware, Arch, Debian or something like that.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.