在很多情况下可能管理员需要将 Exchange 邮件服务器中用户邮箱的数据(邮件)进行导出。比如:需要提出某个用户在某一时刻的邮箱数据状态,或者对用户的邮箱数据(邮件)进行迁移等。
在 早期的 Exchange Server 中,可以使用 Export-Mailbox 来将用户邮箱导出为 PST 文件。但是这需要满足以下必要条件:
l 必须在进行邮箱导出的 Exchange Server 服务器安装 Outlook
l PST 文件必须放置在进行操作的 Exchange Server 服务器上
l 大数据量操作时,操作的命令窗口必须保证持续打开不能中途关闭窗口
对于 Exchange Server 2010 SP1 来讲,直接提供了用户邮箱导出为 PST 文件的功能。但是这一功能不再需要在其上安装 Outlook 等其它软件或工具,直接利用邮箱导出请求命令来完成。此外,导出的 PST 文件被要求放置在一个 UNC 路径下的网络存储位置,这样就避免了占用 Exchange Server 2010 服务器的自身空间。
那么,在 Exchange Server 2010 SP1 中的具体操作是什么呢?
首先,要明确的是 Exchange Server 2010 SP1 不提供在 EMC 中进行用户邮箱导出操作功能。要在 Exchange Server 2010 SP1 中使用用户邮箱导出功能,只能使用 EMS进行操作。而且操作的 Exchange 服务器管理员必须要成为“邮箱导入导出角色”。默认情况下,Exchange 邮件系统中的任何用户和组都不属于这一角色。可以通过以下命令使用户成为“邮箱导入导出角色”。
New-ManagementRoleAssignment
以为 Administrator 用户账户分配“邮箱导入导出角色”为例,命令如下:
New-ManagementRoleAssignment -Name "Import Export_Domain Admins" -User "Administrator" -Role "Mailbox Import Export"
接下来通过创建邮箱导出请求对邮箱进行导出。创建导出请求的命令如下:
New-MailboxExportRequest
以为将用户“Zhangsan”的主邮箱导出到文件服务器“192.168.80.30”为例,命令如下:
New-MailboxExportRequest -Mailbox zhangsan -FilePath \\192.168.80.30\mailbak\zhangsan.pst
同时,New-MailboxExportRequest 还支持将用户邮箱中的特定文件夹导出为PST,如:将用户“Zhangsan”的“收件箱”导出到 PST:
New-MailboxExportRequest -Mailbox zhangsan -IncludeFolders "#Inbox#" -FilePath \\192.168.80.30\mailbak\zhangsan_inbox.pst
不过,需要注意,邮箱导出请求创建之后,即使导出操作已经完成,这些导出请求是不会被自动删除的。可以通过以下命令查看现有的邮箱导出请求:
Get-MailboxExportRequest
可以看到之前创建的两个邮箱导出请求均存在于列表中。对于已完成的邮箱导出请求,已经没有必要继续存在请求列表中,可以使用以下命名将其删除:
Remove-MailboxExportRequest
以删除之前创建的邮箱导出请求为例,基于“ZhangSan”用户的邮箱导出请求“MailboxExport1”的状态为“Completed”,所以可以将其删除了。具体操作如下:
Remove-MailboxExportRequest -Identity "zhangsan\mailboxexport1"