Red de conocimiento informático - Material del sitio web - Cómo crear un paquete RPM en Linux

Cómo crear un paquete RPM en Linux

La versión de Linux que estoy usando es Red Hat Enterprise 5.5. Los paquetes RPM creados con esta versión se encuentran en el directorio /usr/src/RedHat/ de forma predeterminada, así que pruébelos en ese directorio. Un paquete RPM consta de dos archivos: un script de shell y un archivo README que describe cómo utilizar el script de shell. Si puede crear un paquete que contenga dos archivos, también puede crear un paquete más grande.

Pasos para crear un paquete RPM simple

1. Cree una estructura de directorio que contenga los archivos necesarios para el paquete RPM. Esta estructura suele recibir el nombre del paquete RPM, incluido su número de versión. Llamemos a este directorio prueba-1.0. El siguiente comando le mostrará cómo crear y nombrar este directorio, y colocar los archivos necesarios en él:

$ cd /usr/src/redhat

$ mkdir test-1.0

$ cd test-1.0

$ echo echo esto es una prueba gt test.sh

$ chmod x test.sh

$ echo echo acaba de iniciar el script gt; README

2. Ahora todos los archivos necesarios para el paquete RPM están aquí. El siguiente paso es crear un archivo .tar.gz que contenga el archivo RPM. Este directorio también facilita la creación de archivos de almacenamiento. El archivo .tar.gz debe estar en un directorio llamado rpmbuild/SOURCES. También necesita un archivo .specs que contenga todas las especificaciones para crear el paquete RPM. El archivo .specs es el componente principal de un paquete RPM y contiene instrucciones de instalación para todos los archivos del paquete RPM. Los archivos .specs deben colocarse en el directorio SPECS.

El primer comando cd garantiza que el directorio rpmbuild esté en el directorio de inicio del usuario actual. Ejecute el siguiente comando como usuario normal:

$ cd

$ mkdir -p rpmbuild/SOURCES

$ mkdir -p rpmbuild/SPECS

$ tar -cvzf rpmbuild/SOURCES/test-1.0.tar .gz test-1.0

3. Ahora que los archivos están en su lugar, cree un archivo de descripción como usuario normal. El comando encontrará la creación de todas las instrucciones necesarias para el archivo. En versiones recientes de Red Hat y sus derivados, crear un archivo de especificaciones es muy simple: simplemente use el editor vim para crear un archivo con todo lo que contiene y establezca la extensión en .spec.

Estos son los archivos del paquete rpm test-1.0 (los cambios de plantilla están en negrita):

Nombre: test

Versión: 1.0

Versión: 1 {? dist}

Resumen: Un paquete de prueba

Grupo: Paquetes de prueba

Licencia: GPL

Fuente0: {nombre}- {versión }.tar.gz

BuildRoot: (mktemp -ud {_tmppath}/{name}-{? version}-{release}-XXXXXX)

BuildRequires:/bin /rm , /bin/mkdir, /bin/cp

Requiere: /bin/bash, /bin/date

descripción

Implementación de un paquete de archivo único Demostración

prerp

setup -q

build

#configure

#make {?_smp_mflags}

instalar

rm -rf $RPM_BUILD_ROOT

#make install DESTDIR=$RPM_BUILD_ROOT

mkdir -p $RPM_BUILD_ROOT/usr/ local/ bin

cp /usr/src/redhat/test-1.0/test.sh?$RPM_BUILD_ROOT/usr/local/bin

limpia

rm -rf $ RPM_BUILD_ROOT

archivos

#defattr(-root,root,-)

#doc

attr(0755,root,root ) /usr/local/bin/test.sh

#changelog

#* Hoy

#- Crear RPM inicial

Ahora que la creación del archivo .spec está completa, es hora de completar el trabajo final. Instale el comando rpmbuild como root. En Red Hat, instale usando yum install rpm-build. El archivo tar debe estar ubicado en el directorio ~/rpmbuild /SOURCES de la cuenta de usuario actual que creó el paquete, y el archivo demo.spec debe estar ubicado en el directorio ~/rpmbuild/SPECS. Ahora puede crear el paquete usando el comando rpmbuild -ba test.spec. Esto creará archivos RPM en el directorio /usr/src/redhat/RPMS.