rpmrebuildで依存関係のあるもの全部作る

インストールされているglibcとかのバックアップで、 依存関係にあるものをまとめてバックアップをとるときに使います。

vim rebuildpkg.sh
---
#!/bin/sh
COLOR_RED="\e[31;1m"
COLOR_GREEN="\e[32;1m"
COLOR_OFF="\e[m"

TEXT_OK="[ ${COLOR_GREEN}成功${COLOR_OFF} ]"
TEXT_NG="[ ${COLOR_RED}失敗${COLOR_OFF} ]"
TEXT_ERROR="[ ${COLOR_RED}ERROR${COLOR_OFF} ]"

if [ ! -n "$1" ]; then
  echo -e "${TEXT_NG} パッケージ名を指定してください"
  exit 1
fi

IFS=$'\n'
for LINE in `echo "n" | yum update $1 | egrep "^ [^ ]" | egrep "[0-9]+ (k|M|G)$" | sed -e "s/^ //g" | sed -e "s/ \+/ /g"`; do
  package=`echo ${LINE} | cut -f1 -d' '`
  arch=`echo ${LINE} | cut -f2 -d' '`
  if rpm -q ${package}; then
    rpmrebuild ${package}.${arch}
  fi
done
---
sh ./rebuildpkg.sh glibc 2> /tmp/rebuildpkg.log