Ich habe den brennenden Wunsch, RPMs auf meiner Ubuntu-Installation zu installieren - ist das möglich? Kann ich Yum - oder ein anderes RPM-Paketverwaltungstool verwenden?
server
package-management
rpm
Marco Ceppi
quelle
quelle
Antworten:
Ich würde es nicht empfehlen. Sie könnten es wahrscheinlich kompilieren, hätten aber keine Ubuntu-kompatiblen Paket-Repositorys, die es handhaben könnten.
Sie können mit Alien einzelne RPM-Dateien in DEBs konvertieren:
Hinweis: Möglicherweise ändert sich der Dateiname ein wenig mehr als nur die Erweiterung.
Dies funktioniert nicht bei allen Paketen, da Pakete mit anderen Paketen verknüpft werden, um Abhängigkeiten zu erfüllen. Offensichtlich verwenden Red Hat / Fedora / CentOS andere Paketnamen als Ubuntu, sodass Sie wahrscheinlich auf eine ganze Menge Schmerzen stoßen werden.
Wenn es keine DEB gibt, ist es wahrscheinlich besser, nur den Quellcode zu beschaffen und zu kompilieren.
quelle
make install
und ist sehr praktisch, um herum zu haben. Pakete entfernen zu können ist definitiv ein Plus!checkinstall
eignet sich hervorragend zum Verwalten eines Self-Builds in einer gepackten Umgebung, weist jedoch einige Besonderheiten auf, die manchmal bedeuten, dass etwas, das installiertmake install
wird, nicht installiert wird. Ich benutze es, wenn ich kann.alien --install my_package.rpm
.error while loading shared libraries: libreadline.so.7
Sie müssen
alien
das tun.Dadurch werden alle erforderlichen Pakete installiert. Jetzt können Sie mit der Konvertierung Ihrer RPM-Dateien in DEB-Pakete beginnen.
Verfügbare Optionen für
alien
:Konvertieren Sie die Datei package.rpm in eine Datei package.deb
Konvertieren Sie das
package.rpm
in einpackage.deb
und installieren Sie das generierte Paket.Wenn Sie verhindern möchten, dass Alien die Versionsnummer ändert, verwenden Sie den folgenden Befehl
quelle
Die kurze Antwort lautet: Nicht!
Wenn Sie eine RPM haben, die so wichtig ist, dass Sie sie benötigen, gibt es wahrscheinlich auch ein Ubuntu-Paket. und wenn nicht, lohnt es sich wahrscheinlich, sich die Mühe zu machen, es aus dem Quellcode in das Debian-Paketformat zu kompilieren (das Ubuntu ebenfalls verwendet). Nun, es gibt bestimmte Zeiten, in denen Sie die Software nicht einfach neu kompilieren können (wenn es nicht OpenSource ist, ist es unmöglich) und in diesem Fall können Sie das
alien
Programm verwenden. Das Einsetzen von Drehzahlen ist ein bisschen wie das Einsetzen von Benzin in ein Dieselauto - es könnte funktionieren, aber Sie werden auf lange Sicht nicht davon profitieren!Um ein Paket aus dem Quellcode zu erstellen, gibt es eine Anleitung im Ubuntu-Wiki. Es gibt auch ein Programm namens checkinstall , das einige Tricks mit einem Standard-Source-Tree ausführen kann, ohne Build-Anweisungen für das Paket einzurichten. Wenn Sie der Meinung sind, dass jemand anderes von den von Ihnen kompilierten Programmen profitieren kann, können Sie ein Repository auf dem Launchpad einrichten und die Paketgüte teilen!
quelle
Wenn Sie wirklich RPMs auf Ihrem System installieren müssen, sollten Sie in der Tat versuchen, sie mit "alien" zu konvertieren.
Bitte beachten Sie, dass sich "Alien" standardmäßig in die Versionsnummer des Pakets einmischt. Wenn Sie möchten, dass die Versionsnummer gleich bleibt, übergeben Sie beim Konvertieren die Option '-k'.
Sie sollten nicht versuchen, Yum oder eine andere Methode zum Installieren der RPMs, wie z. B. apt-rpm, neben den vorhandenen DEB-Paketen zu verwenden. Die DEB- und RPM-Systeme verwalten die Liste der installierten Software separat und wissen daher nicht, welche Pakete zuvor vom anderen System installiert wurden. Wenn Sie beispielsweise versuchen, eine GUI-basierte Anwendung mit einem RPM-basierten Paketverwaltungssystem zu installieren, wird versucht, wichtige Systemkomponenten selbst zu installieren, da sie noch nicht installiert sind. Dies führt entweder dazu, dass die Installation schrecklich fehlschlägt oder wichtige Systemdateien überschrieben werden.
quelle
Auf dem Repos gibt es einen GUI-Paketmanager namens SmartPM, der mit .deb UND .RPM umgehen kann. Canonical hat bis November 2009 zu diesem Projekt beigetragen.
Die Homepage des Projekts finden Sie hier https://github.com/smartpm/smart
quelle
Alien ist ein Tool, das von einem Format (.deb oder .rpm) in ein anderes (.deb, .rpm oder tarball) konvertiert.
Alien wird davon abgeraten, bei der Konvertierung von .deb in .rpm zu verwenden. Es ist perfekt, um .deb in Tarballs zu konvertieren
Alien versucht zwar, Metadaten bei der Konvertierung zu erhalten, es treten jedoch weiterhin Probleme mit Metadaten und Abhängigkeiten auf, die die Zuverlässigkeit des Pakets beeinträchtigen und zu Konflikten führen, wenn in Zukunft Distributionspakete hinzugefügt oder entfernt werden.
quelle
Eigentlich ist die kürzeste Option
Hast du keinen Außerirdischen? Hol dir eins!
Alien konvertiert das rpm-Paket in das deb-Paket. Die Option -i bedeutet, dass das konvertierte Paket nach der Konvertierung installiert wird. Die Option -k stellt sicher, dass die Version nach der Konvertierung nicht +1 beträgt.
quelle
Befolgen Sie diese Anweisungen:
Jetzt solltest du eine
avg71lms-r30-a0782.i386.deb
Akte haben.So installieren Sie die .deb-Datei:
Wenn Sie die
-k
Option nicht verwenden , sollten Sie dieavg71lms_r30-1_i386.deb
Datei sehen, der Unterschied ist, dass 1 hinzugefügt wird.Installiere alien in Ubuntu:
Sie können im obigen Abschnitt nach verfügbaren Optionen suchen
quelle
Mit alien kann ich einfach die .rpm-Datei in eine .deb-Datei konvertieren und diese einfach installieren.
Alien ist in den normalen Debian-Repositories verfügbar, so dass wir es folgendermaßen installieren können:
Um es in ein .deb-Paket zu konvertieren, führen wir es einfach aus
quelle
--scripts
(oder-c
) anzugebenbenutze alien, das die rpm in deb konvertiert und anschließend das deb installiert.
quelle
Hier ist eine GUI für Alien (Alien ist eine Anwendung, um rpm in deb umzuwandeln)
http://code.google.com/p/foxoman/wiki/PackageConverter
quelle