BSD daemon

NetBSD Dokumentation:

Die NetBSD Paketsammlung pkgsrc

Warnung

Die NetBSD Paketsammlung pkgsrc

In Verbindung stehende Seiten


Warnung


Diese Seite ist nicht mehr aktuell. Die detaillierte Beschreibung der NetBSD Paketsammlung bleibt in Englisch hier und hier verfügbar. Da die grundlegenden Techniken auf dieser Seite jedoch weiterhin zutreffen, lassen wir sie für deutsch-sprachige Nutzer bestehen um denjenigen, die im Englischen nicht ganz flüssig sind einen besseren Einstieg in die Paketsammlung zu gewährleisten.

Die NetBSD Paketsammlung pkgsrc


Einleitung (zurück)

Die NetBSD Paketsammlung pkgsrc ist eine Sammlung von Bibliotheken und Anwendungen, die auf NetBSD portiert wurden.

Mit der pkgsrc Paketsammlung können Sie

  1. die Software von ihrer Homepage oder einem Mirror herunterladen (wenn Sie in irgendeiner Weise mit dem Internet verbunden sind).
  2. ihre Integrität überprüfen
  3. Patches integrieren
  4. die Software für NetBSD konfigurieren und dann kompilieren und installieren.
  5. den Überblick über alle installierten Dateien behalten und somit die Software mit den Package Werkzeugen einfach wieder löschen.
  6. ein binäres Paket erstellen, welches dann auf einer anderen Maschine installiert werden kann.

Jede von dem Paket benötigte Software wird ebenfalls automatisch heruntergeladen, kompiliert und installiert.

Vorteile (zurück)

Einige der Vorteile gegenüber eigenhändigen Herunterladen des Software Quellcodes und der Binär-Dateien sind:

Installation bereits kompilierter Binär Pakete (zurück)

Eine Auswahl von bereits kompilierten binären Paketen für NetBSD 1.5 und höher kann aus dem /pub/NetBSD/packages/ Directory der NetBSD ftp sites bezogen werden.

Die meisten Benutzer werden den Web-Index am nützlichsten finden.

Diese Pakete können installiert werden, indem Sie ein Paket und die benötigten Voraussetzungen auf ihre Festplatte herunterladen und dann

    pkg_add <package>
eingeben. Wahlweise können Sie auch die URL direkt angeben:
    pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<os_release>/<arch>/<type>/<package>
Alles benötigten Pakete werden automatisch heruntergeladen und installiert, wenn sie in dem angegeben Ordner vorhanden sind.

Standardgemäß werden die Pakete unter /usr/pkg installiert. Sie sollten sicherstellen, daß /usr/pkg/bin und /usr/pkg/sbin Teil Ihres PATH sind (am Besten in /etc/csh.cshrc setzen).

Installation von pkgsrc unter anderen Betriebssystemen (Darwin, FreeBSD, IRIX, Linux, OpenBSD, Solaris) (zurück)

Wenn Sie pkgsrc unter NetBSD verwenden, können Sie direkt zu Konfiguration der NetBSD Paketsammlung gehen.

Um den Gebrauch der NetBSD Paketsammlung auch unter anderen Betriebssystemen zu ermöglichen, stellen wir ein Bootstrap Kit zur Verfügung, mit welchem Sie die benötigten Tools auf Ihrer Plattform kompilieren können. Durch dieses Bootstrap Kit, 'bootstrap-pkgsrc', wird Zoularis abgelöst. Ausser nativer NetBSD Unterstützung bietet pkgsrc so Support für die folgenden Betriebssysteme:

An der Unterstützung weiterer Plattformen wird gearbeitet.

Die notwendigen Sources für für das Bootstrap Kit können Sie entweder von unserem FTP Server oder durch anoncvs herunterladen:

	# cvs checkout othersrc/bootstrap-pkgsrc

Anweisungen für den Gebrauch von anoncvs finden Sie auf dieser Seite. Danach sollte die Installation einfach durch die folgenden Befehle erfolgen:

	# cd othersrc/bootstrap-pkgsrc
	# ./bootstrap

Ohne weitere Änderungen oder Parameter werden hierdurch /usr/pkg als Prefix und /var/db/pkg als Verzeichnis für die Packages Datenbank benutzt. Diese können jedoch durch Befehlszeilenparameter nach Wunsch gesetzt werden (nutzen Sie ./bootstrap --help um die möglichen Optionen zu sehen).

Binärpakete der benötigten pkgsrc Tools und einige der notwendigsten Packages sind wie folgt erhältlich:

Platform Latest snapshot Bootstrap kit Binary packages
Darwin 5.5/powerpc
(MacOS X 10.1.5)
20021209 Bootstrap Kit  
Darwin 6.2/powerpc
(MacOS X 10.2.2)
20021219 Bootstrap Kit Binärpakete
Darwin 6.3/powerpc
(MacOS X 10.2.3)
20030412 Bootstrap Kit  
FreeBSD 3.5/i386 20030411 Bootstrap Kit  
FreeBSD 4.7/i386 20021211 Bootstrap Kit Binärpakete
FreeBSD 5.0/i386 20030411 Bootstrap Kit  
Debian GNU/Linux i386 20030410 Bootstrap Kit
Binärpakete
Slackware Linux 8.1/i386 20030411 Bootstrap Kit
 
IRIX 6.5 20030410/20030225 n32-bit ABI
64-bit ABI
Binärpakete
OpenBSD 3.2/i386 20030411 Bootstrap Kit  
Solaris 8/sparc 20021219 Bootstrap Kit Binärpakete
Solaris 8/i386 20030330 Bootstrap Kit Binärpakete
Solaris 9/sparc 20030411 Bootstrap Kit Binärpakete
Solaris 9/i386 20030411 Bootstrap Kit  

Konfiguration der NetBSD Paketsammlung (zurück)

Die Pakete der NetBSD Paketsammlung pkgsrc bestehen aus einer Reihe von nach Kategorie sortierten Makefiles, kurzen Beschreibungen und den benötigten Patches um eine einfache Kompilation der verschiedenen Programme zu garantieren.

Durch die Installation von pkgsrc können Sie jedwede Software der NetBSD Paketsammlung einfach kompilieren und installieren.

Sie können pkgsrc über die folgenden Methoden installieren:

  1. CD-Rom
    Wenn sie eine offizielle NetBSD CD-Rom besitzen, so enthät diese auch pkgsrc. Andere CD Hersteller sollten es ebenfalls als Teil der CD beinhalten. Obwohl dies eine durchaus akzeptable Möglichkeit darstellt, so ist es in der Regel zu bevorzugen, pkgsrc aus dem Internet herunterzuladen, da es kontinuierlich auf den neuesten Stand gebracht wird.

  2. sup
    Dies ist die empfohlene Methode. Anfänglich dauert das Herunterladen etwas länger, aber jedes mal wenn sup(1) ausgeführt wird, erneuert es lediglich die geänderten Dateien und löscht automatisch alle alten Dateien. Der einfachste Weg, sup zu installieren ist wie folgt:

    • 'mkdir /etc/supfiles /usr/sup'.

    • 'cp /usr/share/examples/supfiles/serverhost /etc/supfiles/coll.list'. serverhost ist hier der 'nächste' Host, oder eben 'sup.NetBSD.org')

    • In der Datei /etc/supfiles/coll.list sollten Sie nun alle Reihen ausser den beiden die mit 'current release=pkgsrc' beginnen, auskommentieren (mit einem '#' am Anfang versehen).

    Von nun an können Sie pkgsrc mit sup auf den neuesten Stand bringen, indem sie 'sup -s -v' (oder nur 'sup -s') eingeben. Sup kann des Weiteren auch dazu benutzt werden, die verschiedenen NetBSD Source Trees herunterzuladen - sehen Sie dazu die Zeilen in coll.list bezüglich der Details.

  3. ftp
    Dies ist die einfachste Methode, obwohl sie jedes mal das Herunterladen des gesamten pkgsrc tar-Archives (im Moment mehr als 5MB in komprimierter Form).

    • Die NetBSD Paket Sammlung wird wöchentlich archiviert und als komprimiertes tar-Archiv auf dem NetBSD Ftp Server und den vielen Mirrors abgelegt. Sie können es von ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-current/tar_files/pkgsrc.tar.gz oder einem nahe liegenden Mirror herunterladen.

    • Nachdem Sie die Datei heruntergeladen haben, benutzen Sie 'su -' um root Schreibrechte zu erlangen. Kopieren sie die Datei in den '/usr' Ordner Ihres Systems.

    • Wenn Sie vorher bereits einmal pkgsrc.tar.gz extrahiert haben, sollten Sie sicherstellen, die alte Order-Struktur zuerst zu löschen:
      	cd /usr ; rm -rf pkgsrc

    • Nun sollte die Datei dekomprimiert und in den neuen Ordner entfaltet werden(/usr/pkgsrc):
      	cd /usr ; tar -xzvpf pkgsrc.tar.gz

    • Wenn Sie nun ein neues Paket der Sammlung zusammenstellen, wird es von selber einen neuen Directory Tree unter '/usr/pkg/' anlegen und sich selbst dort installieren. Sie können dieses Verhalten ändern, indem Sie z. B. 'LOCALBASE=/usr/local' in der Datei /etc/mk.conf einfügen.

    • Alle benötigten Dateien können von Ihrem nächsten Mirror heruntergeladen werden. Dazu kopieren Sie lediglich die entsprechenden MASTER_SITE_* aus '/usr/pkgsrc/mk/bsd.pkg.defaults.mk' in Ihre '/etc/mk.conf' Datei und entfernen das '#' am Anfang der Zeile.

  4. AnonCVS
    Diese Methode beinhaltet zwei Schritte. Zuerst muss AnonCVS korrekt konfiguriert werden; danach können Sie dann jederzeit ein komplettes oder teilweises Update durchführen.

    Um AnonCVS zu installieren, folgen Sie den ersten vier Schritten unter Verfolgung von NetBSD-current mit AnonCVS ; Sie wollen hier das Modul pkgsrc auschecken -- Standardgemäß wird dies in '/usr/pkgsrc' abgelegt, jeder andere Ornder ist aber auch Ordnung.

    Ein Update kann durch

    cd /usr/pkgsrc
    cvs update -d -P
    ausgeführt werden.

    Sollten Sie lediglich einen Teil updaten wollen (aufgrund von Abhängigkeiten nicht zu empfehlen): cvs update -d -P category/package

    Wenn Sie bloß eine langsame Verbindung haben, sollten Sie eventuell "-z5" (oder eine andere Nummer zwischen 1 und 9) vor den Befehl (z. B. "cvs -z5 update -d -P") setzen -- dadurch werden alle Daten komprimiert. Bitte beachten Sie, daß dies zu einer extra Belastung des CVS Servers führt.

Benutzung der NetBSD Paketsammlung (zurück)

  1. Der Ordner '/usr/pkgsrc/' beinhaltet nun eine Reihe weiterer Unterordner, sortiert nach Kategorie. Durch den Online Index behalten Sie den Überblick über die Pakete; durch den Befehl 'make readme' in dem Ordner /usr/pkgsrc können Sie die einzelnen 'README.html' Dateien für jedes Paket erzeugen. Diese Dateien enthalten nützliche Informationen über die jeweilige Anwendung.

  2. Sollten Sie sich entscheiden, eine der Anwendungen zu installieren, so kann dies leicht geschehen. Um zum Beispiel den Editor 'Joe' (ein kleiner aber effektiver Editor der andere Editoren wie Wordstar oder Emacs nachahmen kann) auf Ihrem System zu installieren, müssen Sie zuerst in den entsprechenden Ordner wechseln:
    	cd /usr/pkgsrc/editors/joe
    

  3. Wenn Sie sich ins Internet einwählen, so erstellen Sie nun eine Verbindung, damit die Software heruntergeladen werden kann.

    Wenn Sie alle Dateien bereits in /usr/pkgsrc/distfiles haben, brauchen Sie keine neue Verbindung aufzubauen. Sollten sich die distfiles auf einer CD-ROM befinden, so können Sie diese unter /cdrom mounten und dann 'DISTDIR=/cdrom/pkgsrc/distfiles' in /etc/mk.conf einfügen oder direkt 'make DISTDIR=/cdrom/pkgsrc/distfiles' eingeben.

    Sollte ein Paket (wie zum Beispiel KDE) viele andere Pakete benötigen, so wird der Installationsprozess zwischen dem Herunterladen des Quellcodes und dem Kompilieren wechseln. Um sicher zu gehen, daß sämtliche Quellen zu Beginn heruntergeladen werden, können Sie folgenden Befehl eingeben:

    	make fetch-list | sh
    
    Hiermit werden eine Reihe von Shell-Befehlen ausgeführt, die die entsprechenden Dateien in den Ordner /usr/pkgsrc/distfiles herunterladen. Sie können die notwendigen Dateien auch eingenhändig in /usr/pkgsrc/distfiles herunterladen - da dies jedoch wesentlich mehr Aufwand erfordert, sollte dies lediglich als letzte Rettung angesehen werden.

  4. Nun geben Sie den Befehl
    	make
    
    in dem Ordner '/usr/pkgsrc/editors/joe' ein. Der Quellcode und jegliche benötigten Patches sowohl als auch jede andere Software die zur Kompilation des Programmes benötigt wird, werden nun auf Ihr System heruntergeladen.

  5. Nachdem die Software heruntergeladen wurde, wird sie gepatcht und anschließend für Sie kompiliert. Je nach der Ausstattung Ihres Computers und wie viele andere Pakete benötigt werden kann dies etwas Zeit benötigen.

  6. Wenn dieser Prozess fehlerfrei verläft, können Sie die Internetverbindung abbrechen (und Ihre Telefonrechnung erleichtern!).

  7. Der nächste Schritt ist dann, die kompilierten Programme auf Ihrem System zu installieren. Dazu geben Sie den folgenden Befehl (immer noch aus dem Ordner '/usr/pkgsrc/editors/joe' oder dem entsprechenden Gegenstück für die Software die Sie installieren wollen) ein:

    	make install
    

  8. Das ist alles - die Software sollte nun installiert und bereit für die Benutzung sein. Sie können nun den Befehl
    	make clean
    
    eingeben um die kompilierten Dateien des Arbeits-Ordners zu löschen, da Sie diese nun nicht mehr benötigen. Sollten andere Pakete ebenfalls installiert worden sein (als Voraussetzungen des Programmes), so können Sie diese ebenfalls säubern, indem Sie den Befehl
    	make clean CLEANDEPENDS=YES
    
    eingeben.

Probleme beim Kompilieren eines Paketes (zurück)

Für manche große Pakete sind die standardgemäßen Limitierungen mancher Ports zu klein - sollte die Kompilation mit dem Fehler "virtual memory exhausted" abgebrochen werden, so sehen Sie bitte den Eintrag unlimit der Kompilations-FAQ.

Was ist /etc/mk.conf ? (zurück)

/etc/mk.conf kann dazu benutzt werden, bestimmte Variablen der Paketsammlung zu setzen. Standargemäß ist diese Datei nicht vorhanden, kann aber, wenn benötigt, erstellt werden. Unter den vielen Variablen die gesetzt werden können sind;

Eine komplette List der Variable ist unter /usr/pkgsrc/mk/bsd.pkg.defaults.mk zu finden.

Wie man herausfindet, was in der NetBSD Paketsammlung erhältlich ist (zurück)

Der beste Weg herauszufinden, was für Pakete in der Sammlung erhältlich sind ist in den Top-Ordner von pkgsrc zu gehen (normalerweise ist dies /usr/pkgsrc), und "make readme" einzugeben. Dadurch wird eine Datei namens "README.html" in diesem Ordner erstellt, als auch in jedem Ordner einer Kategorie und jedes Paketes. Nun können Sie sehen, welche Pakete erhätlich sind, zusammen mit einer kurzen (einzeiligen) Beschreibung der Funktion des Paketes und einem Link zu einer detaillierteren Beschreibung indem Sie einen Browser wie z. B. lynx (siehe pkgsrc/www/lynx) oder Mozilla (pkgsrc/www/mozilla), oder communicator. Diese Datei ist auch online erhältlich:

	ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/README.html.

Wenn Sie eine komplette Liste aller Pakete bevorzugen, sehen Sie

	ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/README-all.html.

Eine andere Möglichkeit herauszufinden welche Pakete erhätlich sind besteht durch den "make index" Befehl im pkgsrc-Top-Ordner. Dies erstellt die Datei pkgsrc/INDEX, welche durch den Befehl "make print-index | more" eingesehen werden kann. Sie können auch nach einem bestimmten Paket oder Schlüsselwörtern suchen, indem Sie "make search key=<Schlüsselwort>" eingeben.

Wie man installierte Pakete auf Sicherheitslücken überprüft (zurück)

Der NetBSD Security-Officer und die Paket Gruppe verwalten eine Liste der bekannten Sicherheitslücken der Pakete die in pkgsrc beinhaltet sind (oder waren). Diese Liste ist von der NetBSD FTP Seite erhätlich:

ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/vulnerabilities

Durch die audit-packages, kann diese Liste automatisch heruntergeladen werden und sämtliche installierten Pakete können überprüft werden.

audit-packages besteht aus zwei Teilen. Der erste, download-vulnerability-list, wird genutzt um die Liste der Sicherheitslücken von der NetBSD FTP Seite herunterzuladen. Der zweite Teil, audit-packages, überprüft die installierten Pakete. Sollte ein Paket eine Sicherheitslücke aufweisen, erhalten Sie eine Meldung ähnlich dieser:

Package samba-2.0.9 has a local-root-shell vulnerability, see \
http://www.samba.org/samba/whatsnew/macroexploit.html

audit-packages kann so konfiguriert werden, daß es die Datei vulnerabilties täglich automatisch herunterlädt und eine Überprüfung der Pakete in einem täglichen Sicherheits-Script durchführt. Details sind in der Datei MESSAGE der audit-packages beschrieben.

Wie man herausfindet, ob eine neuere Version eines installierten Paketes in pkgsrc erhältlich ist (zurück)

Um herauszufinden, ob eine neuere Version eines installierten Paketes erhätlich ist, sollten Sie zuerst pkgsrc/pkgtools/pkglint installieren. Danach wird der Befehl 'lintpkgsrc -i' Sie davon in Kenntnis setzen, sollte eine neuere Version verfügbar sein.

Wenn Sie zum Beispiel pkgsrc/shells/tcsh Version 6.09.00 installiert haben, und die Version in pkgsrc ist zu diesem Zeitpunkt 6.10.00, so wird 'lintpkgsrc -i' Ihnen die folgende Meldung liefern:

   Version mismatch: 'tcsh' 6.09.00 vs 6.10.00

Andere Befehle der NetBSD Paketsammlung (zurück)

Andere nützliche Befehle der NetBSD Paketsammlung sind:

Pkgsrc Maintenance Tools (zurück)

Des Weiteren gibt es in pkgsrc noch eine Reihe weiterer nützlicher Tools, mit denen ein pkgsrc System sauber gehalten werden kann. Einige der am Häufigsten gebrauchten sind:


Detailliertere und weitere Informationen über die NetBSD Paketsammlung sind in der pkgsrc Anleitung, welche Bestandteil von pkgsrc ist, enthalten.

Viel Dank geht an Simon Rowe's NetBSD Seiten

Zurück zu NetBSD Dokumentation: Software
Home page
Zurück zu Dokumentation

(Ihre Meinung) $NetBSD: packages.html,v 1.67 2005/09/28 17:24:43 mishka Exp $
Copyright © 1994-2003 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.