制作GRUB2启动镜像

来源:互联网 发布:uploadify java demo 编辑:程序博客网 时间:2024/05/17 23:28

1.创建空镜像

$ dd if=/dev/zero of=disk.img bs=512 count=131072

2.新建一个bootable分区

$ fdisk disk.imgCommand (m for help): nPartition type:  p   primary (0 primary, 0 extended, 4 free)  e   extendedSelect (default p): pPartition number (1-4, default 1): 1First sector (2048-131071, default 2048): Using default value 2048Last sector, +sectors or +size{K,M,G} (2048-131071, default 131071): Using default value 131071Command (m for help): a Partition number (1-4): 1Command (m for help): wThe partition table has been altered!Syncing disks.

3.使用loop把分区挂载

 $ sudo losetup /dev/loop0 disk.img $ sudo losetup /dev/loop1 disk.img -o 1048576 # 1048576 == 1MB,上面创建分区时从2048扇区开始,2048 × 512B

4.格式化分区

 $ sudo mkfs.ext4 /dev/loop1 $ sudo mount /dev/loop1 /mnt

5.安装grub2

 $ sudo grub-install --root-directory=/mnt --no-floppy \ --modules="normal part_msdos ext2 multiboot  biosdisk" /dev/loop0

6.启动试一下

$ qemu-system-x86_64 -m 256 -display gtk disk.img#因为没有系统,启动后会进入grub shell

参考http://wiki.osdev.org/GRUB_2#Disk_image_instructions

0 0
原创粉丝点击