打造个人专属的微型linux--具体实现篇
离上一篇启动原理间隔了这么多天,让大家久等了。这期间在制作过程中个人也遇到了些许问题,所以断断续续的才把此篇写完。
问题是在initrd阶段识别不到磁盘设备,挂载不了rootfs,谷歌了查了很多资料都没得到解决。刚开始用的是centos6.2的内核,6.2更新了initrd,里面的init脚本和以前有很大的不同,于是我换到5.8的内核,还是不行,又切换到5.4的内核,问题依然存在。火大,又自己去官网下载了2.6.18的内核源代码,基于安装的centos5.4的config重新编译了一次(编译太耗时间),问题依旧存在。。。那时候真的是特别无语。最后还是找马哥交流了下,在这里还要多谢马哥的指导,找到了问题的关键所在。大家有什么问题也可以在马哥的群里一起探讨,群号在马哥的博客,地址在我的博客链接中 在开始之前说说个人的近况。值得高兴的是pass了国家软考网络工程师,对于这个证书,个人觉得以后在国企或者政府单位工作还是有点用处的,一般在私企和外企作用不是很大。不过总是比没有的好。 网工过了,下半年的计划就是把CCNA给过了,这个已经耽搁了很久了。主要是对自己的en很不自信。。。呵呵。。对于CCIE。。。还是算了,网络这块,折腾到CCNP也就差不多了。。。 好了,有点啰嗦了,接下来进入正题 总结在上一篇的linux启动原理,我们知道要启动一个linux所必须的有的东西有以下几个 1.bootloader:系统引导程序GRUB 2.kernel:系统内核 3.initrd:引导内核的ramdisk 4.init:系统第一个进程 5.用户接口bash 5.init,bash等程序所依赖的库文件和脚本 为了避免各位看官看的迷糊,首先先说下大概的一个流程 整个实验的流程:安装bootloader--复制kernel到硬盘--提供initrd--配置GRUB--提供init,bash,等必须的软件和库文件 由以上流程罗列出以下所需要的一些配置文件,程序等元素 配置文件 /etc/inittab /boot/grub/grub.conf 脚本 /etc/rc.d/rc.sysinit 必须的程序 kernel /sbin/init /bin/bash 库文件:用ldd查看具体需要哪些库文件 知道了以上所需要的东西,接下来,就可以开始动手在一块硬盘中一步步的打造一个微型的linux了 具体思路是在一个安装好的linux宿主机中添加一块新硬盘,在这块硬盘上安装一个微型的linux,再用另外一台虚拟机加载那块硬盘启动微型linux OK,just do it ! ps:以下都在虚拟机中实现 step1: 首先添加一块硬盘
(编辑:佛山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |