Frage zu Exchangescript
Hallo,
ich habe da ein kleines Verständnisproblem. Ich möchte via Script Mailboxen als PST-Files exportieren.
Gebe ich in der Verwaltungsshell folgendes ein:
New-MailboxExportRequest -Mailbox Username -FilePath "\\exchange\e$\Username.pst"
so exportiert er mir fein säuberlich die entsprechende Mailbox in den angegebenen PST-File.
Schreibe ich selbigen Befehl bzw. um Abschreibefehler zu vermeiden kopiere ich die Zeile in eine Batchdatei, so bekomme ich die Fehlermeldung:
Der Befehl "New-MailboxExportRequest" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Irgendwo muss ich da einen Denkfehler haben...ich weiss nur nicht welchen.
für einen Tipp wäre ich dankbar.
Danke und Gruß
Skarden
ich habe da ein kleines Verständnisproblem. Ich möchte via Script Mailboxen als PST-Files exportieren.
Gebe ich in der Verwaltungsshell folgendes ein:
New-MailboxExportRequest -Mailbox Username -FilePath "\\exchange\e$\Username.pst"
so exportiert er mir fein säuberlich die entsprechende Mailbox in den angegebenen PST-File.
Schreibe ich selbigen Befehl bzw. um Abschreibefehler zu vermeiden kopiere ich die Zeile in eine Batchdatei, so bekomme ich die Fehlermeldung:
Der Befehl "New-MailboxExportRequest" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Irgendwo muss ich da einen Denkfehler haben...ich weiss nur nicht welchen.
für einen Tipp wäre ich dankbar.
Danke und Gruß
Skarden
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 169255
Url: https://administrator.de/forum/frage-zu-exchangescript-169255.html
Ausgedruckt am: 22.12.2024 um 17:12 Uhr
12 Kommentare
Neuester Kommentar
Hallo @Skarden,
Von wo startest du diese 'Verwaltungsshell'? Ich finde weder im Startmenü noch in den Verwaltungstools eine Verknüpfung oder eine Funktion, um eine besondere Shell zu öffnen.
Deine Batch wird höchstwahrscheinlich am falschen Ort ausgeführt. Also in dem Verzeichnis, in dem die Batch liegt. Hier sind aber nicht die Anwendungen vorhanden, die du nutzen möchtest (z.B. New-MailboxExportRequest..COM oder.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH). Liest sich außerdem eher wie Powershell-Kommandos.
Öffne deine Verwaltungsshell, führe Echo %cd% aus und schreib in die erste Zeile des Batchskripts, das du erstellen möchtest:
Mich würde auch interressieren, welcher Pfad das ist.
Gruß
Snow
Von wo startest du diese 'Verwaltungsshell'? Ich finde weder im Startmenü noch in den Verwaltungstools eine Verknüpfung oder eine Funktion, um eine besondere Shell zu öffnen.
Deine Batch wird höchstwahrscheinlich am falschen Ort ausgeführt. Also in dem Verzeichnis, in dem die Batch liegt. Hier sind aber nicht die Anwendungen vorhanden, die du nutzen möchtest (z.B. New-MailboxExportRequest..COM oder.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH). Liest sich außerdem eher wie Powershell-Kommandos.
Öffne deine Verwaltungsshell, führe Echo %cd% aus und schreib in die erste Zeile des Batchskripts, das du erstellen möchtest:
pushd <Verzeichnis, das bei Echo %cd% herauskam>
.Mich würde auch interressieren, welcher Pfad das ist.
Gruß
Snow
Moin,
das sollte Dir weiter helfen: http://msxfaq.de/e2007/managementshell.htm
und ja, es ist ein Powershell-Script
da sollte Dir die PowerGui weiterhelfen http://powergui.org/index.jspa
mit den entsprechenden Exchange-Powerpack - findest Du auch dort http://www.powergui.org/entry.jspa?categoryID=21&externalID=2662
Gruß
24
das sollte Dir weiter helfen: http://msxfaq.de/e2007/managementshell.htm
und ja, es ist ein Powershell-Script
da sollte Dir die PowerGui weiterhelfen http://powergui.org/index.jspa
mit den entsprechenden Exchange-Powerpack - findest Du auch dort http://www.powergui.org/entry.jspa?categoryID=21&externalID=2662
Gruß
24
Hallo,
http://technet.microsoft.com/en-us/library/bb123798.aspx erklärt dir, wie man aus einer Batch (oder Scheduled Task) heraus die PowerShell inkl. Exchange Management-PlugIns startet und darin ein PowerShell-Skript ausführt.
Gruß
Filipp
Gebe ich den Befehl per Hand ein klappts, strate ich den
über eine Batch kommt der Fehler.
Ja, ist doch klar. Hat auch Neomatic schon festgestellt: New-MailboxExportRequest ist ein PowerShell-cmdlet (bzw. ein cmdlet der Exchange-Erweiterung), und das gibt es in Batch-Dateien schlicht und einfach nicht. Und eine Batch-Datei wird immer im Windows-Kommandozeileninterpreter (cmd.exe) ausgeführt, auch wenn du sie aus einer Exchange Management Shell heraus startest.über eine Batch kommt der Fehler.
http://technet.microsoft.com/en-us/library/bb123798.aspx erklärt dir, wie man aus einer Batch (oder Scheduled Task) heraus die PowerShell inkl. Exchange Management-PlugIns startet und darin ein PowerShell-Skript ausführt.
Gruß
Filipp
Das Problem ist, dass die Funktion New-MailboxExportRequest und New-MailboxImportRequest nur dann verfügbar sind, wenn der betreffende Account der die Powershell ausführt die Management-Rolle “Mailbox Import Export” hat.
Das kann man mit folgendem PowerShell-Befehl erreichen: New-ManagementRoleAssignment –Role “Mailbox Import Export” –User “Username”
Danach die Exchangeverwaltungsshell schließen und neu aufrufen, dann sollte das einwandfrei klappen.
Das kann man mit folgendem PowerShell-Befehl erreichen: New-ManagementRoleAssignment –Role “Mailbox Import Export” –User “Username”
Danach die Exchangeverwaltungsshell schließen und neu aufrufen, dann sollte das einwandfrei klappen.
Das Problem ist, dass die Funktion New-MailboxExportRequest und New-MailboxImportRequest nur dann verfügbar sind, wenn der
betreffende Account der die Powershell ausführt die Management-Rolle “Mailbox Import Export” hat.
Genau! Deswegen geht es ja auch, wenn man es "direkt" macht, aber nicht, wenn man es in eine Batch packt. Batch-Dateien werden nämlich bekanntlich unter dem Builtin-Account LOCAL\BATCHUSER ausgeführt!betreffende Account der die Powershell ausführt die Management-Rolle “Mailbox Import Export” hat.
Dann sollte man dem Batchuser direkt mal die Management-Rolle hinzufügen und das Ganze austesten.
Jaja, unbedingt. Wobei natürlich der Account nur lokal "LOCAL\BATCHUSER" heißt. Der wird dann beim Hinzufügen in die Domäne allerdings maskiert und heißt dort einfach "EVERYONE". Also: am besten "EVERYONE" zum Exchange-Org-Admin machen, dann geht das auch mit Batch und Mailboxexport. Alternativ kann man natürlich auch "ANONYMUOUS USER" nehmen. Aber dann sinkt die Performance, weil alle Zugriffe erst noch anonymisiert werden. Ist dafür natürlich besser für den Datenschutz.
Lass dich nicht von @filippg und @Snuffchen irritieren. Die letzten 3 Beiträge von den beiden sind reine Troll-comments. Wobei es @filippg eigentlich besser wissen sollte...
Gruß
Snow
Gruß
Snow
Ich gebe zu: ab 20:54 bin ich i.A. nicht mehr ernst zu nehmen. Aber ich hatte gehofft, das wäre für jeden zu erkennen.
20:22 ist mein voller Ernst.
Unterschiedliche Accounts werden erst interessant, wenn du eben nicht mehr selbst ausführst (per Doppelklick), sondern einen Scheduled Task erstellst - darum ging es hier aber gar nicht.
20:22 ist mein voller Ernst.
Unterschiedliche Accounts werden erst interessant, wenn du eben nicht mehr selbst ausführst (per Doppelklick), sondern einen Scheduled Task erstellst - darum ging es hier aber gar nicht.