Ir al contenido principal

Entradas

Script Powershell para saber un promedio de cantidad de correos y tamaño diario.

# Initialize some variables used for counting and for output $From = Get-Date "15/07/2014" $To = $From.AddDays(1) $TotalOutput = @()   [Int64] $intSent = $intRec = 0 [Int64] $intSentSize = $intRecSize = 0 [String] $strEmails = $null     Do {     # Start building the variable that will hold the information for the day     $obj = new-object PSObject     $obj | add-member -membertype NoteProperty -name "DayOfWeek" -value $($From.DayOfWeek)       $obj | add-member -membertype NoteProperty -name "Date" -value $($From.ToShortDateString())       $intSent = $intRec = 0     (Get-TransportServer) | Get-MessageTrackingLog -ResultSize Unlimited -Start $From -End $To | ForEach {         # Sent E-mails         If ($_.EventId -eq "RECEIVE" -and $_.Source -eq "STOREDRIVER")         {             $intSent++ ...

Powershell para saber sobre que buzones tiene permiso un usuario Exchange 2010

Get-Mailbox | Get-MailboxPermission | where {$_.user.tostring() -eq "usuario_con_permisos" -and $_.IsInherited -eq $false}  | fl Identity,User,AccessRights y para eliminar un permiso: get-mailbox -Identity "nombre_del_buzon" | Remove-MailboxPermission -User usuario_con_permisos_a_remover -AccessRights FullAccess  -InheritanceType All y para eliminar un permiso de denegación: get-mailbox -Identity "nombre_del_buzon" | Remove-MailboxPermission -User usuario_con_permisos_a_remover -AccessRights FullAccess  -Deny -InheritanceType All

Warning durante movimiento de buzon entre diferentes bases de datos en el mismo servidor Exchange 2010

Luego de finalizado el movimiento de buzon este queda en la base de datos de destino pero el proceso muestra el siguiente Warning. Warning: Failed to clean up the source mailbox after the move. Error details: MapiExceptionUnexpectedMailboxState: Unable to delete mailbox. (hr=0x80004005, ec=2634) Ademas en "Disconnected Mailbox" aparecen los buzones que han sido movidos, pero estos no son los buzones activos sino que son los originales en la base de origen que no fueron borrados por completo al finalizar el proceso de movimiento. Justamente lo que indica el mensaje de Warning. La solución es limpiar esta información de buzon de la base de origen manualmente. 1) Debemos listar los buzones que están en esta condición en las bases de Exchange, lo hacemos con el siguiente comando. Get-MailboxDatabase | Get-MailboxStatistics | Where-Object {$_.DisconnectReason -ne $null} | ft  Displayname,DisconnectReason,Database,mailboxGuid -AutoSize Aquí nos mostrara la información...

Comandos para instalar prerequisitos Exchange 2010 SP3 en Windows Server 2008 R2 SP1

Import-Module ServerManager Add-WindowsFeature AS-NET-Framework,AS-HTTP-Activation,RSAT-ADDS,RPC-over-HTTP-Proxy,Web-Basic-Auth,Web-Windows-Auth,Web-Digest-Auth,Web-Net-Ext,Web-ASP-Net,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Client-Auth,Web-HTTP-Redirect,Web-HTTP-Tracing,Web-Dyn-Compression,Web-Metabase,Web-WMI,Web-Lgcy-Mgmt-Console

Evento 129 Time-Service no configura correctamente el servidor NTP con el parametro DOMHIER

Evento 129 "NtpClient was unable to set a domain peer to use as a time source because of discovery error. NtpClient will try again in 3473457 minutes and double the reattempt interval thereafter. The error was: The entry is not found. (0x800706E1)" Resetear el Time Service a por defecto: net stop w32time w32tm /unregister w32tm /register net start w32time Luego configurar para que se sincronice en la jerarquia del Dominio: w32tm /config /syncfromflags:domhier /update net stop w32time net start w32time

Script Powershell que envia por mail lista de Servidores en Active Directory y si responden al ping

Import-Module ActiveDirectory $enc  = New-Object System.Text.utf8encoding $servidores=Get-ADComputer -Filter {(OperatingSystem -like "*Server*")} -Properties OperatingSystem | Sort-Object Name foreach ($servidor in $servidores) {    $dnsservername=$servidor.name+".midominio.local"    if (Test-Connection -ComputerName $dnsservername -Count 1 -Quiet) {       $resptime=Test-Connection -ComputerName $dnsservername -Count 1           $tabla1 += "<tr><td>"+$servidor.name+"</td><td>"+$servidor.operatingSystem+"</td><td>"+$resptime.ResponseTime+"</td></tr>"    } else {       $tabla1 += "<tr BGCOLOR='#DF0101'><td>"+$servidor.name+"</td><td>"+$servidor.operatingSystem+"</td><td>No responde ping</td></tr>"    } #$tabla1 += "<tr><td>"+$servidor.name+"</td><td...

Herramienta automatizacion de impresiones de pantalla

Con Windows 7 tenemos la aplicación psr.exe que automatiza la toma de impresiones de pantalla y las acciones del usuario y genera un reporte. Debemos ir a configuración y definir una ruta donde psr.exe guardara el archivo con el reporte, también podemos darle un numero entre 0 y 100 que podemos darle de cantidad de impresiones de pantalla que va a guardar. Mas información en el siguiente link http://blogs.technet.com/b/mspfe/archive/2013/03/22/uncovering-a-hidden-gem-psr-exe.aspx