2017-06-01 2 views
-2

Wie kann ich ein RPM erstellen, die 3 Dateien in 3 verschiedene Ordner kopieren?Einfache RPM generieren auf CentOS

Zum Beispiel:

ich habe: Mongo-watcher, config.properties and watcher.jar

Mongo-Beobachter hat unter platziert werden: /etc/init.d/

Config.properties unter stehen muss: /etc/living/mongo-watcher/

Und schließlich watcher .jar muss unter: /usr/local/mongo-watcher/

Ich habe tr Yed folgend:

mkdir -p ~/rpmbuild/{RPMS,SRPMS,BUILD,SOURCES,SPECS,tmp} 
cd ~/rpmbuild 

mkdir mongo-watcher-1.0 
mkdir -p mongo-watcher-1.0/etc/init.d 
mkdir -p mongo-watcher-1.0/etc/living/mongo-watcher 
mkdir -p mongo-watcher-1.0/usr/local/mongo-watcher 

install -m 744 mongo-watcher /mongo-watcher-1.0/etc/init.d/ 
install -m 744 config.properties /mongo-watcher-1.0/etc/living/mongo-watcher/ 
install -m 744 watcher.jar /mongo-watcher-1.0/usr/local/mongo-watcher/ 

tar -zcvf mongo-watcher-1.0.tar.gz mongo-watcher-1.0/ 
mv mongo-watcher-1.0.tar.gz ./SOURCES 

Danach weiß ich nicht, was ich auf ./SPECS Ordner zu haben und wie es zu tun für das rpm-Paket zu erzeugen, das die folgenden Dateien unter diesem Ordner installiert.

+1

https://fedoraproject.org/wiki/How_to_create_an_RPM_package –

+0

Es gibt mehrere Tutorials und Beispiele, ich bin für einige einfaches Beispiel zu fragen, nicht eine Verbindung zu einem anderen Tutorial .. – Lechucico

Antwort

3

Sie sollten wirklich die Dokumentation zuerst lesen. Wenn du es hasst zu lesen, dann kannst du dir Videos anschauen. Hier sind einige https://docs.pagure.org/copr.copr/user_documentation.html#how-can-i-package-software-as-rpm

Einige erste Hinweise:

cp Mongo-watcher config.properties watcher.jar ~/rpmbuild/SOURCES 
vi ~/rpmbuild/SPECS/your-package.spec 

Nun sollten Sie die Spezifikation erstellen, lesen Sie die Dokumentation Die Spezifikation

Source0: Mongo-watcher 
Source1: config.properties 
Source2: watcher.jar 

enthalten sollte und Sie rpmbuild simple copy of files auch lesen kann.

Endlich:

rpmbuild -ba ~/SPECS/your-package.spec 
+0

I Ich vermisse etwas. Ich habe alles getan, was Sie über diesen Link 'rpmbuild simple copy of files' sagen. Ich mache im Abschnitt Installation: mkdir -p% {buildroot}/etc/mongo-watcher /; cp -a config.properties% {buildroot}/etc/mongo-watcher/und für Sektionsdateien: /etc/mongo-watcher/config.properties. Ich habe Datei nicht auf cp-a config.properties gefunden (config-properties ist auf SOURCES-Ordner). – Lechucico

+0

Haben Sie diese Linie Source1 in Ihrer Spezifikation? Es wird helfen, wenn Sie hier eine ganze Spec-Datei posten. – msuchy