使用虚拟机制作一个可以引导启动的简单系统。方法如下:
一、制作两个分区
1、添加一块新的硬盘,新建两个分区,格式化并挂载到/mnt/boot和/mnt/sysroot目录中;虚拟机添加硬盘的操作很简单就不做演示了,要注意的是添加的硬盘最好选择成“将虚拟磁盘存储为单个个文件”,并为将文件名修改为容易识别的名字,以方便用于挂载到其它虚拟机中。
2、对新硬盘进行格式化并创建两个分区,容量分别为512M和10G。在目录/mnt下创建两个目录boot和sysroot,用于挂载文件系统。
二、安装grub
使用grub-install命令安装grub,命令格式为:
grub-install [–root-directory=挂载点父目录] DEVICE
挂载点父目录:内核及initrd文件所在的分区的挂载点的父目录,且此挂载点必须叫boot。例如:为/boot所在的目录这安装grub,那么–root-directory=/;而对于/mnt/boot目录安装grub,命令如下图所示:
三、复制内核文件和ramdisk文件
四、添加grub.conf文件
grub.conf文件的作用,在进入系统前为用户提供一个选择的菜单。
各选项含义如下:
default=0:选择菜单的光标默认在第一项;
timeout=5:等待用户选择时间为5秒;
tiltle TestOS:菜单中显示系统的名称为TestOS;
root (hd0,0):指定第一个分区为接下来要启动的系统或内核文件所在的分区;
kernel:指定要运行的内核文件;
initrd:为要运行的内核指定其可用的ramdisk文件。
五、创建系统目录
手动添加各系统目录,如下图所示:
六、复制程序
手动将/bin/bash程序复制到/mnt/sysroot目录中,由于程序会调用库文件,还需要把相关的库文件一并复制过去,使用ldd命令可以查找出程序相关的库文件。
也可以使用此方法复制命令到新的系统中;
七、测试
1、本地测试
使用chroot命令在本地测试:
2、启动测试
创建一个新的虚拟机,硬件选择上面创建的那个,然后启动虚拟机。
原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/4652