一次简单的内核编译(二)

  前言:

    此次编译是继一次简单的内核编译(一)进行操作编译的,请先查看第一篇再来看此片文章

一、使用busybox代替自己制作的init脚本,实现内核启动;

 1、在这里我们使用静态编译busybox,所以需要先安装glibc-static依赖包,如果不安装会报错

  45.png

 2、解压busybox到/usr/src/,切换到解压目录,运行make menuconfig

  43.png

 

 3、在busybox编译菜单中选择静态编译,以便于我们使用时方便  44.png

 

  4、选择好静态编译后,保存退出,运行make进行编译,编译完成后,运行make install进行安装,安装成功后生成以下文件及目录46.png

  5、cd /mnt/sysroot/目录中,使用cpio归档当前所有文件做备份,备份完成后删除所有文件

  47.png

  复制编译busybox时产生的文件到/mnt/sysroot/,复制时使用-a选项,保持源文件的属性

  48.png

 

 6、复制完成后,确保/mnt/sysroot/sbin/目中要有init脚本

  49.png

 7、删除linuxrc链接文件,然后创建系统初始化所需要的目录

50.png

54.png

 8、在/mnt/sysroot/etc/目中中创建network文件,内容如下:

 51.png

 9、在/mnt/sysroot/etc/rc.d/目中创建rc.sysinit系统初始化脚本,内容如下:

  57.png

 10、创建完成后,给/mnt/sysroot/etc/rc.d/rc.sysinit.添加执行权限

  53.png

 

 11、在/mnt/sysroot/etc/中创建系统初始化需要的文件inittab,内容如下:

  56.png

  12、创建启动时需要的字符设备

  58.png

  13、运行sync同步数据,然后挂起宿主机,启动新建的虚拟机,启动结果如下:

  59.png

  14、关闭新建的虚拟机,启动宿主机,在/mnt/sysroot/etc/inttab中定义,系统启动时启动多个终端

  60.png

  

 15、运sync同步数据,挂起宿主机,启动新建的虚拟机,启动结果如下

  61.png

  62.png

  63.png

 16、至此简单的内核编译完成,可以玩耍了,本人写的不好,请大侠多多指教

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

(0)
上一篇 2015-05-28 15:23
下一篇 2015-06-01 19:12

相关推荐

  • rsync+inotify实现文件同步

    一、前言 什么是rsync,remote synchronize远程同步简写。Linux系统上由rsync这个软件包提供。rsync有几个特点,镜像保存整个文件目录树或文件系统;有较高的数据传输效率;可以借助ssh实现安全数据传输;支持匿名传输等。rsync同步只是针对变化的文件进行传输,意味着其会在源和目标之间比较文件的异同。相对与scp来说,第一次传输两…

    Linux干货 2015-10-31
  • 正则表达式—正则表达式详解

    grep使用正则表达式进行匹配时,将大大提高效率和精准性,正则表达式概括分为基本正则表达式和扩展正则表达式。 一、基本正则表达式   字符匹配元字符         .        &nb…

    Linux干货 2016-07-04
  • 绝对路径和相对路径及cd、pwd、mkdir、rmdir、tree命令

    绝对路径和相对路径及cd、pwd、mkdir、rmdir、tree命令详解 一、绝对路径和相对路径(由下图进行讲解) 绝对路径:由根目录开始(/)开始的文件名或者目录名称,我们通过绝对路径切换到/man1文件处,所经过的路径。 cat /root/usr/share/man/man1 如下图 相对路径:相对于当前路径,以当前所在位置的相对路径。例如…

    Linux干货 2016-08-02
  • iptables/netfilter进阶

      在上一章当中我们介绍了iptables的介绍以及它的基本使用,下面我们开始介绍iptables的命令用法以及iptables是如何工作的。 1、回顾 2、iptables相关命令 1、回顾   我们回顾一下上一章节的内容,在上一章节中我们讲述的是iptables的基本概念以及命令格式,同时讲述规则链与表的概念,那么…

    Linux干货 2017-02-03
  • Linux文件管理

    1、Linux上的文件管理命令都有哪些,其常用的使用方法及其相关示例演示。 Linux上的文件管理命令   目录管理类命令:mkdir,rmdir    mkdir [OPTION]… DIRECTORY…     -p: 自…

    Linux干货 2016-09-26
  • python分支循环和列表

    if语句 if condition: 代码块 condition必须是一个bool类型,这个地方有一个隐式转换bool(condition) if 1<2: print(‘1 less than 2’)   循环——while语句 while condition: block 当条件满足即condition为True,…

    2018-03-27

评论列表(1条)

  • stanley
    stanley 2015-06-01 19:07

    小伙伴们的图越来越专业了