Troca 2007/2010 - Exportar todas as configurações do Registro usando o PowerShell ...

por Andy Grogan em 02 de setembro de 2009 · 0 comentários

no Exchange 2007 (Geral) , Configurações do Registro do Exchange , Serviços de câmbio , Powershell

Vindo a fazer um pouco arrumado avaliação e desempenho recentemente em um número dos meus servidores Exchange no trabalho, e enquanto isso eu notei que eu tenho (ao longo dos anos) fez uma série poucas mudanças para o registro do Windows em relação aos serviços do Exchange.
Enquanto revendo essas mudanças, eu lembro que havia uma série de razões pelas quais eu tinha feito - por exemplo, o desempenho e problemas de transporte que eu tinha deparam com os fornecedores.

No entanto, o fato de que eu tinha encontrado estas alterações novamente e dado que as razões para fazê-los não é o foco deste artigo, você poderia ser perdoado por perguntar "por que eu levantei-lo?"

Bem duas coisas me ocorreu enquanto eu estava revendo essas configurações:

  1. Se eu tivesse de restauração do backup e não usando o "estado do sistema" eu perdi todos eles e acham muito difícil descobrir que mudanças fazer novamente em uma situação de restauração
  2. Atravessar os serviços do Exchange no registro é difícil ir usando Regedit

Assim, dado o acima eu comecei a pensar sobre uma maneira de exportar toda a troca as configurações do registro centric do Exchange em um servidor em um arquivo - o que pode ser usado para fins de restauração ou de referência mais tarde.
Eu passei por uma série de métodos, por exemplo, a criação de um pequeno aplicativo em C # usando a classe Registry, e VBScript - no entanto, no final, eu estabeleci-me em uma mistura de Powershell eo aplicativo de linha de comando do Registro (Regedit.exe).

O que se segue é o script que eu vim com:

  $ Exch = Get-ChildItem -Path HKLM: \ system \ CurrentControlSet \ Services | onde {. $ _ Nome -como '* Câmbio *'} 
  $ RegSeed = $ Exch.Count 
 $ = 0 SeedIndex 
 $ DirectoryPath = "c: \ ExchRegDirectory" 
  if (! (Test-Path -path $ DirectoryPath))  
 { 
  Diretório New-Item $ DirectoryPath -tipo 
  }outro{ 
  Remove-Item $ DirectoryPath -Recurse 
  Diretório New-Item $ DirectoryPath -tipo 
 } 
  While ($ SeedIndex -ne $ RegSeed) {  
  $ Exe = "Regedit.exe" 
  Fname $ = "$ DirectoryPath \ ExchangeReg [$ SeedIndex] .txt" 
  & $ Exe / e $ Fname $ Exch [$ SeedIndex] .Name 
  $ SeedIndex ++ 
 } 
 $ MergeApp = "cmd"  
 MergerFile $ = "ExchangeServices.dat" 
 ExchName $ = "ExchangeServices.txt" 
  & $ MergeApp / c "Copiar $ DirectoryPath \ *. Txt $ DirectoryPath \ $ MergerFile" 
 & $ MergeApp / c "Del $ DirectoryPath \ *. Txt" 
 & $ MergeApp / c "Ren $ DirectoryPath \ $ MergerFile $ ExchName" 
  Write-Host "Script completou" 

Você pode baixar o script acima a partir do seguinte link:

Escrita ExportExchangeRegistrySettings.ps1

De modo a usar o script acima - baixá-lo para um de seus servidores Exchange (ele vai trabalhar com qualquer servidor Exchange 2007 e 2010, tanto com todos os papéis instalada ou papéis segregados (venha para pensar sobre isso, para se instalar o PowerShell no Exchange 2003 servidores que também deve funcionar) e executá-lo a partir de uma janela de comando PowerShell (você não tem que usar o Shell de Gerenciamento do Exchange em ordem para que ele funcione como ele não usa qualquer troca CMDLETS Específicos).

Por exemplo, se você baixar o script para a unidade C: \ você pode executá-lo através do seguinte método:

[Iniciar-> Executar]

Em seguida, digite "Powershell"

Do tipo janela de comando PowerShell nos seguintes comandos:

  Set-ExecutionPolicy "RemoteSigned" 
  cd \ 
  c: \ 
  . \ ExportExchangeRegistrySettings.ps1 

O seguinte é uma saída de tela EXEMPLO do script:

  Directory: Microsoft.PowerShell.Core \ FileSystem :: C: \ 
  Modo LastWriteTime Comprimento Nome 
 ---- ------------- ------ ----  
 d ---- 13/09/2009 23:17 ExchRegDirectory  

 c: \ ExchRegDirectory \ ExchangeReg [0] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [10] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [11] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [12] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [13] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [14] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [15] .txt  
 c: \ ExchRegDirectory \ ExchangeReg [16] .txt 
  1 arquivo (s) copiado.  
 Script completou 
  Após concluir o script, você vai achar que em seu servidor Exchange, há um novo diretório localizado em c: \ ExchRegDirectory;  nele você encontrará um arquivo chamado "ExchangeServices.txt" - se você abrir esse arquivo no bloco de notas que você deve ver o conteúdo similar ao seguinte: 
  Editor do Registro do Windows versão 5.00 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync] 
 @ = "Automaticamente gerenciado pelo Exchange" 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync \ Diagnostics] 
 "1 Solicitações" = DWORD: 00000000 
 "2 Configuração" = DWORD: 00000000 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync \ controles de cabeçalho HTTP] 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync \ HTTP Header Controls \ 12.0] 
 "Powered-X-By" = dword: 00000001  
 "X-ASPNet-Version" = dword: 00000001 
 "Connection" = dword: 00000001  
 "Vary" = dword: 00000001 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync \ HTTP Header Controls \ 12.1] 
 "Powered-X-By" = dword: 00000001  
 "X-ASPNet-Version" = dword: 00000001 
 "Connection" = dword: 00000001  
 "Date" = dword: 00000001 
 "Servidor" = dword: 00000001  
 "Cache-Control" = dword: 00000001 
 "MS-Server-ActiveSync" = dword: 00000001  
 "Vary" = dword: 00000001 
  [HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ MSExchange ActiveSync \ HTTP Header Controls \ 2.0] 
 "Powered-X-By" = dword: 00000001  
 "X-ASPNet-Version" = dword: 00000001 
 "Vary" = dword: 00000001 

O tamanho eo conteúdo deste arquivo vai depender das funções instaladas no Exchange Server que você tenha executado o script contra, o resultado final é um arquivo que contém todas as configurações do registro que são relevantes para o Exchange no servidor que você escolheu para consulta.
Espero que isso ajude alguém ao longo do caminho.

comments… add one now } {0 comentários ... adicionar um agora }

Deixe um comentário

CAPTCHA Image
Refresh Image
*

Post anterior:

Próximo post: