资源描述
如何删除ubuntu旧内核?
1.可以用这个命令解决sudo aptitude purge ~ilinux-image-.*\(\!`uname -r`\)
2.升级系统后,开机时就会出现很多版本,如2.6.32-24...2.6.32-31等。只要删除旧内核就可以了,但至少保留一个旧内核。
修改grub.cfg的权限为可写,然后删除以下红色部分重复的内容。最后再把grub.cfg的权限为只读就行。
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
set saved_entry=${prev_saved_entry}
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
fi
}
function recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
set locale_dir=($root)/boot/grub/locale
set lang=zh
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu,Linux 2.6.32-31-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
linux /boot/vmlinuz-2.6.32-31-generic root=UUID=7247f061-15be-41cb-a35f-0dab6f807328 ro quiet splash
initrd /boot/initrd.img-2.6.32-31-generic
}
menuentry 'Ubuntu,Linux 2.6.32-31-generic (恢复模式)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
echo '载入 Linux ...'
linux /boot/vmlinuz-2.6.32-31-generic root=UUID=7247f061-15be-41cb-a35f-0dab6f807328 ro single
echo '载入引导虚拟磁盘 ...'
initrd /boot/initrd.img-2.6.32-31-generic
}
menuentry 'Ubuntu,Linux 2.6.32-24-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
linux /boot/vmlinuz-2.6.32-24-generic root=UUID=7247f061-15be-41cb-a35f-0dab6f807328 ro quiet splash
initrd /boot/initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu,Linux 2.6.32-24-generic (恢复模式)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
echo '载入 Linux ...'
linux /boot/vmlinuz-2.6.32-24-generic root=UUID=7247f061-15be-41cb-a35f-0dab6f807328 ro single
echo '载入引导虚拟磁盘 ...'
initrd /boot/initrd.img-2.6.32-24-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd0,9)'
search --no-floppy --fs-uuid --set 7247f061-15be-41cb-a35f-0dab6f807328
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows Vista (loader) (on /dev/sda1)" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set e0d8a820d8a7f2c8
chainloader +1
}
menuentry "Windows 7 (loader) (on /dev/sda2)" {
insmod ntfs
set root='(hd0,2)'
search --no-floppy --fs-uuid --set 7038a99738a95cba
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
3.首先就是使用如下命令,列出所有安装的内核,下表中,带有image的就是内核文件。从中选择要卸载的包,用apt-get来卸载
admingu@andy:~$ dpkg --get-selections|grep linux
libselinux1 install
linux-generic install
linux-headers-2.6.24-16 install
linux-headers-2.6.24-18 install
linux-headers-2.6.24-18-generic install
linux-headers-2.6.24-19 install
linux-headers-2.6.24-19-generic install
linux-headers-generic install
linux-image-2.6.24-16-generic deinstall
linux-image-2.6.24-18-generic install
linux-image-2.6.24-19-generic install
linux-image-generic install
linux-libc-dev install
linux-restricted-modules-2.6.24-16-generic deinstall
linux-restricted-modules-2.6.24-18-generic install
linux-restricted-modules-2.6.24-19-generic install
linux-restricted-modules-common install
linux-restricted-modules-generic install
linux-sound-base install
linux-ubuntu-modules-2.6.24-16-generic deinstall
linux-ubuntu-modules-2.6.24-18-generic install
linux-ubuntu-modules-2.6.24-19-generic install
util-linux install
util-linux-locales install
具体的卸载方法为
sudo apt-get remove linux-image-2.6.24-16-generic
sudo apt-get remove linux-headers-2.6.24-16-generic
这样就可以实现自动删除内核文件了,还可以释放磁盘空间。
另外还要记录一个命令。
uname -a
使用这个命令可以查看当前系统使用的内核。
卸载后,在启动菜单里还有其选项,这样我们需要修改启动菜单
方法如下:用命令打开menu.lst
sudo gedit /boot/grub/menu.lst
然后找到不需要的菜单将其删除即可,还要注意一点,记得修改default的值,修改默认启动项!
展开阅读全文