Exchange Server Share

June 7, 2010

Exchange Server 2010 Help File: June 2010

ninjastar[1]An updated Exchange 2010 standalone help file is available. This file is essentially an offline copy of Exchange Server 2010 TechCenter that you can store in your computer for offline use. This helps you plan, deploy and manage your Exchange 2010 organization. Microsoft Download Center Link is here and direct downloadabe exe file link is available below.

File Name: Exch2010Help.exe
Version: June 2010
Date Published: 6/2/2010
Language: English
Download Size: 14.9 MB – 14.9 MB*

September 15, 2009

Exchange Server: What’s your learning strategy?

Filed under: Exchange,Learning — Amit Tank @ 12:56 pm

This has been asked quite a lot of times by newbies that how to start learning Exchange Server.

I would say MsExchange.org is the most tasty and crispy site for any Exchange hungry learner, Exchange Server TechNet Library is properly managed and untreated food made available at, by Microsoft restaurant to maintain the quality under healthy support boundaries and MSExchangeTeam blog serves the desserts at last. Also you can find various tips and tricks at the blogs of various MVPs and Subject Metter Experts in terms of snacks… :)

The best way to learn things are, do the practice or get involved in some kind of implementation and configuration assignments in your job. But it is rare to get such kind of chance in the beginning of the career so what do you in that case? The best option is start learning theory and construct a clear foundation. Anyone of the book can guide you step by step, but again caveats come, like many of us don’t get enough time or don’t be in good mood to learn the theoretical portion after completion our day job and social responsibilities. In that case I would try to find out certain multimedia or video tutorial to gain knowledge in entertaining way and some of them demonstrate how to do that step by step practical simultaneously. You may find many video tutorials in the market like CBT Nuggets, TrainSignals, Winstructor etc but definitely people will search for the costless material initially so let me list out some of the resources here…

Multimedia aided training material:

Next step towards gaining more confidence, you need to configure things by your own hands so how do you achieve this? I would recommend to build your own virtual lab with help of virtualization software like MS Virtual Server, Virtual PC, Hyper-V or VMWare. Create couple of VM instances, install and configure Exchange Server settings and see how it reacts in various scenarios. Microsoft also provides pre-configured VHD files to evaluate Exchange Server if you don’t want to build environment from scratch. But what if you don’t have enough hardware resources to build your virtual environment? Well, here is the deal. Microsoft provides bunch of Virtual Labs for Exchange Servers, you need to just have reliable and high-speed internet connection.

Now, how to keep the things in mind for long term? As I said, best way is to do practically and next thing is, keep notes of certain points which remind you quickly in future.

When you are trying to get knowledge yourselves so what do you do if you stuck up with questions or anything which start confusing you but you can’t find any way to get out of complication. Of course search engines are your friends but still you are not clear at the base then there are many Exchange Server experts sitting across the world and many of them are ready to help Exchange server community, you have to just log in into the ring of their perimeters. You can find various forums where you can ask your questions and queries which are bothering you.

Here are list of the major forums and newsgroups but wait, follow some of the best practices while posting queries on the forums/newsgroups which helps to you as well as to savior also who are trying there to help you. Basic best practices are, to post the question in proper category, write a short and sweet subject/title so relevant experts of that area will grab their call swiftly. Also see couple of links here, How to ask a question and The Psychology of a TechNet Forum Thread.

At later stage I would certainly look for in-depth or very advance level material for real world implementation and troubleshooting awareness. Couple of classical book examples are here.

Hope this helps you to jump into ocean of knowledge and Good Luck!

May 30, 2009

Exchange Update Rollup Installation. It is not Nightmare!!!

Many people feel that installation of Exchange Update Rollup is a nightmare, does it really? Well, It doesn’t, if you take certain steps of prevention.

Here are some of the myths which prevents from getting sleepless night for Update Rollups installation.

Known Issues & Pre Installation Checklist

 

1. Previous Interim Update (IU) Exists, Remove/Uninstall

Microsoft releases critical IUs for Exchange outside the Rollup schedule and can be obtained by contacting PSS. If you attempt to install the Rollup prior to removing the IU, you may get an error.

Prevention Step: Any installed IUs must be removed prior to applying a Rollup.

2. Permission Required

It is recommended to use the same account which was used to install Exchange server while installing Update Rollups.

If you have to use different account then make sure that you have highest permission like Exchange Organization Admin and a member of Local Admin group of Exchange server.

3. Do you have CAS-CAS Proxying deployed?

Apply the update rollup to the Internet-facing Client Access servers before you apply the update rollup to the non-Internet-facing Client Access servers.

4. Do you have Outlook Web Access customization?

When you apply an update rollup package, the update process will copy over the OWA files if it is necessary. If you have modified the Logon.aspx file or other OWA files, the customizations will be overwritten to ensure that OWA is updated correctly.

Prevention Step: Always make a backup copy of any customized Outlook Web Access files before you apply the update rollup.

After you apply the update rollup package, re-create Outlook Web Access customization in Logon.aspx.

5. Status of IPv6

Do you have IPv6 enabled in “Local Area Connection”? If you have IPv6 network and ticked/enabled in Local Area Connection, then it is fine.

But if you do NOT have IPv6 network and somehow unticked/disabled in Local Area Connection, follow below steps before Update Rollup installation.

  • Enable IPv6 in Local Area Connection.
  • Use Registry Editor and add registry key to completely disable IPv6 on a Windows Server 2008 computer as per KB952842

This may cause Exchange services to start or from changing ‘Startup Type’ (disabled to Automatic) after installation.

6. Lack of Internet Connectivity

You may experience long installation times and you may receive the following message:
“Creating Native images for .Net assemblies”

This issue occurs because the Exchange server issues network requests to connect to http://crl.microsoft.com/pki/crl/products/CodeSigPCA.crl and look up the certificate revocation list at NGEN time for each assembly that it compiles to native code.

Because the Exchange server is not connected to the Internet, each request must wait to timeout before moving on.

Prevention Step: Turn off the Check for publisher’s certificate revocation option on the server that is being upgraded. Follow these steps:

In Windows Internet Explorer –> Tools –> Internet Options –> Advanced tab
In the Security section, uncheck or clear the box for below tow options

“Check for publisher’s certificate revocation”
“Check for server certificate revocation”

It is considered safe to clear this security option in Internet Explorer if the computer is in a tightly controlled environment. After the setup has completed, turn on the Check for publisher’s certificate revocation option again

image

Further information can be found here…
Exchange 2007 managed services might time out during certificate revocation checks
http://msexchangeteam.com/archive/2008/07/08/449159.aspx

7. Managed code services may not start after you install this update rollup

This problem occurs because you do not have a Microsoft .NET Framework common language runtime (CLR) build that supports the generatePublisherEvidence configuration setting.

Prevention Step: If you are using the .NET Framework 2.0, install one of the following software updates:

.NET Framework 2.0 Service Pack 1
Problems that are fixed in the .NET Framework 2.0 Service Pack 1

Software update 936707 with CRL build 2.0.50727.876
FIX: A .NET Framework 2.0 managed application that has an Authenticode signature takes longer than usual to start

Software update 942027 with CRL build 2.0.50727.926
FIX: You may notice that the memory load is very high when you run an application that is built on the .NET Framework 2.0

Refrence: Exchange Server 2007 managed code services do not start after you install an update rollup for Exchange Server 2007
http://support.microsoft.com/kb/944752

8. Exchange Best Practice Analyzer

Run ExBPA regularly to find any misconfiguration, problems or standard recommendation from Microsoft on your Exchange environment.

It is also recommended to run it before installation UR and correct the errors if shows in result.


Troubleshooting Update Rollup Installation Failure

Now what if UR installation failed, where to start looking for the cause or reason behind failure?

The Exchange Software Updates forum is available to get assistance if you come across with any update rollups installation issue. Microsoft engineers monitor the forum and assist you, but what they need to troubleshoot the issue? Information on your Exchange environment, how you are installing update rollup, and errors come up in various log files. These all things gives you and them hints to get resolution while troubleshooting.

Here are some of the logs to start investigation.

  1. Look into Event Log for any error related to UR installation.
  2. Enable Verbose MSI Logging to generate setup log and look into it for any error.
  3. ServiceControl.log available at C:\ExchangeSetupLogs.
  4. UpdateOwa.log available at C:\ExchangeSetupLogs.

1. Look into Event Log for any error

This is the starting place of forensic lab :), you may see some MSI related or any other errors which might have some numbers and with it setup would have failed.

Here is an example…

Event Type: Error
Event Source: MsiInstaller
Event Category: None
Event ID: 1024
Description:
Product: Microsoft Exchange Server – Update ‘Update Rollup 8 for Exchange Server 2007 Service Pack 1 (KB968012) 8.1.375.2′ could not be installed. Error code 1603.

Windows Installer can create logs to help troubleshoot issues with installing software packages. Use the following link for instructions on turning on logging support: http://go.microsoft.com/fwlink/?LinkId=23127

Error code 1603 is pretty generic in MSI installation and to look further deep we need to enable verbose MSI logging. Question comes, how? Ok, let’s discuss it in next portion.

2. Enable Verbose MSI Logging to generate setup log

We can enable MSI verbose logging to get extensive details of update rollup installation with below switches…

Exchange2007-KB<kb # of Rollup>-x64-EN.msp /lxv* c:\LogName.log

Let’s take an example of Exchange 2007 SP1 UR8 which was released sometimes back. I am executing it with below command.

Exchange2007-KB968012-x64-EN.msp /lxv* c:\SP1UR8.log

image

This will generate extensive log of UR installation and log an activity of each and every step.

image 

You can open this log and check for errors which may shed some light on why the installation failure occurred. If you create a thread at Exchange Software Updates forum or log a call with Microsoft PSS, they will ask for this file anyway.

3. ServiceControl.log available at C:\ExchangeSetupLogs

This file keeps the log of service ‘Status’ and ‘Startup Type’ changes happened by ServiceControl.ps1 script during UR installation.

We may find the cause of service, if stopped or disabled during UR installation.

image

4. UpdateOwa.log available at C:\ExchangeSetupLogs

This file keeps the log of OWA changes performed by UpdateOWA.ps1 during UR installation.

image

Here is an example of UpdateOwa.log file generated during successful UR8 installation but we may find the cause here if OWA comes up with errors after UR installation.

image 

We can also find UpdateOWA.PS1 script under Program Files\Microsoft\Exchange Server\Bin directory which can be run to correct OWA errors came after UR installation.

image

September 5, 2008

FAQ: Access on All the Mailboxes of a Server – Exchange 2007

Filed under: Exchange,Exchange 2007,PowerShell — Amit Tank @ 2:17 pm
Tags: , ,

How to give permission to access all the mailboxes of a mailbox database or a server in Exchange 2007?

You can open and read the content of mailbox if you have Full Mailbox Access or Receive As permission on it.

Sometimes auditor, HR person or some application wants access on all the mailboxes of a database or a server, in that case you can assign Receive As permission at mailbox database level for a user/group which grants access to logon to all the mailboxes.

Reference: How to Allow Mailbox Access

 

Example:

Let’s say, I need to give access to open all the mailboxes of a server “ESS-Exch702″ to a user “Auditor”.

We can give Receive-As permission on all the mailbox databases of a server with blow command.

Get-MailboxDatabase -Server “ESS-Exch702″ | Add-ADPermission -User “Auditor” -ExtendedRights Receive-As

image

Note: The configuration change does not take effect until store cache is refreshed, which is by default two hours interval or for immediate effect we can restart Exchange Information Store service.

image

After giving Receive-As permission to Auditor on ESS-Exch702 server, it can open all the mailboxes which are available on it.

image

If you want to give access to open all the mailboxes of just a database then you can run below command.

Get-MailboxDatabase -Identity “Name Of Database” | Add-ADPermission -User “Auditor” -ExtendedRights Receive-As

You can not Send As a mail on behalf of mailbox even though you have Full Mailbox access or Receive As permission and for that you need to assign Send As permission.

April 7, 2008

PowerShell : Uptime of Multiple Servers

Filed under: Exchange,Exchange 2007,PowerShell — Amit Tank @ 1:47 pm

If I ask you a question, how do you check uptime of servers? Your answer would be definitely, through uptime.exe utility.

But now in PowerShell world if you want to check the uptime then this is the right place.

  • To find the uptime we need to get the time when computer last (re)booted, we can get the last boot time through WMI class Win32_OperatingSystem but that gives us time in integer so we need to convert it into Date-Time format.

#This line gets the Win32_OperatingSystem of a computer and save it into $wmi variable.

$wmi=Get-WmiObject -class Win32_OperatingSystem -computer $server

#This line takes the LastBootupTime from Win32_OperatingSystem class, convert it into Date Time format and save it into $LBTime variable.

$LBTime=$wmi.ConvertToDateTime($wmi.Lastbootuptime)

image

  • Now our uptime is the difference between current time of your system and the LastBootupTime, so we take a help of TimeSpan Constructor from .Net Framework Class Library to find the duration/difference of these two.

#This line gives us the duration between current time and last boot up time

[TimeSpan]$uptime=New-TimeSpan $LBTime $(get-date)

image

  • Now get the Days, Hours, and Minutes & Seconds of this span and that is our uptime.

#This line writes the uptime.

Write-host $server “Uptime: ” $uptime.days “Days” $uptime.hours “Hours” $uptime.minutes “Minutes” $uptime.seconds “Seconds”

image

Uptime for Multiple Servers

This script takes list of servers from servers.txt file and gives the uptime of all servers.

=========Get-Uptime.ps1 Script Code=========

$Servers = Get-Content “Servers.txt”

foreach($Server in $Servers)

{

$wmi=Get-WmiObject -class Win32_OperatingSystem -computer $server

$LBTime=$wmi.ConvertToDateTime($wmi.Lastbootuptime)

[TimeSpan]$uptime=New-TimeSpan $LBTime $(get-date)

Write-host $server “Uptime: ” $uptime.days “Days” $uptime.hours “Hours” $uptime.minutes “Minutes” $uptime.seconds “Seconds”

}

=========Get-Uptime.ps1 Script Code=========

Here is the example, uptime of three servers in my test environment.

image

Next Page »

The Rubric Theme Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 29 other followers