运用内核创建一个小的linux【贰】推荐

之前第一篇文章中,我们使用linux内核,驱动文件,init文件,grub相关文件创建了专属于自己的一个精简的linux系统,但是创建一个系统,是来供我们使用的,所以我们就需要向里面添加一些功能来方便我们使用。每当我们需要一些什么功能我们就向里面添加,日积月累,只属于自己的linux操作系统就会诞生了。。。。。现在就开始!!

1.首先我们向里面添加关机 和 重启的功能

关于重启和关机的内容在/etc/rc.d/rc0.d/S01halt 文件中有所记录我们开始查看一下。

222 exec$command $HALTARGS ///在其文件的最后一行,说明了他要执行这两个变量。

这样我们就可以类比添加ls等命令的方法来添加 init 0 , init 6 的命令。

编辑两个执行脚本,在需要执行init 0 6的时候,通过这两个脚本来执行关机 重启。

[root@localhost ~]# vim syshalt

#!/bin/bash

exec /sbin/halt -p

[root@localhost ~]# vim sysreboot

#!/bin/bash

exec /sbin/reboot -f

[root@localhost ~]# cp /sbin/halt /mnt/root/sbin/

[root@localhost ~]# cp /sbin/reboot /mnt/root/sbin/

[root@localhost etc]# cp /root/sys* /mnt/root/etc/rc.d/

[root@localhost etc]# sync

测试:成功

添加自己的主机名称:hostname 指令

[root@localhost ~]# cp /bin/hostname /mnt/root/bin/

查看/etc/rc.d/sysinit里面关于hostname 的说明。

14 if [ -f/etc/sysconfig/network ]; then

15 . /etc/sysconfig/network

16 fi

17 if [ -z $HOSTNAME -o $HOSTNAME = (none) ]; then

18 HOSTNAME=localhost

19 fi

将这段内容写入到我们精简的linux中的/etc/rc.d/rc.sysinit中

然后在自制linux中创建 /etc/sysconfig目录,将原系统的/etc/sysconfig/network文件拷贝过来

最后在自制的linux.rc.sysinit 中添加,执行hostname的命令

#!/bin/bash

if [ -f /etc/sysconfig/network ]; then

./etc/sysconfig/network

fi

if [ -z $HOSTNAME -o $HOSTNAME = (none) ]; then

HOSTNAME=localhost

fi

/bin/hostname $HOSTNAME

/bin/bash

测试:成功

添加网络功能,模块的添加,想要配置ip,查看ip。

想要实现网络功能,单单的指令就有点无能为力了,这就牵扯到模块的添加,与网络功能相关的模块有pcnet32.ko mii.ko。

同时与模块相关的命令也要添加idconfig【查看系统ip设置】ping【测试网络功能】

首先 复制模块到我们的小的linux系统中

[root@localhost ~]# cp/lib/modules/2.6.18-164.el5/kernel/drivers/net/pcnet32.ko/mnt/root/lib/modules/

[root@localhost ~]# cp/lib/modules/2.6.18-164.el5/kernel/drivers/net/mii.ko /mnt/root/lib/modules/

然后我们将模块的加载放在系统的初始化阶段,那就需要编辑rc.sysinit文件,将他们写入。

/sbin/insmod /lib/modules/mii.ko

/sbin/insmod /lib/modules/pcnet32.ko

/sbin/ifconfig eth0 192.168.1.44/24 //设置一个静态的ip

/sbin/ifconfig lo 127.0.0.1/8 //设置一个本地回环地址

然后添加相应的文件,以及链接库文件

/sbin/ifconfig /sbin/insmod 都复制到精简的linux的sbin目录下

测试:

给启动的grub菜单添加一个背景图片

由于开机时的grub菜单背景图片要求的色深和大小有要求,色深要小,大小要是640*480,所以需要一个图片处理工具,gimp ,使用yum安装!!

然后图形界面内,启动gimp工具

1.将要的图片传入 linux系统

1.用gimp打开这个图片

2.调他的大小为640*480

3.更改他的色深为14

4.保存为xpm格式,注意这里必须是这种格式

5.引用,将处理好的图片放到引导分区,并修改、/boot/grub/grub.conf文件

[root@localhost ~]# mv psbe_\(5\).xpm/mnt/boot/grub/

测试:重启计算机

没有口水与汗水,就没有成功的泪水。

运用内核创建一个小的linux【贰】推荐

相关文章:

你感兴趣的文章:

标签云: