精简linux

 今天给大家打造一个简单的linux系统,在这里我们可以根据自己的需要添加我们所需要的功能。

 首先我们需要创建一块硬盘,把它加载到我们的宿主机中,这次我新建了一个40GB的硬盘。首先来看一下我的硬盘。

234759951.png

下面我们需要对硬盘进行分区,我们需要三个分区:引导分区,根分区,swap分区

这是我创建好的sdb硬盘的分区

234814709.png

创建好后记得对他们进行格式化。

下面我们需要创建两个目录

/mnt/boot   /mnt/sysroot

下面分别将我们的硬盘挂载上

234830178.png

一个完整的系统要想运行起来,必须有自己的MBR ,GRUB和一个完整的内核。

现在我们先建第二阶段GRUB

234848395.png

234853330.png


我们可以看到创建了我们所需要的文件。但是我们会发现里面没有grub.conf菜单。所以这个菜单需要我们手动来创建。

 在创建grub.conf之前我们需要将宿主机的内核拷贝到我们的硬盘里面。

234916685.png

有了内核,我们还需驱动。我们将驱动解压打开,修改一下。

我们新建一个目录aaa将驱动解压到里面

234931527.png

下面我们来看一下init程序所调用的信息。打开init文件我们将87行禁用掉,因为我们没有格式化,也没有加卷标。

234947922.png

编辑完保存后,我们在将驱动压缩一下

235003915.png

 首先进入grub235018939.png

235114217.png

下面我们需要编辑grub.conf

235152758.png

235153141.png


下面该创建根分区下面的一些文件夹了,我们来模仿宿主机的根分区创建相应文件夹。

235223145.png

235223846.png


接下来看看启动的第一过程init

235239414.png

我们发现/sbin/init里面的文件牵扯到很多的库,所以我们也要将这些库文件拷过去。我们只需要拷/lib/目录下的库文件。库文件太多,所以我们需要自行编写一个脚本,让它自动拷贝。

235253898.png

下面我们开始拷贝一下,再看一下库文件。

235314525.png

235315673.png


下面我们来建一下/etc/inittab

235333623.png

235334831.png


我们还要创建rc.sysinit

235356266.png

235358927.png


下面我们开始同步一下

235413987.png

我们来启动一下。将我们的硬盘拿出来。放到我们的新的系统里面。

235432863.png

启动成功。

下面我们来添加一些功能,比如关机,重启。

235611330.png

235612710.png

235612875.png

235613805.png

235650652.png



同步一下

那我们来试一下关机重启。

235714492.png

这只是一个简单的linux,是一个最基本的架构,我们可以根据自己的需要进行diy