Eine Einführung in die grundlegende FreeBSD-Wartung

Einführung

Bei der Verwaltung von FreeBSD-Servern ist es wichtig, die grundlegenden Wartungsverfahren zu kennen, mit denen Sie Ihre Systeme in gutem Zustand halten können.

In diesem Handbuch werden die grundlegenden Prozesse behandelt, die erforderlich sind, um Ihren Server auf dem neuesten Stand zu halten und ordnungsgemäß zu funktionieren. Wir werden uns damit befassen, wie das vom FreeBSD-Team gepflegte Basisbetriebssystem aktualisiert wird. Wir werden auch erläutern, wie optionale Software aktualisiert und gewartet wird, die über die Ports oder Paketsysteme installiert wird.

Wenn Sie Hilfe beim Einstieg in FreeBSD benötigen, lesen Sie unseren Leitfaden here.

Aktualisieren des Base FreeBSD-Betriebssystems

Eine wichtige Sache, die Sie bei der Arbeit mit FreeBSD beachten sollten, ist, dass das Basisbetriebssystem getrennt von der anderen Software auf dem System erstellt und verwaltet wird. Dies bietet eine Reihe von Vorteilen und ermöglicht es dem FreeBSD-Team, die Kernfunktionalität des Systems sorgfältig zu testen und zu entwickeln.

**: Lesen Sie den Hinweis am Ende dieses Abschnitts bezüglich eines Fehlers in der aktuellen Aktualisierungsprozedur, bevor Sie fortfahren.

Wenn Sie Ihren Server in Betrieb nehmen, besteht eine gute Chance, dass Sicherheitsupdates auf dem Basissystem veröffentlicht wurden. Um die Server des FreeBSD-Projekts nach diesen Updates abzufragen, laden Sie alle neuen Dateien herunter und installieren Sie sie auf Ihrem System. Geben Sie dazu den folgenden Befehl ein:

sudo freebsd-update fetch install

Wenn Sie mit einer DigitalOcean FreeBSD-Installation arbeiten, ist standardmäßig + sudo + enthalten. Wenn Sie eine andere Plattform verwenden, müssen Sie möglicherweise "+ sudo " über das Ports-System oder die Pakete installieren oder " su +", um root zu werden.

Der Befehl "+ freebsd-update " ist das Verwaltungsdienstprogramm für Software im Basisbetriebssystem. Der Unterbefehl ` fetch ` lädt alle neuen Updates herunter, während der Unterbefehl ` install +` sie auf das Live-System anwendet.

Wenn Updates vorhanden sind, wird eine Liste der von dem Update betroffenen Software angezeigt. Sie können mit dem Abwärtspfeil blättern oder mit der Leertaste blättern. Sobald Sie am Ende der Liste angekommen sind, werden die Aktualisierungen angewendet.

Jegliche lang laufende Software, die aktualisiert wurde, muss neu gestartet werden, um die neue Version zu verwenden. Wenn Sie Updates für den Kernel sehen, ist ein Neustart erforderlich, um ungewöhnliches Verhalten zu verhindern. Sie können dies tun, indem Sie Folgendes eingeben:

sudo shutdown -r now

WICHTIG: Fehler in der Update-Prozedur

Derzeit ist ein Upstream-Fehler aufgetreten, bei dem das FreeBSD-Update-Verfahren unter here ausgeführt wird. Der Fehler führt dazu, dass das System nach dem Aktualisierungsvorgang nicht mehr startet.

Es gibt zwei Möglichkeiten, mit dieser Situation umzugehen, wobei die zweite in den meisten Fällen bevorzugt wird.

Die erste Möglichkeit besteht darin, den Server einfach über das DigitalOcean-Bedienfeld aus- und wieder einzuschalten. Dies führt zu einem erzwungenen und nicht ordnungsgemäßen Neustart des Servers. Wenn Sie jedoch einen Neustart durchführen, wird die aktualisierte Umgebung verwendet.

Eine sicherere Alternative ist das Deaktivieren von Soft-Updates oder das Aufzeichnen von Soft-Updates auf dem Dateisystem vor dem Update. Soft-Updates sind das Kernstück des Problems, sodass der Neustart nicht hängen bleibt. Dies ist eine etwas umfangreichere Prozedur und verlängert die Wiederherstellung, die Ihre Festplatten in Zukunft benötigen, um einige Zeit (bis Sie diese Funktionen wieder aktivieren).

Starten Sie dazu vor dem Anwenden von Updates in den Einzelbenutzermodus. Sie können dies tun, indem Sie Folgendes eingeben:

sudo nextboot -o "-s" -k kernel
sudo reboot

Rufen Sie als Nächstes das DigitalOcean-Kontrollfeld für Ihr Droplet auf und klicken Sie auf die Schaltfläche "Konsolenzugriff", um zur Webkonsole zu gelangen. Drücken Sie die Eingabetaste, wenn der Startvorgang abgeschlossen ist, um eine Rescue Shell-Sitzung zu erhalten. Von hier aus können Sie entweder Soft-Updates oder Soft-Update-Journale deaktivieren.

Geben Sie Folgendes ein, um Soft-Updates vollständig zu deaktivieren:

tunefs -n disable /

Wenn Sie nur das Soft-Update-Journal deaktivieren möchten, ein weniger drastischer Kompromiss, können Sie stattdessen diesen Befehl verwenden:

tunefs -j disable /

Sobald dies abgeschlossen ist, können Sie einen Neustart einleiten, um den Server im Mehrbenutzermodus erneut zu starten:

reboot

Nach Abschluss des Startvorgangs können Sie FreeBSD-Aktualisierungen mithilfe der oben beschriebenen Prozedur abrufen und anwenden, ohne dass der Neustart hängen bleibt.

Wir empfehlen, dass Sie den bug report im Auge behalten, damit Sie diese Änderungen rückgängig machen können, wenn der Upstream-Fix verfügbar ist.

Aktualisierungsüberprüfung automatisieren

Sie können Ihr System so konfigurieren, dass täglich automatisch nach diesen Sicherheitspatches gesucht wird, indem Sie einen "+ cron " - Job einrichten. Das Dienstprogramm " freebsd-update " verfügt über einen speziellen Unterbefehl " cron +", der speziell für diesen Zweck verfügbar ist.

Dies wird für eine zufällige Zeitspanne (bis zu einer Stunde) angehalten, um die Last auf die Download-Server zu verteilen. Es wird dann nach Updates suchen und diese herunterladen (im Grunde die Operation "+ fetch +" im Hintergrund). Wenn Updates heruntergeladen werden, wird ein angegebenes Benutzerkonto benachrichtigt. Updates werden nicht automatisch installiert, sodass der Administrator einen geeigneten Zeitpunkt festlegen kann.

Um diese automatische Prüfung einzurichten, bearbeiten Sie die Datei "+ / etc / crontab " mit den Rechten " sudo +":

sudo vi /etc/crontab

Fügen Sie am Ende der Datei eine Zeile hinzu, die wie folgt aussieht:

@daily root freebsd-update -t  cron

Mit dem obigen Befehl wird der Update-Befehl automatisch als Root-Benutzer ausgeführt. Wenn Aktualisierungen gefunden werden, wird das nach der Komponente "+ -t " angegebene Benutzerkonto benachrichtigt. Im obigen Beispiel wird der Standardbenutzer " freebsd +" benachrichtigt.

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Wenn Sie sich das nächste Mal bei "+ freebsd +" anmelden, können Sie Ihre E-Mails überprüfen, indem Sie Folgendes eingeben:

mail

Wenn Updates heruntergeladen wurden, wird Folgendes angezeigt:

Mail version 8.1 6/6/93.  Type ? for help.
"/var/mail/freebsd": 1 message 1 new
>N  1 freebsd@freebsdserver       Thu Dec 18 21:45 209/3997  "freebsdserver security updates"
&

Sie können die Liste der Updates anzeigen, indem Sie die der Benachrichtigung zugeordnete Nachrichtennummer eingeben:

1

Wenn Sie mit der zu ändernden Software zufrieden sind, können Sie die Updates schnell installieren, indem Sie Folgendes eingeben:

sudo freebsd-update install

Denken Sie daran, den Computer neu zu starten, wenn Kernel-Patches angewendet wurden, und alle Dienste neu zu starten, die von der Aktualisierung betroffen waren.

Synchronisieren der Betriebssystemquellen

Wahrscheinlich möchten Sie von Zeit zu Zeit eine Kopie des FreeBSD-Quellcodes mit Ihrem System synchronisieren. Dies ist aus verschiedenen Gründen nützlich. Für einige Ports muss die aktuelle Quelle korrekt erstellt werden. Die Quelle kann auch zum Verfolgen eines neuen Softwarezweigs verwendet werden.

Der FreeBSD-Quellcode wird in einem SVN-Repository verwaltet. Wenn Sie nur die aktuellste Version der Quelle benötigen, ohne den mit der Subversion verbundenen großen Overhead, können Sie ein Hilfsprogramm namens "+ svnup +" verwenden, um die aktuellen Quellen zu synchronisieren. Dies ist viel schneller als die Verwendung von Subversion.

Sie können das Paket + svnup + installieren, indem Sie Folgendes eingeben:

sudo pkg install svnup

Wenn Sie es vorziehen, den Port zu verwenden, können Sie Folgendes eingeben:

cd /usr/ports/net/svnup
sudo make config-recursive install clean

Sobald Sie das Dienstprogramm haben, sollten wir die Konfigurationsdatei leicht anpassen. Öffne es mit + sudo + Privilegien in deinem Texteditor:

sudo vi /usr/local/etc/svnup.conf

Zuerst müssen wir einen Spiegel aus der Liste auswählen. Die Konfigurationsdatei enthält mehrere "+ host = +" - Zeilen, die alle auskommentiert sind. Wählen Sie eines aus, von dem Sie glauben, dass es in Ihrer Nähe ist, und kommentieren Sie es aus:

. . .
[defaults]
work_directory=/var/tmp/svnup
#host=svn.freebsd.org
#host=svn0.us-west.freebsd.org

#host=svn0.eu.freebsd.org

. . .

Als nächstes sollten Sie sicherstellen, dass die Abschnitte der Datei, die jeden SVN-Zweig beschreiben, auf die von Ihnen verwendete Release-Version verweisen. Sie können Ihre Release-Version ermitteln, indem Sie Folgendes über die Befehlszeile eingeben:

freebsd-version
10.1-RELEASE-p2

Dies teilt uns den Zweig des Betriebssystems sowie die System-Patch-Ebene am Ende mit. Der Teil, auf den wir für unsere aktuellen Zwecke achten möchten, ist die Zahl vor dem ersten Gedankenstrich. In diesem Fall wird "+ 10.1 " angegeben. Das ` RELEASE +` bedeutet, dass wir derzeit den Release-Zweig verfolgen, den stabilsten Zweig, der für FreeBSD verfügbar ist.

Stellen Sie in der Datei sicher, dass die Definition für den Parameter "+ branch = " unter " [release] +" auf diese Zahl verweist:

. . .

[release]
branch=base/releng/
target=/usr/src

. . .

Dadurch wird sichergestellt, dass Sie die richtige Quelle herunterladen. Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Da wir nun den Release-Zweig verfolgen, können wir Folgendes eingeben:

sudo svnup release

Dadurch wird die neueste Version des Quelltextbaums nach + / usr / src + heruntergeladen. Sie können es jederzeit aktualisieren, indem Sie diesen Befehl erneut ausführen.

Wenn Sie die Fähigkeit benötigen, Subversion-Befehle auf der Quelle auszuführen, müssen Sie das Subversion-Tool herunterladen. Sie können das Paket installieren, indem Sie Folgendes eingeben:

sudo pkg install subversion

Wenn Sie lieber Ports verwenden, können Sie das Tool erwerben, indem Sie Folgendes eingeben:

cd /usr/ports/devel/subversion
sudo make config-recursive install clean

Die Verwendung des Befehls "+ subversion +" nimmt * erheblich * mehr Zeit in Anspruch. Es wird nicht nur die aktuelle Version jeder Datei im Baum heruntergeladen, sondern der gesamte Verlauf des Projekts.

Wenn Sie die Quelle zuvor mit dem Tool "+ svnup " synchronisiert haben, müssen Sie den Quellenbaum entfernen, bevor Sie die Quelle mit " subversion +" auschecken:

sudo rm -rf /usr/src

Detaillierte Anweisungen zur Verwendung von "+ subversion " werden in diesem Handbuch nicht behandelt. Die allgemeine Idee ist jedoch, einen " checkout +" - Befehl für einen der Zweige auf einem der FreeBSD-Quellenspiegel auszugeben.

Um zum Beispiel die gleiche Quelle zu überprüfen, die wir mit dem Befehl + svnup + oben ausgeführt haben, können Sie Folgendes eingeben:

sudo svn checkout https://svn0.us-east.FreeBSD.org/base/releng/10.1 /usr/src

Beachten Sie, dass die URL für diesen Befehl im Grunde genommen nur eine Kombination der Definitionen "+ host = " und " branch = " ist, die wir in der Konfigurationsdatei " svnup +" gesehen haben.

Aktualisieren des Systemdatensatzes für optionale Software

FreeBSD bietet zwei verschiedene Formate, um zusätzliche Software auf Ihrem Server zu installieren. Das erste ist ein quellbasiertes System mit dem Namen „ports“ und das zweite ist ein Repository vorkompilierter Pakete, die auf den verfügbaren Ports basieren. Für Software, die sich außerhalb des Basisbetriebssystems befindet, werden eine Reihe zusätzlicher Tools für die Verwaltung verwendet.

Das System speichert Informationen zu den Ports, die in einer Verzeichnishierarchie installiert werden können, die sich unter "+ / usr / ports " befindet. Diese Verzeichnisstruktur wird als "Ports Tree" bezeichnet. Bevor wir Ports berühren, sollten wir sicherstellen, dass unser Ports-Baum aktuelle Informationen über unsere verfügbare Software enthält. Wir können dazu den Befehl ` portsnap +` verwenden.

Die Syntax des Befehls "+ portsnap " entspricht in gewisser Weise der des Befehls " freebsd-update ". In DigitalOcean enthält der Quellbaum vorab Informationen zu den verfügbaren Ports, die Sie aktualisieren können, wie im zweiten Befehl ` portsnap +` gezeigt.

Wenn Sie nicht DigitalOcean verwenden, ist Ihr + / usr / ports + - Verzeichnis wahrscheinlich leer, wenn Sie anfangen. Wenn dies der Fall ist, sollten Sie bei der ersten Verwendung von "+ portsnap " " extract on" verwenden:

sudo portsnap fetch extract

Dadurch wird ein vollständiger Ports-Baum abgerufen und in "+ / usr / ports " extrahiert. Dies kann eine Weile dauern und ist nur erforderlich, wenn Sie keine Informationen in " / usr / ports +" haben.

Geben Sie Folgendes ein, um die Informationen unseres Systems zu verfügbaren Ports zu aktualisieren (bei jedem weiteren Start von "+ portsnap +"):

sudo portsnap fetch update

Dieser Vorgang kann einige Zeit in Anspruch nehmen, je nachdem, wie lange Sie den Ports-Baum zuletzt aktualisiert haben. Es muss eine angemessene Anzahl von Dateien für jede verfügbare Software herunterladen, die seit ihrer letzten Ausführung geändert wurde. Dies füllt die Hierarchie "+ / usr / ports +" mit Informationen zu den Ports.

Das "+ pkg +" - Verpackungssystem kann auch einige dieser Informationen nutzen. Es verwaltet jedoch auch eine eigene Datenbank, um die vorgefertigten Binärpakete zu überwachen, die für die Installation verfügbar sind. Um dies zu aktualisieren, können Sie Folgendes eingeben:

sudo pkg update

Dadurch werden die neuesten Paketdatenbankinformationen von den Servern des FreeBSD-Projekts abgerufen. Es ist erwähnenswert, dass für viele "+ pkg " - Operationen ein " pkg update +" automatisch als Teil der Befehlsausführung ausgeführt wird, sodass es nicht immer als eigenständiger Befehl benötigt wird.

Aktualisieren Sie die optionale Software

Bisher haben wir gelernt, wie Aktualisierungen auf das Basisbetriebssystem angewendet werden. Wir haben auch gelernt, wie Sie den Quellcode Ihres Betriebssystems aktualisieren und unsere lokalen Informationen zu verfügbaren Ports und Paketen aktualisieren.

Jetzt können wir diese aktualisierten Softwareinformationen zum Herunterladen und Anwenden von Updates auf unsere optionale Software verwenden. Der Prozess ist unterschiedlich, je nachdem, ob Sie Ports oder Pakete verwenden. Wenn Sie eine Mischung dieser beiden Methoden verwenden, müssen Sie möglicherweise einige Prozesse unter einen Hut bringen.

Herausfinden, welche Software aktualisiert werden kann

Der erste Schritt beim Aktualisieren Ihrer Software besteht darin, herauszufinden, für welche Anwendungen neue Versionen verfügbar sind. Wir können dies auf verschiedene Arten tun.

Suchen nach Updates mit dem Befehl pkg

Wenn Sie Software, die Sie auf Ihrem System installiert haben, mit aktualisierten Informationen zu den neuesten verfügbaren Versionen vergleichen möchten, können Sie den Unterbefehl + version + von + pkg + verwenden. Hier sehen Sie die installierte Version und können optional Informationen zu verfügbaren Versionen anzeigen.

Es ist zu beachten, dass dieser Befehl optionale Software anzeigt, die über * beide * Ports und Pakete installiert wird. Dieser Befehl unterscheidet nicht zwischen den Installationsquellen, sodass alle auf Ihrem System verfügbaren Updates genau angezeigt werden können.

Um festzustellen, ob unsere Software auf dem neuesten Stand ist, geben Sie Folgendes ein:

pkg version -vIL=

Wenn die neueste Indexdatei Verweise auf eine neue Version einer Software enthält (zuvor über den Befehl + portsnap + heruntergeladen), werden in der Ausgabe die Abweichungen angezeigt. Zum Beispiel:

perl5-5.18.4_10                    <   needs updating (index has 5.18.4_11)

Da wir die auf unserem System installierte Software mit der neuesten Indexdatei in unserem Ports-Baum vergleichen, überprüfen Sie dies manchmal zu einem Zeitpunkt, an dem es Aktualisierungen im Ports-Baum gibt, die noch nicht in das Paket eingedrungen sind. Dies liegt daran, dass die Pakete aus dem Ports-Tree erstellt werden und häufig etwas zurückbleiben müssen.

Aufgrund dieser Möglichkeit zeigt der obige Befehl möglicherweise Aktualisierungen an, die noch nicht als Pakete verfügbar sind. Um diese Instanzen zu erkennen, können Sie die Ausgabe des obigen Befehls mit der Ausgabe dieses Befehls vergleichen:

pkg version -vRL=

Dieser Befehl sucht in der Datenbank des "+ pkg " - Systems nach neuen Versionen der verfügbaren Pakete (anstelle der Indexdatei im Ports-Baum). Wenn die beiden Befehle dieselbe Ausgabe erzeugen, können Sie alle Pakete mit dem System ` pkg +` aktualisieren.

Wenn im ersten Befehl Aktualisierungen vorhanden sind, die im zweiten Befehl nicht angezeigt werden, bedeutet dies, dass die Änderungen noch nicht gepackt wurden. Wenn Sie Pakete für die zu aktualisierende Software verwenden, können Sie entweder warten, bis das Paket aufholt, oder Sie können zum Port wechseln, um jetzt das neueste Update zu erhalten.

Mit Portmaster nach Updates suchen

Wenn Sie sich häufiger dafür entscheiden, Software aus dem Quellcode mit dem Ports-System zu erstellen, ist der Befehl "+ portmaster +" eine attraktive Alternative. Dieses Tool ist nützlich für alle portbasierten Softwareverwaltungsaufgaben unter FreeBSD, von der Suche nach und dem Anwenden von Updates bis hin zum Installieren oder Entfernen von Ports und all ihren Abhängigkeiten.

Um den Befehl + portmaster + zu erhalten, können Sie entweder das Paket installieren oder es aus dem Ports-System kompilieren.

Geben Sie zum Installieren des Pakets Folgendes ein:

sudo pkg install portmaster

Wenn Sie das Tool lieber aus dem Quellcode kompilieren möchten, wechseln Sie in das Paketverzeichnis im Ports-Baum und installieren Sie es mit make:

cd /usr/ports/ports-mgmt/portmaster
sudo make install clean

Nach der Installation wird möglicherweise eine Meldung angezeigt, in der Sie aufgefordert werden, Ihrer Datei "+ / etc / make.conf +" einige Informationen hinzuzufügen und Ihre Paketdatenbank zu konvertieren. Dies ist nicht erforderlich, wenn Sie mit FreeBSD 10.1 oder neuer beginnen.

Sobald Sie + portmaster + installiert haben, können Sie nach Updates suchen, indem Sie Folgendes eingeben:

portmaster -L

Dadurch wird die gesamte auf Ihrem System installierte Software überprüft und mit der Indexdatei verglichen, um festzustellen, ob neue Versionen verfügbar sind. Dies funktioniert genauso wie der Befehl "+ pkg +", da Updates angezeigt werden, unabhängig davon, ob die Software über Ports oder ein Paket installiert wurde. Die Software wird danach kategorisiert, wie sie im Hinblick auf Abhängigkeiten mit anderer Software verbunden ist.

Jede Software, für die Updates verfügbar sind, hat eine eingerückte Zeile wie diese:

===>>> perl5-5.18.4_10
       ===>>> New version available: perl5-5.18.4_11

Im unteren Bereich wird in einer Zusammenfassungszeile die Anzahl der Anwendungen beschrieben, die aktualisiert werden können:

===>>> 42 total installed ports
       ===>>> 1 has a new version available

Da + portmaster + hauptsächlich mit Ports arbeitet, sollten alle erkannten Updates für die Anwendung verfügbar sein.

Nach Software-Schwachstellen suchen

FreeBSD unterhält eine Schwachstellendatenbank, die regelmäßig überprüft werden sollte, um sicherzustellen, dass die auf Ihrem System installierte Software keine Schwachstellen enthält.

Obwohl es manchmal von Vorteil ist, die gesamte Software auf Ihrem System zu aktualisieren, sollte Software mit bekannten Schwachstellen zum frühestmöglichen Zeitpunkt aktualisiert werden. Geben Sie Folgendes ein, um mit der optionalen Software, die Sie auf Ihrem System installiert haben, nach bekannten Sicherheitslücken zu suchen:

pkg audit -F

Dadurch wird die neueste Schwachstellendatenbank von den FreeBSD-Servern heruntergeladen und mit der auf Ihrem System installierten Software verglichen. Wenn bei Ihrer installierten Software Sicherheitslücken bestehen, werden Sie darauf hingewiesen.

Überprüfen der UPDATING-Hinweise

Bevor Sie eine Software aktualisieren, müssen Sie * unbedingt * prüfen, ob durch die Aktualisierungen möglicherweise Brüche verursacht werden. Die FreeBSD-Port-Betreuer müssen manchmal Änderungen vornehmen, die ohne Benutzereingriff nicht sauber angewendet werden können. Wenn Sie diese Situationen nicht überprüfen, kann es vorkommen, dass die Software nicht funktioniert und das System möglicherweise defekt ist.

Im Verzeichnis "+ / usr / ports " enthält eine Datei mit dem Namen " UPDATING +" Informationen zu Softwareupdates, die zu unerwarteten Ergebnissen führen können. Geben Sie zum Lesen dieser Datei Folgendes ein:

less /usr/ports/UPDATING

Diese einfache Textdatei enthält Informationen zu Updates, die zusätzliche Aufmerksamkeit erfordern, unabhängig davon, ob die Software installiert ist oder nicht. Jeder Eintrag wird mit dem Datum markiert, an dem das Update, auf das verwiesen wird, in die Ports-Struktur übernommen wurde. Zu beachten ist auch, dass die Datei Aktualisierungsinformationen enthält, die bis ins Jahr 2008 zurückreichen. Die Datei sieht ungefähr so ​​aus:

This file documents some of the problems you may encounter when upgrading
your ports.  We try our best to minimize these disruptions, but sometimes
they are unavoidable.

You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.

20141208:
 AFFECTS: users of ports-mgmt/poudriere, ports-mgmt/poudriere-devel
 AUTHOR: [email protected]

 8.4 jails created with Poudriere 3.1, or poudriere-devel-3.0.99.20141117
 should be recreated with 'jail -d' and 'jail -c'. This fixes pkg(8)
 crashes.

20141205:
 AFFECTS: users of polish/kadu
 AUTHOR: [email protected]

 Before running kadu 1.x for the first time upstream developers
 advise to backup your ~/.kadu directory.

. . .

Sie sollten diese Datei auf Aktualisierungsprobleme überprüfen, die seit der letzten Aktualisierung hinzugefügt wurden. Da diese Datei eine große Menge an Informationen enthält, die für das von Ihnen in Betracht gezogene Update nicht relevant sind, weil es sich entweder um nicht auf Ihrem System installierte Software handelt oder um ein Problem aus einem früheren Update, müssen Sie in der Regel nur das überprüfen Einträge näher am oberen Rand der Datei.

Wenn Sie vor dem Upgrade weitere Schritte ausführen müssen, führen Sie diese jetzt aus.

Aktualisieren von Paketen und Ports

Nachdem Sie die in der Datei "+ UPDATING +" empfohlenen Maßnahmen ergriffen haben, sollten Sie nun bereit sein, Ihre Software zu aktualisieren. Welche Methoden wir verwenden, hängt davon ab, ob Sie vorkompilierte Pakete oder quellbasierte Ports für Ihre Software verwenden möchten.

Wenn Sie hauptsächlich Pakete verwenden und dieses Format für Ihre Upgrades verwenden möchten, können Sie den Befehl + pkg upgrade + verwenden:

sudo pkg upgrade

Dies sollte ein Upgrade aller Pakete ermöglichen, für die Updates verfügbar sind.

Bei dieser Methode ist zu beachten, dass beim Mischen von Paketen und Ports möglicherweise durch ein Paketupdate versucht wird, die mit dem Ports-System erstellte Software neu zu installieren. Dies kann passieren, wenn Sie die Anwendung mit verschiedenen Optionen, ausgewählten Anpassungen, die unterschiedliche Abhängigkeiten erforderten, usw. kompiliert haben. von der verpackten Version.

Dieses Szenario sieht folgendermaßen aus:

freebsd@wowie:~ % sudo pkg upgrade
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
Updating database digests format: 100%
Checking for upgrades (2 candidates): 100%
Processing candidates (2 candidates): 100%
The following 1 packages will be affected (of 0 checked):

Installed packages to be REINSTALLED:
       portmaster-3.17.7 (options changed)

The operation will free 1 KB.
40 KB to be downloaded.

Proceed with this action? [y/N]:

In diesem Fall wurde der Befehl "+ portmaster " über das Ports-System installiert, aber " pkg +" versucht, ihn mit der ihm bekannten Version in Einklang zu bringen. Wenn Sie Ihre angepasste Portversion beibehalten möchten, können Sie bei diesem Vorgang die Taste "N" drücken und das Paket dann sperren, indem Sie Folgendes eingeben:

sudo pkg lock portmaster

Auf diese Weise wird ein Upgrade der Software verhindert, sodass Sie den Rest der Software mit dem Befehl "+ pkg upgrade +" aktualisieren können. Wenn Sie die gesperrte Software aktualisieren möchten, können Sie sie vorübergehend entsperren, indem Sie Folgendes eingeben:

sudo pkg unlock portmaster

Wenn Sie hauptsächlich "+ portmaster +" und "ports" zum Verwalten Ihrer Pakete verwenden, können Sie Ihre gesamte optional installierte Software aktualisieren, indem Sie Folgendes eingeben:

sudo portmaster -a

Sie werden aufgefordert, Optionen für die zu aktualisierenden Ports auszuwählen. Wenn Sie nicht wissen, was eine der Optionen bedeutet, oder wenn Sie keinen bestimmten Grund für eine Auswahl haben, können Sie die Standardeinstellungen verwenden.

Wenn Sie + portmaster + verwenden, bevor Sie Ihre Pakete aktualisieren, besteht aufgrund der Verzögerung zwischen Port- und Paketaktualisierungen die Möglichkeit, dass einige Software, die zuvor mithilfe eines Pakets installiert wurde, jetzt mithilfe von Ports aktualisiert wird. Wenn dies für Sie kein Problem ist, können Sie diese Methode verwenden. Wenn Sie lieber bei Paketen für Ihre Software bleiben möchten, ist es wahrscheinlich am besten zu warten, bis das Update erneut gepackt wird.

Wenn Sie Ihre Pakete detailliert aktualisieren möchten, können Sie auch ein bestimmtes Paket aktualisieren, indem Sie dessen Kategorie und Namen in der Port-Struktur angeben:

sudo portmaster /

Um beispielsweise den + vim-lite + - Port zu aktualisieren, können Sie den folgenden Befehl eingeben:

sudo portmaster editors/vim-lite

Fazit

Wie Sie sehen, müssen einige verschiedene Prozesse ablaufen, um Ihre FreeBSD-Server zu warten.

Einige dieser Vorgänge, wie das Aktualisieren der Quelle des Basissystems, müssen nicht häufig ausgeführt werden, während andere Aufgaben, wie das Aktualisieren des Basisbetriebssystems und das Aktualisieren von Software mit bekannten Schwachstellen, häufig ausgeführt werden sollten. Die Wartung Ihres Systems mag zunächst kompliziert erscheinen, wird jedoch relativ unkompliziert, wenn Sie sich mit den von Ihnen verwendeten Tools vertraut machen.

Weitere Informationen zum Arbeiten mit Paketen finden Sie unter this link. . Weitere Informationen zum Arbeiten mit Ports finden Sie unter this guide. .