clean & auto save default grub boot of ubuntu

ubuntu用了一段时间,更新了好几个版本,引导菜单拉的老长,需要清理一下。

删除多余的引导项很简单

cd /boot/grub
sudo rm -i *-2.6.35-25-*

填入你想要删除的版本号即可,安全起见,会逐个让你确认。

刚开始用ubuntu的时候,可以自动选择上一次选择的启动项为默认启动,很方便的功能。后来这个功能不知道为什么默认没有了,现在想重新搞起来,google之,都是大批copy如何指定具体启动项的。干脆查看了一下/boot/grub/grub.cfg源文件,里面有如下函数。

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

看上去只要在选择启动项后调用这个函数就ok,不过不太赶立马动手,又google了一下grub的参考,得到这个grub2的guide http://ubuntuforums.org/showthread.php?t=1195275,ok,里面有如何配置savedefault的说明。

修改/etc/default/grub

GRUB_DEFAULT=saved  #原为GRUB_DEFAULT=0
GRUB_SAVEDEFAULT=true  #新增

然后运行

sudo update-grub

系统重新生成grub.cfg,更新后查看下该文件,多余的启动项取消了,每个启动项中添加了savedefault的调用。