很多用户一般都会选择Windows + Ubuntu的双系统。用得时间久了,随着Ubuntu内核的不断升级,开机启动菜单会变得越来越臃肿。下面简单介绍一下如何删除开机启动菜单多余的内核(旧版本),以及如何调整不同操作系统的启动顺序。
Ubuntu是由grub引导启动的。每当Ubuntu升级到新的版本后,grub会自动调整开机启动菜单的顺序,把新的内核放在启动菜单的开始, 同时也不会删除久的内核版本。这样,当Ubuntu的升级次数一多,启动菜单中将变得非常臃肿。而且那些旧版本的内核基本不会用,不如删除之。解决方案如 下:
1.找出系统已经安装的内核版本,在终端里输入命令:
dpkg --get-selections | grep linux-image
然后会显示系统中已安装的内核,例如:
linux-image-2.6.35-22-generic install
linux-image-2.6.38-10-generic install
linux-image-2.6.38-11-generic install
linux-image-2.6.38-8-generic install
linux-image-3.0.0-12-generic install
linux-image-generic install
2.卸载旧的内核版本,在终端里输入命令:
sudo apt-get remove linux-image-2.6.35-22-generic linux-image-2.6.38-8-generic linux-image-2.6.38-10-generic linux-image-2.6.38-11-generic
上面命令和含义是:
dpkg --get-selections [<表达式> ...] 把已选中的软件包列表打印到标准输出;
grep linux-image 匹配查找;
uname -a 查看已安装的linux内核版。
这样,旧的内核版本就删除了。然而,grub修改开机启动菜单,会自动把最新的Ubuntu放在第一位,把Windows放在最后一个。我们经常希望把Windows调整到靠前的位置,可能还会修改默认的启动项和等待时间等。解决方案如下:
1.找到grub配置,打开配置文档,在终端里输入命令:
sudo vim /boot/grub/grub.cfg
2.修改grub配置
set default="0":表示默认的启动项,“0”表示第一个,依次类推。
set timeout=10:表示默认等待时间,单位是秒。
找到windows的启动项,剪切复制到所有Ubuntu启动项之前,例如:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root A046A21446A1EAEC
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
3.保存并退出。
最后,重新启动机器,一切将变得如你所愿。