现在的位置: 首页 > 综合 > 正文

VirtualBox运行自已编译的Linux

2012年06月21日 ⁄ 综合 ⁄ 共 1064字 ⁄ 字号 评论关闭

之前几篇也一直探究如何自已编译Linux并且生成ISO,在VirtualBox中运行。实验了几天,也不得其法。正好找到一篇文章参考:

前言
1.首先建立个硬盘镜像
2. 为磁盘镜像分区
3. 格式化分区
4. 按照文件系统
5. 编译grub
6. 编译busybox
7.编译内核, 我用的是2.6.31.3
8. 制作initrd.gz
9. 编辑文集 mnt/boot/menu.lst
10. 编写配置文件
11 安装grub
12. 转换磁盘镜像
13. 用VirtualBox 创建虚拟机运行吧

 

1.首先建立个硬盘镜像:
  dd if=/dev/zero of=hd.img bs=1M count=512

2. 为磁盘镜像分区
  首先作为一个loop device 安装
  losetup /dev/loop1 hd.img
  fdisk /dev/loop1
  对其进行分区,我是只分了一个主分区

3. 格式化分区
  注意:由于我们只有个loop1 指向hd.img的磁盘开始,而我们现在需要的是hd.img分区,所以我们要用到另一个loop device:
  losetup -o 32256 /dev/loop2 /dev/loop1
  mkfs.ext2 /dev/loop2

4. 按照文件系统:
  mkdir ./mnt
  mount -o loop /dev/loop2 mnt
  cd mnt
  mkdir -p boot/grub

5. 编译grub:
  这个没什么可说的,如果你不想麻烦,可以直接从你的Linux相同上复制.
  cp /YOUR-PATH/stage[12] mnt/boot/grub

6. 编译busybox
  cp /busybox/_install/* mnt/  -av

7. 编译内核, 我用的是2.6.31.3
  cp vmlinuz mnt/boot

8. 制作initrd.gz
  cp initrd.gz mnt/boot

9.编辑文集 mnt/boot/menu.lst
  default 0
  title MyLinux
  root (hd0,0)
  kernel /boot/vmlinuz
  initrd /boot/initrd.gz

10.安装grub
  grub --device-map=/dev/nul
  grub> device (hd0) hd.img
  grub> root (hd0,0)
  grub> setup (hd0)

11.转换磁盘镜像
  qemu-img convert hd.img -O raw hd.raw VBoxManage convertdd hd.raw hd.vdi

12.用VirtualBox 创建虚拟机运行

抱歉!评论已关闭.