So verwalten Sie Pakete unter FreeBSD 10.1 mit Pkg

Einführung

Der Binärpaket-Manager von FreeBSD, * pkg *, kann verwendet werden, um die Installation vorkompilierter Anwendungen, der FreeBSD-äquivalenten Debian- und RPM-Pakete, einfach zu verwalten. Verglichen mit der anderen gängigen Methode zur Installation von Software unter FreeBSD bietet das Kompilieren von * ports * mit der Ports-Sammlung mithilfe von Paketen eine einfachere und schnellere Alternative, die in vielen Situationen funktioniert. Pakete sind jedoch nicht so flexibel wie Ports, da Paketinstallationen nicht angepasst werden können. Wenn Sie die Kompilierungsoptionen Ihrer Softwareinstallationen anpassen müssen, verwenden Sie https://www.digitalocean.com/community/tutorials/how-to -install-and-manage-ports-on-freebsd-10-1 [ports] anstelle von Paketen.

In diesem Tutorial zeigen wir Ihnen, wie Sie Pakete unter FreeBSD 10.1 verwalten. Dies umfasst unter anderem das Installieren und Löschen von Paketen.

Voraussetzungen

Um die Befehle in diesem Tutorial verwenden zu können, müssen Sie * root * -Zugriff auf einen FreeBSD-Server haben. Das heißt, Sie müssen in der Lage sein, sich über den Befehl sudo als root oder als anderer Benutzer mit Superuser-Rechten beim Server anzumelden. Wenn Sie vorhaben, root zu verwenden, können Sie den Teil + sudo + der Beispielbefehle weglassen.

So installieren Sie neue Pakete mit Pkg

Wenn Sie den Namen des Pakets kennen, das Sie installieren möchten, können Sie es mit dem Befehl + pkg + wie folgt installieren:

sudo pkg install

Sie können auch mehrere zu installierende Pakete angeben, die durch Leerzeichen wie folgt voneinander getrennt sind:

sudo pkg install

Installieren wir beispielsweise Nginx, einen beliebten Webserver, mit "+ pkg +":

sudo pkg install nginx

Durch Ausführen dieses Befehls wird die Installation des von Ihnen angegebenen Pakets gestartet. Zunächst sucht Ihr System nach Aktualisierungen des Paket-Repository-Katalogs. Wenn es bereits vollständig aktualisiert wurde, suchen Sie nach dem angegebenen Paket. Wenn das Paket gefunden wurde, werden das Paket und die Pakete, von denen es abhängt, aufgelistet. Daraufhin wird eine Bestätigungsaufforderung angezeigt.

In diesem Fall wird nur das Paket "+ nginx " installiert. Beantworten Sie die Aufforderung mit ` y +`, um Folgendes zu bestätigen:

New packages to be INSTALLED:
   nginx: 1.6.2_1,2

The process will require 654 KB more space.
244 KB to be downloaded.

Proceed with this action? [y/N]:

Nach Bestätigung der Paketinstallation werden die aufgelisteten Pakete heruntergeladen und auf dem System installiert. In einigen Paketen werden nach der Installation wichtige Informationen oder Anweisungen zur Verwendung der Anwendung angezeigt. Beachten Sie die nach der Installation zu beachtenden Hinweise.

Wenn Sie die Standardshell "+ tcsh " oder " csh " verwenden, sollten Sie die Liste der Binärdateien in Ihrem " PATH +" mit folgendem Befehl neu erstellen:

rehash

Es ist auch wichtig zu beachten, dass Anwendungen, die services sind, nach der Installation weder automatisch gestartet noch als Dienst aktiviert werden. Sehen wir uns an, wie Sie Dienste jetzt ausführen.

Ausführen von Diensten

Unter FreeBSD stellen Dienste, die mit Paketen installiert werden, ein Dienstinitialisierungsskript in + / usr / local / etc / rc.d + bereit. Im Beispielfall von Nginx, das als Dienst ausgeführt wird, heißt das Startskript "+ nginx +". Beachten Sie, dass Sie beim Ausführen der Befehle den entsprechenden Dienstskriptnamen anstelle des hervorgehobenen "nginx" verwenden sollten.

Um zu demonstrieren, was passiert, wenn Sie versuchen, einen Dienst zu starten, der nicht aktiviert ist, versuchen Sie, die Software unmittelbar nach der Installation mit dem Befehl + service + zu starten:

sudo service  start

Der Dienst wird nicht gestartet und es wird eine Meldung angezeigt, die wie folgt aussieht:

Cannot 'start' . Set _enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'.

Um den Dienst zu aktivieren, folgen Sie den Anweisungen in der Nachricht und fügen Sie die folgende Zeile zu "+ / etc / rc.conf +" hinzu:

_enable="YES"

Sie können entweder "+ / etc / rc.conf " in einem Editor öffnen und die Zeile hinzufügen oder das Hilfsprogramm " sysrc +" verwenden, um die Datei folgendermaßen zu aktualisieren:

sudo sysrc _enable=yes

Jetzt ist der Dienst aktiviert. Es wird gestartet, wenn Ihr System startet, und Sie können den Unterbefehl + start + verwenden, der zuvor versucht wurde:

sudo service  start

Wenn Sie den Dienst einmal ausführen möchten, ohne ihn zu aktivieren, können Sie den Unterbefehl + onestart + verwenden. Wenn Sie einen Dienst auf diese Weise starten, wird das Startskript sofort ausgeführt, jedoch nicht beim Systemstart. Probieren Sie es jetzt:

sudo service  onestart

Die Verwendung des Unterbefehls "+ onestart +" ist nützlich, wenn Sie die Konfiguration Ihrer Dienste testen möchten, bevor Sie sie aktivieren.

So zeigen Sie Paketinformationen mit Pkg an

Um Informationen über * installierte * Pakete anzuzeigen, können Sie den Befehl + pkg info + wie folgt verwenden:

pkg info

Daraufhin werden verschiedene Informationen zum angegebenen Paket gedruckt, einschließlich einer Beschreibung der Software, der Optionen, mit denen sie kompiliert wurde, und einer Liste der Bibliotheken, von denen sie abhängt.

So aktualisieren Sie installierte Pakete mit Pkg

Sie können die neuesten verfügbaren Versionen der installierten Pakete Ihres Systems mit folgendem Befehl installieren:

sudo pkg upgrade

Durch Ausführen dieses Befehls werden Ihre installierten Pakete mit den Versionen im Repository-Katalog verglichen und eine Liste der Pakete gedruckt, die auf eine neuere Version aktualisiert werden können:

Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
Checking for upgrades (2 candidates): 100%
Processing candidates (2 candidates): 100%
The following 2 packages will be affected (of 0 checked):

Installed packages to be UPGRADED:
   python27: 2.7.8_6 -> 2.7.9
   perl5: 5.18.4_10 -> 5.18.4_11

The process will require 2 MB more space.
23 MB to be downloaded.

Proceed with this action? [y/N]:

Antworten Sie mit einem "+ y +" auf die Aufforderung, mit dem Upgrade der aufgelisteten Pakete fortzufahren.

So löschen Sie Pakete mit Pkg

Wenn Sie den Namen des Pakets kennen, das Sie löschen möchten, können Sie es mit dem Befehl + pkg + wie folgt löschen:

sudo pkg delete

Sie können auch mehrere zu löschende Pakete angeben, die durch Leerzeichen wie folgt voneinander getrennt sind:

sudo pkg delete

Löschen wir das zuvor installierte Nginx-Paket:

sudo pkg delete

Sie sehen eine Nachricht wie die folgende mit einer Bestätigungsaufforderung:

Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
   nginx-1.6.2_1,2

The operation will free 654 KB.

Proceed with deinstalling packages? [y/N]:

Antworten Sie auf die Aufforderung mit + y +, um die Aktion zum Löschen des Pakets zu bestätigen.

So entfernen Sie nicht verwendete Abhängigkeiten

Wenn Sie ein Paket löschen, in dem Abhängigkeiten installiert sind, werden diese weiterhin installiert. Führen Sie den folgenden Befehl aus, um die Pakete zu entfernen, die von installierten Paketen nicht mehr benötigt werden:

sudo pkg autoremove

Die Liste der zu entfernenden Pakete wird gedruckt, gefolgt von einer Aufforderung. Antworten Sie auf die Bestätigungsaufforderung mit "+ y +", wenn Sie die aufgelisteten Pakete löschen möchten.

So finden Sie Pakete mit Pkg

Verwenden Sie den Befehl + pkg search +, um Binärpakete zu finden, die im Repository verfügbar sind.

Nach Paketname

Die einfachste Art der Suche ist die Suche nach Paketnamen. Wenn Sie nach Paketnamen suchen möchten, verwenden Sie den folgenden Befehl:

pkg search

Um beispielsweise nach Paketen mit dem Namen "nginx" zu suchen, verwenden Sie diesen Befehl:

pkg search nginx

Daraufhin wird eine Liste der Pakete einschließlich der Versionsnummern mit "nginx" im Namen gedruckt:

nginx-1.6.2_1,2
nginx-devel-1.7.8
p5-Nginx-ReadBody-0.07_1
p5-Nginx-Simple-0.07_1
p5-Test-Nginx-0.24

Wenn Sie die detaillierten Paketinformationen zu den aufgelisteten Paketen lesen möchten, verwenden Sie die Option "+ -f +" wie folgt:

pkg search -f

Dadurch werden die Paketinformationen zu jedem Paket gedruckt, das dem angegebenen Paketnamen entspricht.

Nach Beschreibung

Wenn Sie den Namen des zu installierenden Pakets nicht kennen, können Sie auch die Beschreibungen der im Repository verfügbaren Pakete durchsuchen, indem Sie die Option "+ -D +" angeben. Standardmäßig wird bei der Musterübereinstimmung nicht zwischen Groß- und Kleinschreibung unterschieden:

pkg search -D

Verwenden Sie zum Beispiel den folgenden Befehl, um nach allen Paketen mit "java" in der Beschreibung zu suchen:

pkg search -D java

Dadurch werden die Namen aller verfügbaren Pakete mit dem angegebenen Muster im Beschreibungsfeld zusammen mit der Beschreibung gedruckt.

So erfahren Sie mehr über die Verwendung von Pkg

Pkg ist ein sehr flexibles Dienstprogramm, das auf viele Arten verwendet werden kann, die in diesem Lernprogramm nicht behandelt werden. Zum Glück können Sie auf einfache Weise nachsehen, welche Optionen und Unterbefehle verfügbar sind und was diese tun.

Verwenden Sie diesen Befehl, um die verfügbaren Optionen und Unterbefehle zu drucken:

pkg help

Um die Manpages für die verschiedenen Unterbefehle zu lesen, verwenden Sie "+ pkg help +" und geben Sie den Befehl an, über den Sie etwas lernen möchten:

pkg help

Wenn Sie beispielsweise mehr über die Verwendung von "+ pkg search +" erfahren möchten, geben Sie folgenden Befehl ein:

pkg help search

Dadurch wird eine Manpage aufgerufen, in der die Verwendung von "+ pkg search +" beschrieben wird.

Fazit

Sie sollten jetzt genug über die Verwendung von + pkg + wissen, um Binärpakete auf Ihrem FreeBSD-Server zu verwalten.

Wenn Sie mehr über das Verwalten von Software auf Ihrem FreeBSD-Server erfahren möchten, lesen Sie in diesem Tutorial unbedingt * ports *: https://www.digitalocean.com/community/tutorials/how-to-install-and-manage -ports-on-freebsd-10-1 [Installieren und Verwalten von Ports unter FreeBSD 10.1].