Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

E.5.2. 文件名和块列表(Blocklist)

当在 GRUB 里输入命令来引用文件时(如菜单列表),必须在设备和分区号码后面紧接着指定绝对文件路径。
下面演示了这样的命令的结构:
(<device-type><device-number>,<partition-number>)</path/to/file>
在这个示例里,用 hdfdnd 替换 <device-type>。用整数来替换设备的 <device-number>。用相对于设备顶层的绝对路径来替换 </path/to/file>
也可能在 GRUB 中指定实际上并不在文件系统里的文件,如出现在分区的初始化块里的 chain 安装程序。要安装这样的文件,可以使用指定文件在分区里所在的块的 blocklist。既然文件通常由几个不同块的集合组成,块列表使用了特殊的语法。每个包含文件的块都由块的位移量来指定,后面跟着基于这个位移点的块的数量。块位移用逗号隔开的列表中依次列出。
以下是一个块列表的示例:
0+50,100+25,200+1
这个示例指定了从分区的第一个块开始的文件,它使用了块 0 到 49、100 到 124 以及 200。
了解在使用需要链载入的 GRUB 载入操作系统时如何写入黑名单是很有帮助的。如果从块 0 开始,则可以忽略块的位移量。例如,第一个硬盘里的第一分区的 chain 安装文件会有下面的名字:
(hd0,0)+1
下面是在 GRUB 命令行上以 root 用户设置正确设备和分区之后指定块列表的 chainloader 命令:
chainloader +1