MailStore Server Management Shell
Viele Befehle des grafischen MailStore Clients lassen sich auch über die Management Shell durchführen, welche bei der Installation von MailStore Server und MailStore Client automatisch mitkopiert wird.
Die Management Shell ist einerseits dann nützlich, wenn keine grafische Umgebung zur Verfügung steht (z.B. bei Verwendung von telnet oder ssh), andererseits zur Einbindung in automatisch oder manuell gestartete Scripts (z.B. Batchdateien).
Neben den Client-seitigen Befehlen (Client-side Commands) stellt die Management Shell auch einen Zugriff auf die Server-seitigen Befehle (Server-side Commands) der MailStore Server Administration API bereit. Die Ausgabe der Server-seitigen Befehle erfolgt im JSON-Format.
Die Management Shell aus MailStore heraus starten
Sie können die Management Shell direkt aus MailStore heraus starten. Melden Sie sich dazu als MailStore-Administrator über den MailStore Client an und klicken Sie auf Verwaltung > Management API > Eingabeaufforderung.
Die Schriftgröße der Management Shell kann durch Halten der Strg-Taste und Drehen des Mausrads oder + und - auf der Tastatur angepasst werden. Halten der Strg-Taste und 0 setzt die Schriftgröße zurück.
MailStoreCmd.exe im nicht-interaktiven Modus verwenden
Im nicht-interaktiven Modus führt die Management Shell eine Anmeldung mit übergebenen Anmeldeinformationen durch, führt einen ebenfalls übergebenen Befehl aus und beendet sich daraufhin automatisch. Der Exit Code (ERRORLEVEL) des Prozesses wird auf 0 gesetzt, wenn Anmeldung und Befehl erfolgreich ausgeführt werden konnten, sonst auf einen Wert ungleich 0. Die MailStoreCmd.exe befindet sich im Installationsverzeichnis von MailStore Server. Die ebenfalls vorhandene MailStoreCmdSilent.exe macht dasselbe, öffnet jedoch kein sichtbares Kommandozeilenfenster.
Die Anmeldedaten für Ihre Installation können Sie der Kommandozeile eines geplanten Tasks eines Profils vom Typ E-Mail-Programme oder E-Mail-Dateien entnehmen.
Es gibt mehrere Möglichkeiten, Anmeldedaten an MailStoreCmd.exe zu übergeben.
Damit die Anmeldedaten aus der Windows-Anmeldeinformationsverwaltung ausgelesen werden können, müssen diese zuvor dort abgespeichert werden. Dies macht der MailStore Client automatisch, wenn ein geplanter Task in der Windows Aufgabenplanung angelegt wird. Diese Methode verhindert, dass Zugangsdaten einfach von Dritten eingesehen werden können. Die Anmeldedaten können dann wie folgt verwendet werden:
MailStoreCmd.exe --h=<server> --cred=<user>@<server/IP-Adresse> --pkv3=<thumbprint> -c <command> [--param1=<value> --param2=<value> ...]
Die Anmeldedaten können auch im Klartext übergeben werden.
MailStoreCmd.exe --h=<server> --u=<user> --p=<password> --pkv3=<thumbprint> -c <command> [--param1=<value> --param2=<value> ...]
Im Folgenden werden die einzelnen Parameter beschrieben
Parameter | Beschreibung |
---|---|
--h
|
Der Rechnername des MailStore Server, mit welchem sich MailStoreCmd.exe verbinden soll. |
--pkv3
|
Fingerabdruck (Public Key Fingerprint), der die Identität des MailStore Server sicherstellt. |
--u
|
Benutzername |
--p
|
Kennwort |
--cred
|
Alternative zu --u und --p , das Kennwort wird aus der Windows-Anmeldeinformationsverwaltung gelesen. Der Parameter ist in der Form <user>@<server/IP-Adresse> anzugeben.
|
--nologo
|
Optional. Unterdrückt die Anzeige des Logos. |
--o
|
Optional. Leitet die Ausgabe in die angegebene Datei um. Es erscheint dann keine Ausgabe im Konsolenfenster. |
-c
|
Es folgt der tatsächliche Befehl (nicht-interaktiver Modus). |
Befehlsübersicht
Client-seitige Befehle
Im folgenden finden Sie eine Befehlsübersicht der Client-seitigen Befehle.
clear
Löscht die angezeigten Texte und erhöht so die Übersichtlichkeit
debug-conn
Aktiviert das Verbindungsprotokoll für IMAP und HTTP Verbindungen während der Archivierung für den aktuell laufenden MailStore Client Prozess.
debuglog-browse
Öffnet das Debug-Protokoll-Verzeichnis im Datei-Explorer.
debuglog-enable, debuglog-disable
Aktiviert oder deaktiviert das globale (rechnerweite) Debugprotokoll.
export-execute [--name=<profilename>] [--id=<profileid>] [--verbose] [--[property]="value"]
Führt ein Export-Profil aus. Folgende Parameter werden unterstützt:
--name | --id
|
Name oder ID des auszuführenden Profils |
--verbose
|
aktiviert eine detaillierte Statusausgabe auf der Konsole |
--[property]
|
Überschreibt die angegebene interne Property eines Profils. Die internen Properties lassen sich anzeigen, in dem man ein Exportsprofil aus der Liste auswählt und die Tastenkombination STRG + SHIFT + P drückt. Der Name der Property muss in eckigen Klammern geschrieben werden. Es können beliebig viele Properties angegeben werden.
|
export-list
Zeigt alle erstellten Exportprofile an (ID und Name des Profils).
help
Zeigt eine Liste aller verfügbaren Client- als auch Server-seitigen Befehle und deren Parameter
import-execute [--name=<profilename>] [--id=<profileid>] [--verbose] [--user=<username>] [--[property]="value"]
Führt das Archivierungsprofil aus. Folgende Parameter werden unterstützt:
--name | --id
|
Name oder ID des auszuführenden Archivierungsprofils |
--verbose
|
ktiviert eine detaillierte Statusausgabe auf der Konsole |
--user
|
Benutzerarchiv in dem die archivierten E-Mails gespeichert werden |
--[property]
|
Überschreibt die angegebene interne Property eines Profils. Die internen Properties lassen sich anzeigen, in dem man ein Archivierungsprofil aus der Liste auswählt und die Tastenkombination STRG + SHIFT + P drückt. Der Name der Property muss in eckigen Klammern geschrieben werden. Es können beliebig viele Properties angegeben werden.
|
import-list [--user=<username>]
Zeigt alle erstellten Archivierungsprofil an (ID und Name des Profils).
livelog-client-disable, livelog-client-enable, livelog-server-disable, livelog-server-enable
Aktiviert oder deaktiviert das Echtzeitprotokoll für MailStore Server bzw. MailStore Client. Das Protokoll kann u.A. mit Sysinterals DebugView betrachtet werden. DebugView muss mit Administratorrechten ausgeführt werden, weiterhin müssen Global Win 32 Ereignisse erfasst werden.
store-setprop --name=<name> --value=true/false
Ändert eine globale Einstellung
--name
|
Name der zu ändernden globalen Einstellung |
--value
|
Wert der globalen Einstellung |
Folgende globale Einstellungen werden unterstützt:
Name | Version | Werte | Standardwert |
---|---|---|---|
public.arcclient.skipMimeContentConversionFailed | 8 | true = Exchange MimeContentConversionFailed-Fehler werden ignoriert und nicht als Fehler bei der Archivierung angesehen. false = Exchange MimeContentConversionFailed-Fehler werden als Fehler bei der Archivierung angesehen. |
false |
public.arcclient.skipVirusDetected | 8.1 | true = Exchange ErrorVirusDetected-Fehler werden ignoriert und nicht als Fehler bei der Archivierung angesehen. false = Exchange ErrorVirusDetected-Fehler werden als Fehler bei der Archivierung angesehen. |
false |
public.arcclient.skipEwsErrorItemNotFound | 10 | true = Exchange ErrorItemNotFound-Fehler werden ignoriert und nicht als Fehler bei der Archivierung angesehen. false = Exchange ErrorItemNotFound-Fehler werden als Fehler bei der Archivierung angesehen. |
false |
public.backup.hideNotDetectedWarningMessage | 11 | true = Backup Warnungen werden nicht auf dem Dashboard angezeigt. false = Backup Warnungen werden auf dem Dashboard angezeigt. |
false |
user-list
Zeigt eine Liste aller MailStore Benutzer an.
Server-seitige Befehle
Eine Übersicht der Server-seitigen Befehle finden Sie unter Function Reference (englisch).
Die Parameter der Server-seitigen Befehle sind case sensitive und müssen in der Management Shell mit zwei Bindestrichen (--) angegeben werde. Boolesche Variablen müssen als true oder false angegeben werden. Zeichenketten, die Leerzeichen enthalten, müssen in Anführungszeichen gesetzt werden.
Beispiele:
GetProfiles --raw=true
Listet alle Archivierungs- und Exportprofile auf.
GetUserInfo --userName="alexis.page"
Listet die Eigenschaften der Benutzerin alexis.page auf.
GetJobResults --fromIncluding="2018-01-01T00:00:00" --toExcluding="2019-01-01T00:00:00" --timeZoneId="$Local" --jobId=1
Listet die Ergebnisse des Jobs mit der ID 1 aus dem Jahr 2018 auf.
GetWorkerResults --fromIncluding="2018-01-01T00:00:00" --toExcluding="2019-01-01T00:00:00" --timeZoneID="$Local" --profileID=1
Listet die Ergebnisse des Archivierungsprofiles mit der ID 1 aus dem Jahr 2018 auf. Der Parameter timeZoneID wird nur beim Befehl GetWorkerResults mit großem D geschrieben.
RunProfile --id=1
Startet das Archivierungs- oder Exportprofile mit der ID 1.