RPM + Build RPM para criar o KIT

2

Eu crio alguns scripts em minha máquina Linux RedHat-Linux-OS-5.3

o seguinte diretório pessoal de scripts é / root / dir

E os scripts são:

/root/dir/rfg.sh
/root/dir/ener.pl
/root/dir/wnr.sh

E alguns arquivos lib estão em / lib como os seguintes

/lib/lib1.so    
/lib/lib2.so
/lib/lib3.so

minha pergunta Eu quero criar o RPM que inclua meus scripts e meus arquivos lib!

Por exemplo

Depois de me apresentar (instalação do rpm):

rpm -i SOME_RPM.rpm

Todos os scripts serão criados no diretório / root / dir (incluir criação de diretório)

E todos os meus arquivos lib serão criados no diretório / lib

Por favor, conselhos sobre como criar este RPM, espero que seja passo a passo (porque eu li alguns documentos sobre o pacote RPM Build, e é difícil entendê-los

    
por yael 09.04.2011 / 21:04

1 resposta

1

O bit mais básico é que você precisa da ferramenta rpmbuild e precisa escrever um arquivo de especificação. Eu tenho o seguinte script que leva um arquivo de especificação e uma árvore como ficaria instalado na máquina de destino:

#!/bin/bash

set -e

SPECFILE=$1
shift
SOURCEDIR=$1

BASEDIR=/usr/src/rpm/BUILD
[ -e ${BASEDIR} ] || BASEDIR=/usr/src/redhat/BUILD

BASENAME=$(grep -E '^Name:' $SPECFILE | awk '{ print $2 }')
VERSION=$(grep -E '^Version:' $SPECFILE | awk '{ print $2 }')
RELEASE=$(grep -E '^Release:' $SPECFILE | awk '{ print $2 }')
BUILDROOT=${BASEDIR}/${BASENAME}-${VERSION}-${RELEASE}

rm -rf ${BUILDROOT}
cp -r ${SOURCEDIR} ${BUILDROOT}

export SOURCEDIR BUILDROOT

rpmbuild --buildroot=${BUILDROOT} -bb $SPECFILE

Para detalhes sobre arquivos de especificações, consulte Especificação de especificações de RPM.

    
por 10.04.2011 / 00:04

Tags