操作系统学习笔记 006 源码安装GRUB
安装之前
# which grub-install
/usr/sbin/grub-install
# update-grub ;重新生成GRUB的启动菜单配置文件
执行后启动无变化
下载GRUB
下载地址:http://www.gnu.org/software/grub/grub-download.html
下载地址:ftp://ftp.gnu.org/gnu/grub/
下载文件:grub-2.00.tar.gz
安装依赖项
# apt-get install m4 bison flex
解压编译
# tar zxvf grub-2.00.tar.gz
# ./configure
# make
错误1:http://lists.gnu.org/archive/html/help-grub/2013-07/msg00055.html
#if defined gets //添加代码
#undef gets
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif //添加代码
错误2:No such file or directory #include <freetype/ftsynth.h>
# grep -rn "<freetype" ./
-r 递归查找
-n 显示行号
./ 当前目录
将相应文件中的freetype改成freetype2。
# make install
安装之后
# which grub-install
/usr/local/sbin/grub-install
重新启动,启动界面无变化
# update-grub ;重新生成GRUB的启动菜单配置文件
除了启动项变了,界面也变了,粉紫色背景没有了,为什么?
修改GRUB
找到highlighted相关的代码,在highlighted后面添加一个特殊字符串
# make
# make install
重新启动,启动界面无变化,修改无反映
# update-grub
重新启动,启动界面无变化,修改无反映
# grub-install --boot-directory=/boot/ /dev/sdb
重新启动,修改得到反映
格式化U盘
# fdisk -l ;查看磁盘列表及分区状态
# umount /dev/sdc1
# fdisk /dev/sdc ;开始U盘分区
# mkdir -p /media/zhuyc/u
# mount /dev/sdc1 /media/zhuyc/u/
安装到U盘
# grub-install --boot-directory=/media/zhuyc/u/ /dev/sdc
# grub-mkconfig -o /media/zhuyc/u/grub/grub.cfg
U盘引导,出现GRUB界面,之前GRUB的修改得到反映
再次修改GRUB
# make
# make install
# umount /dev/sdc1
# mount /dev/sdc1 /media/zhuyc/u/
# grub-install --boot-directory=/media/zhuyc/u/ /dev/sdc
U盘引导,出现GRUB界面,修改再次得到反映
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?