用一塊新硬盤,掛載到宿主計算機上。格式化,按照一般規則分爲boot分區和/分區、交換分區如下圖:
把/dev/sdb1 掛載到 /mnt/boot 下面,/dev/sdb2 掛載到 /mnt/sysroot 下面。
執行命令:grub-install --root-directory=/mnt/ /dev/sdb 創建開機啓動的第二階段,能看到下圖結果說明創建成功:
拷備內核和驅動:
[root@localhost ~]# cp/boot/vmlinuz-2.6.18-164.el5 /mnt/boot/
[root@localhost ~]# cp/boot/initrd-2.6.18-164.el5.img /mnt/boot/
修改initrd-2.6.18-164.el5.img驅動
把initrd-2.6.18-164.el5.img 拷到一個目錄例如qq
展開initrd-2.6.18-164.el5.img 命令如下
[root@localhost qq]# zcatinitrd-2.6.18-164.el5.img |cpio –id
編輯 init文件命令如下
[root@localhost qq]# vim init
89 mkrootdev -t ext3 -o defaults,ro sda2 查看89 行是否和自己建的分區一致
[root@localhostqq]# rm –rf initrd-2.6.18-164.el5.img //刪除init 文件
[root@localhost qq]# find . |cpio -o -Hnewc --quiet |gzip -9 >initrd.gz //輸出文件
[root@localhost qq]#cp initrd.gz /mnt/boot //拷到boot目錄
[root@localhost sysroot]# mkdir bin bootdev etc home lib misc mnt net opt proc root sbin selinux sev sys tftpboot tmpusr var //創建目錄
[root@localhost sysroot]# mkdir usr/lib
[root@localhost sysroot]# mkdir etc/rc.d
創建 init進程
用腳本拷貝腳本如下:
#!/bin/bash
while [ true ]; do
read -p "a command " com
comstr=`which $com`
cp -f $comstr /mnt/sysroot$comstr
/usr/bin/ldd $comstr >/root/1.txt
while read line ;do
if echo $line | grep /lib &>/dev/null ;then
libstr=`echo $line |awk '{print$((NF-1))}'`
#libstr=${libstr##*/}
#libstr=${libstr%#/*}
/bin/cp -f $libstr /mnt/sysroot$libstr
fi
done </root/1.txt
done
bash f1.sh 拷貝init進程
創建 inittab
si::sysinit:/etc/rc.d/rc.sysinit
創建 rc.sysinit
echo -e "\033[31M XIEHOU0LINUX\033[0M"
/bin/bash
給可執行權限
[root@localhost rc.d]# chmod a+x rc.sysinit
創建bash 用上面的腳本創建
[root@localhost rc.d]# bash /root/f1.sh
a command bash
a command
添加ls指令
[root@localhost rc.d]# bash /root/f1.sh
a command ls
a command
添加關機指令
編寫關機文件:
[root@localhost etc]# cat ./rc.d/rc.sysdown
#!bin/bash
exec /sbin/halt –p
添加 halt指令
[root@localhost etc]# bash /root/f1.sh
a command halt
a command
添加主機名:
編輯rc.sysinit文件如下
#!bin/bash
echo -e "\033[31M XIEHOU0LINUX\033[0M"
#set hostname
if [ -f /etc/sysconfig/network ];then
./etc/sysconfig/network
fi
if [ -z $HOSTNAME ];then
/bin/hostname localhost
else
/bin/hostname $HOSTNAME
fi
/bin/bash
創建目錄
[root@localhost etc]# mkdir sysconfig
在目錄裏創建文件
[root@localhost sysconfig]# cat network
NETWORKING=yes
HOSTNAME=xiehou0.a.com
添加 hostname 指令
[root@localhost etc]# bash /root/f1.sh
a command hostname
a command
添加 cat指令
[root@localhost etc]# bash /root/f1.sh
a command cat
a command
圖像處理工具製作個性開機背景
gimp
圖片大小 w:640 h: 480 14色 xpm格式
gzip壓縮 gzip 1.xpm
splashimage=(hd0,0)/grub/splash.xpm.gz //etc/grub.conf中關於背景圖片的信息
添加網絡功能
lsmod //查看模塊信息
dmesg |grep eth0
modinfo //查看模塊信息
rmmod //卸載模塊
modprobe pcnet32 //加載模塊
insmod //需要詳細路徑加載模塊
mkdir -pv /mnt/sysroot/lib/modules //創建目錄
cp/lib/modules/2.6.18-164.el5/kernel/drivers/net/mii.ko /mnt/sysroot/lib/modules/
lib/modules/2.6.18-164.el5/kernel/drivers/net/pcnet32.ko
網絡部分
拷貝指令
[root@localhost sysroot]# bash /root/f1.sh
a command ping
a command insmod
a command sysctl
a command ifconfig
a command