使用Ubuntu一段时间后,就会发觉由于自动升级,系统里安装了很多内核。像我,竟然安装了下面那么多,这个造成了漫长的启动列表。必须删掉一些不用的。
首先就是使用如下命令,列出所有安装的内核,下表中,带有image的就是内核文件。从中选择要卸载的包,用apt-get来卸载

abigbone@ubuntu:~$ dpkg --get-selections|grep linux 
libselinux1 install 
linux-firmware install 
linux-generic install 
linux-headers-2.6.35-22 install 
linux-headers-2.6.35-22-generic install 
linux-headers-2.6.35-23 install 
linux-headers-2.6.35-23-generic install 
linux-headers-generic install 
linux-image-2.6.35-22-generic install 
linux-image-2.6.35-23-generic install 
linux-image-generic install 
linux-libc-dev install 
linux-sound-base install 
linuxqq install 
pptp-linux install 
syslinux install 
syslinux-common install 
util-linux install 
abigbone@ubuntu:~$ sudo apt-get remove linux-image-2.6.35-22-generic

正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
下列软件包将被【卸载】:
linux-image-2.6.35-22-generic
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 0 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 107MB 的空间。
您希望继续执行吗?[Y/n]y
(正在读取数据库 … 系统当前共安装有 160111 个文件和目录。)
正在卸载 linux-image-2.6.35-22-generic …

Examining /etc/kernel/postrm.d . 
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 2.6.35-22-generic /boot/vmlinuz-2.6.35-22-generic 
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 2.6.35-22-generic /boot/vmlinuz-2.6.35-22-generic 
Generating grub.cfg … 
cat: /boot/grub/video.lst: 没有那个文件或目录 
Found linux image: /boot/vmlinuz-2.6.35-23-generic 
Found initrd image: /boot/initrd.img-2.6.35-23-generic 
Found Windows 7 (loader) on /dev/sda1 
done 
The link /vmlinuz.old is a damaged link 
Removing symbolic link vmlinuz.old 
you may need to re-run your boot loader[grub] 
The link /initrd.img.old is a damaged link 
Removing symbolic link initrd.img.old 
you may need to re-run your boot loader[grub]

正在设置 unetbootin (partitionmanagerrev146) …
expr: non-integer argument
unetbootin
E: Sub-process /usr/bin/dpkg returned an error code (1)
abigbone@ubuntu:~$ sudo apt-get remove linux-headers-2.6.35-22-generic
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
下列软件包将被【卸载】:
linux-headers-2.6.35-22-generic
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 0 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 10.0MB 的空间。
您希望继续执行吗?[Y/n]y
(正在读取数据库 ... 系统当前共安装有 156306 个文件和目录。)
正在卸载 linux-headers-2.6.35-22-generic ...
正在设置 unetbootin (partitionmanagerrev146) ...
Installation failed, kernel was not downloaded or extracted properly, make sure your internet connection is working and that there is free space in /boot and try again

即sudo apt-get remove linux-image-2.6.35-22-generic
sudo apt-get remove linux-headers-2.6.35-22-generic
可以卸载旧内核。 用uname -a 可以查看当前内核。
使用这个命令可以查看当前系统使用的内核。
(卸载后,在启动菜单里还有其选项,这样我们需要修改启动菜单,
方法如下:用命令打开menu.lst

admingu@andy:~$ gksudo gedit /boot/grub/menu.lst


然后找到不需要的菜单将其删除即可,还要注意一点,记得修改default的值,修改默认启动项!)
————————————————————————————————————————————
查看内核的方法是,点菜单“系统-系统管理-系统监视器-系统”,可以查看系统当前使用的内核版本;
————————————————————————————————————————————
还可以查看menu.lst的第一个启动项,这是当前加载的内核版本,一般数字是最大的,下面可能还有较小的数字,这是旧的内核
最后再终端输入

abigbone@ubuntu:~$ sudo update-grub 
[sudo] password for abigbone: 
Generating grub.cfg … 
cat: /boot/grub/video.lst: 没有那个文件或目录 
Found linux image: /boot/vmlinuz-2.6.35-23-generic 
Found initrd image: /boot/initrd.img-2.6.35-23-generic 
Found Windows 7 (loader) on /dev/sda1 
done 
[color=blue]也可以用ubuntu tweak软件来删除旧内核[/color] 
[/size]