NetWorker: Verwendung des Befehls nsrpolicy

Zusammenfassung: Dieser Artikel enthält Informationen zur Verwendung des Befehls NetWorker nsrpolicy zum Durchführen von NetWorker-Verwaltungsaufgaben.

Dieser Artikel gilt für Dieser Artikel gilt nicht für Dieser Artikel ist nicht an ein bestimmtes Produkt gebunden. In diesem Artikel werden nicht alle Produktversionen aufgeführt.

Weisungen

Bei der nsrpolicy ist ein administrativer NetWorker-Befehl, der zum Managen und Überwachen von NetWorker-Policies verwendet wird. Viele der gleichen Funktionen werden über NetWorker Management (NMC) und Web UI (NWUI) ausgeführt. Jedoch nsrpolicy Bietet Administratoren Befehlszeilenfunktionen.

 

nsrpolicy Muss unter einer der folgenden Bedingungen ausgeführt werden:

  • Sie führen den Befehl über eine Eingabeaufforderung mit erhöhten Rechten aus. Entweder Administratorbefehl/PowerShell-Eingabeaufforderung unter Windows oder root/sudo Shell unter Linux.
  • Sie führen den Befehl über eine Eingabeaufforderung ohne höhere Rechte aus, haben jedoch ein NetWorker-Authentifizierungstoken ausgegeben: nsrlogin -u USERNAME
HINWEIS: nsrlogin Gibt ein zeitbasiertes Authentifizierungstoken für die NetWorker-Administration mithilfe von NetWorker-Nutzeranmeldedaten aus. Wenn Sie nsrloginwählen, ist es wichtig, die Sitzung mit nsrlogout wenn die Tätigkeiten abgeschlossen sind. Dadurch wird verhindert, dass veraltete Token nachfolgende Befehle beeinträchtigen.

Allgemeine Nutzungsübersicht:

nsrpolicy
       policy
           create | delete | display | update | list
       workflow
           create | delete | display | update | list
       action
          create | delete | display | update | list
       group
           create | delete | display | update
       start
           Must have: -p [policy] -w [workflow]
           Other options (NetWorker 9.2 and above for -c option):  -c { <client_name1:[save_set_path_1;save_set_path_2],client_name2...>   -s [NetWorker server] -D [debug level] -h
       stop
            Must have:  Either -j [jobid] or -p [policy] -w [workflow]
            Other options: -s [NetWorker server] -D [debug level] -h
       monitor
            Must have:  -p [policy]
            Other options:   -w [workflow] -c [client] -g [group] -d [details] -n [non-tabular] -j [jobid] -s [NetWorker server] -D [debug level] -h
       input-file
             Must have:  -f [file name]
             Other options:   [--stop_on_error -S <0/1; default:0 (Do not stop)>]      [--stop_on_error -S <0/1; default:0 (Do not stop)>]  -D [debug level] -h
      restart
             Must have:  Either -j [jobid] or -p [policy] -w [workflow]
             Other options: -s [NetWorker server] -D [debug level] -h
       migrate
             Must have what is to be migrated: group | schedule_clone | nas_device | vmware_policy
             Other options:  -s [NetWorker server] -D [debug level] -h
       help

Beispiele:

Listen Sie Objekte in der Datenzone auf:

nsrpolicy [object] list

Objekte: Policy, Workflow, Aktion

nsrpolicy policy list
nsrpolicy workflow list -p "VMware Protection"
nsrpolicy action list -p "VMware Protection" -w "Full VM"

Zeigen Sie die Eigenschaften einer Aktion an:
nsrpolicy action display -p [policy] -w [workflow] -A [action]

nsrpolicy action display -p "VMware Protection" -w "Full VM" -A backup

Zeigen Sie die Eigenschaften einer Gruppe an:
nsrpolicy group display -g [group]

nsrpolicy group display -g "VMware Protection - Full VM"

Deaktivieren oder aktivieren Sie eine Aktion:
nsrpolicy action update [action type backup subtype] -p [policy] -w [workflow] -A [action] -e [no/yes]

nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -e no
nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -e yes

So ändern Sie den einer Aktion zugeordneten Zeitplan:
nsrpolicy action update [action type backup subtype] -p [policy] -w [workflow] -A [action] -t [schedule]

nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -t full,incr,incr,incr,incr,incr,incr

Hinzufügen eines Clients zu einer Gruppe mithilfe einer Eingabedatei (eine Clientinstanz muss bereits vorhanden sein):
Erstellen Sie eine Eingabedatei mit dem Text:
group update client -g [group] --add_clnt_list [client]:[saveset]

[root@nsr ~]# cat AddTraditionalClient.txt
group update client -g "Client Protection - Traditional Client" --add_clnt_list win-client03.amer.lan:All

nsrpolicy input-file -f  "[path to input file]"

[root@nsr ~]# nsrpolicy input-file -f /root/AddTraditionalClient.txt
121415:nsrpolicy: Command from file: group update client -g "Client Protection - Traditional Client" --add_clnt_list win-client03.amer.lan:All
133584:nsrpolicy: Group 'Client Protection - Traditional Client' was successfully updated

Erstellen Sie einen neuen Workflow mit nicht standardmäßigen Werten für Kommentar, Startzeit und Gruppe:
nsrpolicy workflow create -p [policy] -w [workflow] -c [comment] -g [group] -S [start time]

nsrpolicy workflow create -p "Client Protection" -w "Traditional Client - Linux"  -c "Linux Clients" -g "Linux - Clients" -S "10:00"

Erstellen Sie eine neue Aktion mit nicht standardmäßigen Werten für den Zielpool und dem Erfolgsschwellenwert:
nsrpolicy action create [action type backup subtype] -p [policy] -w [workflow] -A [action] -o [target pool] -u [success threshold]

nsrpolicy action create backup traditional -p "Client Protection" -w "Traditional Client - Linux" -A backup -o "Data Domain Default" -u success

Starten Sie einen Workflow (Sie können keine Aktion auf diese Weise starten. Sie müssen den gesamten Workflow starten).
nsrpolicy start -p [policy] -w [workflow]

nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux"

Beenden Sie einen Workflow:
nsrpolicy stop -p [policy] -w [workflow]

nsrpolicy stop -p "Client Protection" -w "Traditional Client - Linux"
Alternativ können Sie jobkillverwalten:
[root@nsr ~]# nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux"
144091:nsrpolicy: Workflow 'Client Protection/Traditional Client - Linux' started and has job id 1248743
[root@nsr ~]#
[root@nsr ~]# jobkill -j 1248743
Terminating job 1248743

Starten Sie einen Client in einem Workflow:
nsrpolicy start -p [policy] -w [workflow] -c "[client]:[saveset]

nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux" -c "rhel-client03.amer.lan:All"

Überwachen Sie die letzte Ausführung der Workflows in einer Policy:
nsrpolicy monitor -p [policy] -dn

nsrpolicy monitor -p "Client Protection" -dn
Alternativ können Sie die nsrwatch Befehl zum Überwachen von Sitzungen.

Detaillierte Jobausgabe für einen bestimmten aktuellen Job:
nsrpolicy monitor -j [job id]

nsrpolicy monitor -j 290473
Alternativ können Sie jobqueryverwalten:
jobquery
print type: backup action job

So starten Sie einen Workflow im Debug-Modus: nsrpolicy ist nicht so effektiv wie die nsrworkflow Befehl, weil 'nsrpolicy start' protokolliert keine Debug-Ausgabe in der /nsr/logs/policy Ordner, der nsrworkflow Wille zur .raw zu verwenden.
nsrworkflow -D[Debug Level] -p [policy] -w [workflow] -A "[action]"

nsrworkflow -D9 -p "Client Protection" -w "Traditional Client - Linux"

Weitere Informationen zu NetWorker-Debug-Ebenen finden Sie unter: NetWorker: Debug-Informationsebenen

HINWEIS: nsrworkflow debug debuggt nur die serverseitigen NetWorker-Meldungen. Es fügt kein Debugging zu Vorgängen hinzu, die auf dem Client/System durchgeführt werden, das das Backup durchführt.

Beispiel für die Aktivierung save -D3 Backups auf einem NetWorker-Client mithilfe des Befehlszeilendienstprogramms nsradmin:

[root@nsr ~]#  nsradmin
NetWorker administration program.
Use the "help" command for help, "visual" for full-screen mode.
nsradmin> . type : NSR Client; name : rhel-client03.amer.lan
Current query set
nsradmin> update backup command : save -D3
              backup command: save -D3;
Update? y
updated resource id 48.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(13)

Wenn im obigen Beispiel der Workflow für den Client gestartet wird, wird die save Der Prozess wird auf dem Client mit aktiviertem Debuggen gestartet (-D3) im vorliegenden Fall.
Informationen zum Debuggen bestimmter Backupfunktionen finden Sie unter: NetWorker: Anleitung zum Debuggen von Backupvorgängen

Protokollierung:

Alle Policy- und Workflowbackups werden im NetWorker-Protokollverzeichnis protokolliert:

Linux: /nsr/logs/policy/POLICY_NAME
Windows (Standardeinstellung): C:\Program Files\EMC NetWorker\nsr\logs\policy\POLICY_NAME

 

Allgemeine Servermeldungen werden im daemon.raw protokolliert:

Linux: /nsr/logs/daemon.raw
Windows (Standardeinstellung): C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw

NetWorker: So verwenden Sie nsr_render_log zum Rendern .raw Protokolldateien

HINWEIS: NetWorker-Policy-Protokolle folgen dem 'jobsdb Aufbewahrungsfrist (Standard 72 Stunden). Protokolle, die die Aufbewahrungsfrist überschritten haben, werden während Ablaufaufgaben aus dem System entfernt.

Skriptbeispiele:

HINWEIS: Die folgenden Beispiele sind nur als genau das gedacht, Beispiele. Sie dienen der Demonstration nsrpolicy Funktionen, die über die Single-Line-Nutzung hinausgehen, und wie man seinen NetWorker-Server über die CLI verwalten kann. Implementieren/verwenden Sie keine Skripte in Ihrer Umgebung, ohne die Funktionen zu testen oder zu verstehen. Der NetWorker-Support bietet oder stellt keine Skriptlösungen oder Skriptunterstützung bereit.

Linux:

Beispiel 1:  Listen Sie alle Policies und deren Workflows auf. Dieses Shell-Skript führt eine Schleife durch die Liste der Policies in der NetWorker-Konfiguration aus und führt den Befehl "nsrpolicy workflow list" für jeden, sodass eine Liste der Workflow-Namen für jede Policy ausgegeben wird.

#!/usr/bin/sh
IFS=$'\n'
fullpolicylist=(`nsrpolicy policy list`)

for lp in "${fullpolicylist[@]}"
do
echo " "
echo "POLICY: $lp"
echo "Workflows"
nsrpolicy workflow list -p "$lp"
done

Beispiel 2:  Listen Sie alle Policies und deren Workflows und Aktionen sowie den Zielpool auf. Dieses Shell-Skript führt drei Schleifen aus, um die Liste der Policies, Workflows und Aktionen abzurufen. Die Namen der einzelnen Storage-Nodes werden ausgegeben und der Ziel-Storage-Node-Parameter der Aktion.

#!/usr/bin/env bash
set -euo pipefail

# Read policies into an array (one per line)
mapfile -t fullpolicylist < <(nsrpolicy policy list)

for lp in "${fullpolicylist[@]}"; do
  echo "------------------"
  echo "POLICY: $lp"

  # Read workflows for this policy
  mapfile -t wflist < <(nsrpolicy workflow list -p "$lp")

  for w in "${wflist[@]}"; do
    echo
    echo "WORKFLOW: $w"

    # Read actions for this workflow
    mapfile -t alist < <(nsrpolicy action list -p "$lp" -w "$w")

    for a in "${alist[@]}"; do
      echo "ACTION: $a"

      # Pull DestinationPool value
      destpool=$(
        nsrpolicy action display -p "$lp" -w "$w" -A "$a" \
          | awk -F': ' '/DestinationPool/ {print $2; exit}'
      )

      echo "Destination Pool: ${destpool:-<none>}"
    done
  done
done


Windows PowerShell:

Beispiel 1: Liste der Workflows. Listet die Policies und ihre Workflows auf, indem die Policy-Liste durchlaufen und der Befehl "nsrpolicy workflow list" für jede Policy ausgeführt wird.

$listp = nsrpolicy policy list
foreach  ($i in $listp)
{
write-host "-----"
write-host "POLICY: $i"
write-host "WORKFLOWS: "
nsrpolicy workflow list -p "$i"
}

Beispiel 2:  Liste der Aktionen. Es werden drei Schleifen erstellt. Eine Schleife zum Auflisten der Policies, dann eine Schleife zum Auflisten aller Workflows für jede Policy und dann eine Schleife zum Auflisten aller Aktionen für jeden Workflow.

$listp = nsrpolicy policy list
foreach  ($p in $listp)
{
write-host "-----"
write-host "POLICY: $p"
write-host "WORKFLOWS: "
   $wlist = nsrpolicy workflow list -p $p
   foreach ($w in $wlist)
   {
   write-host "$w"
   
   write-host "ACTIONS:"
   $alist = nsrpolicy action list -p "$p" -w "$w"
   foreach  ($a in $alist)
     {
      write-host "$a"
     }
   }
}

Weitere Informationen

nsrpolicy ist der NetWorker-Policy-Verwaltungsbefehl ab NetWorker 9.  Ein Großteil der Befehlszeilenadministration von NetWorker, die zuvor mit nsradmin durchgeführt wurde, wird jetzt mit dem Befehl nsrpolicy durchgeführt.

Der erste Schritt besteht darin, sich beim NetWorker-Server über die Befehlszeile mit dem Befehl nsrlogin und denselben Zugangsdaten anzumelden, die Sie auch für die Anmeldung bei der NetWorker Management Console verwenden. Wenn Sie den Befehl nsrlogin ausführen, kontaktiert der NetWorker-Host den NetWorker AuthenticationService, um die Anmeldedaten der Nutzeranmeldung zu validieren.

nsrlogin -u [Benutzername] - P [Kennwort]

Für den Befehl nsrpolicy stehen auf jeder Ebene eine Reihe unterschiedlicher Optionen zur Verfügung.  Wenn Sie bei jedem Schritt die Eingabetaste drücken, erhalten Sie die vollständige Liste der verfügbaren Optionen für den nächsten Teil Ihres Befehls:

nsrpolicy
policy
create | delete | display | update | list
workflow
create | delete | display | update | list
action
create | delete | display |
list action create | delete | display | listgroup
create | delete | display | update

startMuss vorhanden sein:                                                                                         -p [Richtlinie] -w [Arbeitsablauf]
           
Andere Optionen (NetWorker 9.2 und höher für Option -c):  -c { <client_name1:[save_set_path_1; save_set_path_2],client_name2...>   -s [NetWorker-Server] -D [Debug-Ebene] -h
       aufhören
            Muss vorhanden sein:  Entweder -j [jobid] oder -p [policy] -w [workflow]
           
Weitere Optionen: -s [NetWorker-Server] -D [Debug-Ebene] -h
       Monitor
            Muss vorhanden sein:  -p [Richtlinie]
           
Weitere Optionen:   -w [Workflow] -c [Client] -g [Gruppe] -d [Details] -n [nicht tabellarisch] -j [JobID] -s [NetWorker-Server] -D [Debug-Level] -h
       Eingabedatei
             Muss vorhanden sein:  -f [Dateiname]
            
Weitere Optionen:   [--stop_on_error -S <0/1; default:0 (nicht beenden)>] [--stop_on_error -S <0/1; default:0 (nicht beenden)>] -D [Debug-Stufe] -h
      restart
             Muss vorhanden sein:  Entweder -j [jobid] oder -p [policy] -w [workflow]
            
Weitere Optionen: -s [NetWorker-Server] -D [Debug-Ebene] -h
       wandern
             Muss vorhanden sein, was migriert werden soll: group | schedule_clone | nas_device | vmware_policy
            
Weitere Optionen:  -s [NetWorker-Server] -D [Debug-Ebene] -h
       Hilfe

BEFEHLSZEILENBEISPIELE:

Auflisten von Policies in der Datenzone
   nsrpolicy policy list
   nsrpolicy policy list

Zeigt die Eigenschaften einer Aktion an:
   nsrpolicy action display -p [policy] -w [Workflow] -A [action]
   nsrpolicy action display -p Mona -w Mona_wf -A backup

Zeigen Sie die Eigenschaften einer Gruppe an:
   nsrpolicy group display -g [Gruppe]
   nsrpolicy group display -g Felix

Deaktivieren einer Aktion:
   nsrpolicy action update [Aktionstyp Backup-Subtype] -p [policy] -w [Workflow] -A [action] -e no
nsrpolicy action update backup traditional -p FrankHoenikker -w FrankH -A backup -e no
 
So ändern Sie den einer Aktion zugeordneten Zeitplan:
   nsrpolicy action update [Aktionstyp Backup-Untertyp] -p [policy] -w [Workflow] -A [Aktion] -t [Zeitplan]
nsrpolicy action update backup traditional -p Mona -w Mona_wf -A backup -t full,incr,incr,incr,incr
 
Hinzufügen eines Clients zu einer Gruppe mithilfe einer Eingabedatei (Clientinstanz muss bereits vorhanden sein):
   Erstellen Sie eine Eingabedatei mit dem Text: group update client -g [group] --add_clnt_list [client]:[saveset]
cat AddAlicetoTheHook.input
group update client -g TheHook --add_clnt_list vm-lego-231:/alice

  
nsrpolicy input-file -f "[Pfad zur Eingabedatei]"
nsrpolicy input-file -f "/nsr/AddAlicetoTheHook.input"
 
Erstellen Sie einen neuen Workflow mit nicht standardmäßigen Werten für Kommentar, Startzeit und Gruppe:
   nsrpolicy workflow create -p [Richtlinie] -w [Workflow] -c [Kommentar] -g [Gruppe] -S [Startzeit]
nsrpolicy workflow create -p Mona -w Papa -c "Workflow für RedHat 6-Clients" -g PapaMgroup -S "10:00"

Erstellen Sie eine neue Aktion mit nicht standardmäßigen Werten für den Zielpool und den Erfolgsschwellenwert

nsrpolicy action create [action type backup subtype] -p [policy] -w [workflow] -A [action] -o [target pool] -u [success threshold]
nsrpolicy action create backup traditional -p Mona -w Papa -A papabackup -o SanLorenzoDDPool -u success

Starten Sie einen Workflow (Beachten Sie, dass Sie auf diese Weise keine Aktion starten können.  Sie müssen den gesamten Workflow starten).
   nsrpolicy start -p [policy] -w [Workflow]
nsrpolicy start -p Mona -w Mona_wf

Beenden Sie einen Workflow (Sie können die relevante Job-ID über den Befehl "nsrpolicy monitor" abrufen - siehe unten):
   nsrpolicy stop -j [jobID]
nsrpolicy stop -j 320819

Starten Sie einen Client in einem Workflow:
   nsrpolicy start -p [policy] -w [workflow] -c "[client]:[saveset]
nsrpolicy start -p Mona -w Mona_wf -c "vm-wego-231:/felix"

Überwachen Sie die letzte Ausführung der Workflows in einer Policy:
   nsrpolicy monitor -p [Richtlinie] -dn
   nsrpolicy monitor -p Mona -dn

Detaillierte Jobausgabe für einen bestimmten aktuellen Job:
   nsrpolicy monitor -j [Job-ID]
nsrpolicy monitor -j 290473

Um einen Workflow im Debug-Modus zu starten, ist nsrpolicy nicht so effektiv wie der Befehl nsrworkflow, da die Debugausgabe von "nsrpolicy start" nicht im Ordner /nsr/logs/policy protokolliert wird, während nsrworkflow dies in der Raw-Datei tut.
   nsrworkflow -p [policy] -w [workflow] -A "[action]"
   nsrworkflow -D9 -p Newt -w newt1 -A "backup"

Wohin Sie das Debuggen legen möchten, hängt von dem genauen Teil des Backup-Prozesses ab, den Sie sich genauer ansehen müssen.  Mit dem obigen nsrworkflow-Befehl werden die serverseitigen Savegrp-Vorgänge von NetWorker in D9 abgelegt und die Debug-Daten werden in der Raw-Datei in /nsr/logs/policy ausgegeben.  Das Debug-Flag wird jedoch nicht an den speicherseitigen Speicherprozess des NetWorker-Clients übergeben.  Dazu müssen Sie das Feld "Backup-Befehl" für den Client ändern.  Sie können dafür die NMC verwenden oder über die Befehlszeile:

Dies führt dazu, dass der Speicherprozess im Debug-Modus ausgeführt wird (D3 im folgenden Beispiel) und die Debug-Protokolldaten in /nsr/logs/policy/[policy-Name]/[Workflowname]/ _logs Ordner ausgegeben werden.

NWserver121:> nsradmin
NetWorker-Verwaltungsprogramm.
Verwenden Sie den Befehl "help" für Hilfe, "visual" für den Vollbildmodus.
nsradmin> . type : NSR-Kunde; Name : vm-lego-231
Aktueller Abfragesatz
nsradmin> update backup command : save -D3
backup command: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 48.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(13)
Backup-Befehl: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 45.0.185.125.0.0.0.0.126.197.192.89.10.60.28.121(34)
Backup-Befehl: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 47.0.28.24.0.0.0.0.123.60.218.88.10.60.28.121(39)
Backup-Befehl: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 64.0.28.24.0.0.0.0.123.60.218.88.10.60.28.121(35)
Backup-Befehl: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 57.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(8)
Backup-Befehl: save -D3;
Aktualisieren? y
aktualisierte Ressourcen-ID 49.0.62.11.0.0.0.0.118.31.239.89.10.60.28.121(5)

/nsr/logs/policy/Zinka/zinka_wf/zinka_backup_357042_logs


SKRIPTBEISPIELE:

Diese Skripte sind Beispiele dafür, was mit diesem Befehl geskriptet werden kann.  Sie sollten nicht ohne gründliche Tests in einer Produktionsumgebung implementiert werden.

LINUX:
Beispiel 1:  Auflisten aller Policies und ihrer Workflows
Dieses Shell-Skript führt eine Schleife durch die Liste der Policies in der NetWorker-Konfiguration aus und führt den Befehl "nsrpolicy workflow list" für jede Policy aus, sodass eine Liste der Workflownamen für jede Policy ausgegeben wird.

cat listofworkflows.sh

#!/usr/bin/sh
IFS=$'\n'fullpolicylist
=('nsrpolicy policy list')

for lp in "${fullpolicylist[@]}"
do
echo " "
echo "POLICY: $lp"
echo "Workflows"
nsrpolicy workflow list -p "$lp"
done

Beispiel 2:  Auflisten aller Policies und ihrer Workflows und Aktionen sowie des Zielpools
Dieses Shell-Skript führt drei Schleifen aus, um die Liste der Policies, Workflows und Aktionen abzurufen.  Es werden die Namen der einzelnen Storage-Nodes sowie der Ziel-Storage-Node-Parameter der Aktion ausgegeben.


cat listofworkflows_actions.sh
#!/usr/bin/sh
IFS=$'\n'fullpolicylist
=('nsrpolicy policy list')

for lp in "${fullpolicylist[@]}"
do
echo "------------------ "
echo "POLICY: $lp"
wflist=('nsrpolicy workflow list -p $lp')
for w in "${wflist[@]}"
do
echo " "
echo "WORKFLOW: $w"
alist=('nsrpolicy action list -p $lp -w $w')
for a in "${alist[@]}"
do
echo "ACTION: $a"
destpool='nsrpolicy action display -p $lp -w $w -A $a | grep DestinationPool | cut -d ":" -f2'
echo "Zielpool: $destpool"
done
done done
Beispiel

3: Ausführen eines Backups nur dann, wenn ein bestimmtes Verzeichnis vorhanden ist
Dieses Shell-Skript prüft, ob ein Verzeichnis mit dem Namen /k7app vorhanden ist.  Wenn dies der Fall ist, startet er den Workflow newt1 und protokolliert dies in einer dedizierten Protokolldatei.  Wenn das Verzeichnis nicht vorhanden ist, wird das Backup nicht ausgeführt. Diese Tatsache wird in derselben Protokolldatei protokolliert.  Die gleiche Skriptstruktur kann für alle Situationen verwendet werden, in denen ein Workflow nur dann ausgeführt werden soll, wenn eine bestimmte Bedingung erfüllt ist.

#!/usr/bin/sh
IFS=$'\n'dir
="/k7app"
log="/nsr/logs/k7applog.log"
DATE='date'if

[ -d "$dir" ]
then
nsrpolicy start -p Newt -w newt1
printf $DATE >> $log
printf " $dir vorhanden ist, daher wird der newt1-Workflow gestartet \n" >> $log
sonst
printf $DATE >> $log
printf " $dir ist nicht vorhanden, daher wird der newt1-Workflow nicht gestartet \n">>$log fi




WINDOWS POWERSHELL:

Beispiel 1: Liste der Workflows

Listet die Policies und ihre Workflows auf, indem die Policy-Liste durchlaufen und der Befehl "nsrpolicy workflow list" für jede Policy ausgeführt wird.

$listp = nsrpolicy policy list
foreach ($i in $listp)
{
write-host "-----"
write-host "POLICY: $i"
write-host"WORKFLOWS: "
nsrpolicy workflow list -p "$i"
}Beispiel

2:  Liste der Aktionen
Es werden drei Schleifen erstellt.  Eine Schleife zum Auflisten der Policies, dann eine Schleife zum Auflisten aller Workflows für jede Policy und dann eine Schleife zum Auflisten aller Aktionen für jeden Workflow.

$listp = nsrpolicy policy list
foreach ($p in $listp)
{
write-host "-----"
write-host "POLICY: $p"
write-host"WORKFLOWS: "
$wlist = nsrpolicy workflow list -p $p
foreach ($w in $wlist)
{
write-host "$w"
   
write-host "ACTIONS:"
   $alist = nsrpolicy action list -p "$p" -w "$w"
foreach ($a in $alist)
{
write-host "$a"
}
}
}

Beispiel 3: Ausführen eines Backups nur dann, wenn ein bestimmtes Verzeichnis vorhanden
ist Dieses Skript prüft, ob ein Verzeichnis namens C:\basicdata vorhanden ist.  Wenn dies der Fall ist, startet er den Workflow mit dem Namen Star und protokolliert dies in einer dedizierten Protokolldatei.  Wenn das Verzeichnis nicht vorhanden ist, wird das Backup nicht ausgeführt. Diese Tatsache wird in derselben Protokolldatei protokolliert.  Die gleiche Skriptstruktur kann für alle Situationen verwendet werden, in denen ein Workflow nur dann ausgeführt werden soll, wenn eine bestimmte Bedingung erfüllt ist.

$dir = "C:\basicdata"
$log = "C:\Programme\EMC NetWorker\nsr\logs\star.log"
$LogTime = Get-Date -Format "MM-dd-yyyy_hh-mm-ss"

if ( Testpfad "$dir" )
{ nsrpolicy start -p Star -w Workflow1
"------------------" | Out-File $log -Append -
Force $LogTime | Out-File $log -append -force
"Started Star" | Out-File $log -Append -Force
}
else
{
"------------------" | Out-File $log -Append -
Force $LogTime | Out-File $log -append -force
"Stern nicht gestartet, weil $dir nicht existiert" | Out-File $log -append -force
}

Betroffene Produkte

NetWorker

Produkte

NetWorker, NetWorker Series
Artikeleigenschaften
Artikelnummer: 000010289
Artikeltyp: How To
Zuletzt geändert: 30 Jan. 2026
Version:  4
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.