Archive

Posts Tagged ‘Powershell’

Dica: E-book PowerShell para IT Pro

October 14th, 2013 No comments

Uma dica para os leitores do Blog é o livro ebook gratuito do Daniel Donda. O livro aborda o Powershell com um foco para infraestrutura, que ajuda muito no dia a dia dos IT Pros.

Segue link para o site do Donda:

http://www.mcsesolution.com/Livros/e-book-powershell-para-it-pro.html

Para baixar o ebook clique na página abaixo que será redirecionado:

PowerShell-3.0-Ebook

Recomendo a leitura!

Abs.

Share

Post to Twitter

Categories: Powershell Tags: ,

Quick Tips – Exchange 2013 Copiar Receive Connector

September 26th, 2013 No comments

Migração de Exchange 2007/2010 para 2013.
 
Para automatizar a cópia das propriedades do receive connector que já existe no servidor atual e recriá-los no 2013:
 
Rodar no CAS 2013:

New-ReceiveConnector "Conector2010" -Server ServerMBX2013 -Bindings 0.0.0.0:25 -fqdn email.contoso.com -MaxHopCount 60 -MaxLocalHopCount 8 -MaxMessageSize 20971520 -RemoteIPRanges ( Get-ReceiveConnector "Server2010\Conector2010" ).RemoteIPRanges -PermissionGroups ( Get-ReceiveConnector "Server2010\Conector2010" ).PermissionGroups -AuthMechanism ( Get-ReceiveConnector "Server2010\Conector2010" ).AuthMechanism
 

Copia as propriedades:

- RemoteIPRanges

- PermissionGroups

- AuthMechanism

 

OBS: MaxMessageSize = Bytes
 
Mas outros parâmetros podem ser manipulados, segue referência:
http://technet.microsoft.com/en-us/library/bb125139%28v=exchg.150%29.aspx

 

Abs.

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

January 28th, 2013 No comments

Que tal executar um comando powershell, e confirmar cada uma das etapas. Na verdade, executar o comando no modo debug?

Tente isso e veja o resultado:

Test-MAPIConnectivity -Server <MailboxServer> -Debug

Um ótimo parâmetro para aqueles momentos onde o erro não parece fazer sentido…

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

January 28th, 2013 No comments

Quer saber em detalhes o que ocorre em um comando no Exchange Management Shell?

Faça um teste!

Primeiro use o Test-OutlookConnectivity -Protocol TCP para verificar o status da conexão RPC over TCP.

Depois utilize o comando Test-OutlookConnectivity -Protocol TCP – Verbose e compare o resultado.

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

January 27th, 2013 No comments

Você tem uma lista de alias em um .csv/.txt e deseja executar um mesmo comando para cada um deles? Usando dois cmd-lets em conjunto, você irá atingir esse objetivo.

Primeiro importamos o conteúdo, e logo em seguida com o uso do pipe aplicamos o cmd-let desejado em cada um dos alias contido no csv/txt através do loop “foreach”.

No exemplo à seguir, iremos aplicar um novo valor para o parâmetro IssueWarningQuota em cada alias:

printScreen_045

Com uma simples linha você aplicou o comando na lista que ja tinha “em mãos”.

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

January 27th, 2013 No comments

Muitas vezes queremos listar informações, de uma mailbox por exemplo, entretando as colunas ficam sobrepostas. Observe no exemplo abaixo:

printScreen_043

Para que as colunas sejam automaticamente ajustadas, utilize o parâmetro -AutoSize do modo de exibição ft (FormatTable). Confira no exemplo:

printScreen_044

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

January 27th, 2013 No comments

Essa é da série de dicas rápidas (quick tips), onde daremos dicas curtas e úteis sobre as ferramentas.

Sempre que você precisar lembrar algum comando no Exchange 2010, você pode usar o shell para consultar alguns exemplos. Vejamos abaixo.

Get-Help Set-RemoteDomain –Examples

 

image

A estrutura será sempre a mesma para outros comandos:

Get-Help – pedir ajuda Smiley piscando

Set/Get, etc – Comando a ser pesquisado

-Examples – Lista exemplos de uso do comando

[]s

Share

Post to Twitter

Hyper-V – Templates de VM com Differencing Disks

January 25th, 2013 No comments

Introdução

Uma dica muito boa para se criar laboratórios no Hyper-v, ainda mais agora com o Windows 8, é fazer uso de templates e differencing disks.

Navegando por alguns blogs interessantes, encontrei uma dica matadora parar automatizar esse processo com o PowerShell e resolvi indicar aqui para vocês.

Vou demonstrar no meu lab como funciona e como é muito útil!

O Lync de referência é:

http://lyncdup.com/2012/06/creating-hyper-v-3-differencing-disks-in-server-2012-with-gui-and-powershell/

Recomendo que leiam com atenção o artigo original. Só quero repassar aqui na prática e mostrar que funciona. Alegre

Desenvolvimento

Podemos criar templates de VMs para criarmos novas máquinas virtuais com apenas alguns cliques. Nesse artigo vamos criar o template utilizando Differencing Disks.

Differencing Disks podem ser usados para se economizar espaço em disco ao se criar as novas VMs, e diminuir a quantidade de vezes que tem que atualiza-la, pois elas se utilizam do disco criado para uma VM parent, ou base como eu gosto de dizer.

Para saber mais sobre Differencing Disks recomendo o seguinte link do Technet Wiki:

http://social.technet.microsoft.com/wiki/contents/articles/1393.hyper-v-virtual-machine-vm-parent-child-configuration-using-differencing-disks.aspx#CreateDiffVMC

Tem toda a explicação e passo a passo para se criar.

Abaixo os passos necessários:

  • Criar uma VM base e seu VHD
  • Instalar todos os updates
  • Sysprep da VM
  • Tornando o disco read only
  • Criando o Diff Disk
  • Criando nova VM para usar o Diff Disk
Criar uma VM base e seu VHD

Nesse passo, criei uma VM comum “Windows 2008 R2 Template”.

clip_image002

Instalar todos os updates

Nessa fase, costumo fazer o seguinte:

  • Windows Update
  • Desabilito o firewall
  • Instalo o .NET Framework
  • Desabilito o Internet Explorer Enhanced Security Configuration (IE ESC)

Mas fique a vontade para customizar conforme sua necessidade.

clip_image004

 
Sysprep da VM

Nessa fase vamos fazer o sysprep da VM com a opção de generalize, deixando a opção para desligar a VM marcada. Dessa forma evitamos o velho problema de SID duplicado.

Iniciar –> executar –> sysprep.

clip_image005

clip_image006

clip_image007

Aguardar finalizar e desligar a VM.

clip_image008

 
Tornando o disco read only

O disco da VM base / parent deve ficar marcado como read only, com base nesse disco vamos criar os discos diferenciais futuros. Vamos até as propriedades da VM que criamos como template e marcar o disco como read only.

clip_image009

 
Criando o Differencing Disk

Aqui entra o diferencial que citei no artigo da introdução, segue novamente como referência:

http://lyncdup.com/2012/06/creating-hyper-v-3-differencing-disks-in-server-2012-with-gui-and-powershell/

Como já temos nossa VM base instalada, com o sysprep e o disco read only, é hora de criar os novos VHDs que usarão o differencing disk, isso irá reduzir drasticamente o espaço ocupado pelo novo VHD.

O mais legal é poder apenas copiar e colar os comandos, só troque para o nome que precisar e aponte o local dos arquivos e pronto, ele monta e liga a VM para você configurar. Smiley piscando

Exemplo:

New-VM –Name lab1-dc01 –MemoryStartupBytes 1024MB -SwitchName “LAB1” -Path E:\14-VMs\LAB1\lab-dc01 -Verbose

New-VHD –ParentPath "E:\14-VMs\Templates\Windows2008R2\Windows 2008 R2 Template.vhdx" –Path E:\14-VMs\LAB1\lab1-dc01\lab1-dc01.vhdx -Differencing

Add-VMHardDiskDrive lab1-dc01 -Path E:\14-VMs\LAB1\lab1-dc01\lab1-dc01.vhdx

Start-VM lab1-dc01

clip_image011

Se olharmos o Hyper-V agora, vamos verificar a VM já iniciada pronta pra ser configurada.

clip_image013

clip_image015

Agora se verificarmos o espaço ocupado pela VM em disco, podemos verificar a economia por estar usando os arquivos essenciais da VM base que criamos.

clip_image017

Abaixo o tamanho da nossa nova VM.

clip_image019

Para comparar, vamos abrir nossa VM original, criada como base.

image

O que acha? Uma VM normal com 13GB! E nossa outra VM com aproximadamente 1GB!

Conclusão

Divirtam-se Alegre

 

Tiago Ferreira

Share

Post to Twitter

Como usar o Power Shell para encontrar contas inativas no AD?

July 9th, 2011 No comments

Achei um post interessante no Hey Script Guy, segue a fonte:

http://blogs.technet.com/b/heyscriptingguy/archive/2010/07/20/hey-scripting-guy-how-can-i-use-windows-powershell-to-identify-inactive-user-accounts-in-active-directory-domain-services.aspx

Ele mostra alguns comandos para trabalhar com o módulo Active Directory no Power Shell. Você pode usa-lo para pesquisar contas inativas no AD. É muito útil na manutenção diária do seu domínio, fiz uma pesquisa rápida usando:

PS C:\Users\tiago.souza> Get-ADUser -Filter * -Properties “LastLogonDate” |
>> sort-object -property lastlogondate -descending |
>> Format-Table -property name, lastlogondate -AutoSize

Nessa brincadeira encontrei diversos usuários que já efetuavam logon há um bom tempo. Você pode fazer algo semelhante usando o mmc do Active Directory, em Saved Queries, mas esse comando lhe permite variar algumas opções, visite o link para saber mais.

[]s
Tiago Ferreira de Souza

Share

Post to Twitter