MSG 324 Microsoft Exchange Server Power Shell Exchange

  • Slides: 21
Download presentation
MSG 324 Microsoft Exchange Server: 基于 命令行和脚本的管理

MSG 324 Microsoft Exchange Server: 基于 命令行和脚本的管理

Power Shell

Power Shell

Exchange Server 2007 管理 =“更简单” + “更 高效” + “更灵活” 邮箱统计 信息 Exchange Server

Exchange Server 2007 管理 =“更简单” + “更 高效” + “更灵活” 邮箱统计 信息 Exchange Server 2003 (VBScript) Exchange Server 2007 (Power. Shell Script) Set list. Exchange_Mailboxs = Get. Object("winmgmts: {impersonation. Level =impersonate}!\COMPUTERNAMEROOTMicrosoft. Exchange. V 2"). Instances. Of("Exchange_Mailbox") get-mailboxstatistics –server $servername For Each obj. Exchange_Mailbox in list. Exchange_Mailboxs WScript. echo "Assoc. Content. Count =” + obj. Exchange_Mailbox. Assoc. Content. Count "Assoc. Content. Count WScript. echo " Date. Discovered. Absent. In. DS =” + obj. Exchange_Mailbox. Date. Discovered. Absent. In. DS WScript. echo " Deleted. Message. Size. Extended =” + obj. Exchange_Mailbox. Deleted. Message. Size. Extended WScript. echo " Last. Logged. On. User. Account =” + obj. Exchange_Mailbox. Last. Logged. On. User. Account WScript. echo " Last. Logoff. Time =” + obj. Exchange_Mailbox. Last. Logoff. Time WScript. echo " Last. Logon. Time =” + obj. Exchange_Mailbox. Last. Logon. Time WScript. echo " Legacy. DN =” + obj. Exchange_Mailbox. Legacy. DN WScript. echo " Mailbox. Display. Name =” + obj. Exchange_Mailbox. Display. Name WScript. echo " Mailbox. GUID =” + obj. Exchange_Mailbox. GUID WScript. echo " Server. Name =” + obj. Exchange_Mailbox. Server. Name WScript. echo " Size =” + obj. Exchange_Mailbox. Size WScript. echo " Storage. Group. Name =” + obj. Exchange_Mailbox. Storage. Group. Name WScript. echo " Storage. Limit. Info =” + obj. Exchange_Mailbox. Storage. Limit. Info WScript. echo " Store. Name =” + obj. Exchange_Mailbox. Store. Name WScript. echo " Total. Items =” + obj. Exchange_Mailbox. Total. Items Next 数据库管 理 Dim Stor. Group as New CDOEXM. Storage. Group Stor. Group. Data. Source. Open "LDAP: //" + DCServer + "/ CN=First Storage Group, CN= =First Administrative Group, CN=Information. Store, CN=" + Server + ", CN=Servers, CN=First CN=Administrative Groups, CN=First Organization, CN=Microsoft Exchange, CN=Services, CN=Configuration, " + Domain. Name Stor. Group. Move. Log. Files("C: newlog. Path", 0) 收件人管 理 Dim obj. Mailbox As CDOEXM. IMailbox. Store Set obj. Mailbox = Get. Object("LDAP: //" + DCServer + "CN=FOO, CN=users, " + Domain. Name) obj. Mailbox. Create. Mailbox "LDAP: //" + DCServer + "/CN=Private MDB, CN=First Storage Group, CN= =First Administrative Group, CN=Information. Store, CN=" + Server + ", CN=Servers, CN=First CN=Administrative Groups, CN=First Organization, CN=Microsoft Exchange, CN=Services, CN=Configuration, " + Domain. Name move-storagegrouppath -identity “First Storage Group“ –log "C: newlog. Path” enable-mailbox -identity domainFOO –database “First Storage GroupPrivate MDB”

Exchange Server 2007 管理构架 GUI 安装 CLI Win. Forms ADO. Net Early-bound objs Power.

Exchange Server 2007 管理构架 GUI 安装 CLI Win. Forms ADO. Net Early-bound objs Power. Shell 数据提供者 Power. Shell 引擎 Exchange 小命令 配置数据访问 进程 边界 MAPI 数据库 注册表 AD Meta base

获得帮助!使用外壳程序 使用help找到任务和类别 Get-help *User* -role *UM* –component *recipient* 使用help分页支持来得到更多信息 Get-mailbox -? | more Help

获得帮助!使用外壳程序 使用help找到任务和类别 Get-help *User* -role *UM* –component *recipient* 使用help分页支持来得到更多信息 Get-mailbox -? | more Help remove-storagegroup 用format-list查看输出对象属性 Get-Mailbox Test. User | format-list Get-Mailbox Test. User | fl *quota* 用get-member查看输出对象的属性类型信息 Get-storagegroup Test. User | get-member

关键概念: 识别符 所有存储在活动目录里的对象都可以通过名字,GUID或DN来唯一识别 一个识别符在创建一个新对象的时候创建 new-Storage. Group -name SG 1 -server E 12 admin 当一个识别符被创建后,它可被用来何对象交互

关键概念: 识别符 所有存储在活动目录里的对象都可以通过名字,GUID或DN来唯一识别 一个识别符在创建一个新对象的时候创建 new-Storage. Group -name SG 1 -server E 12 admin 当一个识别符被创建后,它可被用来何对象交互 set-Storage. Group SG 1 -param 1 arg 1 识别符使用类似URL命名方式来帮助管理员查找对象 URL: “ftp: //server/container/resource. exe” Identity: “containerresource 1resource 2…” get-Mailbox. Database “Mailbox Store” get-Mailbox atcxmji remove-Address. List 1Address. List 2 无需分别指定服务器和域 识别符也支持通过GUID或DN来传递

搜索 无参数Get任务返回所有实例. 可使用给予客户端 的过滤来减少输出: Get-Transport. Server | where { $_. Message. Tracking. Enabled –eq

搜索 无参数Get任务返回所有实例. 可使用给予客户端 的过滤来减少输出: Get-Transport. Server | where { $_. Message. Tracking. Enabled –eq $false } 支持通配符 Get-Mailbox *joe* Get-Exchange. Server *North* Get-Send. Connector *. hp. com 有些返回大批量对象的任务支持服务气端过滤 Get-Mailbox -filter { Display. Name -like ‘*Test*’ }

管道 通过管道可进行批量管理 get-Storage. Group | set-Storage. Group -param 1 arg 1 -param 2 arg

管道 通过管道可进行批量管理 get-Storage. Group | set-Storage. Group -param 1 arg 1 -param 2 arg 2 同样名词任务的管道(cmd 1 | cmd 2)100%可用 Get-Mailbox redmondmihaijal | remove-mailbox 及一些不同名词的任务 Get-Mailbox atcxmji | Test-Mapi. Connectivity 即使不能用管道也可以用foreach作任何事 Get-Exchange. Server | foreach { get-Storagegroup –server $_. Name }

防止意外 使用whatif, confirm, verbose 除get-*,其他任务都支持–whatif 默认的确认为开 处理非法的配置对象: 查看返回对象的状态 $object = Get-ELCMailbox. Policy ELCp 1

防止意外 使用whatif, confirm, verbose 除get-*,其他任务都支持–whatif 默认的确认为开 处理非法的配置对象: 查看返回对象的状态 $object = Get-ELCMailbox. Policy ELCp 1 if ( $object. Is. Valid –eq $false ) { $whats. Wrong = $object. Validate() $whats. Wrong | select-object Invalid. Data, Description, Property. Definition } 使用set-* 任务修复配置对象 $fixed. Object | Set-ELCMailbox. Policy

综合运用 运用前面介绍的概念可创建简单的和非常复杂的脚本 >> Get-Mailbox -server E 12 admin | foreach { get-Mailbox. Database $_.

综合运用 运用前面介绍的概念可创建简单的和非常复杂的脚本 >> Get-Mailbox -server E 12 admin | foreach { get-Mailbox. Database $_. Database } | group Name >> 1. . 5 | foreach { new-storagegroup -name (“SG $_”) server E 12 admin | new-mailboxdatabase “MB” } >> Get-Distribution. Group new. Employees | get. Distribution. Group. Member | enable-mailbox –database new. Db 1 >> function Foo { get-message –filter { “$_. Subject” –like “*$($args[0])*” } | remove-message }

Exchange Server 2007管理

Exchange Server 2007管理

资源 Beta 2: http: //www. microsoft. com/exchange/preview/default. mspx 博客: http: //www. viveksharma. com/techlog http:

资源 Beta 2: http: //www. microsoft. com/exchange/preview/default. mspx 博客: http: //www. viveksharma. com/techlog http: //msexchangeteam. com 讨论组 http: //forums. microsoft. com/Tech. Net/default. aspx? Forum. Group. ID=235&Site. ID=17 新闻组 http: //communities 2. microsoft. com/communities/newsgroups/en-us/default. aspx 聊天组和互联网广播 http: //www. microsoft. com/communities/chats/default. mspx http: //www. microsoft. com/usa/webcasts/default. asp MSDN 和 Tech. Net http: //microsoft. com/msdn http: //microsoft. com/technet 虚拟实验室 http: //www. microsoft. com/technet/traincert/virtuallab/rms. mspx

Advanced Technology Center (ATC) Vision: Become a leading MS engineering organization developing strategic and

Advanced Technology Center (ATC) Vision: Become a leading MS engineering organization developing strategic and innovative products for the world market Focus Area: • • • 1: Unified Communication 2: Web Technologies 3: Mobile Computing and Embedded System(MTC) 4: Digital Entertainment 5: Emerging-market-specific Growth: • • • 20 300(emploee, 40% growth in FY 07) 7 30 (Project) 0 14(Partner)

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U. S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.