Ich möchte diesen Thread mit der Bemerkung eröffnen, dass ich überhaupt kein Linux-Experte bin. Ich versuche derzeit, otrs-5.0.10-01.noarch.rpm (otrs.com) auf OEL7_x86_64 zu installieren, das wie folgt auf Red Hat 7 zu basieren scheint:
[root@**** ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server Version 7.2 (Maipo)
In ihrem Installationshandbuch steht, dass ich yum verwenden soll, um Abhängigkeiten wie folgt aufzulösen:
[root@@**** ~]# yum install --nogpgcheck /var/tmp/otrs-5.0.9-01.noarch.rpm
Dieser Befehl beschwert sich jedoch über die Nichterfüllung zweier Abhängigkeiten:
Fehler: Paket: otrs-5.0.9-01.noarch (/otrs-5.0.9-01.noarch)
Requires: perl(XML::LibXSLT)
Fehler: Paket: otrs-5.0.9-01.noarch (/otrs-5.0.9-01.noarch)
Requires: perl(Template)
Ich habe festgestellt, dass ich sie über CPAN installieren kann, die Abhängigkeiten werden jedoch trotzdem nicht erfüllt, da Yum die über CPAN installierten Module anscheinend nicht sehen kann. Daher glaube ich, dass ich für diese Pakete RPMs benötige.
Ich habe ein PDF von Oracle gefunden, das zeigt, welche Pakete in den einzelnen Distributionen enthalten sind, und es scheint, dass sowohl perl-Template-Toolkit als auch perl-XML-LibXSLT enthalten sein sollten – siehe Spalte „Oracle Linux 7“.
http://www.oracle.com/us/support/library/enterprise-linux-indemnification-069347.pdf
Aber ich kann die RPMs nicht in unserem Repository finden und sie sind nicht auf dem System installiert. Wenn ich nach allen in unserem Repository verfügbaren Perl-Modulen suche, kann ich weder die Vorlage noch xlm-libxslt finden:
yum whatprovides "perl(*)"
Wenn ich den Inhalt des Repository überprüfe, kann ich feststellen, dass er nicht in „Oracle Linux 7 (x86_64) Latest“ enthalten ist.
http://public-yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html
Meine Frage ist also kurz: Wie bekomme ich diese Pakete im RPM-Format, damit meine Abhängigkeiten für OTRS aufgelöst werden können? Ich sehe, dass sie im OEL6-Repository für Arch i686 enthalten sind, bin mir aber nicht sicher, ob sie in diesem System sicher verwendet werden können....
Über jedes Trinkgeld freuen wir uns, und für jeden, der helfen möchte, gibt es einen Hamburger und ein Bier!
Vielen Dank!
/Danny
Antwort1
Sie können diese beiden Binärdateien ausprobieren
Und
Oder aus src-rpms erstellen
http://rpm.pbone.net/index.php3/stat/3/srodzaj/2/search/perl-Template-Toolkit-2.24-5.el7.src.rpm
http://rpm.pbone.net/index.php3/stat/3/srodzaj/2/search/perl-XML-LibXSLT-1.80-4.el7.src.rpm
Antwort2
Ihre Frage wirft mehrere Probleme auf:
"Ich habe festgestellt, dass ich sie mit CPAN installieren kann, aber die Abhängigkeiten werden trotzdem nicht erfüllt, da es so aussieht, als ob Yum die mit CPAN installierten Module nicht sehen kann"
"wie bekomme ich diese Pakete im RPM-Format, damit meine Abhängigkeiten für OTRS aufgelöst werden können?"
Lassen Sie uns tiefer gehen.
Was 1) betrifft, so scheint es, dass SieBEREITSdie beiden Module von CPAN installiert haben und dass die Installation der RPM-Pakete trotzdem fehlschlägt. Wenn dies der Fall ist (bitte bestätigen), können Sie die Installation des RPM sicher mit einem "erzwingen" rpm -ivh --nodeps otrs-5.0.9-01.noarch
. Obwohl dies etwas "unhöflich" klingen mag, ist es wirklich "sicher", da Sie eine solche Installation jederzeit (mit einem rpm -e otrs
) rückgängig machen können. Ich wette, wenn die beiden oben genannten die einzigen fehlenden Pakete waren, wird dies Ihr Problem lösen;
Was 1) betrifft, können Sie auch ganz einfach prüfen, ob Sie die beiden Pakete erfolgreich installiert haben, indem Sie PERL einfach bitten, nach ihnen zu „suchen“:
perl -e 'use XML::LibXSLT'
und perl -e 'use Template'
. Wenn beide Befehle erfolgreich sind (sie werden einfach ausgeführt und beendet, ohne Ausgabe und insbesondere ohne zu meckern!), dann sind sie korrekt installiert und werden von PERL und somit von den (zu installierenden) anderen Paketen erkannt.
Was 2) betrifft, sind die Dinge etwas komplexer, denn wenn Ihre "Distributionsmanager" (OEL 7)nichtein Paket für eine solche Distribution vorgefertigt haben, dann haben Sie kaum Chancen, "offizielle" RPMs zu finden. ABER... einer der Vorteile von Open Source und RPMs (sowie DEBs oder anderen Paketformaten) ist, dass Sie wirklich ein anderes "von Drittanbietern" zusammengestelltes Paket erhalten und "überprüfen" könnenWIEes wurde gebaut undWASes enthält. Da Sie erwähnt haben, dass OEL7 auf RHEL7 basiert, wette ich, dass CentOS-PaketeOKfür Ihr System. So überprüfen Sie es am einfachsten:
- welche Dateien in Ihrem Dateisystem gespeichert werden und wo;
- welches Skript direkt vor und direkt nach der Installation des RPM gestartet wird
ist meiner Meinung nach, sie mit "mc" ( yum install mc
, falls Sie es noch nicht haben) zu öffnen. Markieren Sie einfach das RPM und drücken Sie die Eingabetaste. Dann haben Sie "Inhalte". Klicken Sie einfach darauf und Sie sehen, welche Dateien im RPM enthalten sind. Zurück zur Hauptebene (ESC, ESC usw.) können Sie auf den Ordner SCRIPTS "klicken", wo Sie PREINSTALL, POSTINSTALL, PREUNINSTALL, POSTUNINSTALL sehen können. Drücken Sie F3 und Sie sind fertig. Wenn Sie die Eigenschaften des RPM überprüfen, können Sie auch sehen, welche TGZ-Datei (die URL) zum Erstellen des RPM verwendet wurde. Mit all diesen Informationen sind Sie definitivfreidas TGZ selbst zu nehmen und mit dem "Bauen" Ihres eigenen RPMs zu beginnen. Jedenfalls ist das nicht wirklich etwas, was ein "junger Sysadmin" in 10 Minuten schaffen könnte :-)
Abschließend möchte ich sagen, dass ich Ansatz 1) vorschlagen würde, da ... wenn Sie die PERL-Module manuell über CPAN installieren, Sie Ihr System bereits (leicht) durcheinandergebracht haben und ... Sie keinen weiteren Schaden mehr anrichten können :-)