Cómo crear RPM para su propio script en CentOS/Redhat
- 742
- 202
- Sta. Enrique Santiago
RPM (Redhat Package Manager) es un sistema de gestión de paquetes para sistemas basados en RHEL. Es posible que haya visto que todos los paquetes en los sistemas basados en Redhat tienen extensión .rpm. Este tutorial lo ayudará a crear RPM para su propio script
Había creado un script para tomar una copia de seguridad de la base de datos, hoy he creado un archivo RPM de ese script, este es mi primer RPM creado. A continuación se muestran los pasos que sigo para hacerlo.
Paso 1 - Instale los paquetes requeridos
En primer lugar, debe instalar los paquetes requeridos en su sistema para crear archivos RPM.
$ yum instalación rpm-build rpmdevtools
Paso 2: crear estructura de directorio
Vaya al directorio de inicio de los usuarios y cree la estructura de directorio requerida utilizando el siguiente comando.
$ rpmdev-setuptree
El comando de arriba creará una estructura de directorio como a continuación.
$ LS -L RPMBUILD DRWXR-XR-X 2 raíz raíz 6 oct 25 de octubre 03:09 Build DRWXR-XR-X 2 Root Root 6 oct 25 de octubre 03:09 RPMS DRWXR-XR-X 2 Root Root 6 Oct 25 03:09 Fuentes DRWXR-XR-X 2 Raíz Root 6 oct 25 de octubre 03:09 Especificaciones DRWXR-XR-X 2 Raíz Raíz 6 Oct 25 03:09 SRPMS
En caso rpmdev-setuptree El comando no pudo crear estructura, puede crearla manualmente
$ mkdir -p ~/rpmbuild/build, rpms, fuentes, especificaciones, SRPMS, TMP
Paso 3: crear un archivo rpmmacro
Ahora crea ~/.archivo rpmmacros, con los siguientes contenidos. Cambiar los valores de los nombres resaltados rojos
~/.rpmmacros
%Packager Your_name %_TopDir %(echo $ home)/rpmBuild %_Smp_MFlags %(\ [-z "$ rpm_build_ncpus"] \\\ && rpm_build_ncpus = "'/us/bin/nproc 2>/dev/null || \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\ \\ \\\\\\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \A \\ \/usr/bin/getConf _nprocessors_onln '"; \\\ if [" $ rpm_build_ncpus "-gt 16]; luego \\\ echo" -j16 "; \\\ elif [" $ rpm_build_ncpus "-gt 3]; luego \\\ echo "-j $ rpm_build_ncpus"; \\\ \\\ echo "-j3"; \\\ fi) %__ arch_install_post \ [" %buildarch" = "noarch] || Qa_check_rpaths = 1; \ case "$ qa_check_rpaths:-" en [1yy]*)/usr/lib/rpm/check-rpaths ;; ESAC \/usr/lib/rpm/check-buildroot
Paso 4 - Copiar archivos en el directorio de fuentes
Copie todos sus archivos y scripts carpeta dentro ~/rpmbuild/fuentes directorio, que necesitamos agregar en el archivo RPM. Para este tutorial, he usado todos los archivos creados en nuestro tutorial Advance Bash Script para MySQL.
$ cd ~/rpmbuild/fuentes $ ls -l mydumpadmin-1 -rw-r-r-- 1 raíz 125 oct 25 de octubre 03:54 credenciales.txt -rw-r-r-- 1 raíz raíz 4693 25 de octubre 03:54 mysql-dump.sh -rw-r-r-- 1 raíz raíz 1008 25 de octubre 03:54 Readme.MD -RW-R-R-- 1 raíz raíz 3445 25 de octubre 03:54 Configuración.confusión
Crea un tarball de tu código.
$ tar czf mydumpadmin-1.0.alquitrán.gz mydumpadmin-1
Paso 5 - Crear archivo de especificaciones
Crear un archivo de especificaciones ~/rpmbuild/especs/mydumpadmin.Especificaciones Usando a continuación contenido.
~/rpmbuild/especs/mydumpadmin.Especificaciones
Nombre: MyDumpadmin Versión: 1 Release: 0 Resumen: Un script de Bash Advance para MySQL Base de datos Grupo: Tecadmin Buildarch: Noarch Licencia: GPL URL: https: // github.com/tecrahul/mydumpadmin.Git Source0: MyDumpadmin-1.0.alquitrán.Gz %Descripción Escriba algunos descripción sobre su paquete aquí %Prep %Setup -Q %Build %Install Install -M 0755 -D $ RPM_BUILD_ROOT/ETC/MYDUMPADmin Install -M 0600 Credenciales.txt $ rpm_build_root/etc/mydumpadmin/credenciales.txt instalación -m 0755 mysql -dump.sh $ rpm_build_root/etc/mydumpadmin/mysql-dump.sh instalación -m 0644 Readme.md $ rpm_build_root/etc/mydumpadmin/readme.MD Install -M 0644 Configuración.conf $ rpm_build_root/etc/mydumpadmin/settings.Conf %archivos/etc/mydumpadmin/etc/mydumpadmin/credenciales.txt/etc/mydumpadmin/mysql-dump.sh/etc/mydumpadmin/readme.MD/etc/mydumpadmin/configuración.Conf %ChangeLog * Tue 24 de octubre de 2017 Rahul Kumar 1.0.0 - Liberación inicial de RPM
Cambiar el nombre del paquete, la ruta del script, el nombre del archivo, la descripción, etc., según sus requisitos.
Paso 6 - Construir RPM
Después de completar los pasos anteriores, creemos sus RPM ejecutando el siguiente comando.
$ cd ~/rpmbuild $ rpmbuild -ba especificaciones/mydumpadmin.Especificaciones
Después de la construcción exitosa, se creará un archivo RPM como ~/rpmbuild/rpms/noarch/mydumpadmin-1-0.noarch.rpm
Instale sus RPM usando el siguiente comando. Después de la comprobación de instalación, los archivos se instalan correctamente como ubicación definida.
$ RPM -IVH MyDumpadmin-1-0.noarch.rpm
Gracias por usar este artículo. Espero que los pasos anteriores te ayuden a crear tus propias RPM.
- « Cómo restablecer la contraseña de root MySQL en Linux
- Configurar la autenticación de Freeradius con OpenLDAP »