启动分析
Windows的启动, 硬盘0到1扇区会有一个MBR. BIOS会读取MBR, MBR中存有Windows启动的引导程序.
Linux系统中有一个Swap分区, 该分区是用来模拟内存的. Linux系统会安装在一个另外的分区上. Linux会修改MBR, 修改后的MBR在启动之后会先找到安装了Linux分区的grub. BIOS会调用安装了Linux的分区里的grub启动管理器, 来启动Linux. 安装了Linux的分区的首部存放grub启动器. 如果你选择启动Windows, 那么grub会去读取MBR中的Window启动程序, 从而完成Windows的启动.
这就是我为什么要先装Windows, 后装Linux的原因.
grub管理器
先进入grub, 使用命令sudo grub
root(hd0,2) 该命令指定使用第三个分区来启动. 可以使用tab键补全命令, 获得可能的值.
setup(hd0) 设置MBR.
在Windows中, 可以使用fdisk /mbr来修复mbr扇区. 修复之后, 应该就可以启动了.
cat /boot/grub/menu.lst 命令, 为了显示方便, 可以使用less /boot/grub/menu.lst命令来查看.
结果中#代表注释的意思.
default 0
timeout 3 代表等待的时间是三秒, 然后采用default的值来启动.
initrd 代表init ram disk, 内存磁盘, 它的文件是/boot/initrd.img-2.6.28-11-generic
recovery mode就是把Linux启动到单人单任务的模式.