快速业务通道

一个自编内核的LINUX

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-16
立rootfs:

# mkdir -pv proc sys etc/init.d tmp dev boot var/log lib

2、创建两个必要的设备文件:

# mknod dev/console c 5 1

# mknod dev/null c 1 3

3、建立系统初始化脚本文件

# vim etc/init.d/rcS

添加如下内容:

#!/bin/sh

echo -e " Welcome to \033[31mToyLinux\033[0m\n "

echo -e "Mounting the filesystem .................[ \033[32mOK\033[0m ]"

mount -t proc proc /proc

mount -t sysfs sysfs /sys

echo -e "Creating the files of device ............[ \033[32mOK\033[0m ]"

mdev -s

echo -e "Mounting the filesystem .................[ \033[32mOK\033[0m ]"

mount -a

echo -e "Remounting the root filesystem ..........[ \033[32mOK\033[0m ]"

mount -o remount,rw /

echo -e "Starting the log daemon .................[ \033[32mOK\033[0m ]"

syslogd

klogd

echo -e "Configuring loopback interface ..........[ \033[32mOK\033[0m ]"

ifconfig lo 127.0.0.1/24

# END

而后让此脚本具有执行权限:

chmod x etc/init.d/rcS

4、配置init及其所需要inittab文件

# cd /mnt/sysroot

# mv linuxrc init

# vim etc/inittab

添加如下内容:

::sysinit:/etc/init.d/rcS

console::respawn:-/bin/sh

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a -r

5、为系统准备一个“文件系统表”配置文件/etc/fstab

# vim etc/fstab

添加如下内容:

/dev/hda2 / ext3 defaults 1 1

sysfs /sys sysfs defaults 0 0

proc /proc proc defaults 0 0

/dev/hda1 /boot ext3 defaults 0 0

6、在rcS文件中启动了日志进程,因此系统在运行中会产生大量日志并将其显示于控制台;这将会经常性的打断正在进行的工作,为了避免这种情况,我们这里为日志进程建立配置文件,为其指定将日志发送至/var/log/messages文件; 拥有帝国一切,皆有可能。欢迎访问phome.net

# vim etc/syslog.conf

添加如下一行:

*.info /var/log/messages

六、好了,至此一个简易的基于内存运行的小系统已经构建出来了,我们接下来为此系统创建所需的引导程序

# grub-install --root-directory=/mnt /dev/hda

说明:此处的/dev/hda为目标系统所在的那块新磁盘;

接下来为grub建立配置文件:

# vim /mnt/boot/grub/grub.conf

添加类似如下内容:

default 0

timeout 3

color light-green/black light-magenta/black

title ToyLinux (2.6.34.1)

root (hd0,0)

kernel /bzImage ro root=/dev/hda2 quiet

initrd /initrd.gz

接下来将此块硬盘接入一个新的主机(这里使用的是虚拟机),启动一下并测试使用.

七、为新构建的ToyLinux启用虚拟控制台

这个可以通过宿主机来实现,也可以直接启动刚构建成功的小Linux进行配置.我们这里采用通过宿主机的方式(重新启动宿主机):

# cd /mnt/sysroot

将 etc/inittab文件改为如下内容:

::sysinit:/etc/init.d/rcS

tty1::askfirst:/bin/sh

tty2::askfirst:/bin/sh

tty3::askfirst:/bin/sh

tty4::askfirst:/bin/sh

tty5::askfirst:/bin/sh

tty6::askfirst:/bin/sh

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a -r

好了,接下来就可以测试验正六个虚拟控制台的使用了.

八、尽管上述第七步已经实现了虚拟控制台,但其仍是直接进入系统,且系统没有用户帐号等安全设施,这将不利于系统的安全性.因此,接下来的这步实现为系统添加用户帐号(这里仍然基于宿主机实现).

1、为目标主机建立passwd帐号文件

# cd /mnt/sysroot

# vim etc/passwd

添加如下内容:

roo

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号