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

  前言:

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

一、使用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

相关推荐

  • ​redis cluster 安装指南

    公司的很多项目在使用redis主从。由于coder的各种毁灭性操作,迫切需要一个能带故障恢复的架构。因此新版的cluster,开始了测试。 一、Cluster 理论基础 Cluster介绍 Redis集群是一个提供在多个Redis间节点间共享数据的程序集。 Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis…

    Linux干货 2016-02-14
  • LNMP编译安装-week16

    1、源码编译安装LNMP架构环境; 系统: CentOS 7.2IP: 172.16.0.11版本: nginx-1.10.3 php-5.6.30 mysql-5.6.30 一.安装开发包组 ~]# yum -y groupinstall “Development Tools” “Server Platform Development” 二.编译安装ngi…

    2017-05-11
  • 马哥教育网络21期+第十二周练习博客下

    6、在LAMP架构中,请分别以php编译成httpd模块形式和php以fpm工作为独立守护进程的方式来支持httpd,列出详细的过程。 # LAMP编译安装 # LAMP编译安装,目前CentOS7操作系统上可以使用yum进行安装,在CentOS6上需要编译安装 CentOS6 http-2.2主要安装的,编译安装LAMP需要h…

    Linux干货 2016-10-17
  • blog test

    just test

    Linux干货 2017-02-28
  • 关于压测的宏观个人总结

    工作角色定位 首先先从宏观角度来评估下本次的压测工作. 从工作职责上说本次压测理应由组内其它同学来完成,个人从旁协助或指导即可。团队成员的成长对我个人来说才是更大的成长。所以即使这次压测工作完成的再出色,都会因为是由我来完成的,所以都不能称之为优秀的。对我个人的成长最多是项目经验的增长和问题的积累,但对组员来说如何让他们做到现有成果的80%是我需要帮助他们来…

    Linux干货 2015-04-21
  • inode概念总结

    一、inode  inode是类UNIX系统上文件系统中的一种数据结构。数据在磁盘上存储是按扇区存放的,几个扇区组成一个块(block),操作系统为高效读取磁盘上的数据,按block来读取。而数据存放的block的地址就包含在inode里。 二、inode的存储信息  每个inode保存一个文件系统对象(目录,文件,管道,软连接,sock…

    Linux干货 2016-08-05

评论列表(1条)

  • stanley
    stanley 2015-06-01 19:07

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