Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2
Topic Last Modified: 2012-11-16
Use the Remove-Mailbox cmdlet to delete the user account associated with a particular mailbox from Active Directory and to process the associated, disconnected mailbox as directed by the specified parameters.
Syntax
Remove-Mailbox -Identity <MailboxIdParameter>
[-Arbitration <SwitchParameter>] [-Confirm
[<SwitchParameter>]] [-DomainController <Fqdn>]
[-ForReconciliation <SwitchParameter>] [-IgnoreDefaultScope
<SwitchParameter>] [-IgnoreLegalHold <SwitchParameter>]
[-KeepWindowsLiveID <SwitchParameter>] [-Permanent <$true
| $false>] [-RemoveLastArbitrationMailboxAllowed
<SwitchParameter>] [-WhatIf [<SwitchParameter>]]
|
Remove-Mailbox -Database <DatabaseIdParameter>
-StoreMailboxIdentity <StoreMailboxIdParameter> [-Arbitration
<SwitchParameter>] [-Confirm [<SwitchParameter>]]
[-DomainController <Fqdn>] [-ForReconciliation
<SwitchParameter>] [-IgnoreDefaultScope
<SwitchParameter>] [-IgnoreLegalHold <SwitchParameter>]
[-RemoveLastArbitrationMailboxAllowed <SwitchParameter>]
[-WhatIf [<SwitchParameter>]]
|
Detailed Description
Use the Identity parameter alone to disconnect the mailbox from the user and remove the user object from Active Directory. The mailbox object still exists. By default, this mailbox remains in the Exchange database for 30 days, and then is deleted.
Use the Identity and Permanent parameters to disconnect the mailbox from the user, remove the user object from Active Directory, and remove the mailbox object from the Exchange database. The mailbox object doesn't remain in the Exchange database as a disconnected mailbox.
Use the Database and StoreMailboxIdentity parameters to remove a mailbox object from the Exchange database. In this case, the mailbox object has already been disconnected from the user. For example, if you run the Disable-Mailbox cmdlet, the Exchange mailbox object still exists, but is disconnected from the Active Directory user object. You can use the Database and StoreMailboxIdentity parameters to remove this disconnected mailbox object.
You need to be assigned permissions before you can run this cmdlet. Although all parameters for this cmdlet are listed in this topic, you may not have access to some parameters if they're not included in the permissions assigned to you. To see what permissions you need, see the "Recipient Provisioning Permissions" section in the Mailbox Permissions topic.
Parameters
Parameter | Required | Type | Description | ||
---|---|---|---|---|---|
Identity |
Required |
Microsoft.Exchange.Configuration.Tasks.MailboxIdParameter |
The Identity parameter identifies the mailbox object that you want to remove. This parameter accepts the following values:
The Identity parameter can't be used with the Database parameter. |
||
Database |
Required |
Microsoft.Exchange.Configuration.Tasks.DatabaseIdParameter |
The Database parameter specifies the database that contains the mailbox object. You can use one of the following values:
This parameter must be used in conjunction with the StoreMailboxIdentity parameter. The Database parameter can't be used with the Identity parameter. If you've disconnected a mailbox from its associated user and want to remove the mailbox object from the Exchange store, use the Database and StoreMailboxIdentity parameters. |
||
StoreMailboxIdentity |
Required |
Microsoft.Exchange.Configuration.Tasks.StoreMailboxIdParameter |
The StoreMailboxIdentity parameter specifies the mailbox object to remove. The StoreMailboxIdentity parameter is used in conjunction with the Database parameter to remove the mailbox object from the Exchange database. If you've disconnected a mailbox from its associated user and want to remove the mailbox object from the Exchange store, use the Database and StoreMailboxIdentity parameters. |
||
Arbitration |
Optional |
System.Management.Automation.SwitchParameter |
The Arbitration parameter specifies that the mailbox for which you are executing the command is an arbitration mailbox. Arbitration mailboxes are used for managing approval workflow. For example, an arbitration mailbox is used for handling moderated recipients and distribution group membership approval. |
||
Confirm |
Optional |
System.Management.Automation.SwitchParameter |
The Confirm switch causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm switch. |
||
DomainController |
Optional |
Microsoft.Exchange.Data.Fqdn |
The DomainController parameter specifies the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to Active Directory. |
||
ForReconciliation |
Optional |
System.Management.Automation.SwitchParameter |
This parameter is reserved for internal Microsoft use. |
||
IgnoreDefaultScope |
Optional |
System.Management.Automation.SwitchParameter |
The IgnoreDefaultScope parameter instructs the command to ignore the default recipient scope setting for the Exchange Management Shell session and use the entire forest as the scope. This allows the command to access Active Directory objects that aren't currently in the default scope. Using the IgnoreDefaultScope parameter introduces the following restrictions:
|
||
IgnoreLegalHold |
Optional |
System.Management.Automation.SwitchParameter |
The IgnoreLegalHold switch ignores the legal hold status of the mail user and allows you to remove the mailbox that’s on legal hold.
|
||
KeepWindowsLiveID |
Optional |
System.Management.Automation.SwitchParameter |
This parameter applies to objects in the cloud-based service. It isn’t available for on-premises deployments. The KeepWindowsLiveID parameter preserves the Windows Live ID that's associated with the deleted mailbox. |
||
Permanent |
Optional |
System.Boolean |
The Permanent parameter, when used in conjunction with
the Identity parameter, specifies whether to disconnect the
mailbox from the user, remove the associated user object from
Active Directory, and remove the mailbox object from the Exchange
database. The two possible values for this parameter are
|
||
RemoveLastArbitrationMailboxAllowed |
Optional |
System.Management.Automation.SwitchParameter |
The RemoveLastArbitrationMailboxAllowed switch specifies whether the mailbox that you're trying to use is the last arbitration mailbox in the organization. |
||
WhatIf |
Optional |
System.Management.Automation.SwitchParameter |
The WhatIf switch instructs the command to simulate the actions that it would take on the object. By using the WhatIf switch, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf switch. |
Input Types
To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types. If the Input Type field for a cmdlet is blank, the cmdlet doesn’t accept input data.
Return Types
To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types. If the Output Type field is blank, the cmdlet doesn’t return data.
Examples
EXAMPLE 1
This example disconnects the user John Rodman's (john) mailbox from the user account and removes the mailbox object from Active Directory. The mailbox remains in the Exchange database for the deleted mailbox retention period configured for the mailbox database.
Copy Code | |
---|---|
Remove-Mailbox -Identity contoso\john |
EXAMPLE 2
This example disconnects the user John Rodman's (john) mailbox from the user account, removes the mailbox object from Active Directory, and removes the mailbox from the Exchange database.
Copy Code | |
---|---|
Remove-Mailbox -Identity contoso\john -Permanent $true |
EXAMPLE 3
This example removes John Rodman's mailbox from the Exchange database, assuming the mailbox has already been disconnected from the user. The example uses the Get-Mailbox cmdlet to retrieve the mailbox GUID value using the display name of the disconnected mailbox. This value is needed for the StoreMailboxIdentity parameter of the Remove-Mailbox cmdlet.
Copy Code | |
---|---|
$Temp = Get-Mailbox | Where {$_.DisplayName -eq 'John Rodman'} Remove-Mailbox -Database Server01\Database01 -StoreMailboxIdentity $Temp.MailboxGuid |