background image

./do-links.sh ${update_dir} ${install_dir}/RedHat/RPMS 
[ -d ${custom_dir} ] && ./do-links.sh ${custom_dir}  
${install_dir}/RedHat/RPMS  
# Filter out all but the latest version of everything.  
./filter-rpms.pl $install_dir/RedHat/RPMS  
# Rebuild the hard disk lists  
/usr/lib/anaconda-runtime/genhdlist ${install_dir} 

 

  

freshen.sh

 调用 

do-links.sh

 和 

get_update.sh 

,分别去设置

 RPM 发行版本的源、宿(省略了源 RPM 软件包;硬链接用来设置目的 

RPM)和检索更新。 

  清单

 2. do-links.sh

#!/bin/sh  
src=$1  
dest=$2  
#for file in $src/*; do  
for file in `find $src -name *.rpm -a ! -name *.src.rpm -print`; 
do  
base=`basename $file;`  
if test ! -f $dest/$base; then  
echo "Linking $file";  
ln $file $dest  
else  
echo "EXISTS: $file";  
fi  
done 

 

  清单

 3. get_update.sh 

  

#!/bin/sh  
rh_ver=$1  
dest=$2  
echo "Retrieving updates for version ${rh_ver} to $dest"

  

lftp << EOF  
open ftp.freshrpms.net

mirror

 -n 

pub/redhat/linux/updates/${rh_ver}/en/os/i386 $dest/i386