Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Verwalten von Konfigurationen

Die Show | Vergleichen | display xml Befehlsausgabe

Der Filter vergleicht die Kandidatenkonfiguration mit der aktuellen festgeschriebenen Konfiguration und zeigt die Unterschiede zwischen den beiden Konfigurationen in XML an.compare | display xml Um Konfigurationen zu vergleichen, geben Sie nach dem Pipe-Symbol ( | ) entweder im Betriebs- oder im Konfigurationsmodus ein .compare | display xml

Beispiel im Betriebsmodus:

Beispiel im Konfigurationsmodus:

Sie können eine bestimmte Konfigurationshierarchie unmittelbar vor dem Filter eingeben, z.B. . .compareshow configuration system syslog | compare | display xml Im Konfigurationsmodus können Sie zu einer Hierarchie navigieren, auf die der Befehl angewendet wird.

Die Unterschiede zum Vergleichsfilter werden in XML ausgegeben. Das Tag startet die Ausgabe.configuration Der Kontext für Änderungen wird mit Hierarchienamen-Tags relativ zum Stamm des Vergleichs festgelegt. Bei Elementänderungen wird in dem Tag, an dem eine Änderung erfolgt, ein Attribut ausgegeben.operation Dieses Attribut hat den Wert , oder .createdeletemerge Bei Metadatenänderungen wird der Metadatenname angegeben. Wenn z.B. eine Anweisung als inaktiv markiert ist, werden das Attribut und der Wert ausgegeben.inactive="inactive" Der nc-Namespace wird bei Bedarf verwendet, um anzugeben, dass sich ein Attribut im NETCONF-Namespace und nicht im Betriebssystemnamespace befindet.

HINWEIS:

Ab Junos OS Version 16.2R2 lässt der Befehl das Tag in der XML-Ausgabe weg, wenn der Vergleich keine Unterschiede zurückgibt oder wenn der Vergleich nur Unterschiede für nicht native Konfigurationsdaten zurückgibt, z. B. Konfigurationsdaten, die einem OpenConfig-Datenmodell zugeordnet sind.show | compare | display xml<configuration>

In den folgenden Abschnitten wird der XML-Code erläutert, der für bestimmte Typen von Konfigurationsänderungen generiert wird. Zum Vergleich werden die entsprechenden Textänderungen angezeigt.

Hinzufügen einer Anweisung (Erstellungsvorgang)

Das folgende Beispiel zeigt das Hinzufügen der IPv4-Adresse 2.2.2.2 zu Einheit 1.

Die Tags through liefern den Kontext für die Addition.name Das Attribut gibt an, dass eine Anweisung erstellt wurde und durch die Konfiguration innerhalb des Tags definiert wird.operation="create"unitunit

Löschen einer Anweisung (Löschvorgang)

Das folgende Beispiel zeigt das Löschen einer einfachen Anweisung in der Konfigurationshierarchie. Die Tags through liefern den Kontext für den Löschvorgang.system Das Attribut gibt an, dass die Anweisung gelöscht wurde.operation="delete"services Die Konfiguration, die auf die Anweisung folgt, wurde gelöscht, wird jedoch nicht ausgegeben.services

Das folgende Beispiel zeigt das Löschen von Einheit 1 aus der Schnittstelle.ge-0/0/0 Die Konfiguration, die auf die Anweisung folgt, wurde gelöscht, wird jedoch nicht ausgegeben.unit

Das folgende Beispiel zeigt das Löschen der Konfiguration.apply-groups Die Gruppen, die gelöscht werden, werden in der Ausgabe nicht angezeigt.

Ändern einer Anweisung (Löschen und Erstellen von Operationen)

Das folgende Beispiel zeigt eine Änderung in einer Anweisung in der Hierarchie. Die Tags through geben den Kontext für die Änderung an.system Das Attribut gibt an, dass die Anweisung gelöscht wurde.operation="delete"host-name Die Konfiguration, die auf die Anweisung folgt, wurde gelöscht, dies wird jedoch nicht in der Ausgabe angezeigt.host-name Das Attribut gibt an, dass eine Anweisung erstellt wurde und durch die Konfiguration innerhalb des Tags definiert wird.operation="create"host-namehost-name

Metadaten ändern (inaktives Attribut und Operation)

Das folgende Beispiel zeigt die Inaktivierung einer Anweisung in der Hierarchie. Die Tags through geben den Kontext für die Änderung an.system Das Attribut gibt an, dass die Anweisung deaktiviert wurde.inactive="inactive"syslog

Das folgende Beispiel zeigt das Hinzufügen einer inactive-Anweisung .syslog Das Attribut gibt an, dass die Anweisung erstellt wurde und durch die Konfiguration innerhalb des Tags definiert wird.operation="create"syslogsyslog Das Attribut gibt an, dass die Anweisung deaktiviert wurde.inactive="inactive"syslog

Hinzufügen einer Anmerkung (Kommentieren Sie Tag und erstellen Sie Vorgang)

Das folgende Beispiel zeigt das Hinzufügen eines Kommentars zu einer Anweisung. Die Tags through stellen den Kontext für die Annotation bereit.syslog Das Attribut für das Tag gibt an, dass der Hierarchie ein Kommentar hinzugefügt wurde.operation="create"junos:comment[edit system syslog]

Das folgende Beispiel zeigt das Hinzufügen eines Kommentars zu einer Anweisung. Die Tags through stellen den Kontext für die Annotation bereit.syslog Das Attribut für das Tag gibt an, dass der Hierarchie für die Anweisungsausgabe innerhalb des Tags ein Kommentar hinzugefügt wurde.operation="create"junos:comment[edit system syslog]syslog

Ändern einer Anmerkung (Kommentieren von Tags und Löschen und Erstellen von Operationen)

Das folgende Beispiel zeigt die Änderung eines Kommentars für eine Anweisung. Die Tags through stellen den Kontext für die Annotation bereit.system

  • Das Attribut für das Tag gibt an, dass ein Kommentar aus der Hierarchie bei der Anweisung gelöscht wurde.operation="delete"junos:comment[edit system]syslog

  • Das Attribut für das Tag gibt an, dass der Hierarchie für die Anweisung ein Kommentar hinzugefügt wurde.operation="create"junos:comment[edit system]syslog

Hinzufügen einer Anweisung in einem Container (Vorgang erstellen und Attribute einfügen und eingeben)

Das folgende Beispiel zeigt das Hinzufügen einer Anweisung in der Hierarchie .file[edit system syslog] Die Tags through liefern den Kontext für die Addition.syslog

  • Das Attribut für das Tag gibt an, dass eine Anweisung hinzugefügt wurde.operation="create"filefile

  • Das Attribut gibt an, dass die Datei nach der durch das Attribut angegebenen Position hinzugefügt wurde.yang:insert="after"yang:key="[name='file-1']"

  • Der Wert file-1 stellt die Position innerhalb der vorhandenen Anweisungen dar, wobei eine die erste Datei ist.file

  • In diesem Beispiel wurde die new-Anweisung nach der ersten Datei hinzugefügt.file

Ändern der Reihenfolge innerhalb eines Containers (Zusammenführungsvorgang und Einfügen und Schlüsselattribute)

Das folgende Beispiel zeigt die Änderung der Reihenfolge von Anweisungen in der Hierarchie .file[edit system syslog] Die Tags through geben den Kontext für die Änderung an.syslog

  • Das Attribut für das Tag gibt an, dass eine vorhandene Anweisung verschoben wurde.operation="merge"filefile

  • Das Attribut gibt an, dass die Datei nach der Datei an die durch das Attribut angegebene Position verschoben wurde.yang:insert="after"yang:key="[name='file-1']"

  • Der Wert file-1 stellt eine Position innerhalb der vorhandenen Anweisungen dar, wobei eine die erste Datei ist.file

  • Der Wert am Tag, file-3, stellt eine Position innerhalb der vorhandenen file-Anweisungen dar.name

  • In diesem Beispiel wurde die Anweisung an dritter Stelle nach der ersten Datei verschoben.file

Zurückkehren zur Konfiguration mit dem letzten Commit

Um zur zuletzt festgeschriebenen Konfiguration zurückzukehren und sie in den Konfigurationsmodus zu laden, ohne sie zu aktivieren, verwenden Sie den Befehl configuration mode:rollback

Um die Konfiguration zu aktivieren, zu der Sie ein Rollback durchgeführt haben, verwenden Sie den folgenden Befehl:commit

Zurückkehren zu einer zuvor festgeschriebenen Konfiguration

In diesem Thema wird erläutert, wie Sie zu einer früheren Konfiguration als der zuletzt festgeschriebenen Konfiguration zurückkehren können.

Beispiel für die Rückkehr zu einer vorherigen Konfiguration

Um zu einer vorherigen Konfiguration zurückzukehren, geben Sie die Konfigurationsnummer 0 bis 49 in den Befehl ein.rollback Die zuletzt gespeicherte Konfiguration hat die Nummer 0 (die Standardkonfiguration, zu der das System zurückkehrt), und die älteste gespeicherte Konfiguration ist die Nummer 49.

Beispiel:

Beispiel für die Anzeige früherer Konfigurationen

Um vorherige Konfigurationen anzuzeigen, verwenden Sie den Befehl.rollback ? Sie geben die Rollback-Nummer, das Datum, die Uhrzeit, den Namen des Benutzers, der die Änderungen übernommen hat, und die Methode des Commits an.

Beispiel:

Informationen zum Vergleichen von Konfigurationsversionen

Wenn Sie Änderungen an der Konfiguration vorgenommen haben, können Sie nur im Konfigurationsmodus die Kandidatenkonfiguration mit einer früheren Version vergleichen. Um Versionen zu vergleichen, verwenden Sie den Befehl, um die Konfigurationen anzuzeigen.compare Der Befehl vergleicht die Kandidatenkonfiguration entweder mit der aktuellen festgeschriebenen Konfiguration oder mit einer Konfigurationsdatei.compare Dieser Befehl zeigt auch die Unterschiede zwischen den beiden Konfigurationen an.

Um Konfigurationen zu vergleichen, geben Sie den Befehl nach der Pipe an:compare

  • filename ist der vollständige Pfad zu einer Konfigurationsdatei. Die Datei muss das richtige Format haben: eine Hierarchie von Anweisungen.

  • n ist der Index in der Liste der zuvor festgeschriebenen Konfigurationen. Die zuletzt gespeicherte Konfiguration ist die Nummer 0, und die älteste gespeicherte Konfiguration ist die Nummer 49. Wenn Sie keine Argumente angeben, vergleicht das System die Kandidatenkonfiguration mit der aktiven Konfigurationsdatei ()./config/juniper.conf

Die Vergleichsausgabe enthält die folgenden Symbole im Präfix für Anweisungen, die sind:

  • Nur in der Kandidatenkonfiguration: ein Pluszeichen (+).

  • Nur in der Vergleichsdatei: ein Minuszeichen (-).

  • Unverändert; ein einzelnes Leerzeichen ( ).

Das folgende Beispiel zeigt verschiedene Änderungen, gefolgt von einem Vergleich der Kandidatenkonfiguration mit der aktiven Konfiguration. Das Beispiel zeigt nur die Änderungen, die auf der Hierarchieebene vorgenommen wurden:[edit protocols bgp]

Verwenden von Konfigurationsrevisionsbezeichnern

Jedem Commit ist ein Konfigurationsrevisionsbezeichner (Configuration Revision Identifier, CRI) zugeordnet. Der CRI ist eine eindeutige Zeichenfolge, die sich im Gegensatz zum Rollback-Index nicht ändert, wenn neue Konfigurationen festgeschrieben werden.

Da der CRI für eine bestimmte Konfiguration, für die ein Commit ausgeführt wurde, fest ist, hat er Vorteile gegenüber der Verwendung eines Rollbackindex. Netzwerkmanagementsysteme (NMS) können den CRI für einen bestimmten Commit zwischenspeichern. Zu einem späteren Zeitpunkt kann das NMS den zwischengespeicherten Wert mit dem CRI der aktuellen Konfiguration auf dem Netzwerkgerät vergleichen, um zu erkennen, ob andere Systeme Out-of-Band-Konfigurationsänderungen am Gerät vorgenommen haben, z. B. während eines Wartungsfensters.

Darüber hinaus können Sie ab Junos OS und Junos OS Evolved Version 20.4R1 die CRI verwenden, die einer festgeschriebenen Konfiguration zugeordnet ist, um:

  • Zeigen Sie die Konfiguration an.

  • Vergleichen Sie zwei Konfigurationen.

  • Kehren Sie zur Konfiguration zurück.

  • Rufen Sie den aktuellen Rollback-Index ab, der dieser Konfiguration zugeordnet ist.

Verwenden Sie den Befehl, um die CRI anzuzeigen, die jedem Commit zugeordnet ist.show system commit include-configuration-revision Dadurch werden der Commit-Verlauf des Systems und der CRI für jeden Commit angezeigt.

Alternativ können Sie den CRI für eine bestimmte Rollback-Nummer anzeigen, indem Sie den Befehl eingeben.show system rollback number configuration-revision

Sobald Sie die CRI-Zeichenfolge für einen bestimmten Commit haben, können Sie diese Konfiguration mit dem Befehl anzeigen.show system configuration revision cri-string

Sie können 2 Konfigurationen vergleichen, indem Sie die Option mit beiden CRIs verwenden.compare

Sie können auch die Rollback-Nummer für einen bestimmten CRI anzeigen, indem Sie die Option hinzufügen.rollback-number cri-string

Darüber hinaus können Sie im Konfigurationsmodus ein Rollback zu einer Konfiguration durchführen, indem Sie den CRI anstelle des Rollback-Index angeben.

Speichern einer Konfiguration in einer Datei

Wenn Sie eine Gerätekonfiguration in einer Datei speichern, können Sie sie mit einem beliebigen Nur-Text-Editor Ihrer Wahl bearbeiten. Sie können Ihre aktuelle Konfiguration in einer ASCII-Datei speichern, in der die Konfiguration in ihrer aktuellen Form gespeichert wird, einschließlich aller nicht festgeschriebenen Änderungen. Wenn mehr als ein Benutzer die Konfiguration ändert, werden alle von allen Benutzern vorgenommenen Änderungen gespeichert.

Um Änderungen an der Softwarekonfiguration in einer ASCII-Datei zu speichern, verwenden Sie den Befehl configuration mode:save

Der Inhalt der aktuellen Ebene der Anweisungshierarchie (und darunter) wird zusammen mit der Anweisungshierarchie, die ihn enthält, gespeichert. Auf diese Weise kann ein Abschnitt der Konfiguration gespeichert werden, während die Anweisungshierarchie vollständig angegeben wird.

Standardmäßig wird die Konfiguration in einer Datei in Ihrem Home-Verzeichnis gespeichert, das sich auf dem Flash-Laufwerk befindet.

Wenn Sie diesen Befehl von einer beliebigen Stelle in der Hierarchie (mit Ausnahme der obersten Ebene) ausführen, wird automatisch ein Tag am Anfang der Datei eingefügt.replace Sie können das Tag verwenden, um zu steuern, wie eine Konfiguration aus einer Datei geladen wird.replace

Beispiel:

Informationen zum Komprimieren der aktuellen Konfigurationsdatei

Standardmäßig ist die aktuelle Betriebskonfigurationsdatei komprimiert und wird in der Datei im Dateisystem gespeichert.juniper.conf.gz/config Die Betriebskonfigurationsdatei wird zusammen mit den letzten drei festgeschriebenen Versionen der Konfiguration gespeichert. Wenn Sie über große Netzwerke verfügen, überschreitet die aktuelle Konfigurationsdatei möglicherweise den verfügbaren Speicherplatz im Dateisystem./config Durch das Komprimieren der aktuellen Konfigurationsdatei passt die Datei in das Dateisystem, wodurch die Größe der Datei in der Regel um 90 Prozent reduziert wird. Möglicherweise möchten Sie Ihre aktuellen Betriebskonfigurationsdateien komprimieren, wenn sie eine Größe von 3 Megabyte (MB) erreichen.

Wenn Sie die aktuelle Konfigurationsdatei komprimieren, ändern sich die Namen der Konfigurationsdateien. Um die Größe der Dateien im Dateisystem zu bestimmen, geben Sie den Befehl aus./configfile list /config detail

HINWEIS:

Es wird empfohlen, die Konfigurationsdateien zu komprimieren (dies ist die Standardeinstellung), um den benötigten Speicherplatz zu minimieren.

  • Wenn Sie die aktuelle Konfigurationsdatei komprimieren möchten, fügen Sie die Anweisung auf Hierarchieebene ein:compress-configuration-files[edit system]

  • Führen Sie einen Commit für die aktuelle Konfigurationsdatei durch, um die Anweisung einzuschließen.compression-configuration-files Bestätigen Sie die Konfiguration erneut, um die aktuelle Konfigurationsdatei zu komprimieren:

  • Wenn Sie die aktuelle Betriebskonfigurationsdatei nicht komprimieren möchten, fügen Sie die Anweisung auf Hierarchieebene ein:no-compress-configuration-files[edit system]

  • Führen Sie einen Commit für die aktuelle Konfigurationsdatei durch, um die Anweisung einzuschließen.no-compress-configuration-files Bestätigen Sie die Konfiguration erneut, um die aktuelle Konfigurationsdatei zu dekomprimieren:

Geben Sie Systemspeicherplatz frei

Problem

Beschreibung

Der Speicherplatz der Systemdatei auf dem Gerät ist voll. Ein Neustart des Switches löst das Problem nicht.

Die folgende Fehlermeldung wird während eines typischen Vorgangs auf dem Gerät angezeigt, nachdem der Dateispeicherplatz voll ist:

Lösung

Bereinigen Sie den Dateispeicher auf dem Gerät, indem Sie Systemdateien löschen.

  1. Geben Sie eine Anforderung zum Bereinigen (Löschen) von Systemdateien aus.

    Die Liste der zu löschenden Dateien wird angezeigt.

  2. Wählen Sie diese Option aus , um die Dateien zu löschen.yes

  3. Starten Sie das Gerät neu.

Bewährte Verfahren: Best Practice

Wir empfehlen Ihnen, regelmäßig eine Anfrage zur Bereinigung des Systemdateispeichers zu stellen. Durch die Bereinigung des Speicherplatzes in der Systemdatei wird die Geräteleistung optimiert.

Bereinigen von Dateien mit der CLI

Sie können den CLI-Befehl verwenden, um Protokolldateien zu rotieren und unnötige Dateien auf dem Gerät zu löschen.request system storage cleanup Wenn der Speicherplatz knapp wird, identifiziert das Dateibereinigungsverfahren schnell Dateien, die Sie löschen können.

Bei der Dateibereinigung werden die folgenden Aufgaben ausgeführt:

  • Rotiert Protokolldateien: Archiviert alle Informationen in den aktuellen Protokolldateien, löscht alte Archive und erstellt neue Protokolldateien.

  • Löscht Protokolldateien in —Löscht alle Dateien, in die derzeit nicht geschrieben wird./var/log

  • Löscht temporäre Dateien in —Löscht alle Dateien, auf die nicht innerhalb von zwei Tagen zugegriffen wurde./var/tmp

  • Löscht alle Absturzdateien in —Löscht alle Core-Dateien, die das Gerät während eines Fehlers geschrieben hat./var/crash

  • Löscht alle Software-Images ( Dateien) in —Löscht alle Software-Images, die während der Softwareaktualisierung in dieses Verzeichnis kopiert wurden.*.tgz/var/sw/pkg

So rotieren Sie Protokolldateien und löschen unnötige Dateien mit der CLI:

  1. Geben Sie den Betriebsmodus in der CLI ein.
  2. Rotieren Sie Protokolldateien, und identifizieren Sie die Dateien, die Sie sicher löschen können.

    Das Gerät rotiert Protokolldateien und zeigt die Dateien an, die Sie löschen können.

  3. Geben Sie an der Eingabeaufforderung ein , um die Dateien zu löschen.yes
HINWEIS:

Sie können den Befehl ausführen, um die Liste der Dateien zu überprüfen, die Sie sicher löschen können.request system storage cleanup dry-run Mit der Probelaufaktion können Sie die Liste überprüfen, bevor Sie den Befehl zum Löschen der Dateien ausführen.request system storage cleanup

HINWEIS:

Bei Firewalls der SRX-Serie wird die Hierarchie in einer separaten Partition (anstelle der Root-Partition) gehostet./var Wenn die Installation des Betriebssystems aufgrund von unzureichendem Speicherplatz fehlschlägt:

  • Verwenden Sie den Befehl, um temporäre Dateien zu löschen.request system storage cleanup

  • Löschen Sie alle vom Benutzer erstellten Dateien sowohl in der Stammpartition als auch in der Hierarchie./var

Tabellarischer Änderungsverlauf

Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie Feature Explorer, um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.

Release
Beschreibung
16.2R2
Ab Junos OS Version 16.2R2 lässt der Befehl das Tag in der XML-Ausgabe weg, wenn der Vergleich keine Unterschiede zurückgibt oder wenn der Vergleich nur Unterschiede für nicht native Konfigurationsdaten zurückgibt, z. B. Konfigurationsdaten, die einem OpenConfig-Datenmodell zugeordnet sind.show | compare | display xml<configuration>