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} p>
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.