GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verwenden Sie pkgsrc unter Linux

NetBSD ist berühmt dafür, auf praktisch allem zu laufen, aber wussten Sie, dass es zweit ist? Anspruch auf Berühmtheit ist der pkgsrc Paket-Manager? Wie NetBSD läuft pkgsrc im Grunde auf allem, oder zumindest auf jedem Unix und Unix-ähnlichen. Sie können pkgsrc auf BSD, Linux, Illumos, Solaris und Mac installieren. Insgesamt werden über 20 Betriebssysteme unterstützt.

Warum pkgsrc verwenden?

Mit Ausnahme von MacOS werden alle Unix-Betriebssysteme mit einem integrierten Paketmanager ausgeliefert. Sie müssen nicht unbedingt brauchen pkgsrc, aber hier sind drei gute Gründe, warum Sie es vielleicht ausprobieren sollten:

  • Verpackung. Wenn Sie neugierig auf das Paketieren sind, aber noch nicht versucht haben, selbst ein Paket zu erstellen, ist pkgsrc ein relativ einfach zu verwendendes System, insbesondere wenn Sie bereits mit Makefiles und Build-Systemen wie GNU Autotools vertraut sind.
  • Allgemein. Wenn Sie mehrere Betriebssysteme oder Distributionen verwenden, stoßen Sie wahrscheinlich auf einen Paketmanager für jedes System. Sie können pkgsrc auf unterschiedlichen Systemen verwenden, sodass Sie eine Anwendung für alle paketiert haben, wenn Sie sie paketieren.
  • Flexibel. In vielen Paketsystemen ist es nicht immer offensichtlich, wie man ein Binärpaket oder ein Quellpaket auswählt. Bei pkgsrc ist der Unterschied klar, beide Installationsmethoden sind gleich einfach und beide lösen Abhängigkeiten für Sie auf.

So installieren Sie pkgsrc

Unabhängig davon, ob Sie BSD, Linux, Illumos, Solaris oder MacOS verwenden, der Installationsprozess ist grundsätzlich derselbe:

  1. Verwenden Sie CVS, um den pkgsrc-Baum zu überprüfen
  2. Booten Sie das pkgsrc-System
  3. Pakete installieren

Verwenden Sie CVS, um den pkgsrc-Baum auszuchecken

Vor Git, vor Subversion, gab es CVS . Sie müssen nicht viel über CVS wissen, um seinen Code auszuchecken – wenn Sie an Git gewöhnt sind, dann denken Sie an Auschecken als Klon . Wenn Sie einen CVS-Checkout von pkgsrc durchführen, laden Sie "Rezepte" herunter, die detailliert beschreiben, wie jedes Paket erstellt werden soll. Es sind viele Dateien, aber sie sind klein, weil Sie nicht wirklich den Quellcode für jedes Paket ziehen, sondern nur die Build-Infrastruktur und Makefiles, die erforderlich sind, um darauf aufzubauen. Die Verwendung von CVS macht es Ihnen leicht, Ihren pkgsrc-Checkout zu aktualisieren, wenn ein neuer veröffentlicht wird.

Die pkgsrc-Dokumentation empfiehlt, Ihren Baum im Verzeichnis /usr zu belassen Verzeichnis, also müssen Sie sudo verwenden (oder root werden), um diesen Befehl zu verwenden:

$ cd /usr
$ sudo cvs -q -z2 \
  -d [email protected]:/cvsroot \
  checkout -r pkgsrc-2019Q3 -P pkgsrc

Während ich dies schreibe, ist die neueste Version 2019Q3. Sehen Sie im News-Bereich der Homepage von pkgsrc.org oder in der NetBSD-Dokumentation nach, um die neueste Release-Version zu ermitteln.

Bootstrap-pkgsrc

Nachdem der pkgsrc-Baum auf Ihren Computer kopiert wurde, haben Sie ein /usr/pkgsrc Verzeichnis gefüllt mit Build-Skripten. Bevor Sie sie verwenden können, müssen Sie pkgsrc booten, damit Sie einfachen Zugriff auf die relevanten Befehle haben, die Sie zum Erstellen und Installieren der Software benötigen.

Die Art und Weise, wie Sie pkgsrc booten hängt von dem Betriebssystem ab, auf dem Sie sich befinden.

Für NetBSD können Sie einfach den gebündelten Bootstrapper verwenden:

# cd pkgsrc/bootstrap
# ./bootstrap

Auf anderen Systemen gibt es bessere Möglichkeiten mit einigen angepassten Funktionen, die von Joyent bereitgestellt werden. Um den genauen auszuführenden Befehl herauszufinden, besuchen Sie pkgsrc.joyent.com. Zum Beispiel unter Linux (Fedora, Debian, Slackware usw.):

$ curl -O \
  https://pkgsrc.joyent.com/packages/Linux/el7/bootstrap/bootstrap-trunk-x86_64-20170127.tar.gz
$ BOOTSTRAP_SHA="eb0d6911489579ca893f67f8a528ecd02137d43a"

Obwohl der Pfad darauf hindeutet, dass die enthaltenen Dateien für RHEL 7 sind, sind die Binärdateien in der Regel mit allen außer den modernsten Linux-Distributionen kompatibel. Und sollten Sie eine Binärdatei finden, die mit der Distribution, auf der Sie sich befinden, nicht kompatibel ist, haben Sie die Möglichkeit, aus dem Quellcode zu erstellen.

Überprüfen Sie die SHA1-Prüfsumme:

$ echo "${BOOTSTRAP_SHA}" bootstrap-trunk*gz > check-shasum
sha1sum -c check-shasum

Sie können auch die PGP-Signatur überprüfen:

$ curl -O \
https://pkgsrc.joyent.com/packages/Linux/el7/bootstrap/bootstrap-trunk-x86_64-20170127.tar.gz.asc
curl -sS https://pkgsrc.joyent.com/pgp/56AAACAF.asc | gpg --import
gpg --verify ${BOOTSTRAP_TAR}{.asc,}

Sobald Sie sicher sind, dass Sie das richtige Bootstrap-Kit haben, installieren Sie es unter /usr/pkg :

sudo tar -zxpf ${BOOTSTRAP_TAR} -C /

Dies stellt Ihnen die üblichen pkgsrc-Befehle zur Verfügung. Fügen Sie diese Orte zu Ihrem PATH hinzu:

$ echo "PATH=/usr/pkg/sbin:/usr/pkg/bin:$PATH" >> ~/.bashrc
$ echo "MANPATH=/usr/pkg/man:$MANPATH" >> ~/.bashrc

Wenn Sie lieber pkgsrc verwenden möchten, ohne sich auf Joyents Builds zu verlassen, können Sie einfach den Bootstrap ausführen Skript, das Sie mit dem pkgsrc-Baum erhalten haben. Lesen Sie die entsprechende README-Datei im Bootstrap Verzeichnis, bevor Sie es für wichtige systemspezifische Hinweise ausführen.

So installieren Sie Software mit pkgsrc

Das Installieren einer vorkompilierten Binärdatei (wie Sie es mit DNF oder Apt tun würden) mit pkgsrc ist einfach. Der Befehl für binäre Installationen ist pgkin , das eine eigene Website unter pkgin.net hat. Der Prozess sollte jedem ziemlich vertraut vorkommen, der Linux verwendet hat.

Um nach tmux zu suchen Paket:

$ pkgin search tmux

So installieren Sie das tmux-Paket:

$ sudo pkgin install tmux

Das pkgin Ziel des Befehls ist es, das Verhalten typischer Linux-Paketmanager nachzuahmen, daher gibt es Optionen, um verfügbare Pakete aufzulisten, verfügbare Pakete abzufragen, um herauszufinden, was eine bestimmte ausführbare Datei bereitstellt, und so weiter.

Wie man mit pkgsrc aus dem Quellcode erstellt

Die wirkliche Stärke von pkgsrc liegt jedoch in der Leichtigkeit, ein Paket aus dem Quellcode zu erstellen. Sie haben alle über 20.000 Build-Skripte im ersten Einrichtungsschritt heruntergeladen und können auf diese zugreifen, indem Sie direkt in Ihren pkgsrc-Baum navigieren.

Zum Beispiel, um tcsh zu bauen Suchen Sie zuerst aus der Quelle das Build-Skript:

$ find /usr/pkgsrc -type d -name "tcsh"
/usr/pkgsrc/shells/tcsh

Als nächstes wechseln Sie in das Quellverzeichnis:

$ cd /usr/pgksrc/shells/tcsh

Das Build-Skript-Verzeichnis enthält eine Reihe von Dateien, die dabei helfen, die Anwendung auf Ihrem System zu erstellen, aber insbesondere enthält es den DESCR Datei, die eine Beschreibung der Software enthält, sowie das Makefile das den Build auslöst.

$ ls 
CVS    DESCR     Makefile
PLIST  distinfo  patches
$ cat DESCR
TCSH is an extended C-shell with many useful features like
filename completion, history editing, etc.
$

Wenn Sie fertig sind, bauen und installieren Sie:

$ sudo bmake install

Das pkgsrc-System verwendet das bmake Befehl (im ersten Schritt vom pkgsrc-Checkout bereitgestellt), verwenden Sie also unbedingt bmake (und nicht machen aus Gewohnheit).

Wenn Sie für mehrere Systeme bauen, können Sie ein Paket erstellen, anstatt es sofort zu installieren:

$ cd /usr/pgksrc/shells/tcsh
$ sudo bmake package
[...]
=> Creating binary package in /usr/pkgsrc/packages/All/tcsh-X.Y.Z.tgz

Die Pakete, die pkgsrc erstellt, sind Standard-Tarballs, aber sie können bequem mit pkg_add installiert werden :

$ sudo pkg_add /usr/pkgsrc/packages/All/tcsh-X.Y.Z.tgz
tcsh-X.Y.Z: adding /usr/pkg/bin/tcsh to /etc/shells
$ tcsh
localhost%

Die pkgtools Sammlung von pkgsrc stellt die pkg_add bereit , pkg_info , pkg_admin , pkg_create und pkg_delete Befehle zum Verwalten von Paketen, die Sie auf Ihrem System erstellen und verwalten.

Pkgsrc für einfache Verwaltung

Das pkgsrc-System bietet einen direkten, praktischen Ansatz für die Paketverwaltung. Wenn Sie nach einem Paketmanager suchen, der Ihnen aus dem Weg geht und zur Anpassung einlädt, probieren Sie pkgsrc auf jedem Unix- oder Unix-ähnlichen Betriebssystem aus, das Sie verwenden.


Linux
  1. So verwenden Sie BusyBox unter Linux

  2. Wie ich Cron unter Linux verwende

  3. So verwenden Sie FIND unter Linux

  4. So verwenden Sie Unzip unter Linux

  5. So verwenden Sie den XBPS-Paket-Manager unter Void Linux

So verwenden Sie Traceroute unter Kali Linux

So verwenden Sie den Linux-Bildschirm

So verwenden Sie du Command unter Linux

So verwenden Sie das Linux-Terminal in Android

So verwenden Sie den Befehl sysctl unter Linux

So verwenden Sie den Yum-Paket-Manager unter Rocky Linux 8