Port (Paketverwaltung)

Port (Paketverwaltung)

Mit Ports werden Software-Paketverwaltungssysteme in der Welt der Unix-Derivate, speziell der BSD-Betriebssysteme bezeichnet.

Ein Port bezeichnet meist ein Verzeichnis, in dem sich alle für die Installation benötigten Dateien sowie das Makefile („Kochrezept“) befinden.

Inhaltsverzeichnis

Geschichte und Verbreitung

Das erste Portsframework wurde von Jordan K. Hubbard 1994 für FreeBSD entwickelt. Später wurde die Idee von OpenBSD, NetBSD (unter dem Namen pkgsrc) und Darwin übernommen. Ports hielten auch Einzug in die Linuxwelt. So haben Gentoo, CRUX und Arch Linux ports-ähnliche Paketverwaltungssysteme namens Portage, pkgutils und Arch Build System.

Technische Funktionsweise

Beim Installieren über das Portssystem wird die Software (wenn möglich) automatisch aus dem Internet heruntergeladen und installiert. Das Portssystem besteht lediglich aus Informationen, woher man die Software bekommt, welche Anpassungen für das jeweilige System notwendig sind und wie die Software zu installieren ist. Außerdem werden alle Dateien, die ein Softwarepaket installiert, aufgezeichnet, so dass das Paket auch wieder deinstalliert werden kann. Ein Paket kann durchaus von mehreren Paketen abhängen, die allesamt nach dem Herunterladen kompiliert, evtl. konfiguriert und dann installiert werden. Dies geschieht nahezu automatisch, evtl. mit benötigten Zusatzangaben des Nutzers.

Ports sind Makefiles mit Zielformaten (targets) für das automatische Herunterladen, Auspacken, Patchen, Kompilieren und Installieren von Softwarepaketen. Ein weiteres target dient dem Erzeugen eines Binärpakets.

FreeBSD-Ports

Unter FreeBSD befindet sich der sogenannte Portstree standardmäßig unter /usr/ports. Der Portstree besteht aus Verzeichnissen, in denen sich Installationsanleitungen, in Kategorien gegliedert, befinden. Unter /usr/ports/Mk liegen verschiedene Makefiles, die von den einzelnen Ports eingebunden werden. bsd.port.mk ist das Hauptmakefile, es enthält die vordefinierten targets, so dass die Portmakefiles meist nur einzelne Variablen setzen müssen. Informationen über installierte Ports findet man standardmäßig unter /var/db/pkg.

Weblinks

OpenBSD-Ports

OpenBSD stellt, wie FreeBSD, ein Port-System zu Verfügung. Normalerweise werden die dafür nötigen Dateien wie bei FreeBSD unter /usr/ports abgelegt. Ports sind, wie bei den anderen Port-Systemen, in Untergruppen untergliedert, um die Suche nach geeigneter Software zu erleichtern. Sollte man dennoch nicht fündig werden, so hilft OpenBSD, in dem man in das Verzeichnis wechselt, in dem die Ports gespeichert sind (in unserem Beispiel also /usr/ports) und dort „make search key=SUCHBEGRIFF“ eingibt. Dabei reicht der Suchbegriff von „http“ bis zu präzisen Namen der Pakete. Sollte man den Namen einer Software bereits wissen, aber nicht mehr wissen, wo man sie findet, so kann man „make search name=NAME_DER_SOFTWARE“ eingeben und bekommt alle möglichen Varianten ("FLAVORs") dieser Software.

Da gewisse Software Module beinhalten kann, reagiert OpenBSD darauf mit sogenannten FLAVORs. Ein FLAVOR ist nichts anderes als eine Art Compilerflag. Möchte man beispielsweise eine Software mit PostgreSQL-Unterstützung kompilieren (z.B. PHP), so kann man dies mit dem Aufruf „env FLAVOR=postgresql make install“ tun (wobei „postgre“ üblicherweise durch psql abgekürzt wird) oder die Änderung permanent in dem Makefile des betreffenden Ports anpassen.

Auch OpenBSD kennt ein globales Makefile, wobei man zwischen dem Makefile für das Betriebssystem (/etc/mk.conf) und dem für das Port-System (/usr/ports/infrastructure/mk/bsd.port.mk) unterscheiden muss.

Generell sorgt das OpenBSD Port-System für eine automatische Installation, die Nachinstallation von benötigter Software (sog. dependencies, dt. Abhängigkeiten), die Übersetzung der Software aus dem Quellcode, die anschließenden Erstellung eines Binärpakets und das Ablegen dieses Paketes in /usr/ports/packages/ . Installierte Pakete werden entweder mittels pkg_info aufgelistet oder sind wie bei FreeBSD unter /var/db/pkg aufgeführt.

Weblinks

NetBSD pkgsrc

NetBSD verwendet den Begriff "Port" für die Portierung von NetBSD auf eine Hardwareplattform, weshalb NetBSD seinen Fork der FreeBSD ports "pkgsrc" genannt hat.

NetBSDs pkgsrc wurde mittlerweile auch auf verschiedene andere Betriebssysteme portiert, unter anderem Linux, Solaris und Mac OS X.

Siehe: pkgsrc

MacPorts

Die MacPorts für Mac OS X (ehemals DarwinPorts) verwenden statt des Programms make ein Tcl-Programm namens "port".

Gentoo Linux Ebuilds

Siehe: Ebuild

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Port — (von lat.: porta, „Tür“ , „Zugang“) steht für: in der Computertechnik: Port (Schnittstelle), eine Hardware Schnittstelle Port (Protokoll), eine Adress Komponente in Netzwerkprotokollen Port (Paketverwaltung), das Paketmanagement durch… …   Deutsch Wikipedia

  • Port (Paketmanagement) — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Mit Ports werden Software Paketverwaltungssysteme in der Welt der… …   Deutsch Wikipedia

  • Ports — Port wird in der Regel aus der lateinischen Sprache (porta – die Tür) abgeleitet und bezeichnet: in der Seemannssprache englisch für Backbord bzw. links in der Medizin ein subkutan implantiertes kleines Gehäuse mit Membran und Gefäßanschluss zur… …   Deutsch Wikipedia

  • CRUX — Entwickler Bis April 2006: Per Lidén Ab April 2006 CLC: Juergen Daubert, Simone Rota, Tilman Sauerbeck Sprache(n) Englisch …   Deutsch Wikipedia

  • CRUX Linux — Crux Entwickler Bis April 2006: Per Lidén Ab April 2006 CLC: Juergen Daubert, Simone Rota, Tilman Sauerbeck Sprache(n) Englisch …   Deutsch Wikipedia

  • Crux (Betriebssystem) — Crux Basisdaten Entwickler Bis April 2006: Per Lidén Seit April 2006 CLC: Jürgen Daubert, Simone Rota, Tilman Sauerbeck Sprache(n) Englisch Version …   Deutsch Wikipedia

  • Arch-linux — Bildschirmfoto …   Deutsch Wikipedia

  • ArchLinux — Arch Linux Bildschirmfoto …   Deutsch Wikipedia

  • Archlinux — Arch Linux Bildschirmfoto …   Deutsch Wikipedia

  • Pacman (Arch Linux) — Arch Linux Bildschirmfoto …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”