locked
Exchange 2010 powershell заведение почтового ящика и изменение RRS feed

  • Вопрос

  • Добрый день!

    Есть скрипт

    Import-CSV -Path "C:\ver3\userlist.csv" -delimiter ";" | ForEach-Object -process {Enable-Mailbox -identity $_.Identity -Alias $_.Alias –Database $_.Database} 
    Import-CSV -Path "C:\ver3\userlist.csv" -delimiter ";" | ForEach-Object -process {Set-CASMailbox -Identity $_.Identity -OwaEnabled $false -ActiveSyncEnabled $false}


    Содержание csv

    Name;GivenName;Surname;Department;Title;Description;Password;DisplayName;Path;Company;sAMAccountName;Userprincipalname;Identity;Database;Alias
    ardasar ardasar;ardasar;ardasar;Inform tech;admins;admins (Москва);a3wr3zyd;ardasar ardasar (Moskva);"OU=Admins,OU=REG,DC=xxx,DC=ru";Companyname;aardasar;aardasar@xxx.ru;xxx.ru/REG/Admins/ardasar ardasar;dag1;aardasar

    Понимаю, что в csv больше параметров, чем нужно, но скрипт является частью другого скрипта (урезан за ненадобностью).

    При выполнении появляется ошибки

    ПРЕДУПРЕЖДЕНИЕ: Агент расширения командлета с индексом 5 создал исключение в OnComplete(). Исключение:
    System.InvalidOperationException: Операция является недопустимой из-за текущего состояния объекта.
       в Microsoft.Exchange.Data.Storage.ExchangePrincipal.get_ServerFullyQualifiedDomainName()
       в Microsoft.Exchange.Data.Storage.MailboxSession.Initialize(MapiStore linkedStore, LogonType logonType,
    ExchangePrincipal owner, DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags,
    GenericIdentity auxiliaryIdentity)
       в Microsoft.Exchange.Data.Storage.MailboxSession.<>c__DisplayClass12.<CreateMailboxSession>b__10(MailboxSession
    mailboxSession)
       в Microsoft.Exchange.Data.Storage.MailboxSession.InternalCreateMailboxSession(LogonType logonType, ExchangePrincipal
     owner, CultureInfo cultureInfo, String clientInfoString, IAccountingObject budget, Action`1 initializeMailboxSession,
    InitializeMailboxSessionFailure initializeMailboxSessionFailure)
       в Microsoft.Exchange.Data.Storage.MailboxSession.CreateMailboxSession(LogonType logonType, ExchangePrincipal owner,
    DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags, CultureInfo cultureInfo, String
    clientInfoString, PropertyDefinition[] mailboxProperties, IList`1 foldersToInit, GenericIdentity auxiliaryIdentity,
    IAccountingObject budget)
       в Microsoft.Exchange.Data.Storage.MailboxSession.ConfigurableOpen(ExchangePrincipal mailbox, MailboxAccessInfo
    accessInfo, CultureInfo cultureInfo, String clientInfoString, LogonType logonType, PropertyDefinition[]
    mailboxProperties, InitializationFlags initFlags, IList`1 foldersToInit, IAccountingObject budget)
       в Microsoft.Exchange.Data.Storage.MailboxSession.OpenAsSystemService(ExchangePrincipal mailboxOwner, CultureInfo
    cultureInfo, String clientInfoString)
       в Microsoft.Exchange.ProvisioningAgent.MailboxLoggerFactory.XsoMailer.Log(AdminLogMessageData data,
    LogMessageDelegate logMessage)
       в Microsoft.Exchange.ProvisioningAgent.AdminLogProvisioningHandler.OnComplete(Boolean succeeded, Exception e)
       в Microsoft.Exchange.Provisioning.ProvisioningLayer.OnComplete(Task task, Boolean succeeded, Exception exception)


    И по второй части скрипта

    ПРЕДУПРЕЖДЕНИЕ: Агент расширения командлета с индексом 1 создал исключение в OnComplete(). Исключение:
    System.InvalidOperationException: Операция является недопустимой из-за текущего состояния объекта.
       в Microsoft.Exchange.Data.Storage.ExchangePrincipal.get_ServerFullyQualifiedDomainName()
       в Microsoft.Exchange.Data.Storage.MailboxSession.Initialize(MapiStore linkedStore, LogonType logonType,
    ExchangePrincipal owner, DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags,
    GenericIdentity auxiliaryIdentity)
       в Microsoft.Exchange.Data.Storage.MailboxSession.<>c__DisplayClass12.<CreateMailboxSession>b__10(MailboxSession
    mailboxSession)
       в Microsoft.Exchange.Data.Storage.MailboxSession.InternalCreateMailboxSession(LogonType logonType, ExchangePrincipal
     owner, CultureInfo cultureInfo, String clientInfoString, IAccountingObject budget, Action`1 initializeMailboxSession,
    InitializeMailboxSessionFailure initializeMailboxSessionFailure)
       в Microsoft.Exchange.Data.Storage.MailboxSession.CreateMailboxSession(LogonType logonType, ExchangePrincipal owner,
    DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags, CultureInfo cultureInfo, String
    clientInfoString, PropertyDefinition[] mailboxProperties, IList`1 foldersToInit, GenericIdentity auxiliaryIdentity,
    IAccountingObject budget)
       в Microsoft.Exchange.Data.Storage.MailboxSession.ConfigurableOpen(ExchangePrincipal mailbox, MailboxAccessInfo
    accessInfo, CultureInfo cultureInfo, String clientInfoString, LogonType logonType, PropertyDefinition[]
    mailboxProperties, InitializationFlags initFlags, IList`1 foldersToInit, IAccountingObject budget)
       в Microsoft.Exchange.Data.Storage.MailboxSession.OpenAsSystemService(ExchangePrincipal mailboxOwner, CultureInfo
    cultureInfo, String clientInfoString)
       в Microsoft.Exchange.ProvisioningAgent.MailboxLoggerFactory.XsoMailer.Log(AdminLogMessageData data,
    LogMessageDelegate logMessage)
       в Microsoft.Exchange.ProvisioningAgent.AdminLogProvisioningHandler.OnComplete(Boolean succeeded, Exception e)
       в Microsoft.Exchange.Provisioning.ProvisioningLayer.OnComplete(Task task, Boolean succeeded, Exception exception)

    Из наблюдений. скрипт не выполняется, если между частями не вставлять паузу (добавлял около 10 секунд, тогда ошибка, которая представлена ниже не появлялась).

    Set-CASMailbox : Не удалось выполнить операцию, поскольку объект 'xxx.ru/REG/Admins/ardasar ardasar' не найден в 'server.xxx.ru'.
    C:\scripts\csv.ps1:3 знак:109
    + Import-CSV -Path "C:\scripts\test.csv" -delimiter ";" | ForEach-Object -process {Set-CASMailbox <<<<  -I
    dentity $_.Identity -OwaEnabled $false -ActiveSyncEnabled $false}
        + CategoryInfo          : NotSpecified: (0:Int32) [Set-CASMailbox], ManagementObjectNotFoundException
        + FullyQualifiedErrorId : A64C766F,Microsoft.Exchange.Management.RecipientTasks.SetCASMailbox

    Собственно последняя ошибка понятна, наличествуют тормоза, но первые две непонятны. Куда копать? Свиду все начинает работать через 5 минут (не сразу), но не уверен, что не обернется проблемами в будущем.

    • Изменено Ardasar 27 мая 2013 г. 9:00 Улучшение читабельности текста
    27 мая 2013 г. 8:58

Все ответы

  • Привет,

    Советую Вам задать Ваш вопрос на ветке Скрипта


    Не забывайте помечать сообщения как ответы и полезные, если они Вам помогли.

    28 мая 2013 г. 10:37
    Модератор
  • Прошу закрыть ветку, т.к. продублировал его в ветке Скрипты.

    К сожалению не могу вставить ссылку в сообщение, прошу модератора добавить в данную ветку.


    Новое название темы (изменено)

    Powershell, Exchange 2010, исключение в OnComplete(), Enable-Mailbox Set-CASMailbox

    • Изменено Ardasar 28 мая 2013 г. 11:03
    28 мая 2013 г. 11:00
  • Тема задана в новой ветке Скриптинг:

    http://social.technet.microsoft.com/Forums/ru-RU/scrlangru/thread/34ff7cf7-8355-49fc-adea-cbfac7fd3d0d/#34ff7cf7-8355-49fc-adea-cbfac7fd3d0d


    Не забывайте помечать сообщения как ответы и полезные, если они Вам помогли.

    28 мая 2013 г. 11:22
    Модератор