制作引导分区

  使用虚拟机制作一个可以引导启动的简单系统。方法如下:

  一、制作两个分区

    1、添加一块新的硬盘,新建两个分区,格式化并挂载到/mnt/boot和/mnt/sysroot目录中;虚拟机添加硬盘的操作很简单就不做演示了,要注意的是添加的硬盘最好选择成“将虚拟磁盘存储为单个个文件”,并为将文件名修改为容易识别的名字,以方便用于挂载到其它虚拟机中。

3.jpg

    2、对新硬盘进行格式化并创建两个分区,容量分别为512M和10G。在目录/mnt下创建两个目录boot和sysroot,用于挂载文件系统。

1.jpg

  二、安装grub

    使用grub-install命令安装grub,命令格式为:

      grub-install [–root-directory=挂载点父目录] DEVICE 

        挂载点父目录:内核及initrd文件所在的分区的挂载点的父目录,且此挂载点必须叫boot。例如:为/boot所在的目录这安装grub,那么–root-directory=/;而对于/mnt/boot目录安装grub,命令如下图所示:

2.jpg

  三、复制内核文件和ramdisk文件

3.jpg

1.jpg

  四、添加grub.conf文件

    grub.conf文件的作用,在进入系统前为用户提供一个选择的菜单。

6.jpg

    各选项含义如下:

      default=0:选择菜单的光标默认在第一项;

      timeout=5:等待用户选择时间为5秒; 

      tiltle TestOS:菜单中显示系统的名称为TestOS;

      root (hd0,0):指定第一个分区为接下来要启动的系统或内核文件所在的分区;

      kernel:指定要运行的内核文件;

      initrd:为要运行的内核指定其可用的ramdisk文件。

  五、创建系统目录

    手动添加各系统目录,如下图所示:

6.jpg

  六、复制程序

    手动将/bin/bash程序复制到/mnt/sysroot目录中,由于程序会调用库文件,还需要把相关的库文件一并复制过去,使用ldd命令可以查找出程序相关的库文件。

7.jpg

8.jpg

9.jpg

    也可以使用此方法复制命令到新的系统中;

4.jpg

  七、测试

    1、本地测试

     使用chroot命令在本地测试:

10.jpg

    2、启动测试

      创建一个新的虚拟机,硬件选择上面创建的那个,然后启动虚拟机。

2.jpg

3.jpg

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/4652

(0)
petmasterpetmaster
上一篇 2016-01-18 23:04
下一篇 2016-01-19 10:26

相关推荐

  • 马哥教育网络21期+第6周博客练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s@\(^[[:space:]]\+\)@#&@g # Let rhgb know that we&#0…

    Linux干货 2016-08-15
  • RPM软件包管理

    Linux应用程序的组成 安装完一个软件包以后,可能会向系统中复制大量的数据文件,并进行相关设置。在Linux系统中,典型的应用程序通常由以下几部分组成。 普通的可执行程序文件:一般保存在“/usr/bin”目录中,普通用户即可执行。 服务器程序、管理程序文件:一般保存在”/usr/sbin“目录中,只有管理员能执行。 配置文件:一般保存在”/etc“目录中…

    Linux干货 2016-08-21
  • CA服务器的搭建以及证书签署、dropbear的编译安装

    CA服务器的搭建以及证书签署、dropbear的编译安装 一、CA Server和Client: 1、CA server:创建私钥CA (1)   openssl的配置文件:/etc/pki/tls/openssl.conf   如果Client端的申请是来自不同的国家,则需要将下图中红色框内的三项,由“match”改为“opt…

    Linux干货 2016-09-23
  • iptables 实现应用层过滤

        在linux环境中,工作于内核空间的netfilter和工作于用户空间的iptables共同组成了其功能强大且操作灵活的防火墙系统,对进出主机或内外网之间的流量基于IP地址、通信协议、端口以及连接状态等进行管控,然而,对于一些使用非固定端口或者通信协议的应用程序,默认是没有办法做限制的,比如聊天软件QQ、下载工具迅雷等,不过我们可…

    Linux干货 2015-07-10
  • vim编辑器基本应用

    vi:Visual  Tnterface文本编辑器 vim:vi Improved vi的加强版 文本编辑种类:   行编辑器:sed   全屏编辑器:nano,vi,vim 其他编辑器::   gedit:一个简单的图形编辑器   gvim:一个vim编辑器的图形版本 vim使用格式 +# :打开文件后,直…

    Linux干货 2016-08-11
  • vsftpd基于mysql存储认证(centos7)

    (1)首先开发包组和服务器平平台开发包组 (2)yum安装需要的依赖包 (3)编译安装pam_mysql模块 (4)配置mysql,并添加mysql中的vsftpd进程用户,且创建vsftpd数据库,并将vsftpd数据库授权给vsftpd用户,且创建vsftpd.users表,并在表中添加用户tom (5)创建vsftpd要上传和下载的URL (6)创建基…

    Linux干货 2016-10-15