Alien: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
''alien'' ist ein Programm, das zwischen Red Hat rpm, Debian deb, Stampede slp, Slackware tgz, und Solaris pkg Dateiformaten konvertiert
=== Dateiformate konvertiert ===
* Wenn Sie ein Paket aus einer anderen Linux-Distribution als Linux-Distribution verwenden möchten, können Sie alien verwenden, um es in Ihr bevorzugtes Paketformat zu konvertieren und es zu installieren
{| class="wikitable options"
|-
! Option !! Beschreibung
|-
| Red Hat || rpm
|-
| Debian || deb
|-
| Stampede || slp
|-
| Slackware || tgz
|-
| Solaris || pkg  
|}
 
Wenn Sie ein Paket aus einer anderen Linux-Distribution als Linux-Distribution verwenden möchten, können Sie alien verwenden, um es in Ihr bevorzugtes Paketformat zu konvertieren und es zu installieren
* Es unterstützt auch LSB-Pakete
* Es unterstützt auch LSB-Pakete


; WARNUNG
; WARNUNG
''alien'' sollte nicht verwendet werden, um wichtige Systempakete wie init, libc oder andere Dinge zu ersetzen die für das Funktionieren Ihres Systems unerlässlich sind
: ''alien'' sollte nicht verwendet werden, um wichtige Systempakete wie init, libc oder andere Dinge zu ersetzen die für das Funktionieren Ihres Systems unerlässlich sind
* Viele dieser Pakete sind in den verschiedenen den verschiedenen Distributionen unterschiedlich eingerichtet, und Pakete aus den verschiedenen Distributionen können nicht austauschbar verwendet werden
:* Viele dieser Pakete sind in den verschiedenen den verschiedenen Distributionen unterschiedlich eingerichtet, und Pakete aus den verschiedenen Distributionen können nicht austauschbar verwendet werden
 
: Im Allgemeinen gilt
Im Allgemeinen gilt
:* Wenn Sie ein Paket nicht entfernen können, ohne Ihr System zu zerstören, versuchen Sie nicht, es durch eine fremde Version zu ersetzen
* Wenn Sie ein Paket nicht entfernen können, ohne Ihr System zu zerstören, versuchen Sie nicht, es durch eine fremde Version zu ersetzen


; HINWEISE ZUM PAKETFORMAT
; HINWEISE ZUM PAKETFORMAT
rpm Für die Konvertierung in und aus dem rpm-Format muss der Red Hat Package Manager installiert sein
: rpm Für die Konvertierung in und aus dem rpm-Format muss der Red Hat Package Manager installiert sein


lsb Im Gegensatz zu den anderen Paketformaten kann alien mit den Abhängigkeiten von lsb-Paketen umgehen, wenn das Ziel-Paketformat Abhängigkeiten unterstützt
=== lsb ===
: Im Gegensatz zu den anderen Paketformaten kann alien mit den Abhängigkeiten von lsb-Paketen umgehen, wenn das Ziel-Paketformat Abhängigkeiten unterstützt
* Beachten Sie, dass dies bedeutet, dass das Paket das aus einem lsb-Paket erzeugt wird, von einem Paket namens "lsb" abhängt -- Ihre Distribution sollte ein Paket mit diesem Namen bereitstellen, wenn es lsb-kompatibel ist
* Beachten Sie, dass dies bedeutet, dass das Paket das aus einem lsb-Paket erzeugt wird, von einem Paket namens "lsb" abhängt -- Ihre Distribution sollte ein Paket mit diesem Namen bereitstellen, wenn es lsb-kompatibel ist
* Die Skripte im lsb-Paket werden werden standardmäßig ebenfalls konvertiert
* Die Skripte im lsb-Paket werden werden standardmäßig ebenfalls konvertiert
Zeile 57: Zeile 72:
</syntaxhighlight>
</syntaxhighlight>


== Syntax ==
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1">
<syntaxhighlight lang="bash" highlight="1">
alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [options] file [...]
alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [options] file [...]
Zeile 63: Zeile 78:


=== Optionen ===
=== Optionen ===
alien konvertiert alle Dateien, die Sie ihm übergeben, in alle von Ihnen angegebenen Ausgabetypen. Wenn kein
Dateien, die übergeben werden, in alle angegebenen Ausgabetypen
Ausgabetyp angegeben wird, konvertiert es standardmäßig in das deb-Format
 
; Standard
Wenn kein Ausgabetyp angegeben wird, konvertiert es standardmäßig in das deb-Format


==== Optionen ====
{| class="wikitable sortable options"
{| class="wikitable sortable options"
|-
|-
Zeile 72: Zeile 90:
| --to-deb
| --to-deb
| -d
| -d
| || Erzeugt Debian-Pakete. Dies ist die Voreinstellung
| || Debian-Pakete ersteller (Voreinstellung)
|-
|-
| --zu-rpm
| --to-rpm
| -r
| -r
| || Erzeugt rpm-Pakete
| || RPM-Pakete erstellen
|-
|-
| --zu-tgz
| --to-tgz
| -t
| -t
| || Erzeugt tgz-Pakete
| || Erzeugt tgz-Pakete
Zeile 86: Zeile 104:
| || Erzeugt slp-Pakete
| || Erzeugt slp-Pakete
|-
|-
| --zu-pkg
| --to-pkg
| -p
| -p
| || Erzeugt Solaris pkg-Packages
| || Erzeugt Solaris pkg-Packages
Zeile 92: Zeile 110:
| --install
| --install
| -i
| -i
| || Installiert automatisch jedes erzeugte Package und entfernt die Package-Datei, nachdem sie installiert wurde
| || Installiert automatisch jedes erzeugte Package und entfernt die Package-Datei, nachdem sie installiert wurde installiert
installiert
|-
|-
| --generate
| --generate
Zeile 108: Zeile 125:
| || Versucht, die Skripte zu konvertieren, die ausgeführt werden sollen, wenn das Paket installiert und entfernt wird. Verwenden Sie dies mit Vorsicht, denn diese Skripte könnten für ein System entwickelt worden sein anders als auf Ihrem eigenen System und könnten Probleme verursachen. Es wird empfohlen, dass Sie die Skripte von Hand prüfen Skripte von Hand zu prüfen und zu sehen, was sie tun, bevor Sie diese Option verwenden. Diese Option ist bei der Konvertierung aus lsb-Paketen standardmäßig aktiviert
| || Versucht, die Skripte zu konvertieren, die ausgeführt werden sollen, wenn das Paket installiert und entfernt wird. Verwenden Sie dies mit Vorsicht, denn diese Skripte könnten für ein System entwickelt worden sein anders als auf Ihrem eigenen System und könnten Probleme verursachen. Es wird empfohlen, dass Sie die Skripte von Hand prüfen Skripte von Hand zu prüfen und zu sehen, was sie tun, bevor Sie diese Option verwenden. Diese Option ist bei der Konvertierung aus lsb-Paketen standardmäßig aktiviert
|-
|-
| --patch=patch
| --patch=
|
|
| || Geben Sie den zu verwendenden Patch an, anstatt automatisch in /var/lib/alien nach dem Patch zu suchen
| <patch>|| Geben Sie den zu verwendenden Patch an, anstatt automatisch in /var/lib/alien nach dem Patch zu suchen
Dies hat keinen Effekt, es sei denn, es wird ein Debian-Paket gebaut
* Dies hat keinen Effekt, es sei denn, es wird ein Debian-Paket gebaut
|-
|-
| --anypatch
| --anypatch
|
|
| || Weniger streng sein, was die zu verwendende Patch-Datei angeht, vielleicht versuchen, eine Patch-Datei für eine ältere Version des Pakets zu verwenden. Es ist nicht garantiert, dass dies immer funktioniert; ältere Patches funktionieren nicht nicht unbedingt mit neueren Paketen funktionieren
| || Weniger streng sein, was die zu verwendende Patch-Datei angeht, vielleicht versuchen, eine Patch-Datei für eine ältere Version des Pakets zu verwenden.  
* Es ist nicht garantiert, dass dies immer funktioniert; ältere Patches funktionieren nicht nicht unbedingt mit neueren Paketen funktionieren
|-
|-
| --nopatch
| --nopatch
Zeile 121: Zeile 139:
| || Keine Patch-Dateien verwenden
| || Keine Patch-Dateien verwenden
|-
|-
| --description=desc
| --description=
|
|
| || Geben Sie eine Beschreibung für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz
| <desc>|| Geben Sie eine Beschreibung für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz
Paketformat konvertiert werden, das keine Beschreibungen enthält
Paketformat konvertiert werden, das keine Beschreibungen enthält
|-
|-
| --version=version
| --version=
|
|
| || Geben Sie eine Version für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz
| <version>|| Geben Sie eine Version für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz
Paketformat konvertiert wird, bei dem Versionsinformationen fehlen können
Paketformat konvertiert wird, bei dem Versionsinformationen fehlen können


Zeile 142: Zeile 160:
Option angegeben wird, wird alien dies nicht tun
Option angegeben wird, wird alien dies nicht tun
|-
|-
| --bump=number
| --bump=
|
|
| || Anstatt die Versionsnummer des konvertierten Pakets um 1 zu erhöhen, wird sie um die angegebene Zahl
| <number>|| Anstatt die Versionsnummer des konvertierten Pakets um 1 zu erhöhen, wird sie um die angegebene Zahl
|-
|-
| --fixperms
| --fixperms
Zeile 152: Zeile 170:
Berechtigungen und Eigentümern in diesem Ausmaß zu verändern, daher ist diese Option standardmäßig ausgeschaltet. Dies kann nur verwendet werden wenn Sie in Debian-Pakete konvertieren
Berechtigungen und Eigentümern in diesem Ausmaß zu verändern, daher ist diese Option standardmäßig ausgeschaltet. Dies kann nur verwendet werden wenn Sie in Debian-Pakete konvertieren
|-
|-
| --target=architecture
| --target=
|
|
| || Erzwingt die Architektur des erzeugten Pakets mit der angegebenen Zeichenkette
| <architecture> || Erzwingt die Architektur des erzeugten Pakets mit der angegebenen Zeichenkette
|-
|-
| --verbose
| --verbose
Zeile 180: Zeile 198:
Die Liste der zu konvertierenden Paketdateien
Die Liste der zu konvertierenden Paketdateien


=== Umgebungsvariablen ===
=== Umgebung ===
{| class="wikitable options"
{| class="wikitable options"
|-
|-
Zeile 189: Zeile 207:
| RPMINSTALLOPT || Options to pass to rpm when it is installing a package
| RPMINSTALLOPT || Options to pass to rpm when it is installing a package
|-
|-
| EMAIL || If set, alien assumes this is your email address. Email addresses are included in generated
| EMAIL || If set, alien assumes this is your email address. Email addresses are included in generated debian packages
debian packages
|}
|}


=== Exit-Status ===
=== Rückgabewert ===


== Konfiguration ==
== Konfiguration ==
Zeile 203: Zeile 220:
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
==== Dokumentation ====
==== Dokumentation ====
===== Man-Pages =====
===== Man-Page =====
# perl v5.38.2
# perl v5.38.2
# ALIEN(1p)
# ALIEN(1p)

Aktuelle Version vom 12. November 2024, 18:37 Uhr

alien - Konvertieren oder Installieren eines fremden Binärpakets

Beschreibung

Dateiformate konvertiert

Option Beschreibung
Red Hat rpm
Debian deb
Stampede slp
Slackware tgz
Solaris pkg

Wenn Sie ein Paket aus einer anderen Linux-Distribution als Linux-Distribution verwenden möchten, können Sie alien verwenden, um es in Ihr bevorzugtes Paketformat zu konvertieren und es zu installieren

  • Es unterstützt auch LSB-Pakete
WARNUNG
alien sollte nicht verwendet werden, um wichtige Systempakete wie init, libc oder andere Dinge zu ersetzen die für das Funktionieren Ihres Systems unerlässlich sind
  • Viele dieser Pakete sind in den verschiedenen den verschiedenen Distributionen unterschiedlich eingerichtet, und Pakete aus den verschiedenen Distributionen können nicht austauschbar verwendet werden
Im Allgemeinen gilt
  • Wenn Sie ein Paket nicht entfernen können, ohne Ihr System zu zerstören, versuchen Sie nicht, es durch eine fremde Version zu ersetzen
HINWEISE ZUM PAKETFORMAT
rpm Für die Konvertierung in und aus dem rpm-Format muss der Red Hat Package Manager installiert sein

lsb

Im Gegensatz zu den anderen Paketformaten kann alien mit den Abhängigkeiten von lsb-Paketen umgehen, wenn das Ziel-Paketformat Abhängigkeiten unterstützt
  • Beachten Sie, dass dies bedeutet, dass das Paket das aus einem lsb-Paket erzeugt wird, von einem Paket namens "lsb" abhängt -- Ihre Distribution sollte ein Paket mit diesem Namen bereitstellen, wenn es lsb-kompatibel ist
  • Die Skripte im lsb-Paket werden werden standardmäßig ebenfalls konvertiert

Um lsb-Pakete zu erzeugen, muss der Red Hat Package Manager installiert sein, und Alien verwendet vorzugsweise ein Programm namens lsb-rpm, wenn es existiert. Es wird nicht garantiert, dass die generierten lsb-Pakete vollständig LSB-konform sind, und es ist eher unwahrscheinlich, dass sie es sind, es sei denn Sie sie in der lsbdev-Umgebung bauen

Beachten Sie, dass im Gegensatz zu anderen Paketformaten, die Konvertierung eines LSB-Pakets in ein anderes Format nicht seine Minor-Versionsnummer nicht geändert wird

deb Für die Konvertierung ins (aber nicht vom) deb-Format müssen die Pakete gcc, make, debhelper, dpkg-dev und dpkg Pakete installiert sein

tgz Beachten Sie, dass Alien bei der Konvertierung aus dem tgz-Format einfach ein Ausgabepaket erzeugt erzeugt, das die gleichen Dateien enthält wie die tgz-Datei

  • Dies funktioniert nur dann gut, wenn die tgz-Datei vorkompilierte Binärdateien in einem Standard-Linux-Verzeichnisbaum enthält
  • Führen Sie alien NICHT auf tar Dateien mit Quellcode aus, es sei denn, Sie wollen, dass dieser Quellcode in Ihrem Root-Verzeichnis installiert wird, wenn Sie das Paket installieren! Verzeichnis installiert wird, wenn Sie das Paket installieren!

Wenn Sie alien verwenden, um ein tgz-Paket zu konvertieren, werden alle Dateien in /etc in als Konfigurationsdateien

pkg Um Packages im Solaris pkg-Format (eigentlich das SV Datastream-Package Format), benötigen Sie die Solaris-Werkzeuge pkginfo und pkgtrans

Installation

Anwendung

Konvertiert die Datei package.rpm in eine package.deb

alien --to-deb paket.rpm

Konvertiert das Paket.deb in ein Paket.rpm

alien --zu-rpm Paket.deb

Konvertiert das Paket.rpm in ein Paket.deb (die Konvertierung in ein .deb-Paket ist Standard, daher müssen Sie Sie müssen also nicht --to-deb angeben), und installieren Sie das erzeugte Paket

alien -i paket.rpm

Erzeugt 9 neue Pakete. Danach sind foo, bar und baz in allen 4 Paketformaten verfügbar. Formaten verfügbar

alien --to-deb --to-rpm --to-tgz --to-slp foo.deb bar.rpm baz.tgz

Aufruf

alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [options] file [...]

Optionen

Dateien, die übergeben werden, in alle angegebenen Ausgabetypen

Standard

Wenn kein Ausgabetyp angegeben wird, konvertiert es standardmäßig in das deb-Format

Optionen

GNU Unix Parameter Beschreibung
--to-deb -d Debian-Pakete ersteller (Voreinstellung)
--to-rpm -r RPM-Pakete erstellen
--to-tgz -t Erzeugt tgz-Pakete
--to-slp Erzeugt slp-Pakete
--to-pkg -p Erzeugt Solaris pkg-Packages
--install -i Installiert automatisch jedes erzeugte Package und entfernt die Package-Datei, nachdem sie installiert wurde installiert
--generate -g Erzeugt ein temporäres Verzeichnis, das für die Erstellung eines Packages geeignet ist, erstellt aber nicht das Paket erstellen. Dies ist nützlich, wenn Sie Dateien im Paket verschieben wollen, bevor Sie es bauen. Das Paket kann aus diesem temporären Verzeichnis gebaut werden, indem Sie "debian/rules binary", wenn Sie ein Debian-Paket erstellen, oder durch Ausführen von "rpmbuild -bb

<Paketname>.spec", wenn Sie ein Red Hat-Paket erstellen

--single -s Wie -g, aber erzeugt nicht das Verzeichnis packagename.orig. Dies ist nur nützlich, wenn Sie sehr wenig Speicherplatz haben und ein Debian-Paket erstellen
--scripts -c Versucht, die Skripte zu konvertieren, die ausgeführt werden sollen, wenn das Paket installiert und entfernt wird. Verwenden Sie dies mit Vorsicht, denn diese Skripte könnten für ein System entwickelt worden sein anders als auf Ihrem eigenen System und könnten Probleme verursachen. Es wird empfohlen, dass Sie die Skripte von Hand prüfen Skripte von Hand zu prüfen und zu sehen, was sie tun, bevor Sie diese Option verwenden. Diese Option ist bei der Konvertierung aus lsb-Paketen standardmäßig aktiviert
--patch= <patch> Geben Sie den zu verwendenden Patch an, anstatt automatisch in /var/lib/alien nach dem Patch zu suchen
  • Dies hat keinen Effekt, es sei denn, es wird ein Debian-Paket gebaut
--anypatch Weniger streng sein, was die zu verwendende Patch-Datei angeht, vielleicht versuchen, eine Patch-Datei für eine ältere Version des Pakets zu verwenden.
  • Es ist nicht garantiert, dass dies immer funktioniert; ältere Patches funktionieren nicht nicht unbedingt mit neueren Paketen funktionieren
--nopatch Keine Patch-Dateien verwenden
--description= <desc> Geben Sie eine Beschreibung für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz

Paketformat konvertiert werden, das keine Beschreibungen enthält

--version= <version> Geben Sie eine Version für das Paket an. Dies hat nur eine Auswirkung bei der Konvertierung aus dem tgz

Paketformat konvertiert wird, bei dem Versionsinformationen fehlen können

Beachten Sie, dass ohne ein Argument stattdessen die Version von alien angezeigt wird

--test -T Testet die erzeugten Pakete. Derzeit wird dies nur für Debian-Pakete unterstützt, die, wenn lintian installiert ist, mit lintian getestet werden und die Ausgabe von lintian angezeigt wird
--keep-version -k Standardmäßig fügt alien der Minor-Versionsnummer jedes Pakets, das es konvertiert, eine hinzu. Wenn diese

Option angegeben wird, wird alien dies nicht tun

--bump= <number> Anstatt die Versionsnummer des konvertierten Pakets um 1 zu erhöhen, wird sie um die angegebene Zahl
--fixperms Überprüft alle Dateibesitzer und -berechtigungen beim Erstellen einer Deb-Version. Dies kann nützlich sein, wenn das

Originalpaket ein Durcheinander ist. Auf der anderen Seite kann es einige Dinge kaputt machen, wenn man mit ihren Berechtigungen und Eigentümern in diesem Ausmaß zu verändern, daher ist diese Option standardmäßig ausgeschaltet. Dies kann nur verwendet werden wenn Sie in Debian-Pakete konvertieren

--target= <architecture> Erzwingt die Architektur des erzeugten Pakets mit der angegebenen Zeichenkette
--verbose -v Ausführlich sein: Zeigt jeden Befehl an, den Alien während der Konvertierung eines Pakets ausführt
--veryverbose Ausführlich wie --verbose, aber zusätzlich wird die Ausgabe jedes ausgeführten Befehls angezeigt. Einige Befehle können sehr viele Ausgaben erzeugen
--help -h Zeigt eine kurze Zusammenfassung der Verwendung an
--version -V Zeigt die Version von alien an

Parameter

file [...]

Die Liste der zu konvertierenden Paketdateien

Umgebung

Variable Beschreibung
RPMBUILDOPT Options to pass to rpm when it is building a package
RPMINSTALLOPT Options to pass to rpm when it is installing a package
EMAIL If set, alien assumes this is your email address. Email addresses are included in generated debian packages

Rückgabewert

Konfiguration

Dateien

Anhang

Siehe auch

Dokumentation

Man-Page
  1. perl v5.38.2
  2. ALIEN(1p)

Links

Projekt
Weblinks