Wie man von RPM in DEB und DEB zum RPM -Paket mit Alien konvertiert wird

Wie Sie sicher bereits wissen, gibt es viele Möglichkeiten, Software unter Linux zu installieren: Verwenden des Paketverwaltungssystems, das von Ihrer Verteilung bereitgestellt wird (Sie haben diese Verteilung (, um einige Beispiele zu nennen), die Kompilierung aus der Quelle (obwohl heutzutage etwas selten, die einzige Methode, die in den frühen Tagen der Linux verfügbar ist) oder ein Tool mit niedrigem Level wie z.dpkgoderDrehzahlmit.DebUnd.RPMeigenständige, vorkompilierte Pakete.

Konvertieren Sie RPM in Deb und DEB in RPM -Paket mit Alien

In diesem Artikel werden wir Ihnen vorstellenAusländer, ein Tool, das zwischen verschiedenen Linux -Paketformaten umwandelt, mit.RPMZu.Deb(und umgekehrt) die häufigste Verwendung sein.

Dieses Tool, selbst wenn sein Autor es nicht mehr pflegt und in seiner Website stellt, dass Alien wahrscheinlich immer im experimentellen Status bleibt, kann nützlich sein, wenn Sie eine bestimmte Art von Paket benötigen, dieses Programm jedoch nur in einem anderen Paketformat finden kann.

Zum Beispiel,Ausländerrettete meinen Tag einmal, als ich nach einem suchte.DebFahrer für aTintenstrahlDrucker und konnte keinen finden - der Hersteller lieferte nur a.RPMPaket. Ich habe Alien installiert, das Paket konvertiert, und bald konnte ich meinen Drucker ohne Probleme verwenden.

Wir müssen jedoch klarstellen, dass dieses Dienstprogramm nicht zum Ersetzen wichtiger Systemdateien und Bibliotheken verwendet werden sollte, da sie über Verteilungen hinweg unterschiedlich eingerichtet werden. Verwenden Sie Alien nur als letztes Ausweg, wenn die vorgeschlagenen Installationsmethoden zu Beginn dieses Artikels nicht in Frage kommen, um das erforderliche Programm zu erhalten.

Zu guter Letzt müssen wir beachten, dass wir, obwohl wir verwenden werdenCentosUndDebianIn diesem Artikel ist auch bekannt, dass Alien in arbeitetSlackwareund sogar inSolarisNeben den ersten beiden Verteilungen und ihren jeweiligen Familien.

Schritt 1: Installation von Alien und Abhängigkeiten

Zu installierenAusländerInCentos/Rhel 7Sie müssen die aktivierenLeichtund dieNux Dextop(Ja, es ist Dextop - kein Desktop) Repositories in dieser Reihenfolge:

# yum install epel-release
# rpm --import https://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro

Die neueste Version des Pakets, die dieses Repository ermöglicht, ist derzeit0,5(veröffentlicht auf10. August 2015). Sie sollten überprüfenhttps://li.nux.ro/download/nux/dextop/el7/x86_64/Um zu sehen, ob es eine neuere Version gibt, bevor Sie weiter fortfahren:

# rpm -Uvh https://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

dann tun, tun,

# yum update && yum install alien

InFedoraSie müssen nur den letzten Befehl ausführen.

In Debian und Derivaten tun Sie es einfach:

# aptitude install alien

Schritt 2: Konvertieren von .deb auf das .rpm -Paket

Für diesen Test haben wir gewähltDateut, was einen Satz von liefertDatumUndZeitVersorgungsunternehmen, um große Mengen an Finanzdaten zu bewältigen. Wir werden die herunterladen.DebPaket zu unseremCentos 7Box, konvertieren Sie es in.RPMund installieren Sie es:

Überprüfen Sie die CentOS -Version
# cat /etc/centos-release
# wget https://ftp.us.debian.org/debian/pool/main/d/dateutils/dateutils_0.3.1-1.1_amd64.deb
# alien --to-rpm --scripts dateutils_0.3.1-1.1_amd64.deb
Konvertieren Sie .deb in das .rpm -Paket unter Linux

Wichtig: (Bitte beachten Sie, wie standardmäßig Alien die Version der Version des Zielpakets erhöht. Wenn Sie dieses Verhalten überschreiben möchten, fügen Sie die hinzu-Keep-VersionFlagge).

Wenn wir versuchen, das Paket sofort zu installieren, werden wir in ein kleines Problem stoßen:

# rpm -Uvh dateutils-0.3.1-2.1.x86_64.rpm 
Installieren Sie das RPM -Paket

Um dieses Problem zu lösen, werden wir das aktivierenEpel-Testing Repositoryund installieren Sie dierpmrebuildDienstprogramm zum Bearbeiten der Einstellungen des zu wiedergebauten Pakets:

# yum --enablerepo=epel-testing install rpmrebuild

Dann rennen,

# rpmrebuild -pe dateutils-0.3.1-2.1.x86_64.rpm

Dies öffnet Ihren Standard -Texteditor. Gehe zum%filesAbschnitt und löschen Sie die Zeilen, die sich auf die in der Fehlermeldung genannten Verzeichnisse beziehen, und speichern Sie dann die Datei und beenden Sie:

Konvertieren Sie .Deb in Alien -Version

Wenn duAusfahrtDie Datei wird aufgefordert, mit dem Wiederaufbau fortzufahren. Wenn Sie wählenY, Die Datei wird in das angegebene Verzeichnis umgebaut (anders als das aktuelle Arbeitsverzeichnis):

# rpmrebuild –pe dateutils-0.3.1-2.1.x86_64.rpm
RPM -Paket erstellen

Jetzt können Sie das Paket installieren und wie gewohnt überprüfen:

# rpm -Uvh /root/rpmbuild/RPMS/x86_64/dateutils-0.3.1-2.1.x86_64.rpm
# rpm -qa | grep dateutils
Installieren Sie Build RPM -Paket

Schließlich können Sie die einzelnen Tools auflisten, die enthalten warenDateutund prüfen Sie alternativ ihre jeweiligen Mannseiten:

# ls -l /usr/bin | grep dateutils
Überprüfen Sie das installierte RPM -Paket

Schritt 3: Konvertieren von .RPM in .DEB -Paket

In diesem Abschnitt werden wir veranschaulichen, wie man von konvertiert wird.RPMZu.Deb. In einem 32-BitDebian WheezyBox, lasst uns die herunterladen.RPMPaket für dieZSHHülle aus demCentOS 6 DieRepository. Beachten Sie, dass diese Shell in Debian und Derivaten standardmäßig nicht verfügbar ist.

# cat /etc/shells
# lsb_release -a | tail -n 4
Überprüfen Sie Shell und Debian OS -Version
# wget https://mirror.centos.org/centos/6/os/i386/Packages/zsh-4.3.11-4.el6.centos.i686.rpm
# alien --to-deb --scripts zsh-4.3.11-4.el6.centos.i686.rpm

Sie können die Nachrichten über eine fehlende Signatur sicher ignorieren:

Konvertieren Sie .RPM in das .DEB -Paket

Nach ein paar Augenblicken die.DebDie Datei sollte generiert werden und bereit sein zu installieren:

# dpkg -i zsh_4.3.11-5_i386.deb
Installieren Sie das konvertierte Deb -Paket von RPM

Nach der Installation können Sie das überprüfenZSHwird der Liste der gültigen Shells hinzugefügt:

# cat /etc/shells
Bestätigen Sie das installierte ZSH -Paket

Zusammenfassung

In diesem Artikel haben wir erklärt, wie man von konvertiert wird.RPM zu .debund umgekehrt, um Pakete als letztes Ausweg zu installieren, wenn solche Programme in den Repositories oder als verteilbarer Quellcode nicht verfügbar sind. Sie werden diesen Artikel mit einem Lesezeichen versehen möchten, weil wir alle zu der einen oder anderen Zeit fremd werden müssen.

Teilen Sie Ihre Gedanken zu diesem Artikel mit dem folgenden Formular mit.