Chinaunix首页 | 论坛 | 博客
  • 博客访问: 292105
  • 博文数量: 109
  • 博客积分: 5814
  • 博客等级: 大校
  • 技术积分: 1440
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-26 10:17
文章分类

全部博文(109)

文章存档

2010年(9)

2009年(36)

2008年(64)

我的朋友

分类: LINUX

2008-12-15 19:14:56

大概步骤是把iso的文件都拷贝到系统中,然后提取出自己的系统所安装的rpm包。然后丢进去。生成comps.xml文件,然后刻盘。下面找的几个脚本
复制光盘
#!/bin/bash

ISOS_PATH=/data/CentOS5/ISOs
FILES_PATH=/data/CentOS5/CentOS5-DVD

        for i in $( ls  $ISOS_PATH/*.iso ); do
            echo item: $i
                mount -t iso9660 $i /mnt/iso -o ro,loop
                cd /mnt/iso
                tar -cf - . | ( cd $FILES_PATH ; tar -xvpf - )
                cd $FILES_PATH
                umount /mnt/iso
        done
得到安装的软件包信息
cat install.log | grep Installing | sed 's/Installing //g' > /data/CentOS5/packages.list
拷贝系统安装的rpm包
copyrpms.sh
#!/bin/bash

DEBUG=0

DVD_CD=/data/CentOS5/CentOS5-DVD

ALL_RPMS_DIR=/data/RPMS
DVD_RPMS_DIR=$DVD_CD/CentOS

packages_list=/data/CentOS5/packages.list

number_of_packages=`cat $packages_list | wc -l`

i=1
while [ $i -le $number_of_packages ] ; do

        line=`head -n $i $packages_list | tail -n -1`
        name=`echo $line | awk '{print $1}'`
        version=`echo $line | awk '{print $3}' | cut  -f  2  -d  :`

        if [ $DEBUG -eq "1" ] ; then
                echo $i: $line
                echo $name
                echo $version
        fi

        if [ $DEBUG -eq "1" ] ; then
                ls $ALL_RPMS_DIR/$name-$version*
                if [ $? -ne 0 ] ; then
                        echo "cp $ALL_RPMS_DIR/$name-$version* "
                fi
        else
                echo "cp $ALL_RPMS_DIR/$name-$version* $DVD_RPMS_DIR/"
                cp $ALL_RPMS_DIR/$name-$version* $DVD_RPMS_DIR/
                # in case the copy failed
                if [ $? -ne 0 ] ; then
                        echo "cp $ALL_RPMS_DIR/$name-$version* "
                        cp $ALL_RPMS_DIR/$name* $DVD_RPMS_DIR/
                fi
        fi

        i=`expr $i + 1`
done

生成comps.xml
cd /data/CentOS5/CentOS5-DVD 你放要刻的系统的目录
createrepo -g repodata/comps.xml .
cp .olddata/*  repodata/
rmdir .olddata
生成iso光盘
mkisofs -R -J -T -r  -l -d -allow-multidot -allow-leading-dots -no-bak -o ../ISOs/CentOS-5.0.ServerDVD-i386.iso -b isolinux/isolinux.bin -c isolinux/boot.cat        -no-emul-boot -boot-load-size 4 -boot-info-table .
 
不过我制作的系统总是启动不了。不知道谁能指点一二
阅读(763) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~