Tengo un problema de RPM extraño, soy nuevo, así que tenga paciencia ... Tengo el archivo de especificación creado y cuando ejecutar para hacer la construcción me sale un error:Estado de salida incorrecta de /var/tmp/rpm-tmp.ajKra4 (% preparación)
/var/tmp/rpm-tmp.ajKra4: línea 36: cd: hero-01: No existe tal archivo o directorio error: estado de salida incorrecta de/var/tmp /rpm-tmp.ajKra4 (% prep)
Luego verifico ese archivo temporal y está tratando de crear un CD en un directorio que no existe ... ¿Debería crear esto en el archivo de especificación? ¿si es así, donde?
Aquí está mi archivo de especificaciones:
Summary: Install Hero
Name: hero
Version: 01
Release: 1
Group: Billing reporting
Source: %{name}-%{version}.tar.gz
License: SLA
%description
Hero billing reports system
%prep
rm -rf %{_topdir}/BUILD/*
%setup
%install
mkdir -p /opt/%{name}
cp -r * /opt/%{name}
%post
find /opt/%{name} -type d -exec chmod 755 {} \;
find /opt/%{name} -type f -exec chmod 644 {} \;
chmod -R 755 /opt/%{name}/bin
%files
/opt/%{name}
%defattr(-,root,root,0755)
%clean
rm -rf $RPM_BUILD_ROOT
%postun
rm -rf /opt/%{name}
Tal vez me estoy perdiendo algo? No sería la primera lol, gracias
Aquí es también lo que ese archivo tmp está emitiendo:
#!/bin/sh
RPM_SOURCE_DIR="/root/rpmbuild/SOURCES"
RPM_BUILD_DIR="/root/rpmbuild/BUILD"
RPM_OPT_FLAGS="-O2 -g"
RPM_ARCH="x86_64"
RPM_OS="linux"
export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS
RPM_DOC_DIR="/usr/share/doc"
export RPM_DOC_DIR
RPM_PACKAGE_NAME="hero"
RPM_PACKAGE_VERSION="01"
RPM_PACKAGE_RELEASE="1"
export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE
LANG=C
export LANG
unset CDPATH DISPLAY ||:
RPM_BUILD_ROOT="/root/rpmbuild/BUILDROOT/hero-01-1.x86_64"
export RPM_BUILD_ROOT
PKG_CONFIG_PATH="/usr/lib64/pkgconfig:/usr/share/pkgconfig"
export PKG_CONFIG_PATH
set -x
umask 022
cd "/root/rpmbuild/BUILD"
rm -rf /root/rpmbuild/BUILD/*
cd '/root/rpmbuild/BUILD'
rm -rf 'hero-01'
/usr/bin/gzip -dc '/root/rpmbuild/SOURCES/hero-01.tar.gz' | /bin/tar -xvvf -
STATUS=$?
if [ $STATUS -ne 0 ]; then
exit $STATUS
fi
cd 'hero-01'
/bin/chmod -Rf a+rX,u+w,g-w,o-w .
exit 0
Impresionante, gracias pwan ... esto lo solucionó agregando un prefijo (directorio para los archivos). Lo agradezco muchísimo – DoCnTex
lo siento, no puedo entender totalmente qué puedo hacer para solucionarlo? – Markipe
Tome su archivo hero-01.tar.gz y descomprímalo en algún directorio temporal con un comando como 'tar -zxvf hero-01.tar.gz'. Hará un nuevo directorio que incluye todos los archivos. Utilice ese nombre de directorio como argumento para el indicador '-n' para la macro% setup. – pwan