[arch-general] Kernel upgrades question, as can't revert to earlier kernel
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok. I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone? I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic. 26% done now. Nigel.
On Wed, May 28, 2008 at 4:35 PM, Nigel Henry <cave.dnb2m97pp@aliceadsl.fr> wrote:
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok.
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
26% done now.
Nigel.
We don't really support this due to the sheer hassle, but it is easy enough to downgrade to an old kernel, as all packages are kept in a cache on your machine. If a new kernel borks for you, just pacman -U the right files from /var/cache/pacman/pkg
On Wednesday 28 May 2008 23:47, Aaron Griffin wrote:
On Wed, May 28, 2008 at 4:35 PM, Nigel Henry
<cave.dnb2m97pp@aliceadsl.fr> wrote:
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok.
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
26% done now.
Nigel.
We don't really support this due to the sheer hassle, but it is easy enough to downgrade to an old kernel, as all packages are kept in a cache on your machine. If a new kernel borks for you, just pacman -U the right files from /var/cache/pacman/pkg
Thanks for all the suggestions folks. I'll just let the upgrade run for now, and hope that the 2.6.25 kernel doesn't screw my sounds up. I'll look at all your suggestions again tomorrow, as it's getting a bit late here now. Thanks again for the amazingly quick responses. Nigel.
Update on the updated kernel below. On Thursday 29 May 2008 01:08, Nigel Henry wrote:
On Wednesday 28 May 2008 23:47, Aaron Griffin wrote:
On Wed, May 28, 2008 at 4:35 PM, Nigel Henry
<cave.dnb2m97pp@aliceadsl.fr> wrote:
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok.
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
Nigel.
We don't really support this due to the sheer hassle, but it is easy enough to downgrade to an old kernel, as all packages are kept in a cache on your machine. If a new kernel borks for you, just pacman -U the right files from /var/cache/pacman/pkg
Thanks for all the suggestions folks. I'll just let the upgrade run for now, and hope that the 2.6.25 kernel doesn't screw my sounds up.
Nigel.
Well the 2.6.25 kernel didn't bork the sounds, but for some reason is unable to load the tuner module for my TV card, although the bttv module, and related deps are loaded. See below for the results of a modprobe tuner. [root@myhost djmons]# modprobe tuner FATAL: Error inserting tuner (/lib/modules/2.6.25-ARCH/kernel/drivers/media/video/tuner.ko): Unknown symbol in module, or unknown parameter (see dmesg) [root@myhost djmons]# Anyway, putting that little problem aside, I decided to install the earlier kernel that worked, and also keep the 2.6.25, to see if it was fixable. I renamed the files in /boot for the 2.6.25, and edited the relevant lines in /boot/grub/menu.lst to reflect the renaming in /boot. Next to install the earlier 2.6.24 kernel, but there was a problem, in that the updates that had included the 2.6.25 kernel, also updated some wireless packages, and trying to install the 2.6.24 kernel , there were complaints that these updated wireless packages depended on the 2.6.25 kernel, see below. [root@myhost djmons]# pacman -U /var/cache/pacman/pkg/kernel26-2.6.24.4-1-i686.pkg.tar.gz loading package data... checking dependencies... error: failed to prepare transaction (could not satisfy dependencies) :: ipw3945: requires kernel26>=2.6.25.3-1 :: madwifi: requires kernel26>=2.6.25.3-1 :: ndiswrapper: requires kernel26>=2.6.25.3-1 :: rt2500: requires kernel26>=2.6.25.3-1 :: wlan-ng26: requires kernel26>=2.6.25.3-1 Now I don't use wireless, so I removed the above packages, but I suppose if you do need wireless, I don't see how you could workaround this, if you wanted to revert to an earlier kernel version. Anyway having removed the offending packages, the 2.6.24 kernel installed ok, and the files vmlinuz26, kernel26-fallback.img, and kernel26.img turned up in /boot, along with my renamed ones for the 2.6.25 kernel. No new lines were added to /boot/grub/menu.lst though for the 2.6.24 kernel (but I've had that when installing a kernel with my Debian installs), so added the lines manually. Reboot, selecting the 2.6.24 kernel, and that booted fine, and everything was working as before, including the TV card. Reboot again, selecting the 2.6.25, which "ahum" booted, but no sounds, Gkrellm was missing the eth0 section, so it looked like no network either, and the darned mouse pointer was stuck in the middle of the screen. couldn't get the menu to show with the keyboard, ctrl alt backspace worked, and got the menu to shutdown on the login screen. Booted up using the 2.6.24 kernel, and as I want to keep it, did another renaming session in /boot, and an editing session in grubs menu.lst. Now I have for the 2.6.24, vmlinuz26-2.6.24.4-1, kernel26-2.6.24.4-1.img, and kernel26-2.6.24.4-1-fallback.img. And the same files for the 2.6.25, renamed to vmlinuz26, etc, so that a further kernel update will only update the 2.6.25, and leave the 2.6.24 alone. Reboot a couple of times to make sure the renaming worked, 2.6.24 is still ok, but still the same problems with 2.6.25. Just for fun I did a pacman -Sy, and a pacman -Su, and this is a bit strange, as packman said the 2.6.25 needed updating, nothing to download, so it wasn't another new 2.6.25, but the one in the cache, and as far as I was concerned was already installed, but gone a bit pear shaped. I said yes to this supposed updating of the 2.6.25, and the kernel was installed, as below. [root@myhost djmons]# pacman -Su :: Starting full system upgrade... resolving dependencies... looking for inter-conflicts... Targets: kernel26-2.6.25.4-1 Total Download Size: 0.00 MB Total Installed Size: 74.36 MB Proceed with installation? [Y/n] checking package integrity... (1/1) checking for file conflicts [############] 100% (1/1) upgrading kernel26 [############] 100%
If you use the LILO bootloader, you should run 'lilo' before rebooting.
Updating module dependencies. Please wait ... MKINITCPIO SETUP ---------------- If you use LVM2, Encrypted root or software RAID, Ensure you enable support in /etc/mkinitcpio.conf . More information about mkinitcpio setup can be found here: http://wiki.archlinux.org/index.php/Mkinitcpio
Generating initial ramdisk, using mkinitcpio. Please wait... ==> Building image "default" ==> Running command: /sbin/mkinitcpio -k 2.6.25-ARCH -c /etc/mkinitcpio.conf -g /boot/kernel26.img :: Begin build :: Parsing hook [base] :: Parsing hook [udev] :: Parsing hook [autodetect] :: Parsing hook [pata] :: Parsing hook [scsi] :: Parsing hook [sata] :: Parsing hook [keymap] :: Parsing hook [filesystems] :: Generating module dependencies :: Generating image '/boot/kernel26.img'...SUCCESS ==> SUCCESS ==> Building image "fallback" ==> Running command: /sbin/mkinitcpio -k 2.6.25-ARCH -c /etc/mkinitcpio.conf -g /boot/kernel26-fallback.img -S autodetect :: Begin build :: Parsing hook [base] :: Parsing hook [udev] :: Parsing hook [pata] :: Parsing hook [scsi] :: Parsing hook [sata] :: Parsing hook [keymap] :: Parsing hook [filesystems] :: Generating module dependencies :: Generating image '/boot/kernel26-fallback.img'...SUCCESS ==> SUCCESS [root@myhost djmons]#
Well all that seemed a bit bizarre, but I went with it. I was obviously doing this while booted up with the 2.6.24 kernel, so rebooted using the 2.6.25 one, and now everything is again working ok, sounds, eth0, and the mouse, excepting of course the original problem of the inserting of the tuner module. Sorry for this rambling diatribe, but I thought I'd post this, as it wasn't a 5 min job, adding an earlier kernel, while retaining the latest. I'll have a look at the "savekernel" package that Jaroslav mentioned, as this has to be easier than the time it took me. Feel free to trim this exceedingly long reply of all the irrelevant stuff. Nigel.
On Mittwoch, 28. Mai 2008 23:47 Aaron Griffin wrote:
We don't really support this due to the sheer hassle, but it is easy enough to downgrade to an old kernel, as all packages are kept in a cache on your machine. If a new kernel borks for you, just pacman -U the right files from /var/cache/pacman/pkg
The option to have it in the cache is not very user friendly and not realy a help if the new kernel don't boot. The hint from Jaroslav about savekernel is a better solution from my view. Could this package step to community to give everybody the possibility to install it from a repo? See you, Attila
Hi! You may try the "savekernel" package from AUR. That's what I did. Cheers Jaroslav On Wed, May 28, 2008 at 11:35:46PM +0200, Nigel Henry wrote:
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok.
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
26% done now.
Nigel.
On Wednesday 28 May 2008 23:35:46 Nigel Henry wrote:
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
You could build a kernel of your own for safety reasons :) -- Blog: damnshock.blogspot.com Fotolog: www.fotolog.com/damnshock
Le 28 mai 08 à 23:35, Nigel Henry a écrit :
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
When upgrading a kernel on my Arch box, I simply cp the old kernel and associated initrd, so that I can Boot on it. But, it's also easy to boot on a live-cd and install the old package as long as it's still in you /var/cache/pacman/pkg -- slubman site: http://www.slubman.info/
On Wed, 28 May 2008 23:35:46 +0200 Nigel Henry <cave.dnb2m97pp@aliceadsl.fr> wrote:
I've noticed for some time now that some distros are upgrading the current running kernel, rather than installing a new kernel version, which if there are problems with the new kernel, you could boot the earlier kernel, which you know was working ok.
I'm currently updating my Don't Panic install, and there is a kernel update to 2.6.25.4-1 , and 21% done so far. Is there some way that this latest kernel version can be installed as a new kernel, and leave the existing one alone?
I don't like this way of updating the kernel, as you have no way of booting to the earlier one if the latest version is problematic.
26% done now.
Nigel.
There is a realy simple solution to this one: Make a copy of the the kernel, initcpio and System.map that you want to keep, and add an entry in grub that points at it. Also make a copy of the modules in /lib This way you can always have a kernel to fall back on. Personaly, I like the way that arch handles kernel updates, and dislike strongly the way e.g. debian do, where you after a while end up with 20 kernels installed, many of the same version, just with a different set of patches.
participants (7)
-
Aaron Griffin
-
Attila
-
Jaroslav Lichtblau
-
Marc Deop i Argemí
-
Nigel Henry
-
slubman
-
Øyvind Heggstad