Can I take the kernel of other distro's?

I have a question. I currently have Linux4One (A ubuntu 8.04 re-spin) installed on my Acer One. It works really well but I can’t get used to Ubuntu and miss Yast2. Is it possible for me to grab the kernel of this re-spin and install it on a OpenSUSE 11.1 installation? I would like to do this only if it will make the netbook function as well as with the current distro.

Any input is appriciated.

Hi,

I’am not a kernel expert. But I think this is not possible.

Greetings

Michael

you can get the Ubuntu kernel sources and try to compile it. No guarantees it’ll work though

What kernel version do you have with Ubuntu? I know some Ubuntu/Eeepc users have to use an earlier kernel version as described here.
What hardware issues do you have with the Acere running openSUSE 11.1? Graphics? Maybe 11.0 would work better for you…

You could always use kernel config file from the Linux4One and apply it to an openSUSE kernel source and compile it. And you’d still have that customized kernel for all your needs.

Weird thing that it is based on Ubuntu 8.04.2 yet it has 2.6.28 kernel, it might be interesting to run ext4 on your aspire with no journal :slight_smile:

Interesting. And where may I find this kernel config file?

They took a kernel for Ubuntu 9.04 and configured it for the Acer One I think. That’s why it’s a .28 kernel. But they stuck with the 8.04 instalation so Ext4 was not possible. It installs 8.04 first with it’s .24 kernel and then applies the custom .28 kernel. So you end up with both available to you. I removed the default one.

@ Deano-ferrari: No real issues. Just like the netbook remix of Ubuntu. Was thinking of installing openeSUSE with Gnome and the netbook-launcher. But the kernel is optimised. Just think it would result in faster boot times.

I’m just looking into it at the moment. Thanks for all your help so far.

look in /boot
it’s usually called ‘config-<kernel_version>’

if it’s not there, look in /proc for a file called config.gz
unpack it with Ark for example

It would be interesting to see a list of the loaded modules (‘lsmod’) for the
Linux4One distro.

If you want a newer kernel for openSUSE, get the source from kernel.org,
configure and build it. A few things that are special to openSUSE will be
missing, but I don’t miss them. I do wireless developing and mainline kernel
testing, thus I’m now running 2.6.30-rc2.

The missing things are the splash screen at bootup and shutdown (that I DO NOT
want as I watch for problems in the boot process), AppArmour, and there is a
missing console IOCTL. None of these missing items are a problem. Being able to
eliminate the build on the parts I do not use saves about 40 minutes on a kernel
compilation. As I sometimes do 5 or 6 a day, that is really worthwhile.

Module                  Size  Used by
wlan_tkip               7360  2 
wlan_ccmp               3776  1 
acpi_cpufreq            3980  0 
cpufreq_userspace       1156  0 
cpufreq_powersave        512  0 
cpufreq_conservative     2824  0 
cpufreq_stats           2116  0 
cpufreq_ondemand        3596  2 
freq_table              1408  3 acpi_cpufreq,cpufreq_stats,cpufreq_ondemand
sbs                     7176  0 
sbshc                   2304  1 sbs
container               1600  0 
ip_tables               6032  0 
x_tables                5956  1 ip_tables
sdhci                   8708  0 
pciehp                 21656  0 
wlan_scan_sta           6272  1 
ath_rate_sample         9024  1 
psmouse                13832  0 
serio_raw               2436  0 
uvcvideo               38600  0 
compat_ioctl32           512  1 uvcvideo
videodev               23232  1 uvcvideo
v4l1_compat             9220  2 uvcvideo,videodev
ath_pci               126384  0 
wlan                  108704  6 wlan_tkip,wlan_ccmp,wlan_scan_sta,ath_rate_sample,ath_pci
ath_hal               282912  3 ath_rate_sample,ath_pci
video                  10960  0 
backlight               1668  1 video
output                   896  1 video
snd_hda_intel         215472  3 
snd_pcm_oss            25120  0 
snd_mixer_oss           8768  1 snd_pcm_oss
snd_pcm                38532  2 snd_hda_intel,snd_pcm_oss
snd_timer              10632  1 snd_pcm
snd                    25144  11 snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
button                  3216  0 
battery                 6148  0 
ac                      1924  0 
rng_core                1988  0 
soundcore               2568  1 snd
snd_page_alloc          3976  2 snd_hda_intel,snd_pcm
sg                     15028  0 
ehci_hcd               21900  0 
uhci_hcd               13388  0 
r8169                  18884  0 
mii                     2496  1 r8169
thermal                 9564  0 
processor              28008  2 acpi_cpufreq,thermal
fan                     2244  0 
thermal_sys             5160  4 video,thermal,processor,fan
fuse                   30428  3 
atkbd                   9876  0 

It’s there. Do I install OpenSUSE, grab the kernel source of 2.6.28 and compile with this config file?

If so would you be able to give me the commands to do so? I’m a kernel compiling virgin :wink:

Dexter1979 wrote:
> microchip8;1976608 Wrote:
>> look in /boot
>> it’s usually called ‘config-<kernel_version>’
> It’s there. Do I install OpenSUSE, grab the kernel source of 2.6.28 and
> compile with this config file?
>
> If so would you be able to give me the commands to do so? I’m a kernel
> compiling virgin :wink:

There does not appear to be anything strange about the modules loaded by Linux4One.

I would grab the kernel source for 2.6.29.1. Login as your ordinary user (NOT AS
ROOT), and download the bz2 file to your login directory. Open a terminal and
issue the commands


tar jxvf linux-2.6.29.1.tar.bz2
cd linux-2.6.29.1
cp /boot/config-xxxxxx .config
make

Of course, the xxxxxx matches your current kernel. When you enter the make
command, you will be asked about any kernel parameters that are new since
2.6.27. In general, the default answer is the correct one. Once the compilation
finishes, enter the command


sudo make modules_install install

Once the above command finishes, the new kernel and its modules will be placed
in the propeer locations, and there will be a new entry in the GRUB menu. Reboot
to it, and you have the latest stable kernel.

Mmm have the option here to get the src for the kernel.
Download

Without chatting to the devs it would be hard work trying your way it will more than likely be patched.

I presume this is still relevant though for 10.3(Hopefully someone will say so if not). Configure, Build and Install a Custom Linux Kernel - openSUSE

I was wondering, let’s say i will name my custom kernel like the openSUSE’s and i will use all their patches, would i be able in theory to install their kernel updates/patches??

What i mean is to use source of the official openSUSE 11.1 kernel and customize it to my hardware?

If you used Suse’s source it would be patched.

As for updating my understanding is no. As it wouldn’t be the same, so it wouldn’t be the same vendor, even if you renamed exactly. There fore not that kernel that is being updated.

You would need to do the same again get the source recompile. Also unless I’m mistaken any kernel modules would also need to be built(Nvidia etc).

But you really would need one of the custom kernel compilers to comment. As I just stick with distro kernels.

Well, i downloaded a delta rpm of kernel and IF the files there are being replaced only then and not patched (diff or something like that) i should be fine with the custom kernel, otherwise i won’t get any updates or patches :slight_smile:

Unless I’m mistaken wouldn’t a delta rpm never be applied to it. Would you not need to go into the src.rpm and play with the spec.

I’ve just seen a few things where if you have the same package name but not vendor. If it was updated but by a different vendor then it wouldn’t update your one.

But I’m a little hazy and can’t even remember where I thought I saw that, I suspect a mailing list.

No matter, i’ll search a bit on google to find out :slight_smile:

I know the devs are good at packing the kernel etc. but i’d like to have a system tailored exactly to my specs but i don’t want to fiddle too much :slight_smile:

The openSUSE patches may, or may not, apply to newer kernels. The kernel
developers are very careful to keep a constant interface to the kernel from user
space. Any changes may add new interfaces, but they must preserve the old way.
This is not true for internal changes to the kernel. If you devise a better way
to do something and can convince Linus and the other super gurus that it is an
improvement, any kernel structure or interface can be changes. When you do so,
however, it is your responsibility to fix ALL the parts of the kernel that your
change breaks. Any damage to drivers that are out-of-kernel need not be
considered. If an openSUSE patch touches one of the changed sections, it is
likely not to apply, or if it does, it won’t work.

I see a consequence of this with the VirtualBox driver. During the merge period
between the release of 2.6.X and 2.6.X+1-rc1, there are usually 2-3 sections
that must be modified for the vbox driver to compile and run. Between 2.6.28 and
2.6.29, there was a compilation problem. With 2.6.30, it compiled just fine, but
would not run.

Let me emphasize more fully: EVERY module, whether it be in-, or
out-of-kernel, MUST be built for the kernel in which it is running. That
applies to 3rd-party graphics or wireless drivers. This requirement is deeper
than the name of the kernel. The main usage of names is to keep track of the
kernel state.

Finally, the openSUSE patches may enable some nice features such as AppArmour,
but they are not necessary. I have been running unpatched kernels for many years.

Larry

So i understand that if i customize my kernel for example from generic to c2d cpu’s then all other modules change so i couldn’t get any mainstream patches even if my kernel would be called the same way?
Or i would install fine but it would only create problems?

BenderBendingRodriguez wrote:
>
> So i understand that if i customize my kernel for example from generic
> to c2d cpu’s then all other modules change so i couldn’t get any
> mainstream patches even if my kernel would be called the same way?
> Or i would install fine but it would only create problems?

You will still get all the updates, including new kernels. You just won’t be
running them. For example, I have a 2.6.27.21-0.1-default kernel on my system
that replaced 2.6.27.19-3.2-default, but I have never booted it. I keep it
around “just in case”.

One of the advantages of building your own kernel is that you can tailor the
devices for your hardware. For instance, there is no PCMCIA adapter on my
current laptop, thus all that code is disabled. It saves very little space in
the running kernel, but you can cut the compile time considerably. The distro’s
configuration builds about 1500 module - mine has about 300.