5 1 0: Verwalten von Befehlen
Übersicht
Befehle in SEP sesam ermöglichen es Ihnen, bestimmte Funktionen auf einem SEP sesam Client auszuführen. Sie können Befehlsaufträge erstellen, die verwendet werden können, um verschiedene Aktionen in der SEP sesam Umgebung auszuführen oder zu automatisieren.
Voraussetzungen
- Ein Benutzer muss berechtigt sein, die Befehle auf einem bestimmten Client auszuführen.
- Standardmäßig können nur Befehle ausgeführt werden, die im Systemverzeichnis unter
<SESAM_ROOT>/bin/sesam
eingegeben werden. Wenn Sie das Starten von Befehlen in anderen Verzeichnissen erlauben wollen, lesen Sie den Abschnitt Setzen der Berechtigung zum Ausführen von Befehlen.
Wie es funktioniert
Um verschiedene Befehle in der SEP sesam Umgebung auszuführen, müssen Sie zunächst eine Befehlsauftrag erstellen. Hauptbestandteile einer Befehlsauftrag sind der Befehl und die zusätzlichen Parameter. Ein Befehlstermin wird dann verwendet, um einen definierten Befehl auszuführen, entweder als einmaliger Termin oder als geplanter Termin. Ein Befehlstermin ergänzt die Befehlsauftrag. Eine Befehlsauftrag kann nur die grundlegenden Argumente enthalten, und der Befehlstermin kann die zusätzlichen Optionen zur Spezialisierung des Befehls angeben.
Sie möchten beispielsweise einen Befehl erstellen, um die Festplattennutzung eines Speicherorts zu ermitteln. Die Befehlssyntax lautet wie folgt:
sm_client du -m d <path>
Sie können die folgende Befehlsauftrag erstellen, um die Festplattennutzung von Laufwerk C: zu überprüfen
sm_client du -m d C:
Dann können Sie ein Befehlstermin erstellen, der diesen Befehl entweder einmalig oder in regelmäßigen Abständen ausführt.
Wenn Sie die Festplattennutzung von mehr als einem Laufwerk überprüfen möchten, können Sie die folgende grundlegende Befehlsauftrag erstellen:
sm_client du -m d
Anschließend können Sie Befehlstermine für alle zu prüfenden Laufwerke erstellen, indem Sie den Befehl wiederverwenden und zusätzliche Parameter angeben. Sie können einen Befehlstermin für Laufwerk C: und einen weiteres für Laufwerk D: haben, wobei Sie C: in den zusätzlichen Parametern für den ersten Befehlstermin und D: in den zusätzlichen Parametern für den zweiten Befehlstermin hinzufügen.
Die Befehlsauftrag kann den Benutzer, unter dem der Befehl ausgeführt werden soll, und den Client, auf dem der Befehl ausgeführt werden soll, enthalten. Wird der Benutzer und der Client sowohl in der Befehlsauftrag als auch im Befehlstermin angegeben, haben die Einstellungen im Befehlsauftrag Vorrang und überschreiben die Einstellungen in der Befehlstermin.
In der Befehlsauftrag kann ein Abbruchbefehl angegeben werden. Dieser Befehl wird ausgeführt, wenn der ursprüngliche Befehl abgebrochen wird. Mit dem Abbruchbefehl können Sie einen Befehl angeben, der die unterbrochene Ausführung eines Befehls ordnungsgemäß beenden kann. Sie können zum Beispiel ein entsprechendes RMAN-Skript erstellen und es als Abbruchbefehl festlegen, um den laufenden RMAN-Prozess zu beenden, wenn das ursprüngliche Oracle RMAN-Kommando abgebrochen wird.
Darüber hinaus können Sie in Abbruchbefehlen Platzhalter verwenden $PID, $SID und $CMD (in Shell-Skripten können Sie auch {PID}, {SID}, und {CMD} verwenden). Sie werden durch die Prozess-ID, die Sitzungs-ID oder die Befehlsparameter des ursprünglichen Befehls ersetzt. Beachten Sie, dass der Platzhalter $SID mehrere Sitzungs-IDs enthalten kann, getrennt durch ein Komma und ohne Leerzeichen dazwischen.
Ein Beispiel für einen Abbruchbefehl:
sbc -k -l 2 -P $PID
wobei $PID durch die Prozess-ID ersetzt wird.
Erstellen eines Befehls
Um einen Befehl zu erstellen und auszuführen, sollte zunächst eine Befehlsauftrag und dann ein Befehlstermin erstellt werden. Der Befehlstermin kann sofort gestartet oder für eine automatische oder periodische Ausführung geplant werden.
Eine Anleitung zum Erstellen und Planen eines Befehls finden Sie unter Erstellen eines Befehlstermins.
Verwalten von Befehlen
Sofortstart
Um die geplante Startzeit für einen Termin außer Kraft zu setzen oder um den Befehl oder den Befehlstermin zu einer benutzerdefinierten Zeit auszuführen, können Sie die Option Sofortstart verwenden.
Klicken Sie in Auswahl -> Aufträge -> Befehle mit der rechten Maustaste auf einen Befehl oder einen Befehlstermin, den Sie auslösen möchten, und klicken Sie dann auf Sofortstart. Das Verfahren ist für Befehle und Befehlstermine etwas anders.
- Auslösen eines Befehlstermins
- Wenn Sie den Befehlstermin auslösen, können Sie die Priorität für den Termin und die Startzeit auswählen. Sie können den Befehlstermin sofort starten oder ein benutzerdefiniertes Startdatum und eine benutzerdefinierte Startzeit festlegen, um den Sofortstart auf eine günstigere Zeit zu verschieben.
- Auslösen eines Befehls
- Wenn Sie den Befehl auslösen, können Sie die Befehlseinstellungen überprüfen und ändern und bei Bedarf zusätzliche Parameter oder Optionen angeben. Wenn Sie den Start auf einen günstigeren Zeitpunkt verschieben möchten, können Sie auf die Registerkarte Ausführungszeit wechseln und ein benutzerdefiniertes Startdatum und eine benutzerdefinierte Startzeit festlegen.
Abbrechen eines Befehlstermins
Wenn Sie einen laufenden Befehlstermin abbrechen möchten, gehen Sie zu Auswahl -> Job Status -> Alle Ergebnisse. Wählen Sie den aktiven Befehlstermin, den Sie abbrechen möchten, und klicken Sie auf Abbrechen in der Menüleiste der Ansicht Alle Ergebnisse.
Wenn Sie einen Befehlstermin abbrechen (in der GUI oder in der CLI) und ein Abbruchbefehl ausgelöst und ausgeführt wird, zeigen die Ergebnisse für den Befehlstermin den Status Abgebrochen an. Falls der ursprüngliche Befehlstermin aus einem anderen Grund abgebrochen wird, zeigen die Ergebnisse den Status Fehler an. Einzelheiten zur Befehlsausführung finden Sie in den Systemprotokollen.
Setzen der Berechtigung zum Ausführen von Befehlen
Nicht jeder Benutzer auf einem bestimmten Client ist berechtigt, alle Befehle auszuführen. Ohne zusätzliche Einträge, die ausgewählte Benutzer zur Ausführung bestimmter Befehle berechtigen, können die Befehle nur aus dem Systemverzeichnis <SESAM_ROOT>/bin/sesam
ausgeführt werden. Soll ein Befehl aus einem anderen Verzeichnis gestartet werden, bevor die reguläre Sicherung gestartet wird, muss dies vorher am Ziel-Client eingegeben/erlaubt werden.
- UNIX
Kopieren Sie die Datei sesam_cmdusers.allow aus dem Verzeichnis <SESAM_ROOT>/skel/templates
nach /etc
auf dem Client und ändern Sie die Datei. Sie können nun eine Zeile für den Benutzer und den Befehl im Format {User} {Befehl} eingeben. Wenn Sie einen Platzhalter (*) verwenden, werden alle Befehle ausgeführt.
Für die Ausführung von SEP sesam Befehlen wie sm_loader sind keine expliziten Berechtigungen erforderlich.
- Windows
Um Zugriffsrechte für den Benutzer und Befehl festzulegen, verwenden Sie den folgenden Schlüssel:
\\HKLM\SOFTWARE\SEP Elektronik GmbH\sesam\CommandEvents\ <Benutzer>\ <Befehl>
- Öffnen Sie den Regedit-Editor.
- Gehen Sie zu HKEY_LOCAL_MACHINE\SOFTWARE\SEP Elektronik GmbH\sesam\ und erstellen Sie einen neuen Schlüssel namens CommandEvents. Falls noch nicht vorhanden, klicken Sie mit der rechten Maustaste und wählen Sie Neuer Schlüssel.
- Geben Sie <Benutzer> und dann <Befehl> mit der vollständigen Pfadangabe als Schlüssel ein.
Die verfügbaren Befehle sind:
Befehl | Ausführung |
---|---|
* | alle Befehle |
cmd /c | alle DOS Befehle (dir usw.) |
DOS command (e.g., dir) | nur angegebene DOS-Befehle (z.B. dir) |
specific command (e.g., ping) | nur spezielle Befehle (z.B. ping) |
Sind weitere Befehle vorhanden, wird der letzte Befehl ausgeführt. Wenn Sie einen Platzhalter (*) verwenden, werden alle Befehle ausgeführt.
Unten sehen Sie ein Beispiel für eine Registrierungsdatei (*.reg), die alle Befehlstermine für den Benutzer administrator und sesam erlaubt:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\SEP Elektronik GmbH\sesam\CommandEvents\sesam\*] [HKEY_LOCAL_MACHINE\SOFTWARE\SEP Elektronik GmbH\sesam\CommandEvents\Administrator\*]
Anmerkung | |
Die häufigsten Fehler beim Einrichten der gewünschten Benutzerberechtigungen und erlaubten Befehle sind:
|
Siehe auch
Verwalten von Terminen - Folgeaktion (Follow up Events) – Anlegen eines Zeitplanes – Über Zeitpläne