Удаление почтового ящика в exchange server

Delete mailbox without deleting user account in exchange 2013

Problem persist?

If the problem persists, you can see in the “HomeMDB” AD Attribute User if the right database is tagged! if not, you can “Edit” it to add the right value!

You can search your “HomeMDB” value when you connect on your domain in ADSI Edit > Configuration

Browse to :

CN=Configuration,DC=your,DC=domain > CN=Services > CN=Microsoft Exchange > CN=ORGANIZATION > CN=Administrative Groups > CN=Exchange Administrative Group (XXXXXXX) > CN=Databases

1 CN=Configuration,DC=your,DC=domain>CN=Services>CN=Microsoft Exchange>CN=ORGANIZATION>CN=Administrative Groups>CN=Exchange Administrative Group(XXXXXXX)>CN=Databases

Here you have databases list. You do copy the “Distinguished Name” value of database and assign it to your user.

The type of value is :

CN=DATABASE,CN=Databases,CN=Exchange Administrative Group (XXXXXXXXX),CN=Administrative Groups,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=YOUR,DC=DOMAIN

1 CN=DATABASE,CN=Databases,CN=Exchange Administrative Group(XXXXXXXXX),CN=Administrative Groups,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=YOUR,DC=DOMAIN

Reload the command line:

PowerShell

Get-MailboxDatabase «DATABASE» | Clean-MailboxDatabase

1 Get-MailboxDatabase»DATABASE»|Clean-MailboxDatabase

And verify again:

Get-MailboxDatabase «DATABASE» | Get-MailboxStatistics | where {$_.DisconnectReason -ne $null} | ft displayname,database,disconnectreason -auto

1 Get-MailboxDatabase»DATABASE»|Get-MailboxStatistics|where{$_.DisconnectReason-ne$null}|ft displayname,database,disconnectreason-auto

Tips !

If you want to change the HomeMDB for multiple users, you can execute this Powershell cdmlet :

PowerShell

Get-ADUser -Filter * -SearchBase «OU=YOUR-OU,DC=YOUR,DC=DOMAIN» | Set-ADUser -Replace @{HomeMDB=»CN=DATABASE,CN=Databases,CN=Exchange Administrative Group (XXXXXXXXXXX),CN=Administrative Groups,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=YOUR,DC=DOMAIN»}

1 Get-ADUser-Filter*-SearchBase»OU=YOUR-OU,DC=YOUR,DC=DOMAIN»|Set-ADUser-Replace@{HomeMDB=»CN=DATABASE,CN=Databases,CN=Exchange Administrative Group (XXXXXXXXXXX),CN=Administrative Groups,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=YOUR,DC=DOMAIN»}

I hope this post has helped you !

What do you need to know before you begin?

  • Estimated time to complete each procedure: 2 minutes.

  • For more information about accessing and using the EAC, see Exchange admin center in Exchange Server. To learn how to open the Exchange Management Shell in your on-premises Exchange organization, see Open the Exchange Management Shell.

  • You need to be assigned permissions before you can perform this procedure or procedures. To see what permissions you need, see the «Recipient Provisioning Permissions» section in the Recipients Permissions topic.

  • For information about keyboard shortcuts that may apply to the procedures in this topic, see Keyboard shortcuts in the Exchange admin center.

Tip

Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection.

См. также

  • Папки и элементы в веб-службах Exchange
  • Разработка клиентов веб-служб для Exchange
  • Папка «элементы с возможностью восстановления»
  • Exchange 2013: удаление повторяющихся рядов программным способом из серверов Exchange Server
  • Exchange 2013: Программное удаление задач из учетной записи на серверах Exchange Server
  • Exchange 2013: пустые папки на серверах Exchange Server программным способом
  • Exchange 2013: Программное удаление папок из серверов Exchange Server
  • Exchange 2013: Программное удаление многих элементов из серверов Exchange Server
  • Exchange 2013: Программное удаление контактов из серверов Exchange Server
  • Удаление встреч и отмена собраний с помощью EWS в Exchange
  • Управление параметрами сохраняемого приложения с помощью EWS в Exchange

Disable mailboxes

Use the EAC to disable a mailbox

  1. In the EAC, go to Recipients, and click the tab for the type of mailbox that you want to disable:

    • Mailboxes for user mailboxes and linked mailboxes.

    • Shared for shared mailboxes.

Use the Exchange Management Shell to disable a mailbox

To disable a mailbox, use this syntax:

This example disables the user mailbox that has the alias value danj.

This example disables the room mailbox named Conf Room 31/1234 (12).

How do you know this worked?

To verify that you’ve successfully disabled a mailbox, do any of these steps:

  • Notes:

    When you delete a mailbox, the value of the DisconnectReason property is also , but the corresponding Active Directory user account is also deleted.

    Then, run the previous command, which should now return results.

Delete mailboxes

Use the EAC to delete a mailbox

  1. In the EAC, go to the location for the type of mailbox that you want to delete:

    • Recipients > Mailboxes for user mailboxes and linked mailboxes.

    • Recipients > Resources for room and equipment mailboxes.

    • Recipients > Shared for shared mailboxes.

    • Public folders > Public folder mailboxes for public folder mailboxes.

To delete a mailbox, use this syntax:

This example deletes the equipment mailbox named Fleet Van (16).

How do you know this worked?

To verify that you’ve successfully deleted a mailbox, do any of these steps:

  • In Active Directory Users and Computers, verify that the associated account is no longer listed. Note that mailbox types other than user and linked mailboxes also have associated user accounts that are disabled (for example, room, equipment, arbitration, shared, and public folder mailboxes).

  • Notes:

    Then, run the previous command, which should now return results.

Установка

Сначала делаем резервную копию AD. Хотя, возможность последующего восстановления из неё весьма сомнительна. Штатными средствами на DC: Start — Administrative Tools — Windows Server Backup.

Для удобства выполнения всех манипуляций, связанных с установкой Exchange 2013, с одного сервера устанавливаем на него (на новый сервер Exchange 2013) средства администрирования. В Windows Power-Shell:

Import-Module ServerManager
Install-WindowsFeature RSAT-ADDS
Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation

(Да, это одна очень длинная строка. Но за то все просто и быстро.)

Устанавливаем на сервер:

Остальное, если потребуется, подскажет программа установки сервера Exchange 2013.

В качестве дистрибутива использовался не тот ISO, что выложен на MVLS (www.microsoft.com/Licensing/servicecenter), а тот, что в открытом доступе — KB2936880

(http://www.microsoft.com/ru-RU/download/details.aspx?id=43103), файл Exchange2013-x64-cu5.exe. Он в 3 раза меньше и на много более свежий. Это самораспаковывающийся архив. Независимо от выбранного при скачивании языка (RUS/ENG), скачивается один и тот же файл. Язык интерфейса будет зависеть от системы, с которой он запускается.

Запускаем его и распаковываем на новый сервер (D:\Inst\exch2013\).

Дальнейшие манипуляции по подготовке AD нужно выполнять:
— от имени учетной записи с правами  «Администраторы схемы» и «Администраторы предприятия»,
— на машине в том же сайте AD, что и хозяин схемы.

У нас все права есть и новый сервер находится в том же сайте, что и хозяин схемы, поэтому выполняем все на новом сервере.
В командной строке с повышенными привилегиями переходим в каталог с установочным пакетом (D:\Inst\exch2013) и выполняем команду:

Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms

После завершения расширения схемы нужно дождаться репликации с остальными DC. В одном сайте репликация должна проходить достаточно быстро, не больше 5 минут. Можно как-то проконтролировать завершение процесса с помощью repadmin. В общем, ждем 10 минут и переходим к подготовке AD:

Setup.exe /PrepareAD /IAcceptExchangeServerLicenseTerms

При установке первого сервера в организации Exchange в этой же команде еще указывают имя новой организации Exchange. Но у нас Exchange уже действует, поэтому имя не нужно.

После завершения подготовки AD также ждем минут 10 и запускаем подготовку доменов:

Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms

Теперь нужно дождаться репликации на ВСЕ контроллеры домена, т.е. во всех сайтах. Межсайтовая репликация может происходить довольно долго, и, как правило, её расписание включает ночное время. Можно отложить процесс до завтра, либо инициировать репликацию принудительно через апплет “Sites and Services”. Но тогда уже перед продолжением нужно будет убедиться, что репликация закончилась.

Установку Exchange 2013 запускаем из уже распакованного дистрибутива командой setup.exe. Мастер установки делает проверки системы, если чего-то не хватает, то он либо сам поставит, либо сообщит, что нужно еще сделать. Сама установка достаточно тривиальна. Основных ролей теперь две: сервер клиентского доступа и сервер почтовых ящиков. Эти роли включают в себя все роли версии 2010, кроме пограничного транспортного сервера. В Exchange 2013 SP1 роль пограничного сервера может быть установлена отдельно. Мы её не использовали ни в 2010, ни в 2013. Сам сервер мы ставили в каталог по умолчанию, на диск C:, а для почтовых баз подготовлен диск D:.

Установка заняла минут 20.

Parameters

-Archive

The on-premises mail user and its associated cloud-based mailbox aren’t removed if you use this switch.

Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Confirm

The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on if the cmdlet requires confirmation before proceeding.

  • Destructive cmdlets (for example, Remove-* cmdlets) have a built-in pause that forces you to acknowledge the command before proceeding. For these cmdlets, you can skip the confirmation prompt by using this exact syntax: .
  • Most other cmdlets (for example, New-* and Set-* cmdlets) don’t have a built-in pause. For these cmdlets, specifying the Confirm switch without a value introduces a pause that forces you acknowledge the command before proceeding.
Type: SwitchParameter
Aliases: cf
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-DomainController

The DomainController parameter specifies the domain controller that’s used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.

Type: Fqdn
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Identity

The Identity parameter specifies the cloud-based mailbox. Valid values are:

  • ADObjectID
  • GUID
  • Distinguished name (DN)
  • Domain\Username
  • User principal name (UPN)
  • LegacyExchangeDN
  • Email address
  • User alias
Type: RemoteMailboxIdParameter
Position: 1
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-IgnoreDefaultScope

The IgnoreDefaultScope switch tells the command to ignore the default recipient scope setting for the Exchange Management Shell session, and to use the entire forest as the scope. This allows the command to access Active Directory objects that aren’t currently available in the default scope.

Using the IgnoreDefaultScope switch introduces the following restrictions:

  • You can’t use the DomainController parameter. The command uses an appropriate global catalog server automatically.
  • You can only use the DN for the Identity parameter. Other forms of identification, such as alias or GUID, aren’t accepted.
Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-IgnoreLegalHold

Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-WhatIf

The WhatIf switch simulates the actions of the command. You can use this switch to view the changes that would occur without actually applying those changes. You don’t need to specify a value with this switch.

Type: SwitchParameter
Aliases: wi
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Applies to: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

Changing User Mailbox Department and Title

In rare situations, you may need to change user’s department and title. Use the following command when you need are required.

Set-User -Identity “<Name/DisplayName/Alias/User Principal Name>” -Department “<Name of Department>” -Title “<Designation or Title>”

1 Set-User-Identity“<NameDisplayNameAliasUser Principal Name>”-Department“<Name of Department>”-Title“<Designation orTitle>”

Example

Again, take an example of user “Karim Buzdar” and change or set his department or title.

Set-User -Identity “karim buzdar” -Department “IT” -Title “IT Officer”

1 Set-User-Identity“karim buzdar”-Department“IT”-Title“IT Officer”

Creating a User Mailbox

Let us start with creating a user mailbox. Following is the complete syntax:

New-Mailbox -Name <Name>  -UserPrincipalName <UPN> -Password (ConvertTo-SecureString -String ‘<Password>’ -AsPlainText -Force) —

1 New-Mailbox-Name<Name> -UserPrincipalName<UPN>-Password(ConvertTo-SecureString-String'<Password>’-AsPlainText-Force)-Alias<Alias>-FirstName<FirstName>-LastName<LastName>-DisplayName<DisplayName>-OrganizationalUnit<OU>

Where

-Name specifies the name of the object in an active directory.

-DisplayName is an optional parameter. If not specified, a value of name parameter is used.

Example

The example below will illustrate how you can create a user mailbox.

New-Mailbox -Name  “Karim Buzdar”  -UserPrincipalName [email protected] -Password (ConvertTo-SecureString -String ‘@password1′ -AsPlainText -Force) -Alias ‘karimbuzdar’ -FirstName karim -LastName buzdar -DisplayName “karim buzdar” -OrganizationalUnit Users

1 New-Mailbox-Name “Karim Buzdar” -UserPrincipalName [email protected](ConvertTo-SecureString-String‘@password1′-AsPlainText-Force)-Alias‘karimbuzdar’-FirstName karim-LastName buzdar-DisplayName“karim buzdar”-OrganizationalUnit Users

If you would like to prompt for the password during runtime, slightly change the above command.

New-Mailbox -Name  “Karim Buzdar”  -UserPrincipalName [email protected] -Password (Read-host “Enter Password” -AsSecureString) -Alias ‘karimbuzdar’ -FirstName karim -LastName buzdar -DisplayName “karim buzdar” -OrganizationalUnit Users

1 New-Mailbox-Name “Karim Buzdar” -UserPrincipalName [email protected](Read-host“Enter Password”-AsSecureString)-Alias‘karimbuzdar’-FirstName karim-LastName buzdar-DisplayName“karim buzdar”-OrganizationalUnit Users

 Get-Mailbox -Identity “<Name/DisplayName/Alias/User Principal Name>”

1  Get-Mailbox-Identity“<NameDisplayNameAliasUser Principal Name>”

Удаление неправильно выведенного из строя сервера Exchange

Бывают случаи, когда сервер исчез/перезалился/потерялся без удаления на нём Exchange, но остался в системе. Избавиться от него и его хвостов одной кнопкой, к сожалению, не получится.

Есть два пути для удаления следов:

  • Через режим восстановления
  • Через ручное удаление, с подчисткой схемы

Я являюсь категорическим противником второго варианта. Никогда не знаешь, всплывёт где-нибудь когда-нибудь или нет. Поэтому, делюсь удалением через восстановление.

Берём такую же операционную систему, как и на потерянном сервере. Производим установку Exchange через командую строку с использованием ключа /Mode:RecoverServer.

После установки, перезагружаемся и запускаем удаление:

После удаления, у меня подчистились все хвосты неправильно удалённого сервера Exchange.

Возможные ошибки

Сервер может не установиться до конца. Это не страшно. Если была пройдена проверка перед установкой, установка началась и какие-то из компонентов установились, но потом на чём-нибудь свалилось в ошибку — всё ок. Можно перезагрузиться и запустить удаление. В моих случаях происходило полное удаление сервера.

Ошибка «The language pack bundle could not be found or is corrupt.»

На этапе проверки, перед установкой, возникла следующая ошибка:

Эта ошибка решилась удалением на сервере ветки реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ExchangeServer\v15\Lanaguage Packs

Описание решения есть у Микрософт: https://support.microsoft.com/ru-ru/help/3069005/error-when-you-try-to-install-exchange-server-2013-in-recoverserver-mo

Ошибка: После того, как установка свалилась, не стартует удаление/установка Exchange.

Мне помогло удаление под веткой HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ExchangeServer\v15\* всех значений Action и Watermark:

(3 оценок, среднее: 5,00 из 5) Загрузка.

Понравилась статья? Поделиться с друзьями:
Быть в курсе нового
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: