Bonjour,
J'utilise un script pour générer automatiquement un rpm
Je l'ai modifié pour rajouter des commandes de post install qui sont les suivantes :
%post
chmod -R 444 /usr/local/bin/alura/SCAL7
find /usr/local/bin/alura/SCAL7 -type f -name SCAL -print0 | xargs -0 chmod 555
find /usr/local/bin/alura/SCAL7 -type f -regex .*ini -print0 | xargs -0 chmod 666
find /usr/local/bin/alura/SCAL7 -type f -regex .*xml -print0 | xargs -0 chmod 666
/sbin/ldconfig
Prises séparément, ces commandes semblent fonctionner correctement.
Seulement, une fois incluses dans le RPM, lors de l'installation du RPM, on se retrouve avec tout le chemin /usr/local/bin/... dont les droits d'accès sont changés !
Ce qui pourri au passage la partition : pour la remettre d'aplomb, il faut faire les commandes suivantes, en root :
Cd /
Chmod 755 .
Chmod 755 usr
Chmod 755 usr/local
Chmod 755 usr/local/bin
Chmod -R 755 usr/local/bin/...
Je ne comprend pas qu'est ce qui change les droits de ce chemin, puisque les seules commandes que j'ai rajouté fonctionnent correctement, à part ?
Voici une partie du fichier de spec qui permet de générer le rpm :
# Initial spec file created by autospec ver. 0.8 with rpm 3 compatibility
Summary: SCAL_RPM
# The Summary: line should be expanded to about here -----^
#Summary(fr): (translated summary goes here)
Name: SCAL7
Version: 8.8.4
Release: 1
Group: SAPHIR
#Group(fr): (translated group goes here)
License: SAPHIR
Source: SCAL7.bin.tar.gz
#NoSource: SCAL7.bin.tar.gz
BuildRoot: %{_tmppath}/%{name}-root
# Following are optional fields
#URL: http://www.example.net/SCAL_RPM/
#Distribution: Red Hat Contrib-Net
#Patch: SCAL_RPM-%{version}.patch
Prefix:/usr/local/bin/alura/SCAL7
#BuildArch: noarch
#Requires:
#Obsoletes:
#BuildRequires:
%description
SCAL7 version 8.8.4
#%description -l fr
#(translated description goes here)
%prep
%setup -c SCAL_RPM
#%patch
%install
%__cp -a . "${RPM_BUILD_ROOT-/}"
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
%post
chmod -R 444 /usr/local/bin/alura/SCAL7
find /usr/local/bin/alura/SCAL7 -type f -name SCAL -print0 | xargs -0 chmod 555
find /usr/local/bin/alura/SCAL7 -type f -regex .*ini -print0 | xargs -0 chmod 666
find /usr/local/bin/alura/SCAL7 -type f -regex .*xml -print0 | xargs -0 chmod 666
/sbin/ldconfig
%post
chmod -R 444 /usr/local/bin/alura/SCAL7
find /usr/local/bin/alura/SCAL7 -type f -name SCAL -print0 | xargs -0 chmod 555
find /usr/local/bin/alura/SCAL7 -type f -regex .*ini -print0 | xargs -0 chmod 666
find /usr/local/bin/alura/SCAL7 -type f -regex .*xml -print0 | xargs -0 chmod 666
/sbin/ldconfig
%files
%defattr(744,root,root,744)
%dir /./
/./SCAL7.tar.gz
/./Temp.spec
/./SCAL7.spec
/./tmp
/./Temp2.spec
%dir /./usr/
%dir /./usr/local/
%dir /./usr/local/bin/
%dir /./usr/local/bin/alura/
%dir /./usr/local/bin/alura/SCAL7/
%dir /./usr/local/bin/alura/SCAL7/SCAL_ExtTrack/
/./usr/local/bin/alura/SCAL7/SCAL_ExtTrack/Copy.vi
/./usr/local/bin/alura/SCAL7/SCAL_ExtTrack/Create.vi
[...]
%dir /./usr/local/natinst/
%dir /./usr/local/natinst/smserver/
%changelog
* Sat Jul 04 2009 root <root@xq2500-1>
- Initial spec file created by autospec ver. 0.8 with rpm 3 compatibility
Merci pour vos conseils !
Afficher la suite