2017-03-13 1 views
0

Environnement est AIX 7.0 RPM version 3.0.5. Je suis très nouveau dans le monde Unix, S'il vous plaît soyez patient avec mon ignorance.Création d'un fichier de spécifications RPM à partir de fichiers binaires compilés

Nous avons 3 différents types de fichiers à emballer en tant que RPM.

• Source/binaire/*. Bainaryfiles (environ 160 d'entre eux)

• Source/ui/*. Mm (pas de fichiers 2)

• Source/scripts/*. Sh (10 à 20)

Ces fichiers sont compilés pour le serveur cible. Ils sont sous forme binaire et nous ne voulons pas compresser ces fichiers en fichiers tar.

Lorsque l'installation se passe sur le RPM généré en utilisant rpmbuild les .binaryfiles, .ui et les fichiers .sh doivent aller à différents répertoires sur le serveur cible

Aucune construction doit se produire depuis son déjà construit. Est-ce que quelqu'un peut me fournir l'exemple de fichier .spec et les étapes. pouvons-nous exécuter rpmbuild sans accès root? Pouvons-nous lancer l'installation du rpm sans accès root?

+0

Il est inutile d'utiliser 'rpm'; 'tar' est le bon outil pour cela. Rappelez-vous, il ne compresse rien. Exemple tar: 'cd/some/where; tar -cf Source.tar Source'; exemple untar: 'cd/path/to; tar -xf Source.tar' –

+0

L'organisation cam-up avec une nouvelle ploicy d'avoir tous les installable pour être construit comme un RPM. –

+0

Vous pouvez exécuter 'rpmbuild' en tant qu'utilisateur normal. Cependant, vous aurez besoin de root pour installer le paquet car la base de données 'rpmdb' est accessible en écriture uniquement pour l'utilisateur provilé. Si cela est acceptable, je vais écrire une réponse avec un modèle de spécification que vous pouvez utiliser. – alvits

Répondre

2

Voici un exemple qui n'a pas de section de construction.

Name: special-package 
Version: 0.0 
Release: 0.1 
Summary: This is a special package 

Group: Devlopment/Tools 
License: Special Proprietary 
BuildArch: noarch 

%description 
This package contains some special stuff 

%install 
# e.g., on the target server path_to_all_binary_files=/usr/share/special/bin 
%{mkdir_p} %{buildroot}%{_path_to_all_binary_files} 

# In case of a copy, file permissions will be copied as it is. 
# You can also try 'install -m 755 $RPM_SOURCE_DIR/....' 
# 'man install' for more information 
%{__cp} $RPM_SOURCE_DIR/binary/*.binaryfiles %{buildroot}%{_path_to_all_binary_files} 
# Similarly do this for other sets of files 

%files 
%{_path_to_binary_files}/*.binaryfiles 
%{_path_to_sh_files}/*.sh 

%changelog 
* Tue Mar 14 2017 Name Surname<[email protected]> 
- First build of the special package 

Celui-ci est par Fedora, mais je pense que beaucoup de lignes directrices s'appliquent en général https://fedoraproject.org/wiki/How_to_create_an_RPM_package