自己DIY制作精简版Centos系统的详细过程

我们都知道linux系统具有无比强大的功能,但是有时候功能强大并不一定是我们想要的,有些情况下我们想要的恰恰就是一个简洁、消耗资源少、能运行一些基本的功能和基本指令的系统,这时候就需要我们手动来制作一个精简的linux系统。

如下图所示:我们有一台待安装的主机(主机B)和一台功能完备的主机(主机A),首先把待安装主机的硬盘拆下来放到主机A上,然后在主机A把内核、驱动、进程、库文件等一些系统必备的东西放到空的硬盘上做成系统硬盘,最后把做好的硬盘放到主机B上直接启动就行了。

下面我们在虚拟机上来模拟这个实验:

1、在宿主机上创建一个空的硬盘

2、打开主机A进行硬盘分区

(1)利用fdisk /dev/adb对空的硬盘进行分区,分区大小分别为主分区一(作为引导分区)100M、主分区二(作为根分区)1G(根分区不能太小)和主分区三(作为虚拟分区)500M

(2)对分区做标识

(3)分别对第一第二分区做格式化

(4)新建两个挂载点,把新硬盘的前两个分区分别挂载到两个挂载点上

3、为新硬盘创建grub引导程序引导的第一、第二阶段建

(1)创建grub引导程序引导的第二阶段,如下所示,参数DIR既是指/mnt /dev/adb

如下图所示在boot目录下生成了grub菜单,进入grub目录查看,除了grub.conf的配置文件没有外其他说明文件和描述文件都有,这里需要说明的是配置文件需要我们手动创建。

(2)创建grub引导第一阶段

首先输入grub,然后开始创建

4、拷贝内核

5、拷贝驱动

(1)在家目录下创建一个临时工作空间,在该目录下把主机A的驱动解压缩到该目录

在temp目录下有些比较重要的目录或文件,比如bin(放置库文件)、init(init程序调用的相关信息)。下面我们来查看一下init文件,如图所示,我们要根据实际情况做相应的调整。

(2)把temp目录下的文件重新打包成一个文件,并输送到新硬盘的引导分区下

6、切换到/mnt/boot/grub目录,创建grub.conf文件,文件内容如下

7、在新硬盘的根分区下建设文件系统(下面建设的是必要的目录,可根据实际情况设置哦)

8、拷贝可执行程序和其所依赖的库文件

(1)这里我们先拷贝init的可执行程序和所依赖的库

首先查看可执行文件的具体位置,再进行拷贝

然后进行查看库文件并拷贝

如上图所示,凡是带有/lib目录的都要拷贝

(2)根据上边的方法再分别把bash、ls、cat进行拷贝

9、配置inittab文件

(1)切换到/mnt/sysroot/etc目录下,建个inittab文件。

(2)打开/etc/inittab文件

(3)因为不需要太多的功能,在inittab文件里我们只留下0、6级别和初始化的文件,也就是上图中21、23和29行。

10、在/mnt/sysroot/rc.d目录下配置初始化文件rc.sysinit

11、然后运行多次sync命令,把设置的所有参数同步到要写入的新的磁盘上

12、在虚拟机上添加一个虚拟主机(也就是主机B),并把其中的硬盘卸下,把刚才我们建的那块硬盘添加到这台主机上

13、完成后暂停主机A,启动主机B,进入系统,我们试着去完成添加的几个可执行程序,ls可以完成,关机指令和重启指令却不能完成

(1)查看/mnt/sysroot/etc目录下inittab文件我们就不难发现,要进入0级别的话,依赖于名为rc的脚本,而rc的脚本又需要相应的指令,相应的指令又需要相应的库文件的支持。我们都把这些拷过来的话实在是太麻烦了,那应该怎样做呢,下面我们来做一下讲解。

(2)如下图所示,我们来为关机和重启分别做sysshutdown和sysreboot两个脚本

分别制作关机脚本和重启脚本,并把相应的可执行程序和库文件拷到对应的目录下

把脚本权限改为可执行

(3)进行同步后,暂停主机A,主机B,再进行相应的关机、重启命令就ok了

14、当然了,我们还想要有机器的主机名另外还要具备基本的网络功能,下面就来一一实现

(1)关闭主机B,启动主机A。分别把名为ping、hostonly以及ifconfig的可执行程序和所依赖的库文件拷到相应的目录下

(2)编辑初始化配置文件/mnt/sysroot/etc/rc.d/rc.sysinit

如上图所示,想要让脚本发挥作用,还需要一个名为network的文件,我们把主机A上的文件拷到主机B的硬盘上,然后做改动

(3)同步之后暂停主机A,开启主机B,测试一下

15、要实现网络功能的话首先需要内核的支持,但是内核中只有那些最常见的驱动,而其它的都被做成内核的模块,当然网卡也不例外。

(1)查看网卡参数

(2)查看PCnet的模块

(3)分别查看PCnet模块和mii模块的详细信息,从中可以看到模块的路径

(4)在主机B的硬盘上建一个存放驱动的目录,再把驱动拷进去

(5)加载驱动需要相应工具的支持,这里我们用insmod,在宿主机把相应的可执行程序和库文件拷到新硬盘相应的目录下

(6)为了在初始化的时候引用相应的模块,编辑初始化的文件/mnt/sysroot/etc/rc.d/rc.sysinit

(7)同步之后,暂停主机A并开启主机B,进行验证

至此,一个简易linux系统就制作成功了,当然我们可以根据需要随意添加应用和修改脚本

(0)

相关推荐

  • U大师U盘启动盘制作工具 安装精简版装机系统

    操作方法 01 U大师U盘启动盘出精简版装机系统拉,顾名思义,精简版就是把内容优化了的,不过不要以为这样内容就不详细了哦,其实这个新版本还是很适合电脑小白使用的,下面小编就开始教大家怎么安装精简版的装 ...

  • 精简版windows系统Arduino驱动安装失败的原因和解决办法

    如果你使用的是精简版windows系统,安装Arduino驱动时,可能会遇到"系统找不到指定文件"这个问题,如下图: 这是因为精简版的window系统删掉了一些不常用的驱动信息引起的,解决方法如下: ...

  • 精简版windows系统Arduino驱动安装失败怎么办

    如果你使用的是精简版windows系统,安装Arduino驱动时,可能会遇到"系统找不到指定文件"这个问题,如下图: 这是因为精简版的window系统删掉了一些不常用的驱动信息引起的,解决方法如下: ...

  • 如何制作移动版Win8系统

    两条命令就能在不破坏原有磁盘格局的情况下安装好移动版Windows 8系统,这样简单的事情你相信吗?曾过用Win8的Windows To Go功能以及借助专用的WTG辅助工具在Win7下制作移动版Wi ...

  • VMware Workstation 14 Pro精简版安装破解图文详细教程(自带永久激活密钥)

    VMware Workstation 14 Pro精简版是一款基于官网原版制作的精简破解版,精简一些不常用组件,减小安装体积,VMware14精简版自带许可证密钥,安装完成后自动永久激活,无需手动注册 ...

  • DIY制作自己的CentOS ISO过程详解

    Centos6.3官方的DVD包过于庞大,里面集成了大量软件,但其中有许多软件在生产环境中根本用不上,冗余安装只会造成资源的浪费,本文档主要介绍了一个系统定制的基本方法,并特别指出在系统定制中会出现的 ...

  • 图解CentOS系统的安装过程

    因为笔者一直都是使用CentOS,所以这次安装系统也是基于CentOS的安装.把光盘插入光驱,设置bios光驱启动.进入光盘的欢迎界面. 其中有两个选项,可以直接按回车,也可以在当前界面下输入 lin ...

  • 我的世界手机版自动收割机超详细过程(无限大)

    现在网络上有很多版本的自动收割机教程,但是因为用到活塞所以不适合手机版本的,所以我今天来介绍一下手机版自动收割机的制作过程,可以无限大哦,一起来看一下吧. 操作方法 01 首先我们找到一片足够大的空地 ...

  • Windows XP SP3 雨林木风 精简版 Y1.1 下载

    雨林木风 Windows XP SP3 精简版 Y1.1本光盘基于 Windows XP SP3 MSDN 官方简体中文版整合精简制作,集成最新系统更新程序。全自动无人值守安装,免序列号,免激活。通过 ...