Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Wenn Sie einen LiveClone-Sicherungs- und Notfallwiederherstellungs-Workflow mit Vorab-Scrubbing definieren, können Sie zwischen der Datenschutzmaskierung von Optim oder benutzerdefinierten Scripts auswählen.
Geben Sie für benutzerdefinierte Scripts mindestens ein Pre- oder Post-Processing-Script an.
Geben Sie nach Bedarf ein Pre-Script an. Mit dem Vorab-Script wird die Umgebung konfiguriert, bevor die Anwendung bereitgestellt oder getrennt wird. Dieses Script muss sich auf dem Server, auf dem das bereitgestellte Image gehostet wird, in einem Ordner mit dem Namen /act/scripts befinden.
Geben Sie im entsprechenden Feld Zeitlimit in Sekunden die Zeit an, die für die Ausführung des Scripts erforderlich ist.
Geben Sie nach Bedarf ein Post-Script an. Das Post-Script wird verwendet, um eine Aktion auf die Daten auszuführen, nachdem sie bereitgestellt oder getrennt wurden. Dieses Script muss sich auf dem Server, auf dem das bereitgestellte Image gehostet wird, in einem Ordner mit dem Namen /act/scripts befinden.
Geben Sie im entsprechenden Feld Zeitlimit in Sekunden die Zeit an, die für die Ausführung des Scripts erforderlich ist.
Pre- und Post-Scripts für den Sicherungs- und Notfallwiederherstellungs-Workflow
Backup- und Notfallwiederherstellungs-Workflows stellen Sicherungs-Images gemäß einem Zeitplan oder bei Bedarf bereit und trennen sie wieder. In einem Sicherungs- und Notfallwiederherstellungs-Workflow können Sie Folgendes aufrufen:
Ein Pre-Script, das ausgeführt wird, bevor ein Image bereitgestellt oder getrennt wird
Ein Postscript, das nach dem Bereitstellen oder Trennen eines Images ausgeführt wird
Wenn Sie ein Script vor und nach dem Bereitstellen oder Trennen von Daten ausführen können, haben Sie folgende Möglichkeiten:
Suche nach sensiblen Informationen
Berichte erstellen
Warehouse-Daten, insbesondere für ETL-Vorgänge (Extrahieren, Transformieren, Laden)
Die Scripts müssen sich auf dem Server, auf dem das bereitgestellte Image für den Sicherungs- und Notfallwiederherstellungs-Workflow gehostet wird, in einem Ordner mit dem Namen /act/scripts befinden.
Umgebungsvariablen
Mit Umgebungsvariablen können Sie Befehle aufrufen, die für bestimmte Jobs, Jobtypen oder Anwendungen gelten. Umgebungsvariablen haben das Präfix ACT_. Eine Umgebungsvariable für eine Datenbank könnte beispielsweise so aussehen:
[$ACT_APPNAME =="productiondb"]
Eine Umgebungsvariable für einen Bereitstellungsvorgang könnte so aussehen:
[$ACT_JOBTYPE == "mount"]
Im Folgenden finden Sie eine Liste gängiger Umgebungsvariablen mit Beispielwerten:
JOBNAME: Der Name des Jobs, z. B. Job_0123456.
APPID: Die ID der Anwendung, z. B. 4186.
APPNAME: Name der Anwendung, z. B. „Meine-DB“.
HOSTNAME: Der Name des Hosts, der das Ziel dieses Jobs ist, z. B. „Jupiter“.
SOURCEHOST: Der Name des Hosts, der die Quelle für diese Anwendung war, z. B. Saturn.
JOBTYPE: Eine Textversion der Jobklasse, z. B. „mount“ oder „unmount“.
PHASE: Ein Textstring, der die Phase des Jobs beschreibt, z. B. „vor“ oder „nach“.
TIMEOUT: Hiermit wird die Dauer des Scripts festgelegt, also wie lange das Script ausgeführt werden darf.
OPTIONEN: Richtlinienoptionen, die für diesen Job gelten.
Beispielskript
Im folgenden Scriptbeispiel werden drei Umgebungsvariablen verwendet:
ACT_JOBTYPE: Gibt an, ob es sich bei dem Job um einen Bereitstellungs- oder einen Bereitstellungsauflösungsvorgang handelt.
ACT_PHASE: Gibt an, ob es sich um die Vor- oder die Nachbereitung handelt.
ACT_MULTI_END: Wird nur verwendet, wenn sowohl eine Datenbank als auch ihr Protokoll bereitgestellt sind. In diesem Fall ist die Datenbank in einem Zustand, in dem auf sie zugegriffen werden kann.
```sh#!/bin/shset+xecho"*** Running user script: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE***"#Usethefirstifclausetoperformapplicationspecificoperationsduringmountandinthisexamplescrub-mountoperation.#Usethesecondifclausetoperformanyapplicationspecificoperationduringunmountandinthisexample,#scrub-unmountoperation.#if [[ $ACT_JOBTYPE == "mount" ]] || [[ $ACT_JOBTYPE == "scrub-mount" ]]; thenif[[$ACT_JOBTYPE=="unmount"]]||[[$ACT_JOBTYPE=="scrub-unmount"]];thenecho"NO-OP for job type $ACT_JOBTYPE"exit0fi#Usethefirstifclausetoperformapplicationspecificoperationsduringtheprephase.#Usethesecondifclausetoperformapplicationspecificoperationsduringthepostphase.#if [[ $ACT_PHASE == "post" ]]; thenif[[$ACT_PHASE=="pre"]];thenecho"NO-OP for phase $ACT_PHASE"exit0fi#Formulti-phasejobs(databaseandlogs)checkifthedatabasehasbeenmountedandthelogsappliedthen#skiplogs.#Iftheoperationneedstobeperformedinphasesotherthanthelastphase,modifytheclause.if[[-z"$ACT_MULTI_END"]] && [[$ACT_MULTI_END!="true"]];thenecho"NO-OP for multi-phase operation"exit0ficd/act/scriptsecho"**** Running application specific logic: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE *"Anyapplicationspecificcommandswillgohereecho"** Finished running application specific logic : Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE*"exit$?```
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-08-11 (UTC)."],[[["\u003cp\u003eLiveClone Backup and DR Workflows can utilize pre- and post-processing scripts to run operations before or after mounting/unmounting backup images, such as data scrubbing, generating reports, or warehousing data.\u003c/p\u003e\n"],["\u003cp\u003ePre- and post-scripts must be stored in the \u003ccode\u003e/act/scripts\u003c/code\u003e directory on the server hosting the mounted image, and a timeout duration must be specified for each script to complete its execution.\u003c/p\u003e\n"],["\u003cp\u003eEnvironment variables prefixed with \u003ccode\u003eACT_\u003c/code\u003e, such as \u003ccode\u003eACT_JOBTYPE\u003c/code\u003e, \u003ccode\u003eACT_PHASE\u003c/code\u003e, and \u003ccode\u003eACT_APPNAME\u003c/code\u003e, can be used within scripts to tailor operations to specific jobs, phases, or applications.\u003c/p\u003e\n"],["\u003cp\u003eFor workflows involving both a database and its logs, the pre- and post-script operations should be configured to avoid being applied to the database's logs, which can be achieved using the \u003ccode\u003eACT_MULTI_END\u003c/code\u003e variable in the script.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTIMEOUT\u003c/code\u003e variable is used to define the duration of the script, in other words, the amount of time the script is allowed to run.\u003c/p\u003e\n"]]],[],null,["# Custom scripts\n\nWhen defining a LiveClone Backup and DR Workflow that performs pre-scrubbing you can\nselect from Optim privacy data masking or custom scripts.\n\nFor custom scripts, specify at least one pre- or post-processing script.\n\n- Specify a pre-script as needed. The pre-script is used to configure the environment prior to mounting or unmounting the application. This script must reside in a folder named `/act/scripts` on the server that hosts the mounted image.\n- In the corresponding **Timeout in Seconds**, specify the time that is needed for the script to complete.\n- Specify a post-script as needed. The post-script used to perform an operation on the data after it is mounted or unmounted. This script must reside in a folder named `/act/scripts` on the server that hosts the mounted image.\n- In the corresponding **Timeout in Seconds**, specify the time that is needed for the script to complete.\n\nBackup and DR Workflow Pre and Post Scripts\n-------------------------------------------\n\nBackup and DR Workflows mount and unmount backup images according to a schedule\nor on-demand. In a Backup and DR Workflow you can call the following:\n\n- A pre-script that runs before an image is mounted or unmounted\n- A post-script that runs after an image is mounted or unmounted\n\nThe ability to run a script before and after data is mounted or\nunmounted lets you do the following:\n\n- Scrub for sensitive information\n- Generate reports\n- Warehouse data, especially for extract, transform, and load---ETL--- operations\n\nScripts must reside in a folder named `/act/scripts` on the server\nthat hosts the mounted Backup and DR Workflow image.\n| **Note:** For Backup and DR Workflows that involve both a database and its logs, you must configure scripts in such as way that pre- and post-script operations are not applied to the database's logs. See *Example Script* for a script example that contains a command that skips a database's log.\n\n### Environment variables\n\nEnvironment variables allow you to invoke commands that apply to specific jobs,\njob types, or applications. Environment variables are prefixed with `ACT_`. For\nexample, an environment variable for a database could look like: \n\n [$ACT_APPNAME ==\"productiondb\"]\n\nor an environment variable for a mount operation could look like: \n\n [$ACT_JOBTYPE == \"mount\"]\n\nThe following is a list of common environment variables with sample values:\n\n- **JOBNAME**: The name of the job---for example, Job_0123456.\n- **APPID**: The ID of the application---for example, 4186.\n- **APPNAME**: Name of the application---for example, My-DB.\n- **HOSTNAME**: The name of the host which is the target of this job---for example, Jupiter.\n- **SOURCEHOST**: The name of the host that was the source for this application---for example, Saturn.\n- **JOBTYPE**: A text version of the job class---for example, mount or unmount.\n- **PHASE**: A text string that describes the job phase---for example, pre or post.\n- **TIMEOUT**: Define the duration of the script, how long the script is allowed to run.\n- **OPTIONS**: Policy options that apply to this job.\n\n### Example script\n\nThe following script example uses three environment variables:\n\n- **ACT_JOBTYPE**: Identifies whether the job is a mount or unmount operation.\n- **ACT_PHASE**: Identifies whether the phase is either pre or post.\n- **ACT_MULTI_END**: Used only if both a database and its\n log are mounted. When this is true, the database is in a state where it\n can be accessed.\n\n **Note:** The following example script is not meant to be used in a production environment, has not been tested, and is not warranted by Backup and DR Service. \n\n ```sh\n #!/bin/sh\n set +x\n echo \"*** Running user script: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE***\"\n\n #Use the first if clause to perform application specific operations during mount and in this example scrub-mount operation.\n\n #Use the second if clause to perform any application specific operation during unmount and in this example, #scrub-unmount operation.\n\n #if [[ $ACT_JOBTYPE == \"mount\" ]] || [[ $ACT_JOBTYPE == \"scrub-mount\" ]]; then\n if [[ $ACT_JOBTYPE == \"unmount\" ]] || [[ $ACT_JOBTYPE == \"scrub-unmount\" ]]; then\n echo \"NO-OP for job type $ACT_JOBTYPE\"\n exit 0\n fi\n\n #Use the first if clause to perform application specific operations during the pre phase.\n\n #Use the second if clause to perform application specific operations during the post phase.\n\n #if [[ $ACT_PHASE == \"post\" ]]; then\n if [[ $ACT_PHASE == \"pre\" ]]; then\n echo \"NO-OP for phase $ACT_PHASE\"\n exit 0\n fi\n\n #For multi-phase jobs (database and logs) check if the database has been mounted and the logs applied then #skip logs.\n\n #If the operation needs to be performed in phases other than the last phase, modify the clause.\n\n if [[ -z \"$ACT_MULTI_END\" ]] && [[ $ACT_MULTI_END != \"true\" ]]; then\n echo \"NO-OP for multi-phase operation\"\n exit 0\n fi\n\n cd /act/scripts\n\n echo \"**** Running application specific logic: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE *\"\n\n Any application specific commands will go here\n\n echo \"** Finished running application specific logic : Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE*\"\n exit $?\n ```"]]