Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5949
  • 博文数量: 1
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2020-11-22 21:51
个人简介

好记性不如烂笔头,记得整理总结

文章分类
文章存档

2021年(1)

我的朋友
最近访客

分类: 嵌入式

2021-05-08 11:00:25

1 Grub2.0编译过程
从网上下载需要的grub源码,比如我下载的是grub-2.00.tar.gz。
将相应的grub源码解压到一个目录下面,比如我这里解压到/opt下面。
tar xvf grub-2.00.tar.gz的路径 –C 要解压到的目录
进到grub源码的根目录下:比如我这里是cd /opt/grub-2.00
依次执行:
./configure  --prefix=/mnt/user  //让系统自动配置grub编译选项
make //编译grub
make install //将编译成功的grub文件安装到指定的目录下面 
--prefix=:是在执行make install时将grub编译好的文件安装到--prefix=指定的位置;如果没有指定这个--prefix=参数,make install默认安装到/usr/local/bin、/usr/local/man等中。
2 Grub2.0安装过程
将/mnt/user下的grub2文件夹复制到U盘修复工具的cf卡的第二个分区,使用U盘修复工具启动时会在/mnt/user下看到grub2文件夹。
2.1 cf卡安装grub2.0过程
在cf卡上安装grub2.0的时候,按照以下步骤:
1) 用带有grub2文件夹的u盘修复工具在ipc100或ipc102上启动;将要安装grub的分区先挂载到一个目录下面:比如我这里挂载分区选择/dev/sda2,挂载目录选择/g目录。mount  /dev/sda2  /g
2) 进到/mnt/user/grub2/sbin目录下,执行一下命令
./grub-install --force --boot-directory=/g/boot /dev/sda
安装完成后,会提示:Installation finished. No error reported.此时可以进到/g/boot目录下面,有关grub2的文件已在此目录下,说明grub安装成功。
3) 将Linux系统的内核和跟文件系统解压到/g/boot目录下面,以及grub2.0的配置文件grub.cfg解压到/g/boot/grub目录下面。(注意这里需要修改grub.cfg文件中的menuentry选项)
4) 现在可以断电重启,linux系统是否以grub2.0引导启动的。
2.2 mmc安装grub2.0过程
在cf卡上安装grub2.0的时候,按照以下步骤:
1) 用带有grub2文件夹的u盘修复工具在 ipc200上启动;将要安装grub的分区先挂载到一个目录下面:比如我这里挂载分区选择/dev/mmcblk0p1,挂载目录选择/g目录。mount  /dev/mmcblk0p1  /g
2) 进到/mnt/user/grub2/sbin目录下,执行一下命令
./grub-install --force --boot-directory=/g/boot /dev/mmcblk0
安装完成后,会提示:Installation finished. No error reported.此时可以进到/g/boot目录下面,有关grub2的文件已在此目录下,说明grub安装成功。
3) 将Linux系统的内核和跟文件系统解压到/g/boot目录下面,以及grub2.0的配置文件grub.cfg解压到/g/boot/grub目录下面。(注意这里需要修改grub.cfg文件中的menuentry选项)
4) 现在可以断电重启,linux系统是否以grub2.0引导启动的。
2.3 U盘修复工具脚本修改
修改安装启动引导程序相关命令和操作系统解压,使ipc102和ipc200支持grub的安装。
#安装启动引导程序
mount $partition2 /g
../grub2/sbin/grub-install --force --boot-directory=/g/boot $disk
sync
umount /g


#操作系统解压
mount $partition2  /g
tar xf $1 -C /g
sync
umount /g
$partition2在ipc102上是/dev/sda2, 在ipc200上是/dev/mmcblk0p1 
$disk在ipc102上是/dev/sda, 在ipc200上是/dev/mmcblk0 
$1是在U盘修复工具界面选择的BTF包。
3 修改grub的配置文件
3.1修改 ipc102grub配置文件
在ipc102上是将grub安装在第二个分区,这里需要设置grub.cfg配置文件中的menuentry选项下的root,设置为set root=(hd0,msdos2),hd0是第一个硬盘,msdos2代表硬盘的第二个分区。
3.2 修改ipc200grub配置文件
在ipc200上是将grub安装在第一个分区,这里需要设置grub.cfg配置文件中的menuentry选项下的root,设置为set root=(hd0,msdos1),hd0是第一个硬盘,msdos1代表硬盘的第一个分区。
4 grub2.0安装过程注意事项
1) 将grub编译好的文件复制到U盘修复工具时,要注意grub生成的文件中保存着宿主机下的路径;因此需要将grub编译好的文件复制到U盘修复工具时的路径应该与宿主机相同的路径下;否则需要根据grub在 U盘修复工具的实际路径去修改grub-inatll脚本中的prefix等变量。
2) 在安装grub时,一定要添加--force参数,否则可能在IPC200上安装不成功。且安装分区不要精确到某个分区,只需要确定到那个硬盘设备即可。

阅读(1728) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:没有了

给主人留下些什么吧!~~