操作系统开发 - 在disk image上安裝grub2
来源:互联网 发布:linux文件夹改名 编辑:程序博客网 时间:2024/06/04 18:44
網上很少關於grub2在disk image上的安裝方法,所以寫這編教程:
Makefile:
dd if=/dev/zero of=hd.img count=20 bs=1047675
./createPartition.sh
kpartx -a hd.img
mkfs.vfat /dev/mapper/loop0p1
mount /dev/mapper/loop0p1 1
mkdir -p 1/boot/grub
cp grub.cfg 1/boot/grub/grub.cfg
cp testing_kernel 1/boot
echo "(hd0) /dev/loop0" > device.map
echo "set prefix=(hd0,msdos1)/boot/grub" > mycfg.cfg
~/grub2/bin/grub-mkimage --config=mycfg.cfg -p /boot -O i386-pc -o 1/boot/grub/core.img loadenv chain biosdisk part_dvh part_msdos msdospart part_gpt exfat ext2 fat vbe vga ntfs echo test configfile minicmd hdparm normal
cp ~/grub2/lib/grub/i386-pc/boot.img 1/boot/grub/
~/grub2/sbin/grub-bios-setup -m device.map -d 1/boot/grub /dev/loop0
sleep 1
umount 1
kpartx -d hd.img
grub.cfg:
set timeout=15
set root=(hd0,msdos1)
#set default=0 # Set the default menu entry
menuentry "china ar" {
insmod ext2
set root=(hd0,msdos1)
chainloader +1
# multiboot /boot/testing_kernel # The multiboot command replaces the kernel command
# boot
}
menuentry "OS Name 2" {
multiboot /boot/testing_kernel # The multiboot command replaces the kernel command
boot
}
creeatePartition.sh:
#!/bin/bash
cat <<EOM| fdisk hd.img
n
p
1
t
c
w
EOM
echo ok # you need this line
- 操作系统开发 - 在disk image上安裝grub2
- 操作系统开发 - Grub2 bootloader之安裝
- iOS开发遇到Could not find Developer Disk Image解决方法
- mount disk Image
- 【Grub2】在优盘中安装grub2
- a read-only disk image
- iOS 最新版9.3 disk image
- Xcode8不能在iOS7上调试,Could not find Developer Disk Image的解决方法
- iOS开发真机测试could not find developer disk image的解决
- iOS开发71-解决调试时Could not find Developer Disk Image问题
- art 解决grub2-install安装报错 grub2-install: error: disk ‘hostdisk//dev/sda1’ not found.
- 【GRUB2】通过操作系统的ISO文件 启动或安装操作系统
- Getting grub into a disk image
- xenserver VDI(Virtual disk Image) resize
- How to Make a Bochs Disk Image
- The database disk image is malformed
- qemu: could not open disk image
- disk image(磁盘镜像)
- 《妙趣横生的算法》第10章 算法设计与数据结构面试精粹之常见的算法设计题10-3(question?)
- 《妙趣横生的算法》第10章 算法设计与数据结构面试精粹之常见的算法设计题10-4(question?)
- error C2018: unknown character '0xa1'
- SlickEdit 编码环境设置
- 项目经验小结
- 操作系统开发 - 在disk image上安裝grub2
- Django点滴(一)---缓存
- 后缀数组--处理字符串的利器
- 2008年成都赛区(中山)
- fatal error LNK1168:cannot open Debug/.exe for writing:
- 《数据结构》练级-冒泡排序
- 去除数组中的重复数据
- arm平台交叉编译器的制作
- 猫捉老鼠问题系列(一)