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?
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?
Antworten:
Kann ich Yum benutzen?
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:
sudo apt-get install alien
sudo alien my_package.rpm
sudo dpkg -i my_package.deb
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.
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 installiert make 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.
sudo apt-get install alien
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
sudo alien -d package-name.rpm
Konvertieren Sie das package.rpm
in ein package.deb
und installieren Sie das generierte Paket.
alien -i package-name.rpm
Wenn Sie verhindern möchten, dass Alien die Versionsnummer ändert, verwenden Sie den folgenden Befehl
alien -k rpm-package-file.rpm
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!
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.
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
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.
Eigentlich ist die kürzeste Option
sudo alien -i -k packagename.rpm
Hast du keinen Außerirdischen? Hol dir eins!
sudo apt-get install alien
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.
Befolgen Sie diese Anweisungen:
alien -k avg71lms-r30-a0782.i386.rpm
Jetzt solltest du eine avg71lms-r30-a0782.i386.deb
Akte haben.
So installieren Sie die .deb-Datei:
dpkg -i avg71lms-r30-a0782.i386.deb
Wenn Sie die -k
Option nicht verwenden , sollten Sie die avg71lms_r30-1_i386.deb
Datei sehen, der Unterschied ist, dass 1 hinzugefügt wird.
Installiere alien in Ubuntu:
sudo apt-get install alien
Sie können im obigen Abschnitt nach verfügbaren Optionen suchen
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:
sudo apt-get install alien
Um es in ein .deb-Paket zu konvertieren, führen wir es einfach aus
alien *.rpm
--scripts
(oder -c
) anzugeben
benutze alien, das die rpm in deb konvertiert und anschließend das deb installiert.
Hier ist eine GUI für Alien (Alien ist eine Anwendung, um rpm in deb umzuwandeln)