(红色部分为说明)

grub.cfg 默认为只读,要修改前先设为可写
sudo chmod +w /boot/grub/grub.cfg

set default=0
#默认为0

insmod jpeg
#添加jpg支持,如要使用png或tga文件做背景,加上 insmod png或insmod tga

insmod ext2
#除了用作启动的分区外,其他分区格式可在menu底下再添加

set root=(hd0,7)
#设定root分区

search –no-floppy –fs-uuid –set f255285a-5ad4-4eb8-93f5-4f767190d3b3
#设定uuid=****的分区为root,和上句重复,可删除

# 以下为终端配置 
if loadfont /usr/share/grub/unicode.pf2 ; then
#设置终端字体,unicode.pf2支持中文显示

set gfxmode=640×480

#设置分辨率,默认为 640×480,可用800×600,1024×768,建议跟你想设定的图片大小一致

insmod gfxterm
#插入模块 gfxterm,支持中文显 示,它还支持 24 位图像

insmod vbe
#插入 vbe 模块,GRUB 2 引入很多模块的东西,要使用它,需要在这里加入

if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don’t
# understand terminal_output
terminal gfxterm
#设置 GRUB 2 终端为 gfxterm

fi
fi
set timeout=10
background_image (hd0,7)/boot/images/1.jpg
#设置背景图片

### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=cyan/black
#这两行为 Debian 下的菜单颜色设置,如果默认的话,你会发现背景完全被蓝色挡住了,你需要修改 blue 为 black,这样背景就会出现

### END /etc/grub.d/05_debian_theme ###

# 10_linux 为自动添加的当前root分区linux引导项

### BEGIN /etc/grub.d/10_linux ###
#菜单项,要包括 menuentry 双引号” ” 和大括号 { }才完整,否则不显示菜单

menuentry “Ubuntu, Linux 2.6.31-9-386″ {
insmod ext2
set root=(hd0,7)
search –no-floppy –fs-uuid –set f255285a-5ad4-4eb8-93f5-4f767190d3b3
#这句与set root=(hd0,7)重复,可删除

linux /boot/vmlinuz-2.6.31-9-386 root=UUID=f255285a-5ad4-4eb8-93f5-4f767190d3b3 ro quite splash
#不喜欢看到一长串的, roo=UUID=***可用root=/dev/sda7代替

initrd /boot/initrd.img-2.6.31-9-386
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry “Memory test (memtest86+)” {
linux16 /boot/memtest86+.bin
}
### END /etc/grub.d/20_memtest86+ ###

# 自动添加存在于其他分区的系统引导项

### BEGIN /etc/grub.d/30_os-prober ###
#windows 启动菜单 
menuentry “Windows Vista (loader) (on /dev/sda1)” {
insmod ntfs
#windows格式为ntfs,或为fat32改为 insmod fat

set root=(hd0,1)
search –no-floppy –fs-uuid –set ece067d2e067a196
#可删除 
#grub2比较先 进的地方就是如果发现windows启动是通过ntldr 引导的,定为2000/xp/2003,会在这加上 drivemap -s (hd0) ${root} ,作用相当于grub的map,可正常启动非第一硬盘的xp/2003系统。

chainloader +1
}
# 查找到其他分区上的linux系统并自动添加

menuentry “Ubuntu karmic (development branch) (9.10) (on /dev/sda3)” {
insmod ext2
set root=(hd0,3)
search –no-floppy –fs-uuid –set 4d893970-0685-44ed-86b3-1de45b2db84a
linux /boot/vmlinuz-2.6.31-9-generic root=/dev/sda3
initrd /boot/initrd.img-2.6.31-9-generic
}
#若存在macos会自动在这里添加。

### END /etc/grub.d/30_os-prober ###

# 以下为手动添加的菜单项 
### BEGIN /etc/grub.d/40_custom ###
menuentry “CDLinux”{
set root=(hd0,8)
linux /CDlinux/bzImage root=/dev/ram0 vga=791 CDL_LANG=zh_CN.UTF-8
initrd /CDlinux/initrd
}
### END /etc/grub.d/40_custom ###

# 手动添加时,硬盘编号从0开始(hd0),主分区编号从1开始(hd0,1),逻辑分区从5开始(hd0,5)

注:1、这个文件不建议修改,因为grub2更改了运行机制,在新的内核升级后,自动运行update-grub的命令,这个更改就无效了,最根本的办法还是更改 /etc/default/grub 和 /etc/grub.d 目录中的自定义文件。

2、

UUID就是Universal Unique IDentifier的缩写,它是一个128位,16字节的值,并确保在时间和空间上唯一。
它是把硬件地址、时间以及随机数结合在一起,来确保其 唯一性的。
一般情况下,生成算法用计算机网卡的地址和一个60位的timestamp生成,时间 是以100ns为时间间隔。
例如,一台300PL 6862的计算机,主板集成的网卡的MAC地址为00-04-AC-2E-B7-DC,而UUID的最后六个字节也会是0004AC2EB7DC

转载于:https://www.cnblogs.com/happyforev1/articles/1738501.html

ubuntu9.10之grub.cfg详解相关推荐

  1. linux系统下grub.cfg详解和实例操作

    linux系统下grub.cfg详解和实例操作 简介 grub是引导操作系统的程序,它会根据自己的配置文件,去引导内核,当内核被加载到内存以后,内核会根据grub配置文件中的配置,找到根分区所使用的文 ...

  2. GRUB2配置文件grub.cfg详解

    GRUB2模块 对于GRUB-2.0.2版本来说,官方提供的模块一共有200多个,这些模块大致可以分为以下几类(模块间的依赖关系位于"moddep.lst"文件中): 命令模块[c ...

  3. GRUB2配置文件grub.cfg详解(GRUB2实战手册)

    GRUB2模块 对于GRUB-2.0.2版本来说,官方提供的模块一共有200多个,这些模块大致可以分为以下几类(模块间的依赖关系位于"moddep.lst"文件中): 命令模块[c ...

  4. grub2的配置文件grub.cfg详解

    注:一般修改/etc/default/grub文件,然后执行sudo update-grub来生成/boot/grub/grub.cfg grub.cfg 默认为只读,要修改前先设为可写 sudo c ...

  5. linux常用的引导管理器,多重引导管理器Grub使用详解

    多重引导管理器Grub使用详解 1.问题的提出 目前发行的Linux版本大多用LILO实现多系统引导,但不同版本的LILO有同样的一个问题:根分区(/boot分区)不能分在1024柱面(约8.4GB ...

  6. Python-Matplotlib可视化(10)——一文详解3D统计图的绘制

    Python-Matplotlib可视化(10)--一文详解3D统计图的绘制 前言 3D散点图 3D曲线图 3D标量场 绘制3D曲面 在3D坐标轴中绘制2D图形 3D柱形图 系列链接 前言 Matpl ...

  7. Android 10.0 Activity启动详解(二)

    Android 10.0 Activity启动详解(一) 我们在上一篇博客中已经介绍了关于Activity的一些基础概念.这一篇博客我们以Android 10.0的代码来分析Activity的启动流程 ...

  8. 排序算法,最全的10大排序算法详解(Sort Algorithm)

    文章目录 排序算法,最全的10大排序算法详解(Sort Algorithm) 排序算法分类 排序算法稳定性 时间复杂度(time complexity) 1#时间复杂度的意义 2#基本操作执行次数 如 ...

  9. OpenCV实战(10)——积分图像详解

    OpenCV实战(10)--积分图像详解 0. 前言 1. 积分图像计算 2. 自适应阈值 2.1 固定阈值的缺陷 2.2 使用自适应阈值 2.3 其它自适应阈值计算方法 2.4 完整代码 3. 使用 ...

  10. 我的世界服务器防止右键无限钓鱼,我的世界:1.7.10挪威海怪事件详解,在海边钓鱼,却被鱿鱼杀死!...

    事情是这样的:2014年,一位萌新在Minecraft的海边钓鱼.突然钓出一只名叫"THE KARKEN"的生物,它一直爆炸直至玩家死亡.但奇怪的是死亡提示却是"你被鱿鱼 ...

最新文章

  1. 「CSDN 2021年度 IT 技术影响力之星评选」活动报名倒计时!
  2. 计算机视觉领域如何从别人的论文里获取自己的idea?
  3. zabbix——拓扑图入门
  4. 【.NetCore学习】ASP.NET Core EF Core2.0 DB First现有数据库自动生成实体Context
  5. 利用Mybatis对数据库进行增删改查操作
  6. tars 部署 oracle,Tars 部署介绍(必看)
  7. Golang实践录:调用C++函数
  8. 自己动手写Docker系列 -- 4.3实现volume数据卷
  9. Delphi通过MSHTML实现一个HTML解析类
  10. 深入出不来nodejs源码-从fs.stat方法来看node架构
  11. 转发给上海的朋友们!程序员写了一款抢菜插件!这个抢菜插件让上海很多朋友成功抢了一个月的菜!感谢!...
  12. python控制代码使用的gpu
  13. MySQL数据库选型
  14. leetcode每日一练(第一天)
  15. 移远EC20 EC600 EC200系列通过MQTT协议接入电信物联网平台
  16. 面试必问JavaScript基础面试题(附答案详解)
  17. 3.c++计算字符串长度的函数
  18. cpu被锁频解除方法_CPU频率被锁定到800mhz怎么办?
  19. 使用openjtag和openocd操作IXP425的flash
  20. C# 按Button弹出新的窗体 Show()方法 和 ShowDialog()方法

热门文章

  1. 使用Fresco实现简单的显示一张图片
  2. 一起谈.NET技术,在.NET中嵌入IronPython 交互
  3. Visual Studio使用技巧---(1-10)
  4. 浅谈串口DCB流控制设置
  5. 惯性力偶矩公式中j_万众期待的倍量过左峰选股公式,通达信专用,学会收益再翻一倍!...
  6. React Native 画虚线 DashLine
  7. 两个前端项目利用iframe进行通信
  8. python 字典写入excel_Python向excel中写入数据的方法
  9. python运维知识大全_python基础知识
  10. 纷杂的Spring-boot-starter: 3 数据访问与spring-boot-starter-jdbc