RHEL
光盘镜像下载地址:
http://www.verycd.com/topics/2766897/
内核下载地址:
http://www.kernel.org/
其他零部件地址另附
注意
:
下面有些长命令要直接拷贝到终端运行的话注意核对,以免命令错误。
准备:安装
develop
环境(用
yum grouplinst
),加一块新硬盘,分区,格式化,挂载如下;
mount /dev/hda1 /mnt/boot/
mount /den/hda1 /mnt/sysroot/
此作为新的
Linux
的生产目录。
把内核拷贝到
/usr/src ,
解压
tar �Cjxf linux-2.6.
……
.tar.bz2 (
若后缀是
tar.gz,
则命令为
tar �Czxf linux2.6
……
.tar.gz)
,再创建软连接
linux:------
à
ln �Csv linux- 2.6.34 .1 linux
cd linux
进行
make ,
为减少麻烦可以把
准备好的
kernel-kernel- 2.6.20 -i486.cfg
拷贝到
linux
目录下,命令为
cp
……
/usr/src/linux/
此时要处在
linux
目录下,然后再
make menuconfig ,
在这个的基础上编辑内核。
再
make SUBDIR=arch
表示只编译内核相关的目录。
把编译好的内核复制到
/mnt/boot/
cp arch/x86/boot/bzImage /mnt/boot/ (
把内核放到
boot
里,启动时用
)
然后改轮到
busybox
了。
cd ..
回到上一目录,即
src,
把
busybox
放到这里,解压(方法同解压内核一样),然后
cd busybox- 1.16.1 (
进入到
busybox
里
)
,
然后
make menuconfig
选中
Busybox Settings �C> Build Options �C> Build Busybox as a static binary
(按空格键,出现
*
就是选中)
Busybox Settings �C>Installation Options -
à
/_install) BusyBox installation prefix
回车,把里面的默认路径
./_install
改成
/mnt/sysroot .
这就行了,退出、保存。然后
make
再
make install
(也可以单独
make install
)
.
生成的文件就自动放到新硬盘上了。(
make
是把带
M
的也编上了,
单独
make install
仅把带
*
的编上
,
不编带
M
的)
# cd /mnt/sysroot
# mv linuxrc init
# mkdir proc sys etc/init.d var/log dev tmp �Cpv (
创建系统文件夹
)
# vim etc/init.d/rcS
(系统初始化脚本)
写入内容如下:
#!/bin/sh
echo -e " Welcome to \033[ 31m ^-^ Linux ^-^\033[ 0m "
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 "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
echo -e "Configuring eth0 interface ..............[ \033[32mOK\033[ 0m ]"
#echo -e "Remounting the root filesystem ..........[ \033[32mOK\033[ 0m ]"
#mount -o remount,rw /
结束。前面带
#
的是暂时不用的。
# chmod +x etc/init.d/rcS
(加入执行权限)
#vim etc/inittab
(
init
进程启动的时候必读的文件,以此定义后面做什么)
写入内容如下:
::sysinit:/etc/init.d/rcS
(引导载入
init.d/rcS
脚本,初始化系统)
console::respawn:-/bin/sh
(启动控制台,打印控制符,让人能执行命令)
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a �Cr
结束。注意,复制上面的命令到终端时时不要把括号中的文字一同复制了。
#grub-install --root-directory=/mnt /dev/hda (
创建
grub)
#ls /mnt/boot
应该显示有
grub
#vim ../boot/grub/grub.conf (
创建
grub
配置文件
)
写入内容如下:
default 0
timeout 3
coler light-green/black light-magenta/black
title Oranix ( 2.6.34 .1-^0^Linux^0^)
root (hd0,0)
kernel /bzImage ro root=/dev/ram0 quiet
initrd /initrd.gz
结束。
#find . | cpio --quiet �CH newc �Co | gzip -9 > ../boot/initrd.gz
(
查找
当前目录下所有文件
归档
静默模式
编码模式
通过
gzip
压缩比为
9
输出到
/boot/initrd.gz .
简单的说把当前目录(
/mnt/sysroot
)打包起来
做成
initrd.gz
了
)
#sync (
同步一下
)
结束了。