Thursday, 31 December 2015

Installing Exchange Server 2016 on Windows Server 2012 R2

 Installing Exchange Server 2016 on Windows Server 2012 R2

Exchange Server 2016 can be installed on Windows Server 2012 and Windows Server 2012 R2. For both versions of Windows Server either the Standard or Datacenter edition can be used to run Exchange Server 2016. Exchange itself does not rely on any specific features of either the Standard or Datacenter editions.
Note that a full server installation with GUI is required for Exchange Server 2016, it can’t be installed on a Core mode installation of Windows Server.
There are three possible installations of Exchange Server 2016 that you can perform:
  • Mailbox server role (this is the only mandatory server role)
  • Edge Transport server role (this is optional, and can’t co-exist with the Mailbox server role on the same Windows Server)
  • Management Tools (for admin workstations or servers)
The requirements for each installation type are different, so let’s look at each of them in turn.

Installing Pre-Requisites

For an Exchange Server 2016 Mailbox server installation open an elevated (run as administrator) PowerShell console and run the following command to install the operating system roles and features.

 C:\> Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation

A restart is required after the roles and features have finished installing.

After the restart download and install (in order):
The server is now ready to install Exchange Server 2016.

Installing Exchange Server 2016

Before you start there are a few things to be aware of:
  • Installing Exchange Server 2016 requires an Active Directory schema update. We’ll look at that in more detail shortly.
  • Aside from the schema update installing Exchange Server 2016 makes other irreversible changes to your Active Directory forest. If you’ve never backed up your Active Directory, or you’ve never heard of a forest recovery, here’s some reading for you.
  • If you’re installing Exchange into the forest for the first time you will be choosing an organization name. The Exchange organization can’t be renamed at a later date, so choose a name you’re happy with keeping forever.

    Preparing Active Directory

    A new installation of Exchange Server 2016 involves applying an Active Directory schema update, as do most Exchange Server cumulative updates, as well as preparing the Active Directory domains where Exchange Server 2016 and any mail-enabled objects will be located. In an Active Directory forest with a single domain this can all be performed as one task.
    The Active Directory schema update will automatically apply when you run Exchange Server 2016 setup on the first server in your environment. A Windows Server 2012 R2 server with the Exchange Server 2016 Mailbox server role pre-requisites installed doesn’t quite meet the requirements (you’ll need to add the RSAT-ADDS feature as shown below). A domain controller will have RSAT-ADDS installed already, but may also need the .NET Framework version shown below to be installed first.
    Whether you’re running the schema update from an Exchange server or a separate server (some organizations do it as a separate task due to change control reasons, or because of different teams having different administrative responsibilities in the environment) then the following requirements apply:
  • .NET Framework 4.5.2 must be installed
  • The RSAT-ADDS feature must be installed
        C:\> Install-WindowsFeature RSAT-ADDS
  • The forest functional level must be at least Windows Server 2008
  • The account used to run the schema update and Active Directory preparation must be a member of Enterprise Admins and Schema Admins. These are high privilege groups I recommend you plan to remove your account from the groups when you’re done with this task. Note, if you’ve just added yourself to these groups you’ll need to log out and back in to the server for the new group membership to take effect.
  • The server you’re running the schema update from must be located in the same Active Directory site as the Schema Master. You can identify your Schema Master by running my Get-ADInfo.ps1 script, or by using the Get-ADForest PowerShell cmdlet.
    Extract the Exchange Server 2016 setup files into a folder, open a command prompt window, and then navigate to the location where the Exchange setup files were extracted.
    To apply only the schema update run the following command after navigating to setup folder in cmd:

    setup /PrepareSchema /IacceptExchangeServerLicenseTerms

To prepare Active Directory run one of the following commands. Note this will also apply the schema update if you did not perform that step already.
If you do not already have an Exchange organization you’ll need to provide a name for the organization now, for example:

setup /PrepareAD /OrganizationName:"xyz" /IacceptExchangeServerLicenseTerms

If you’re installing Exchange Server 2016 into an existing Exchange organization you do not need to specify the organization name

After this open the extracted exchange 2016 folder and double click setup file to proceed and the installation from there onwards is simple GUI navigation.

For further queries you may contact me:
 Muhammad Yaseen
 Phone:   0092-312-5166589
 Email:    yaseenraja2000@gmail.com
 Skypeid:  myaseen789

Wednesday, 30 December 2015

Difference between simulation and emulation

Difference between simulation and emulation


Simulation

A simulation is a system that behaves similar to something else, but is implemented in an entirely different way. It provides the basic behaviour of a system, but may not necessarily adhere to all of the rules of the system being simulated. It is there to give you an idea about how something works.
Example
Think of a flight simulator as an example. It looks and feels like you are flying an airplane, but you are completely disconnected from the reality of flying the plane, and you can bend or break those rules as you see fit. For example, fly an Airbus A380 upside down between London and Sydney without breaking it.

Emulation

An emulation is a system that behaves exactly like something else, and adheres to all of the rules of the system being emulated. It is effectively a complete replication of another system, right down to being binary compatible with the emulated system's inputs and outputs, but operating in a different environment to the environment of the original emulated system. The rules are fixed, and cannot be changed, or the system fails.
Example
The M.A.M.E. system is built around this very premise. All those old arcade systems that have been long forgotten, that were implemented almost entirely in hardware, or in the firmware of their hardware systems can be emulated right down to the original bugs and crashes that would occur when you reached the highest possible score.

Tuesday, 29 December 2015

Microsoft Exchange EMS usefull commands(Handy for troubleshooting) help for Exchange Admins

Get-ExchangeServer
As with most PowerShell cmdlets you can control the output display by piping the output into Format-List (or Format-Table).

Get-ExchangeServer -Identity ExSv1 | Format-List

Note 2:  If you want to focus on just one server append the -Identity parameter.
List the Get-ExchangeServer Parameters

Extend your scripting capabilities by getting to know more parameters:

Get-Help Get-ExchangeServer

Use the information to specify the status because it forces the cmdlet to include real-time information.  For example, try this script with and without the -Status switch.

Get-ExchangeServer -Identity ExSv1 -Status | Format-List


----------------------------------------------------------------

Test-servicehealth

Will test all the services running and tells us about the services that are not runnung. Helpfull for troubleshooting.



------------------------------------------------------------------


get-command -noun add*
will show all commands with noune "add"

get-command -verb test*
will show all commands with verb "test"

get-help test-servicehealth -examples
will privide help with examples regarding the specific command test-servicehealth

---------------------------------------------------------------------


gpresult /v command is very useful to check the gpo being applied and also to troubleshoot regarding GPO's.


------------------------------------------------------------------------

If you need to check the white space

Get-MailboxDatabase Database1 -Status | FL AvailableNewMailboxSpace

Get-MailboxDatabase -Status | ft name,databasesize,availablenewmailboxspace -auto

------------------------------------------------------------------------
administrative share checking command:
You can see your shared folders by going to Start >Run > type fsmgmt.msc > Shared Folders

------------------------------------------------------------------------

to check the version of exchange



Get-Command Exsetup.exe | ForEach-Object {$_.FileVersionInfo}

-------------------------------------------------------------------------

to check the mailbox whitespace

Get-MailboxDatabase -Status | ft name,databasesize,availablenewmailboxspace -auto

---------------------------------------------------------------------------

to check the version service pack sp of exchange

Get-ExchangeServer | select name,admindisplayversion


--------------------------------------------------------------------------------

which users are in which mailbox database on Exchange

Get-Mailbox | Sort database, name | Format-Table name, database

 This one will give you all mailboxes on all databases listed in order

get-mailbox | sort database, name | format-table name, database

This one will give you all mailboxes on a specific database,

Get-MailboxDatabase *name_of_database* | Get-mailbox

This one will give you all the mailboxes sorted by size, largest first, in a given database or all databases and export to a text file on the C drive,

Get-MailboxDatabase "<insert database name or don’t enter one for all DB’s>" | Get-MailboxStatistics | Sort totalitemsize -desc | ft displayname, totalitemsize, itemcount (optional | Select –first 25) >> C:\*name_of_file*.txt.

-------------------------------------------------------------------------------


To get a count of all mailboxes in the Exchange 2010 organization use the following command:

(Get-Mailbox).count



Note that if you know your organization has over 1000 mailboxes you need to make sure that the result size of the command output is not limited.

(Get-Mailbox -resultsize unlimited).count



Next, we can get a count of mailboxes per Exchange 2010 mailbox server.

Get-Mailbox | Group-Object -Property:ServerName | Select-Object name,count

We can also get a count of mailboxes per database in the Exchange organization.

Get-Mailbox | Group-Object -Property:Database | Select-Object name,count

--------------------------------------------------------------------------------------------------------------------

To get a count of all mailboxes in the Exchange 2010 organization use the following command:

(Get-Mailbox).count



Note that if you know your organization has over 1000 mailboxes you need to make sure that the result size of the command output is not limited.

(Get-Mailbox -resultsize unlimited).count



Next, we can get a count of mailboxes per Exchange 2010 mailbox server.

Get-Mailbox | Group-Object -Property:ServerName | Select-Object name,count

We can also get a count of mailboxes per database in the Exchange organization.

Get-Mailbox | Group-Object -Property:Database | Select-Object name,count

----------------------------------------------------------------------------------------------------------------------------------

Counting Exchange Server 2010 Total Mailboxes with Exchange management shell

For an Exchange administrator there are a lot of different situations in which they may need to know how many mailboxes are in the organization.  Fortunately this is made easy in Exchange Server 2010 with a few simple EMS commands.


To get a count of all mailboxes in the Exchange 2010 organization use the following command:
(Get-Mailbox).count
 
Note that if you know your organization has over 1000 mailboxes you need to make sure that the result size of the command output is not limited.
(Get-Mailbox -resultsize unlimited).count
 
Next, we can get a count of mailboxes per Exchange 2010 mailbox server.
Get-Mailbox | Group-Object -Property:ServerName | Select-Object name,count

We can also get a count of mailboxes per database in the Exchange organization.
Get-Mailbox | Group-Object -Property:Database | Select-Object name,count

As you can see the Group-Object command allows us to see a count of mailboxes based on different attributes or properties of the mailbox. For example a count of mailboxes that are and are not exempt from email address policies.
Get-Mailbox | Group-Object -Property:EmailAddressPolicyEnabled | Select-Object name,count

And as a final example, a count of mailboxes by Office (notice that the 6 mailboxes with a null value are still included in the results).
Get-Mailbox | Group-Object -Property:Office | Select-Object name,count 
 
 

Unable to Mount Database Exchange 2010 getting error message as "MapiExceptionJetErrorMissingLogFile: Unable to mount database. (hr=0x80004005, ec=-528)" fix

In this blog I am going to teach you how to fix the database if you are unable to Mount Database Exchange 2010 getting error message as below:

 Error:


Failed to mount database 'MailboxDatabase02'.

MailboxDatabase02
Failed
Error:
Couldn't mount the database that you specified. Specified database: MailboxDatabase02; Error code: An Active Manager operation failed. Error The database action failed. Error: Operation failed with message: MapiExceptionJetErrorMissingLogFile: Unable to mount database. (hr=0x80004005, ec=-528)
. [Database: MailboxDatabase02, Server: MAIL.aspirationscare.com].
An Active Manager operation failed. Error The database action failed. Error: Operation failed with message: MapiExceptionJetErrorMissingLogFile: Unable to mount database. (hr=0x80004005, ec=-528)
. [Database: MailboxDatabase02, Server: MAIL.aspirationscare.com]
An Active Manager operation failed. Error Operation failed with message: MapiExceptionJetErrorMissingLogFile: Unable to mount database. (hr=0x80004005, ec=-528)
. [Server: MAIL.aspirationscare.com]
MapiExceptionJetErrorMissingLogFile: Unable to mount database. (hr=0x80004005, ec=-528)

Cause:

This issue may occur in an Exchange log file that has a mismatching signature and LGeneration. Typically, the Exchange log file is the E00.log file. If the E00.log file has a mismatching signature, the information store might not mount even if the database is consistent.
Or you have deleted the log files accidentally or  for space creation.

Fix:

First thing you want to check is to make sure the name of the database file matches what Exchange is expecting. You can check that in the properties of the database under the Org Configuration.
Second thing is to check what state the database is in using eseutil. If it's in a dirty shutdown state, you'll have to repair it.
Here is how to check the state of the database (I HIGHLY recommend a backup of the DB path contents before you do any of this):
Example (Replace the path with the one in your enviroment):
eseutil /mh "C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database\Mailbox Database.edb"
If it's dirty shutdown(after running the command you will get the results):
Then run the below mentioned command:
eseutil /p "C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database\Mailbox Database.edb"
Check the state again and if you have a Clean Shutdown state.
 After this navigate to your Database path i.e: in my case "C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database" and delete the current "E00.log" file and create a new one "E00.log" file.
Make sure you follow the same procedure as mentioned in the blog. The deletion and creation of new E00.log transition log file is mandatory.  

Go to Exchange Management console and mount the database and wollaaa It will mount the database successfully. Remember me in your prayers.

For further queries you may contact me:

Muhammad Yaseen

Tel: 0092-312-5166589

Email: yaseenraja2000@gmail.com




Wednesday, 16 December 2015

10 Windows 7 commands every administrator should know

PC troubleshooting is becoming less common in larger organizations, but consultants and techs in smaller shops still have to get their hands dirty identifying and fixing desktop problems. Oftentimes, troubleshooting Windows 7 means delving into the command line. Here are 10 fundamental Windows 7 commands you might find helpful.1: System File Checker

Malicious software will often attempt to replace core system files with modified versions in an effort to take control of the system. The System File Checker can be used to verify the integrity of the Windows system files. If any of the files are found to be missing or corrupt, they will be replaced. You can run the System File Checker by using this command:
sfc /scannow

2: File Signature Verification

One way to verify the integrity of a system is to make sure that all the system files are digitally signed. You can accomplish this with the File Signature Verification tool. This tool is launched from the command line but uses a GUI interface. It will tell you which system files are signed and which aren't. As a rule, all the system files should be digitally signed, although some hardware vendors don't sign driver files. The command used to launch the File Signature Verification tool is:
sigverif

3: Driverquery

Incorrect device drivers can lead to any number of system problems. If you want to see which drivers are installed on a Windows 7 system, you can do so by running the driverquery tool. This simple command-line tool provides information about each driver that is being used. The command is:
driverquery
If you need a bit more information, you can append the -v switch. Another option is to append the -si switch, which causes the tool to display signature information for the drivers. Here's how they look:
driverquery -v
driverquery -si

4: Nslookup

The nslookup tool can help you to verify that DNS name resolution is working correctly. When you run nslookup against a host name, the tool will show you how the name was resolved, as well as which DNS server was used during the lookup. This tool can be extremely helpful when troubleshooting problems related to legacy DNS records that still exist but that are no longer correct.
To use this tool, just enter the nslookup command, followed by the name of the host you want to resolve. For example:
nslookup dc1.contoso.com

5: Ping

Ping is probably the simplest of all diagnostic commands. It's used to verify basic TCP/IP connectivity to a network host. To use it, simply enter the command, followed by the name or IP address of the host you want to test. For example:
ping 192.168.1.1
Keep in mind that this command will work only if Internet Control Message Protocol (ICMP) traffic is allowed to pass between the two machines. If at any point a firewall is blocking ICMP traffic, the ping will fail.

6: Pathping

Ping does a good job of telling you whether two machines can communicate with one another over TCP/IP, but if a ping does fail, you won't receive any information regarding the nature of the failure. This is where the pathping utility comes in.
Pathping is designed for environments in which one or more routers exist between hosts. It sends a series of packets to each router that's in the path to the destination host in an effort to determine whether the router is performing slowly or dropping packets. At its simplest, the syntax for pathping is identical to that of the ping command (although there are some optional switches you can use). The command looks like this:
pathping 192.168.1.1

7: Ipconfig

The ipconfig command is used to view or modify a computer's IP addresses. For example, if you wanted to view a Windows 7 system's full IP configuration, you could use the following command:
ipconfig /all
Assuming that the system has acquired its IP address from a DHCP server, you can use the ipconfig command to release and then renew the IP address. Doing so involves using the following commands:
ipconfig /release
ipconfig /renew
Another handy thing you can do with ipconfig is flush the DNS resolver cache. This can be helpful when a system is resolving DNS addresses incorrectly. You can flush the DNS cache by using this command:
ipconfig /flushdns

8: Repair-bde

If a drive that is encrypted with BitLocker has problems, you can sometimes recover the data using a utility called repair-bde. To use this command, you will need a destination drive to which the recovered data can be written, as well as your BitLocker recovery key or recovery password. The basic syntax for this command is:
repair-bde <source> <destination> -rk | rp <source>
You must specify the source drive, the destination drive, and either the rk (recovery key) or the rp (recovery password) switch, along with the path to the recovery key or the recovery password. Here are two examples of how to use this utility:
repair-bde c: d: -rk e:\recovery.bek
repair-bde c: d: -rp 111111-111111-111111-111111-111111-111111

9: Tasklist

The tasklist command is designed to provide information about the tasks that are running on a Windows 7 system. At its most basic, you can enter the following command:
tasklist
The tasklist command has numerous optional switches, but there are a couple I want to mention. One is the -m switch, which causes tasklist to display all the DLL modules associated with a task. The other is the -svc switch, which lists the services that support each task. Here's how they look:
tasklist -m
tasklist -svc

10: Taskkill

The taskkill command terminates a task, either by name (which is referred to as the image name) or by process ID. The syntax for this command is simple. You must follow the taskkill command with -pid (process ID) or -im (image name) and the name or process ID of the task that you want to terminate. Here are two examples of how this command works:
taskkill -pid 4104
taskkill -im iexplore.exe

Microsoft Exchange(2000, 2003, 2007, 2010, 2013, 2016) Versions, Build Release Information with Dates and Download Links



Exchange Versions, Builds & Dates

This is the list of Exchange versions, build numbers and release dates for major releases (RTM, Service Packs) as well as Rollups. The table also contains a link to the release notes or related KB article as well as a download link.
Note that the list is ordered by version, not release date.
Version Build Released Info Link
4.0 (Touchdown) 4.0.837.xxx Apr1996

5.0 5.0.1457.xxx Mar1997

5.5 SP4 (Osmium) 5.5.1960 Nov2000 KB274831
KB274833
Download
5.5 Post SP4 5.5.2655.37 Oct2001 KB282533 Via KB
2000 SP3 (Platinum) 6.0.6249 Aug2002 Release Notes Download
2000 Post SP3 6.0.6620.15 Apr2010 KB976703 Download
2003 RTM (Titanium) 6.5.6944 Oct2003

2003 SP1 6.5.7226 May2004 Release Notes Download
2003 SP2 6.5.7638 Oct2005 KB906669 Download
2003 Post SP2 6.5.7653.33 Mar2008 KB951061
2003 Post SP2 6.5.7654.4 Aug2008 KB956398
2003 Post SP2 6.5.7656.2 Apr2010 KB976702 Download
2007 RTM (Exchange ’12’) 8.0.685.25 (or 24) Dec2006 Release Notes Download
2007 RU1 8.0.708.3 Apr2007 KB930809 Download
2007 RU2 8.0.711.2 May2007 KB935490 Download
2007 RU3 8.0.730.1 Jun2007 KB935999 Download
2007 RU4 8.0.744.0 Aug2007 KB940006 Download
2007 RU5 8.0.754.0 Oct2007 KB941421 Download
2007 RU6 8.0.783.2 Feb2008 KB942846 Download
2007 RU7 8.0.813.0 Jul2008 KB953469 Download
2007 SP1 8.1.240.6 Nov2007 Release Notes Download
2007 SP1 RU1 8.1.263.1 Feb2008 KB945684 Download
2007 SP1 RU2 8.1.278.2 May2008 KB948016 Download
2007 SP1 RU3 8.1.291.2 Jul2008 KB949870 Download
2007 SP1 RU4 8.1.311.3 Oct2008 KB952580 Download
2007 SP1 RU5 8.1.336.1 Nov2008 KB953467 Download
2007 SP1 RU6 8.1.340.1 Feb2009 KB959241 Download
2007 SP1 RU7 8.1.359.2 Mar2009 KB960384 Download
2007 SP1 RU8 8.1.375.2 May2009 KB968012 Download
2007 SP1 RU9 8.1.393.1 Jul2009 KB970162 Download
2007 SP1 RU10 8.1.436.0 Apr2010 KB981407 Download
2007 SP2 8.2.176.2 Aug2009 Release Notes Download
2007 SP2 RU1 8.2.217.3 Nov2009 KB971534 Download
2007 SP2 RU2 8.2.234.1 Jan2010 KB972076 Download
2007 SP2 RU3 8.2.247.2 Mar2010 KB979784 Download
2007 SP2 RU4 8.2.254.0 Apr2010 KB989381 Download
2007 SP2 RU5 8.2.305.03 Dec2010 KB2407132 Download
2007 SP3 8.3.83.6 Jun2010 Release Notes Download
2007 SP3 RU1 8.3.106.2 Sep2010 KB2279665 Download
2007 SP3 RU2 8.3.137.3 Dec2010 KB2407025 Download
2007 SP3 RU3 v2 8.3.159.2
(v1: 8.3.159.0)
Apr2011
(v1: Feb2011)
KB2492691 Download
2007 SP3 RU4 8.3.192.1 Jul2011 KB2509911 Download
2007 SP3 RU5 8.3.213.1 Sep2011 KB2602324 Download
2007 SP3 RU6 8.3.245.2 Jan2012 KB2608656 Download
2007 SP3 RU7 8.3.264.0 Apr2012 KB2655203 Download
2007 SP3 RU8 v3 8.3.279.6
(v2:8.3.279.5,
v1:8.3.279.3)
Nov2012
(v2:Oct2012,
v1:Aug2012)
KB2778154 Download
2007 SP3 RU9 8.3.297.2 Dec2012 KB2746157 Download
2007 SP3 RU10 8.3.298.3 Feb2013 KB2788321 Download
2007 SP3 RU11 8.3.327.1 Aug2013 KB2873746 Download
2007 SP3 RU12 8.3.342.4 Dec2013 KB2903911 Download
2007 SP3 RU13 8.3.348.2 Feb2014 KB2917522 Download
2007 SP3 RU14 8.3.379.2 Aug2014 KB2936861 Download
2007 SP3 RU15 8.3.389.2 Dec2014 KB2996150 Download
2007 SP3 RU16 8.3.406.0 Mar2015 KB3030086 Download
2007 SP3 RU17 8.3.417.1 Jun2015 KB3056710 Download
2007 SP3 RU18 8.3.445.0 Dec2015 KB3078672 Download
2010 RTM (Exchange ’14’) 14.0.639.21 Oct2009 Release Notes Download
2010 RU1 14.0.682.1 Dec2009 KB976573 Download
2010 RU2 14.0.689.0 Mar2010 KB979611 Download
2010 RU3 14.0.694.0 Apr2010 KB981401 Download
2010 RU4 14.0.702.1 Jun2010 KB982639 Download
2010 RU5 14.0.726.0 Dec2010 KB2407113 Download
2010 SP1 14.1.218.15 Aug2010 Release Notes Download
2010 SP1 RU1 14.1.255.2 Oct2010 KB2407082 Download
2010 SP1 RU2 14.1.270.1 Dec2010 KB2425179 Download
2010 SP1 RU3 v3 14.1.289.7
(v1: 14.1.289.3)
Apr2011
(v1: Feb2011)
KB2529939 Download
2010 SP1 RU4 v2 14.1.323.6
(v1: 14.1.323.1)
Jul2011
(v1: Jun2011)
KB2579150 Download
2010 SP1 RU5 14.1.339.1 Aug2011 KB2582113 Download
2010 SP1 RU6 14.1.355.2 Oct2011 KB2608646 Download
2010 SP1 RU7 v3 (v2:14.1.421.2,
v1:14.1.421.0)
(v2: Oct2012,
v1:Aug2012)
KB2778158 Download
2010 SP1 RU8 14.1.438.0 Dec2012 KB2787763 Download
2010 SP2 14.2.247.5 Dec2011 Release Notes Download
2010 SP2 RU1 14.2.283.3 Feb2012 KB2645995 Download
2010 SP2 RU2 14.2.298.4 Apr2012 KB2661854 Download
2010 SP2 RU3 14.2.309.2 May2012 KB2685289 Download
2010 SP2 RU4 v2 14.2.318.4
(v1:14.2.318.2)
Oct2012
(v1:Aug2012)
KB2706690 Download
2010 SP2 RU5 v2 14.2.328.10
(v1:14.2.328.5)
Dec2012
(v1:Nov2012)
KB2785908 Download
2010 SP2 RU6 14.2.342.3 Feb2013 KB2746164 Download
2010 SP2 RU7 14.2.375.0 Aug2013 KB2874216 Download
2010 SP2 RU8 14.2.390.3 Dec2013 KB2903903 Download
2010 SP3 14.3.123.4 Feb2013 Release Notes Download
2010 SP3 RU1 14.3.146.0 May2013 KB2803727 Download
2010 SP3 RU2 14.3.158.1 Aug2013 KB2866475 Download
2010 SP3 RU3 14.3.169.1 Nov2013 KB2891587 Download
2010 SP3 RU4 14.3.174.1 Dec2013 KB2905616 Download
2010 SP3 RU5 14.3.181.6 Feb2014 KB2917508 Download
2010 SP3 RU6 14.3.195.1 May2014 KB2936871 Download
2010 SP3 RU7 14.3.210.2 Aug2014 KB2961522 Download
2010 SP3 RU8 v2 14.3.224.2
(v1:14.3.224.1)
Dec2014 KB2986475 Download
2010 SP3 RU9 14.3.235.1 Mar2015 KB3030085 Download
2010 SP3 RU10 14.3.248.2 Jun2015 KB3049853 Download
2010 SP3 RU11 14.3.266.1 Sep2015 KB3078674 Download
2010 SP3 RU12 14.3.279.2 Dec2015 KB3096066 Download
2013 RTM (Exchange ’15’) 15.0.516.32 Oct2012 Release Notes Download
2013 CU1 15.0.620.29 Apr2013 KB2816900 Download
2013 CU1 + KB2874216v2 15.0.620.34 Aug2013 KB2874216 Download
2013 CU2 v2 v2:15.0.712.24
(v1:15.0.712.22)
Jul2013 KB2859928 Download
2013 CU2 + KB2874216v2 15.0.712.28 Aug2013 KB2874216 Download
2013 CU2 + KB2880833 15.0.712.31 Dec2013 KB2880833 Download
2013 CU3 15.0.775.38 Nov2013 KB2892464 Download
2013 CU3 + KB2880833 15.0.775.41 Dec2013 KB2880833 Download
2013 SP1 (CU4) 15.0.847.32 Feb2014 KB2926248 Download
2013 CU5 15.0.913.22 May2014 KB2936880 Download
2013 CU6 15.0.995.29 Aug2014 KB2961810 Download
2013 CU7 15.0.1044.25 Dec2014 KB2986485 Download
2013 CU8 15.0.1076.9 Mar2015 KB3030080 Download
2013 CU9 15.0.1104.5 Jun2015 KB3049849 Download
2013 CU10 15.0.1130.7 Sep2015 KB3078678 Download
2013 CU11 15.0.1156.6 Dec2015 KB3099522 Download
2016 Preview 15.1.225.17 Jul2015 Release Notes Download
2016 RTM 15.1.225.42 Oct2015 Release Notes Download

Monday, 14 December 2015

Server 2008, 2008 R2, 2012 stuck on "Applying computer settings" or hangs at desktop blue or black screen fix(In any enviroment including Vmware Workstation)

Hello Everyone;

Today I will be teaching you how to fix the error in case you stuck on "Applying computer settings" or hangs at desktop blue or black screen in server 2008 or 2008R2 or server 2012. This is a fix that will help you resolving the issue in a matter of seconds without any hestle.


Cause of the Issue:
The issue under consideration usually arises due to the DNS ip address entered wrongly. In case of a domain controller it always tries to locate DNS server at applying computer settings option. If the DNS server ip address is wrongly entered it will stuck at that portion and will create a dead loop again and again at the same place.

Resolution:

In order to resolve this issue restart the server in safe mode and then wait for around 10 minutes. Once the login screen appear. Login and wait for some time. In many cases it successfully login without any issue  in safe mode. If it hangs or stuck at blue/black desktop then press ctrl+alt+end key simultaneously click on task manager and kill dns service and wait. If you are using vmware workstation kill vmtools task as well and wait for some time. The desktop will appear. After that just change the dns settings accordingly.
In some cases disabling the ipv6 version may cause the issue as well. in that case after the safemode successfull login disable the ipv6 using registry edit or re-enable it. Make sure dns points to a valid server. In case of Domain controller it should point to itself or the dns server dedicated for resolution of domain controller systems.

In case of vmware workstation follow the same procedure. Only difference is that you need to kill vmwaretool and dns task both. Also sometime deleting the network card from settings may help resolving the issue but still you need to boot the server in safe mode.

Hope this will help you. Remember me in your prayers.

Exchange 2010 EMS, EMC or OWA not working / Startup issue Resolved (100 percent fix)

In this blog I am going to teach you how to resolve the issue in case Exchange 2010 EMS, EMC or OWA not working / Startup issue giving error message of any kind. Please follow step by step procedure to make sure you are doing it in a right way:

Step1 :  

Ping your FQDN server name and see if the ping result is positive. i.e; In my case server fqdn is mail107.vcsl107.local so ping mail107.vcsl107.local and if the result is positive then all perfect else just make an entry in the host file and try to ping again. Some times this issue also arise due to ipv6 version enabled. So try to ping you fqdn server name and if as a result reply is in ipv6 then try to disable ipv6 from registry and ping again to see if it works.
In most of the cases above stated fix may help you getting resolution and your exchange server back at work. If not then try step 2

 Step 2:  

If you are running exchange in a virtual  environment or if not please make sure the Time Synchronisation option is correct and the time is running properly and then running net time /set on Exchange servers brought their clocks back into sync with their domain controllers.

Step3:

In step 4 we will be using Windows power shell to add exchange snap in to use powershell as an exchange management shell to check and see if the listed below options / virtual directories are working or not. Please follow along with caution:
Run windows power shell as administrator and paste the below mentiond command:

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010
 
after this follow the below procedure
 
1. Reboot the server, usually fixes this error.
2. Make sure your authentication settings on your virtual directory for PowerShell is correct.
>Internet Information Services (IIS) Manager, <Servername>, Sites, Default Web Site, PowerShell and in the right panel, scroll down to the Authentication module
Make sure that Anonymous access is disabled and Windows Authentication is enabled.
3.
a) Make sure the current logged in user has remote powershell enabled. Should return “True” if enabled.
(Get-User <username>).RemotePowershellEnabled
b) Enable remote powershell for a user with the below cmd in “Exchange Management Shell”
Set-User “User Name” -RemotePowerShellEnabled $true

Step 4:

a) If you still can’t access EMC or EMS then go ahead below with caution. (Write down your custom settings for the “PowerShell” and “OWA” Virtual Directory in IIS)
b) Start Windows PowerShell as administrator
c) Load snapin for ex2k10:
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010
d) Display a full list (fl)
Get-PowerShellVirtualDirectory |fl
e) Delete your failing PowerShell virtual directory, one of these two commands should work:
Get-PowerShellVirtualDirectory | Remove-PowerShellVirtualDirectory
Remove-PowerShellVirtualDirectory -identity "powershell-vdir "
f) Restart IIS:
iisreset
g) Create a new IIS PowerShell virtual directory
New-PowerShellVirtualDirectory
Name: PowerShell
h) Restart IIS once more:
iisreset
j) Disable “Require SSL” Setting on the virtual directory.
Set-PowerShellVirtualDirectory -identity "powershell-vdir" -RequireSSL:$false
You may also go ahead and set SSL settings manually on the virtual directory “PowerShell” in IIS 7.
>Internet Information Services (IIS) Manager, <Servername>, Sites, Default Web Site, PowerShell and in the right panel, scroll down to SSL Settings.
Untick Require SSL and set to Ignore. Apply.


If you get this error when visiting OWA together with a Forms Based authentication:
"The Microsoft Exchange Active Directory Topology service on server localhost can't be contacted via RPC. Error 0x5."
Step 5.
a) Then remove your OWA virtual directory and re-create it with default settings:
Get-OwaVirtualDirectory | Remove-OwaVirtualDirectory
b) Restart IIS:
iisreset
c) Create a new OWA virtual directory:
New-OwaVirtualDirectory
e) Restart IIS once more:
iisreset
Now go ahead and see if OWA works. It all worked fine for me.
  
Step 6:  Manual powershell virtual directory creation
 
If aboveall didn't work for you and still you are getting same error or virtual directory powershell creation is giving some errors or what so ever the case may be so then now the below mentioned steps will surely resolve your problem : please follow along:

I decided to create the PowerShell VD manual by my own. Here how it worked for me:
I´m working with a German Windows, so I hope I translate the options right:


  • In the IIS Manager create a new Application for your default Website called: "PowerShell" and use the "MSExchangePowerShellAppPool". Point the physical path to: "C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\PowerShell"
  • Open the following file: "C:\Windows\System32\inetsrv\config\applicationHost.config" and add these 2 Lines in the "<globalModules>" Section:
                <add name="WSMan" image="C:\Windows\System32\WsmSvc.dll" />
                <add name="kerbauth" image="C:\Program Files\Microsoft\Exchange Server\v14\Bin\kerbauth.dll" />
      
         Please make sure if the above two lines already exists in applicationHost.config file then don't enter them again.



  • Go back to IIS Manager and open the Module Section within the PowerShell Website. Right Click and choose "Configure Native Modules". Add here your WSMan and kerbauth Module.
  • Make sure that SSL required isn´t hooked in the SSL Options from the Powershell Website
  • open powershell and run "WinRM Quickconfig"
  • do a iisreset
After I´ve done this steps my Exchange Management Console and Shell worked fine again.

Hope this helps some people :)


Step 7:

now please verify this again :
1. Launch EMS if not working then launch windows power shell addin exchange snap in using 
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 
 
and then try the following and see results: 
2. winrm quickconfig
accept Y and if it gives already running then fine. 
3. iisreset


Step 8:

If the issue still persists then please follow the procedure of web.config file edit. Make sure to backup the web.config file before proceeding:
if we edit the web.config we can see a variable called %ExchangeInstallDir% but that variable doesn't exist in the environment variable path, even after we add it still the issue is the same
so what i did here is replace this variable with the physical path as below

open web.config (you will find this in C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\PowerShell ) or in sp3 exchange 2010  C:\exchangeserversp3\ClientAccess\PowerShell

Replace all "file:///%ExchangeInstallDir%" with "file:///D:\Program Files\Microsoft\Exchange Server\" where D is the drive where Exchange is installed
Save the file
iisreset

now EMC and EMS should open properly

Step 9:

Make sure that the Kerbauth.dll module is native and local and pointing on in powershell not on all default website virtual directory.
Also make sure that in SSL settings ignore is checked and SSL is disabled.
Make sure that the IIS default web site bindings are all correct.


Conclusion:

I have followed this procedure step by step and afterwards I resolved the problem. Its 100 percent that if you follow the steps one by one in your environment then you will certainly be able to resolve the issue easily as I have almost stated all the possible fixes that can make your exchange 2010 up and running again. 

In case of any confusion or for further queries you may contact me at :
Email :          yaseenraja2000@gmail.com
Contact:       0092-312-5166589
Skype id:      myaseen789

Also check my blogs on different related issues at :   myaseen789.blogspot.com

EMC, EMS or Owa Startup Issues in Exchange 2010 (Resolve)

Exchange Server 2010 came with multiple revived features including advanced management tools. In Exchange 2010, all the management is done by Remote PowerShell and it differs from the previous versions in that it is largely dependent on IIS. The Remote PowerShell sends the requests through HTTP protocol and uses the Internet Information Services (IIS) for the connection mechanism. Windows Remote Management (WinRM) Service and the Web Services for Management (WSMan) protocol work collaboratively with IIS to initiate connection.

This article is aimed at dealing with the numerous issues encountered while working with Exchange 2010 Management tools, that are, Exchange Management Console and Exchange Management Shell. It further elaborates on troubleshooting Exchange 2010 Management Tools startup issues.
When you click to start Exchange Management Shell, a session of Remote PowerShell opens. PowerShell connects with the use of IIS to the nearest Exchange Server 2010 through WinRM which runs checks for authentication. It further creates remote session and provides cmdlts that can be gained access to through Role Based Access Control (RBAC).

Common Errors Exhibited By Exchange Management Tools:

It sometimes occurs that while trying to open Exchange Management Tools, an error is exhibited. Let us get acquainted with some of the most common factors leading to these errors and the methods in which they can be troubleshooted.
#Error 1:
err1
When you attempt to start Exchange Management Console or Exchange Management Shell, the connection to the remote server failed, displaying the above mentioned error message.
This issue might occur if one of the following conditions is true.
  • The Kerbauth module is improperly configured with IIS.
  • The user does not have the status Remote PowerShell Enabled.
  • The WSMan module is missing from modules section of ApplicationHost.config file.
The Karbauth must be listed in IIS Manager as a Native module in PowerShell virtual directory. Also, it is important to ensure that the user has the status remote PowerShell Enabled by running the command: (Get-User- <username>).RemotePowerShellEnabled. In case of a ‘False’ response, it is concluded that the user is does not have Remote PowerShell Enabled. Hence, in order to enable it, the user should run the following command:
Set-User <username> -RemotePowerShellEnabled $True
#Error 2:
err2
This type of error message is prompt usually while running multiple websites or setting up a redirect requiring SSL on the Default Website. It may also occur if another website is created to redirect back to the website that is SSL enabled. The cause of the error is that the HTTP binding on Default Web Site in IIS is either invalid or is invalid.
However, this error can be resolved by following the given steps:
  • Open IIS Manager & go to Default Web Site.
  • Right click on Default Web Site.
  • Select Edit Bindings option.
  • If binding for HTTP exists, clear host name value.
  • If binding for HTTP does not exist, create new binding without host name and All Unassigned value for IP address.
  • Now, restart IIS.
#Error 3:
err3
This error is caused if one of the following conditions is true:
  • ExchangeInstallPath variable is missing.
  • Path of PowerShell virtual directory is modified.
Steps to resolve this error are as follows:
  • Ensure that the ExchangeInstallPath variable is set correct.
  • Open System, in Control Panel, click on Advanced System Settings, then on Advanced tab click Environment Variables, in System Variables box, locate ExchangeInstallPath variable. The value should be: C:\ Program Files\ Microsoft\ Exchange Server\ V14\
#Error 4:
err4
This error occurs if the following conditions are true:
  • MSExchangePowrShellAppPool application is not running or experiencing issues.
  • User does not have the status: RemotePowerShell Enabled
  • WinRM is not configured correctly on the server.
However, these issues can be resolved by one of the below discussed methods:
  • Ensure that MSExchangePowrShellAppPool is running and try recycling it. Then check in case of any errors in the event logs.
  • Also, make sure that the user has RemotePowerShell Enabled status. To do that first start the Exchange Management Shell with the use of an enabled account and run the following: (Get-User <username>).RemotePowerShellEnabled.
In case of a False response, run the following command for enabling the user.
Set-User <username> -RemotePowerShellEnabled $True
  • Ensure that WinRM is configured on the server correctly by using following steps:
  • Click Start, search and run WinRM Quick Config.
  • When both tests are passed, search cmd. In the command window, run the command: WinRM enumerate winrm/config/listener
  • Now, ensure that listener exists for HTTP protocol on 5985 port and is listening on all the addresses.
The above mentioned errors are some of the frequent and common errors exhibited by the Exchange 2010 server management tools during startup. The steps defined to resolve each of these errors is sure to help you in troubleshooting Exchange 2010 Management Tools startup issues with ultimate ease.

Wednesday, 21 October 2015

Trust relationship between two different domains


 Trust relationship between two different domains




A relationship between different domains or forests that allow sharing of resources between them.

Trust can be transitive or non-transitive.
  • Transitive Trust: Trust which can be extended to other domains in the forests.
  • Non- Transitive Trust: Trust which cannot be extended to other domains in the forests, it is only between the two domains of different forests.
Types of Trusts

Ø  External Trust: Trust between only two domains in different forests, it is a non-transitive trust.

Ø  Forest Trust: Trust between the forest root domains and it allows other domains in the forest to share resources, it is a transitive trust.

Ø  Shortcut Trust: It is a kind of trust which allows users from different domains within the same forest to access resources faster.

Ø  Realm Trust: It allows windows active directory network to trust Unix-based network.

Direction of Trust

  • One-way Trust: Network A trusts network B, and then network B can access network A only.
  • Two-way Trust: Network A trusts network B, and vice versa, then both networks A and B can access each other.

CMD commands for adding, removing ports, programs, configure ICMP, set logging in windows servers

The netsh advfirewall firewall command-line context is available in Windows Server 2008 and in Windows Vista. This context provides the functionality for controlling Windows Firewall behavior that was provided by the netsh firewall context in earlier Windows operating systems.

This context also provides functionality for more precise control of firewall rules. These rules include the following per-profile settings:
  • Domain
  • Private
  • Public
The netsh firewall command-line context might be deprecated in a future version of the Windows operating system. We recommend that you use the netsh advfirewall firewall context to control firewall behavior.

Note The netsh firewall command line is not recommended for use in Windows Vista.

This article describes how to use the netsh advfirewall firewall context instead of the netsh firewall context to control Windows Firewall behavior in Windows Server 2008 and in Windows Vista.
Important If you are a member of the Administrators group, and User Account Control is enabled on your computer, run the commands from a command prompt with elevated permissions. To start a command prompt with elevated permissions, find the icon or Start menu entry that you use to start a command prompt session, right-click it, and then click Run as administrator.

Some examples of frequently used commands are provided in the following tables. You can use these examples to help you migrate from the older netsh firewall context to the new netsh advfirewall firewall context.

Additionally, the netsh advfirewall commands that you can use to obtain detailed inline help are provided.

Example 1: Enable a program

Old commandNew command
netsh firewall add allowedprogram C:\MyApp\MyApp.exe "My Application" ENABLEnetsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=Domainnetsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=ALLRun the following commands:

netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain

netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=private
For more information about how to add firewall rules, run the following command:
netsh advfirewall firewall add rule ?

Example 2: Enable a port

Old commandNew command
netsh firewall add portopening TCP 80 "Open Port 80"netsh advfirewall firewall add rule name="Open Port 80" dir=in action=allow protocol=TCP localport=80
For more information about how to add firewall rules, run the following command:
netsh advfirewall firewall add rule ?

Example 3: Delete enabled programs or ports

Old commandNew command
netsh firewall delete allowedprogram C:\MyApp\MyApp.exenetsh advfirewall firewall delete rule name=rule name program="C:\MyApp\MyApp.exe"
delete portopening protocol=UDP port=500netsh advfirewall firewall delete rule name=rule name protocol=udp localport=500
For more information about how to delete firewall rules, run the following command:
netsh advfirewall firewall delete rule ?

Example 4: Configure ICMP settings

Old commandNew command
netsh firewall set icmpsetting 8netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow
netsh firewall set icmpsetting type=ALL mode=enablenetsh advfirewall firewall add rule name="All ICMP V4" protocol=icmpv4:any,any dir=in action=allow
netsh firewall set icmpsetting 13 disable allnetsh advfirewall firewall add rule name="Block Type 13 ICMP V4" protocol=icmpv4:13,any dir=in action=block
For more information about how to configure ICMP settings, run the following command:
netsh advfirewall firewall add rule ?

Example 5: Set logging

Old commandNew command
netsh firewall set logging %systemroot%\system32\LogFiles\Firewall\pfirewall.log 4096 ENABLE ENABLERun the following commands:

netsh advfirewall set currentprofile logging filename %systemroot%\system32\LogFiles\Firewall\pfirewall.log

netsh advfirewall set currentprofile logging maxfilesize 4096
netsh advfirewall set currentprofile logging droppedconnections enable

netsh advfirewall set currentprofile logging allowedconnections enable
For more information, run the following command:
netsh advfirewall set currentprofile ?
If you want to set logging for a particular profile, use one of the following options instead of the "currentprofile" option:
  • Domainprofile
  • Privateprofile
  • Publicprofile

Example 6: Enable Windows Firewall

Old commandNew command
netsh firewall set opmode ENABLEnetsh advfirewall set currentprofile state on
netsh firewall set opmode mode=ENABLE exceptions=enableRun the following commands:

Netsh advfirewall set currentprofile state on

netsh advfirewall set currentprofile firewallpolicy blockinboundalways,allowoutbound
netsh firewall set opmode mode=enable exceptions=disable profile=domainRun the following commands:

Netsh advfirewall set domainprofile state on

netsh advfirewall set domainprofile firewallpolicy blockinbound,allowoutbound
netsh firewall set opmode mode=enable profile=ALLRun the following commands:

netsh advfirewall set domainprofile state on

netsh advfirewall set privateprofile state on
For more information, run the following command:
netsh advfirewall set currentprofile ?
If you want to set the firewall state for a particular profile, use one of the following options instead of the "currentprofile" option:
  • Domainprofile
  • Privateprofile
  • Publicprofile

Example 7: Restore policy defaults

Old commandNew command
netsh firewall resetnetsh advfirewall reset
For more information, run the following command:
netsh advfirewall reset ?

Example 8: Enable specific services

Old commandNew command
netsh firewall set service FileAndPrintnetsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
netsh firewall set service RemoteDesktop enablenetsh advfirewall firewall set rule group="remote desktop" new enable=Yes
netsh firewall set service RemoteDesktop enable profile=ALLRun the following commands:

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=domain

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=private

Friday, 16 October 2015

Installing Microsoft Service Center Configuration Manager(SCCM) 2012 SP1 onto Windows Server 2012 with SQL 2012 RTM CU 3

Here’s a guide for installing ConfigMgr 2012 SP1 onto Windows Server 2012 with SQL 2012 RTM CU 3.

Prerequisites:

  • Windows 2012 Domain Member
  • Windows Domain Controller (2008 or 2012 is acceptable)

Necessary Downloads:

I’ve put together a list of downloads required for the SCCM installation.

Windows Workstations:

The following Virtual Machines will need to be assigned and built:
Purpose OS for the LAB Usage and configuration recommendations for this LAB guide only
Domain Controller Can be Windows 2008 R2 or Windows 2012 The domain controller for your ConfigMgr SP1 Beta Site server
Primary Windows 2012 RTM Assign a minimum of 2GB of Memory, ideally 4GB Join this server to an existing lab AD domain
SQL Server Windows 2012 or 2008 SQL Server 2008 R2 or SQL Server 2012 CU3

***I’m assuming that you’re putting this into a working environment and you know that you need a domain controller for this project to be successful. If you need directions on how to create a domain controller, I’m sure that you can find resources elsewhere on the internet as this page will not walk you through that process.***

Install Windows Server 2012

  • I won’t screenshot the Server 2012 installation as there isn’t much too it, instead install Windows Server 2012 into your VM and log onto it
  • If you haven’t already, change the machine name
  • Give it a static IP address
  • Join it to your AD domain
  • Install WADK
  • Launch the WADK installer

  • I just accept default paths for all my installs, unless there is a known issue or a pretty good reason to not do so
  • Select Next

  • Select Yes
  • Select Next

  • Select Accept

  • Un-tick everything short of
    • Deployment Tools
    • Windows Preinstallation Environment (Windows PE)
    • User State Migration Tool (USMT)
  • Select Install

  • Select Close
  • Install OS prerequisites
  • Open a PowerShell prompt and type
    • Import-Module servermanager
    • Add-WindowsFeature BITS,RDC,Web-WMI,WDS
I’ve really cut this down, magic happens during the installs that results in what we need being switched on or installed

Install SQL 2012

I don’t particularly recommend the installation of the SQL instance to be on the same server as your SCCM installation, but it CAN be done. I would really suggest that you install it on a separate server in order to keep the loads equalized and if you need to restart one server you don’t need to wait on all the services to come back online.
ConfigMgr 2012 SP1 supports SQL 2012 RTM with a minimum of CU 2 (But I HIGHLY recommend CU 3). ConfigMgr has very strict SQL collation requirement, pretty much across the entire System Center range, essentially only SQL_Latin1_General_CP1_CI_AS collation is supported. This has to be selected during installation if you are running a non-USA regionalsystem OS
Something handy to know ahead of the installs is that you can use CMTrace to view the resulting log files for the SQL 2012 RTM and CU 2 installations. Each execution creates a new folder on the following path called detail.txt:
C:Program FilesMicrosoft SQL Server110Setup BootstrapLog

The Installation Process

  • Launch the SQL 2012 RTM installer

  • Files are expanded …

  • Select Installation on the left navigation pane

  • Select New SQL Server stand-alone installation or add features to an existing installation

  • All rules will pass
  • Select OK

  • Select Specify a free edition and make sure Evaluation is the chosen option
  • Select Next

  • Tick Accept the license terms
  • Tick Send feature usage data
  • Select Next

  • I open the firewall later, hence the warning above
  • Select Next

  • Select SQL Server Feature Installation
  • Select Next

  • Select the following
    • Database Engine Services
    • Reporting Services – Native
      • You’ll need this for reporting services role within SCCM.
    • Management Tools – Basic
      • Management Tools – Complete
  • Select Next

  • Rules are good
  • Select Next

  • The default is Default instance, which we’ll accept along with the paths
  • Select Next

  • Select Next

  • By default each of the services will be configured using a service-specific user account, we need to revert back to using NT AUTHORITYSYSTEM
    • Do this for the SQL Server Agent, the SQL Server Database Engine and the SQL Server Reporting Services services
      • Click Account Name
      • Browse
      • Browse locally for SYSTEM and accept
      • Set the services Start-up Type to automatic
  • When done, Select the Collation tab

  • If SQL_Latin1_General_CP1_CI_AS is not shown, click Customize otherwise skip this part

  • Select SQL collation, used for backwards compatibility
  • Scroll down the list and choose SQL_Latin1_General_CP1_CI_AS
  • Select OK

  • Select Next

  • Add the current user and a domain user at this point. I usually add domain admins and the local administrator unless I want to be very specific about who gets what
  • Select Next

  • Select Install and configure
  • Select Next

  • Tick Send Windows and SQL Server Error Reports to Microsoft …
  • Select Next

  • Rules passed again
  • Select Next

  • SQL is ready to install, show time!
  • Note the Configuration file path, you can automate this part of SQL install by using this file next time
  • Select Install

  • Once it’s done we get success reported back for all the features being install

Install SQL 2012 RTM CU 3

It is important as a prerequisite that you install the Cumulative Update 3 pack on the SQL Server in order for SCCM to be “happy” with its own installation process.
  • Run the SQL 2012 RTM CU 3 installer

  • Unpack file time …

  • Tick I accept the license terms
  • Tick Send feature …
  • Select Next

  • The CU 3 detects a version it can upgrade
  • Select Next

  • No files in use, this is on a brand new install with no reboot yet, and none required before we patch. That’s cool
  • Select Next

  • That’s it, SQL 2012 with CU 3 both installed successfully
  • Select Close

Install WSUS

We’re going to install WSUS using Server Manager now. You can add this feature using PowerShell, but I’m passing through quickly and haven’t looked to see how you configure WSUS so that it uses the existing SQL installation and not WID
  • Open Server Manager
  • Select Add Roles and features

  • Select Next

  • Select Role-based or feature-based installation
  • Select Next

  • Select Select a server from the server pool
  • Select Next

  • Tick Windows Server Update Services
  • The following window will appear



  • Select Add Features

  • Select Next

  • Select Next

  • Select Next

  • Previously the WSUS installer wizard would be launched after we’d elected to install the role that would then allow us to configure the Database and Website settings. We now have this integrated pretty much into the role creation
  • Tick WSUS Services
  • Tick Database
  • Select Next

  • Enter a valid (as in the directory exists) path to store WSUS Content.
  • You should do this to get patch licensing files, otherwise licensed patches won’t install on the clients
  • Select Next

Supply the SQL Server Hostname

For this guide we’re just going to use the default SQL instance so no need to specify it above
  • Select Check connection
  • It should be able to reach back to SQL 2012 RTM with CU 3 and confirm connection is successful
  • Select Next

  • Notice that you can export configuration settings.
  • It has also put the Windows Internal Database (WID) into the list even though we haven’t selected it directly. I assume ticking Database during role creation induces this, I’ll see what that is about when I pass through here again once SP1 has released
  • Select Install

  • Select Close

Configure the firewall

This Primary won’t have a parent most likely, but if you do configure the beta in a hierarchy then you’ll need to open up the firewall ports or take the firewall down entirely
To open up the firewall ports that are needed by ConfigMgr for inter-site database replication

From Powershell or CMD prompt enter the following

netsh advfirewall firewall add rule name=”SQLServer” dir=in action=allow protocol=TCP localport=1433

netsh advfirewall firewall add rule name=”SQL Service Broker” dir=in action=allow protocol=TCP localport=4022

The rules should both be accepted with an OK message

Configure SQL 2012 Maximum server memory usage

Method 1

  • SQL will consume all your memory. It needs to be throttled back
  • Open SQL Server Management Studio and get the properties for the database up

  • Select Memory and change the maximum server memory setting

Method 2

  • Use OSQL to make the change to the maximum allowed memory
    • Note that this sets aside 1GB of memory for SQL to use before it “bottoms out” and begins paging. 1GB is enough for a small lab but if you encounter performance bottlenecks this is a place to revisit to increase the memory allocation.
  • Open a CMD prompt and type OSQL -E
    • Paste the following
      • sp_configure ‘show advanced options’, 1
      • GO
      • RECONFIGURE
      • GO
      • sp_configure ‘max server memory’, 1024
      • GO
      • RECONFIGURE
      • GO

Install ConfigMgr 2012 SP1 Beta

We’re ready to install ConfigMgr 2012 SP 1 Beta now
  • Launch the HTA from the installation media

  • Let’s check the server is ready before we get any further into the installer
  • Select Assess server readiness

  • Both of these benign warnings can be ignored
  • Configuration Manager requires SQL Server to reserve a minimum of 8 gigabytes (GB) of memory for the central administration site and primary site and a minimum of 4 gigabytes (GB) for the secondary site. This memory is reserved by using the Minimum server memory setting under Server Memory Options and is configured by using SQL Server Management Studio. For more information about how to set a fixed amount of memory, see http://go.microsoft.com/fwlink/p/?LinkId=233759.
  • The site server might be unable to publish to Active Directory. The computer account for the site server must have Full Control permissions to the System Management container in its Active Directory domain. You can ignore this warning if you have manually verified these permissions. For more information about your options to configure required permissions, see http://go.microsoft.com/fwlink/p/?LinkId=233190.
  • Select OK
  • Now let’s Install CM 2012 SP1 straight off the media with no recourse to RTM then SP1
  • Select Install from the HTA

  • Select Next

  • Select Next

  • Select Install the evaluation edition of this product or tap in a product key
  • Select Next

  • Select I accept these license terms
  • Select Next

  • Tick all three, SQL Server R2 Express, SQL server 2008 native client and Silverlight prerequisite licenses
  • Select Next

  • If you’ve already downloaded the prerequisites then Select Use previously downloaded files or let it down them into an existing folder now
  • Select Next

  • The components will be verified

  • Select Next

  • Select Next

  • Punch in some details, mine is Lab 2 Primary 1 which translates into L21
  • Select Next

  • Select Install the primary site as a stand-alone site
  • Select Next

  • Select Yes

  • Select Next

  • Select Next

  • Select Configure the communication method on each site system role
  • Select Next

  • Select Next

  • Select Join the Customer Experience Improvement Program
  • Select Next

  • Select Next

  • Prerequisite checker runs again, we know it’s all good
  • Select Begin Install

  • Dig out CMTrace from the installation media, open it and associate with log files
  • Click the View Log button in the dialog above to open up the installation log in real time, so that you can monitor the installation if you prefer looking at log files
  • You can return to the installer by clicking the following icon on the task bar


  • Install completed successfully
  • Select Close
  • Open the ConfigMgr 2012 SP1 Console

There we go. A functional installation of the SCCM 2012 product.