《Linux安装》(四)Buildinstall

来源:互联网 发布:手机淘宝能评论吗 编辑:程序博客网 时间:2024/06/04 20:06

buildinstall脚本从配置文件中指定的yum源下载最新的anaconda包,然后执行里面的4个脚本(即并不执行本地的脚本):

  • upd-instroot :下载安装过程必须的用到的包和文件到一个根目录
  • maketreeinfo.py:生成.treeinfo文件
  • mk-images:生成images
  • makestamp.py:生成.discinfo



/tmp/buildinstall.tree.e4pMk9/upd-instroot --arch i686 --imgdir /tmp/treedir.CJgWma/install /tmp/yum.conf.pimgER/tmp/buildinstall.tree.e4pMk9/maketreeinfo.py --family=Fedora --version=20120319 --arch=i386 --outfile=/root/working/buildinstall/os/.treeinfo/tmp/buildinstall.tree.e4pMk9/mk-images --imgdir /tmp/treedir.CJgWma/install --arch i386 --product Fedora --version 20120319 --output /root/working/buildinstall/os /tmp/yum.conf.pimgER/tmp/buildinstall.tree.e4pMk9/makestamp.py --releasestr=Fedora 20120319 --arch=i386 --discNum=ALL --outfile=/root/working/buildinstall/os/.discinfo

注:buildinstall脚本中有--localscripts参数,可强制执行本地脚本,方便调试;


yum.conf.pimgER 是buildinstall脚本生成的一个yum repo文件:

[main]cachedir=/tmp/yumcache.EqYk83keepcache=0gpgcheck=0plugins=0reposdir=tsflags=nodocs[anacondarepo]name=anaconda repobaseurl=http://10.3.4.211/resrc/repo/fedora/releases/13/Everything/i386/os/enabled=1


以下脚本可实现和buildinstall相同的功能:

#!/bin/bash# clean allrm -rf os instrootDIR=/usr/lib/anaconda-runtimeINSTROOT=`pwd`/instrootDEST=`pwd`/osYUMCONF=`pwd`/yum.confPRODUCT=FedoraDATE=`date "+%Y%m%d"`mkdir -pv $DESTexport brandpkgname=fedora   # *-logos,*-release$DIR/upd-instroot --arch i686 --imgdir $INSTROOT $YUMCONFtouch $DEST/.treeinfo$DIR/maketreeinfo.py --family=$PRODUCT --version=20120319 --arch=i386 --outfile=$DEST/.treeinfo$DIR/mk-images --imgdir $INSTROOT --arch i386 --product $PRODUCT --version $DATE --output $DEST $YUMCONF$DIR/makestamp.py --releasestr="$PRODUCT $DATE" --arch=i386 --discNum=ALL --outfile=$DEST/.discinform -f grub*.rpm awk  # ???


原创粉丝点击