Nachdem Sie Ihre Ports-Sammlung aktualisiert haben, sollten Sie vor dem Versuch eines Port-Upgrades die Datei /usr/ports/UPDATING überprüfen. Diese Datei beschreibt verschiedene Probleme und zusätzliche Schritte, auf die Benutzer stoßen können und die sie ausführen müssen, wenn sie einen Port aktualisieren.
Die Ports auf dem neuesten Stand zu halten, kann eine mühsame Aufgabe sein. Um beispielsweise einen Port zu aktualisieren, müssen Sie in das Ports-Verzeichnis gehen, den Port erstellen, den alten Port deinstallieren, den neuen Port installieren und dann nach dem Bau aufräumen. Wenn zahlreiche Ports aktualisiert werden müssen, ist dies sehr mühsam. Dies war ein großes Problem für Systemadministratoren, und FreeBSD hat Dienstprogramme, die dies automatisch tun, und das ist das Dienstprogramm sysutils/portupgrade.
Verwenden Sie zum Installieren des Dienstprogramms sysutils/portupgrade den gleichen Befehl wie zum Installieren eines anderen Ports:make install clean.
Erstellen Sie eine Datenbank mit dem folgenden Befehl:pkgdb -F
Der Befehl liest die Liste der installierten Ports und erstellt eine Datenbankdatei im Verzeichnis /var/db/pkg.
Führen Sie portupgrade -a aus um mit der Aktualisierung der Ports zu beginnen.
Das Portupgrade liest die von pkgdb -F erstellte Datenbankdatei und die Ports-INDEX-Datei. Schließlich beginnt portupgrade damit, die aktualisierten Ports herunterzuladen, zu erstellen, zu sichern, zu installieren und zu bereinigen.
Das Portupgrade-Dienstprogramm hat viele Optionen für verschiedene Zwecke, die wichtigsten sind unten aufgeführt.
Wenn Sie nur eine bestimmte Anwendung aktualisieren möchten, nicht die vollständige Datenbank, verwenden Sie portupgrade pkgname , schließen Sie die Flags -r ein, wenn portupgrade auch auf all diese Pakete reagieren soll, die von dem angegebenen Paket abhängen, und -R, um auf alle Pakete zu reagieren, die von den angegebenen Paketen benötigt werden.
Um Pakete anstelle von Ports für die Installation zu verwenden, geben Sie -P an. Mit dieser Option durchsucht portupgrade die lokalen Verzeichnisse, die in PKG_PATH aufgeführt sind, oder holt Pakete von einer entfernten Site, wenn sie nicht lokal gefunden wird. Wenn Pakete nicht lokal gefunden oder entfernt abgerufen werden können, verwendet portupgrade Ports. Um die Verwendung von Ports zu vermeiden, geben Sie -PP.
anUm einfach Distfiles (oder Pakete, wenn -P angegeben ist) abzurufen, ohne etwas zu bauen oder zu installieren, verwenden Sie -F.
Hinweis:Es ist wichtig, die Paketdatenbank regelmäßig mit pkgdb -F zu aktualisieren, um Inkonsistenzen zu beheben, insbesondere wenn portupgrade Sie darum bittet. Brechen Sie portupgrade nicht ab, während es die Paketdatenbank aktualisiert, dies hinterlässt eine inkonsistente Datenbank.