GNU GRUB手册之启动(一)

GRUB 可以用统一的方式来加载与Multiboot兼容的内核,不过对于一些免费的系统,你需要一些特殊的处理。

1. 通用的启动方法

2. loopback 启动

3. lvm缓存 启动

4. 与操作系统相关的注意事项

如何启动操作系统

GRUB 有两种不一样的启动方法。第一,直接加载才做系统,第二,通过chain-load加载另一个boot loader,让后通过这个boot loader来加载操作系统。一般来说,由于不用安装和维护其他boot loader并且GRUB 可以从任意分区、磁盘加载操作系统,因此第一种方法是大家所希望的。但是,第二种方法有时也是必须的,因为GRUB不能原生的支持所有的操作系统。

1. 直接加载操作系统

2. chain-loading加载才做系统

Multiboot是GRUB原生支持的格式。此外,也支持linux、FreeBSD、NetBSD和OpenBSD。如果要加载其他操作系统,那么就要用到chain-load。

FIXME:这个章节是没有完成的

运行boot命令

因为DOS和Windows有些不足,所以,你要用更加复杂的命令来启动他们。

通过chain-loading启动操作系统

对于那些不支持Multboot或者GRUB中没有特殊支持的操作系统(Linux, FreeBSD, NetBSD 和 OpenBSD在GRUB中有特殊的支持),那么就要用到chain-load,通过这个东西在加载另外一个boot loader,然后通过这个boot loader来加载对应的操作系统。

chainloader命令就是用来设置这个的。通常,在使用这个的时候需要加载一些GRUB模块和配置好root驱动器。举个例子,这里有个windows系统,放在第一块硬盘的第一个分区,那么写法就是类似于下面的:

menuentry "Windows"{

insmod chain

insmod ntfs

set root=(hd0, 1)

chainloader +1

}

如果涉及的系统有多个硬盘,那么还要做其他的配置。

chain-loading仅在PC BIOS和EFI的平台上得到支持。

通过loopback启动

只要存储介质能够被访问,那么GRUB就可以读取里面的映像。但操作系统本身要能够找到它自己的根(目录)。通常,在找到root之前,需要运行用户空间的程序。GRUB通过加载一个特殊的小的镜像,并把它当做内存盘(ramdisk)传给内核来做到这点。通过这些命令就可以做到: kfreebsd_module, knetbsd_module_elf, kopenbsd_ramdisk, initrd (see initrd), initrd16 (see initrd), multiboot_module, multiboot2_module or xnu_ramdisk,具体用哪个就看你的用的时候什么操作系统。

要注意,knetbsd必须放到miniroot.kmod里面并且miniroot.kmod必须被加载。在kopenbsd的配置中,这个是被默认禁掉的。此外,ramdisk的默认行为会依据命令的选项而定。有些发行版提供了这个镜像,或者集成在标准的ramdisk里,通过特殊的选项来激活。至于怎么弄,就要看内核、发行版的手册了。其他loader,比如说appleloader, chainloader (BIOS, EFI, coreboot), freedos, ntldr 和 plan9就不提供这种ramdisk。除非这些loader的作者认识到payloads既不支持ramdisk也不支持loopback启动。那么请考虑下把所有文件都拷贝到分区来启动的方法。更多的信息就要查看操作系统文档了。

通过LVM缓存逻辑卷来启动

LVM 缓存逻辑卷有一个原始卷和缓存池逻辑卷组成。原始卷一般来说就是比较大、比较慢的存储设备,而缓存池就是比较小、比较块的存储设备。通过把原始卷里经常访问的数据放到缓存池里,既可以很好的利用更快的设备的性能。

GRUB从LVM缓存逻辑区启动,也只是从原始的卷中读取数据,在缓存池的脏数据是不使用的。对于“直写”的缓存模式来说,这是没问题的,因为它保证数据会同事保存到缓存和原始LV当中。对于其他模式,比如“回写”,这种方法就是延迟把缓存的数据写到原始LV中,从而提升性能。如果遇上突然停电然后恢复供电时,GRUB就可能无法启动。因为它不能从缓存里读取脏数据。在未来,这点会改进。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在爱快GNU GRUB版本2.0.2中设置启动顺序是一项相对简单的任务。GRUB(GRand Unified Bootloader)是一个常用的引导加载程序,用于在计算机启动时选择和加载操作系统。 首先,进入计算机的BIOS设置。每台计算机的进入BIOS设置方式可能不同,通常在开机时按下F2、F10、Delete或其它指定键可以进入BIOS设置界面。 一旦进入BIOS设置,寻找启动设备选项。这个选项通常位于BIOS设置的"Boot"或"Startup"菜单下。选择启动设备选项后,在子菜单中找到硬盘驱动器或固态硬盘(SSD)。 在硬盘驱动器或SSD的子菜单中,你将看到所有可用的操作系统或引导选项。现在,你可以使用方向键上下移动以更改它们的启动顺序。选择你希望首先启动的操作系统或引导选项,并使用+或-键将其移动到合适的位置。 设置完启动顺序后,保持更改并退出BIOS设置界面。这通常通过按下F10键或选择相应的保存/退出选项来完成。 接下来,你可以重新启动你的计算机。现在,当计算机启动时,GRUB将按照你在BIOS中设置的顺序加载操作系统或引导选项。 以上是在爱快GNU GRUB版本2.0.2中设置启动顺序的步骤。请注意,不同计算机品牌和模型的BIOS界面可能会稍有不同,因此,在实际操作中可能会有些差异。建议在进行设置时参考计算机的用户手册或联系计算机制造商的技术支持部门以获取更准确的指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值