参考:
http://www.ubuntu.com/download/desktop
https://help.ubuntu.com/community/UEFI
https://help.ubuntu.com/community/Boot-Repair
预装的Win8是在EFI模式下安装的,Ubuntu也应该在EFI模式下安装。
1. 在ubuntu官网下载ubuntu-12.04.2-desktop-amd64.iso并刻录光盘。
2. 在进入BIOS前(使用一键还原前也如此) ,先在电源管理选项中将快速启动项取消(它类似于休眠),重启后按F1进BIOS(一键还原按ThinkVantage或者按F11?)。
设置系统启动盘优先级:进入BIOS后,到Startup菜单项下(不在当前页面),进入Boot子菜单(光标停在Boot上时,回车),用+/-将光盘启动项调整到最上面。
3. 插入ubuntu光盘,从光盘启动进入ubuntu安装流程,安装过程省略。
4. 引导问题:
安装完后重启电脑,引导项中有ubuntu和win8的选项,ubuntu能正常进入,但win8不能被正常引导,出现类似下面的错误:
error: Secure Boot forbids loading module from ... ntfs.mod
error: no such device: 522EFA022E9DEC3.
Error: can't find command 'drivemap'.
Error: invalid EFI file path.
重新进入BIOS(可直接在引导项中选System setup),发现启动顺序中多了ubuntu选项并在最前的位置,将Windows Boot Manger 调整到最前,重启后直接进入Win8,但不能引导进入Ubuntu。这样每次切换系统时需要重新设置BIOS,麻烦。
修复Win8引导问题:
1) 设置BIOS->Security->Secure Boot -> Disable
2)设置BIOS启动顺序为ubuntu优先,引导进入Ubuntu系统,安装Boot Repair,其会自动检测EFI启动盘,并推荐修复,按它提示的命令安装软件进行修复。boot repair完成后重启,会多出几项Windows EFI的引导项(包含一键还原的引导),选Windows Boot EFI Loader ,将引导进入Window 8。
注意,如果grub安装未完全就重启,可能无法进入引导界面,不用着急,进BIOS调整下启动顺序是可以进Win8的,设置从光盘启动,重新装一下ubuntu或进光盘ubuntu系统修复一下就可以重新引导ubuntu了,继续后面的步骤。
但是,启动引导项中Windows 8(loader) 仍然无效,可能这是传统模式下(相对EFI模式)引导Window的,可以删除这个引导项,也可删除多余的EFI引导项,使引导界面更简洁美观。
查看/boot/grub/grub.cfg,找到各引导项在/etc/grub.d下对应的配置文件,删除或注释掉不需要的引导项(这里删掉了对应windows8 loader对应的30_os-prober文件, 在25_custom文件中注释了两个EFI启动项),执行update-grub2,重新生成grub.cfg。 重新启动,会看到grub的引导界面变得简洁,且无多余或无效的引导项了。
------------------------
参考: http://visstrasz.blog.163.com/blog/static/18430624420113141131276/
/usr/sbin/update-grub ---> 脚本,用来更新grub配置,实际调用了下面的grub-mkconfig
/usr/sbin/grub-mkconfig ---> 脚本,根据/etc/default/grub脚本和/etc/grub.d下的脚本,输出配置项
/etc/default/grub ---> 默认的Grub配置脚本
/etc/grub.d/* ---> 此目录下包含的配置脚本会被grub-mkconfig调用执行
/boot/grub/grub.cfg ---> 被update-grub隐性引用,grub-mkconfig最终输出配置项到此文件中
修改/etc/grub.d目录里的配置脚本,这样在每次升级内核,update-grub2之后,我们修改的内容还能继续体现在/boot/grub/grub.cfg中。
-----------------
5. 在Win8下隐藏ubuntu分区,windows下ubuntu分区显示为大小为0的未格式化分区,为防止误操将它格式化,导致丢失数据,在windows下隐藏它。
右击“我的电脑”->“管理”->“磁盘管理”,右击“分区X”->“更改驱动器名和路径”->“删除”。
反之,可以将隐藏的分区显示出来。