[Bug 241368] [NEW] remove old kernels from grub list

DanielRoesler diafygi at gmail.com
Thu Jun 19 17:01:32 UTC 2008

Public bug reported:

Binary package hint: linux-image

This is a bug for new user confidence. So far Hardy has updated the
kernel 3 times, which means 7 Ubuntu options on the grub list (3
kernels, 3 recoveries, 1 memtest).

A beginner will definitely be intimidated by this huge list of grub
options. When I made the jump from Windows, after the first kernel
update, I was really worried that I would make the wrong choice. No
explanation is given in the grub menu, and the only difference between
the options is one number. I thought this new option was a completely
different version of Linux (not just the kernel), and all of my data
might be on the other option. An unexplained option on the grub boot
menu list adds anxiety, which doesn't help Bug #1.

There are two general ways to fix this:

1) Commenting out the options in the grub list. This is a simple fix,
but it doesn't clear up the space taken by the old kernels. There is
also the possibility that grub updates will reload the list, bringing
back all of the options. You would have to make sure any reloading of
the grub list also makes sure the old kernels stay commented out, which
makes this a trans-package fix.

2) Actually removing the old kernels. This clears up space, but runs the
risk of removing a stable kernel when the new one causes problems. I
agree that at least one old kernel should be kept just in case the new
one doesn't work. However, that would still mean 2 kernels showing up on
the grub list, which will still intimidate casual users.


If there is worry about adding an prompt for the user to choose, there
is already one that appears when the kernel is updated: the restart
notification. The update manager lets users know they need to restart
their computer, and there is plenty of room for a short notification
that the new kernel is at the top of the grub menu list.

So, my proposed solution:

1) When installing a new kernel, mark for removal all but the current
kernel (plus the one that's going to be installed). That way, if the new
kernel doesn't work, the user can just use the previous one. Also, if
more advanced users want to keep older kernels, they can simply uncheck
the mark for removal of those older kernels.

2) Include a sentence in the restart notification that says something
like, "Your updated Linux kernel (x.xx.xx-xx) will be added to the top
of the Grub list. (What's a Linux kernel?)" This is so casual users
won't get confused when they restart and now see two versions of Ubuntu.
The What's a Linux kernel part should have a link to a small help that
explains what it means. The help file shouldn't have a in depth
explanation about kernels, just info saying that this isn't a new
version of Ubuntu, just a new version of the underlying hardware
interface, so no data will be lost.

3) After a successful restart (or several successful restarts), include
a notification that says something like, "Your current Linux kernel
(x.xx.xx-xx) appears to be working well. You can remove old Linux kernel
versions to clear up space (XXX MB). This will also remove those old
versions from your Grub boot menu list. You can do this anytime by
removing the following packages via Synaptic: A, B, C  [Remove old
versions now]" Similar to the update notification, it would be confined
to the Notification Area, and would pop up only when the user clicked on
it. The "Remove old versions now" is a button that the user can click.
This is so the user can simply dismiss the notification if they want,
but still be informed if they want to remove the packages later.

See also:
Bug #79332
Bug #199086

** Affects: linux-meta (Ubuntu)
     Importance: Undecided
         Status: New

remove old kernels from grub list
You received this bug notification because you are a member of Kernel
Bugs, which is subscribed to linux-meta in ubuntu.

More information about the kernel-bugs mailing list