My BAD Experience Of Upgrading From Windows 8 to Windows 8.1

I deliberately held off from upgrading my Samsung ATIV Windows 8 Pro Atom tablet from Windows 8 to 8.1 to experience the process.  It started kind of rough.

You start, not in the Windows Store, but on


Click the link and the upgrade process should start.  Instead, I got a HTTP 403 Forbidden Access Denied error.  Whoops!  First day jitters.  I hope someone quickly deployed more Azure instances! 😉

I tried again about 2 hours later and the link opened the Windows Store where I clicked on Download.


Then a download starts.  For me, on a fast line, it was slow.


After a long wait I was informed that the machine would reboot automatically after a 15 minute wait.  I triggered it to happen immediately.  The very slow count from 1 to 100% began after the reboot.  Bear in mind that the storage in these tablets appears to be very slow.

My machine hung on a black screen during this stage and that stuffed the install.  I rebooted and it reset this stage of the upgrade.  Another power reset and the issue repeated. 

And then I was greeted by

Restoring Your Previous Version Of Windows

Yes, the upgrade failed for no reason.  So much for the upgrade process.  Looks like I’ll be doing a fresh install instead.

FYI, I saw another machine (also Windows 8 OEM but another hardware brand) even refuse to upgrade for an unknown reason.  This is what I was greeted with when Windows 8 was restored and I logged in.

Couldn’t Upgrade To Windows 8.1

Sorry, we couldn’t complete the update to Windows 8.1.  We’ve restored your previous version of Windows to this PC.

0xC1900101 – 0x40017

This is why there is value in public beta testing, unlike in the much smaller restricted private TAPs.

Using Microsoft Deployment Toolkit To Deploy Servers

I’ve started using MDT 2013 Preview to deploy the physical servers and template VMs in the lab at work.  I’ve never really used this free imaging + task sequence solution for anything other than desktop OSs so this was a first for me.

Note: In a larger environment, you should use System Center 2012 R2 to deploy your servers.  For example VMM 2012 R2 now deploys hosts and Scale-Out File Server clusters (including the nodes). 

Using MDT means I can push out customised deployments very quickly.  I have a single WS2012 R2 Datacenter image that I will update with patches from time to time.  I have imported drivers, e.g. Chelsio and LSI, into MDT  to plug and play during deployment.  And I have multiple task sequences for different types of machine.  Each task sequence is configured to add roles/features:

  • Plain one for a preparing a template VM
  • Domain controller with DNS and DHCP
  • File server with failover clustering, dedup, VSS support, DCB, MPIO, etc, for use as a SOFS node – I actually have one for physical and one for virtual
  • A Hyper-V host with Hyper-V, failover clustering, DCB, MPIO, etc

I use WDS for the boot image, so I can run MDT bare metal deployments over the network, initiated by PXE boots.

Over time I’ll probably add some scripts to the MDT deployment share that will enable further customisations during the task sequences, such as configuring NIC teams, setting Jumbo Frames, etc.

If you want to learn more about MDT then I have to recommend Deployment Fundamentals, Vol. 4: Deploying Windows 8 and Office 2013 Using MDT 2012 Update 1 by Johan Arwidmark and Mikael Nystrom.  They’re the best at this stuff.  I bought it to update my own knowledge and to pick up some more on advanced concepts:

You can get this book on:

Take the time and have a look at what MDT can do for you.  If you have a lab it can be a time saver.  If you’re a consultant, it can be installed in a VM on Windows 8 or 8.1 Client Hyper-V and used on multiple client sites to rapidly provision servers (make sure you use the customer’s volume license product key).  MDT is free and powerful, and that makes it something worthwhile.

Deploy Roles Or Features To Lots Of Servers At Once

I’m deploying a large cluster at the moment and I wanted to install the Failover Clustering feature to all the machines without logging, doing stuff, logging out, and repeating.  This snippet of PowerShell took me 45 seconds to put together.  The feature is installing on 8 machines (Demo-FS1 to Demo-FS8) while I’m writing this blog post Smile

For ($i = 1; $i -lt 9; $i++)
    Install-WindowsFeature -ComputerName Demo-FS$i Failover-Clustering, RSAT-Clustering

The variable $i starts at 1, is used as part of the computer name that is remotely being updated, and then incremented in the next loop iteration.  The loop ends after the 8th iteration, i.e. the 8th server is updated.

Aint automation be-yoot-eeful?

Building A WS2012R2 Preview Test/Demo/Learning Lab

I’m in the midst of deploying a new lab for learning, demo-ing, and delivering training on Windows Server 2012 R2 and System Center 2012 R2 (WSSC 2012 R2).  I’ve flattened the WS2012 lab and am starting from scratch … by using the MSFT vision.  The first thing up was a management host running Hyper-V.  Second: a DC.  Third: VMM 2012 R2.

My plan is to use VMM to build everything else.  My "management" host is actually a storage box.  It runs my System Center VMs, but it’s also where I run my virtual storage machines, including iSCSI target, and SMB 3.0 Scale-Out File Server VMs.  I want my storage to be up before my demo hosts/cluster, and I also want to be able to re-deploy my storage quickly.

Hmm, that sounds like I need a Service Template.  So I created a generalized VHDX for WS2012 R2, created a bunch of VM templates with the roles/features I need, and created a 2-tier service template:

  1. A VM running the iSCSI Target: My shared storage for the SOFS – no I can’t use Shared VHDX because that must live on shared storage … and the iSCSI Target/SOFS will be my lab’s shared storage … in this iteration anyway.
  2. 2 VMs with clustering and file services: My SOFS nodes.

The demo SOFS is deploying right now as I type:


Once the storage is running, I will turn my attention to Hyper-V.  The plan is to build up server profiles, logical switch, etc, and do bare metal host deployment.  It should be fun Smile #Nerd

Doing An Online Update From Windows 8 Pro to Windows 8.1 Preview

PLEASE NOTE: Not all machines are supported by Windows 8.1 Preview at this time.  Via Paul Thurrott.

I started an update of the office demo Surface Pro to Windows 8.1 Preview using the online update process.  I started by browsing to, and clicking Get It Now.

Note: you can also download the ISOs (x86 and x64) from the site (tomorrow) and from MSDN and TechNet.


This downloads and runs an update installer.  This is a small update to Windows.  In the case of the Surface Pro, it spent ages at “Configuring Windows features 100% …” after the reboot.

I then logged into Windows 8 again.  A banner appeared, offering me the Windows 8.1 Preview.  I clicked on Go To The Store in the banner.

Windows 8.1 Pro Preview was there for me to install.  Nice.  I clicked Download to get the 2.44GB installer.  I forgot to change the power plan of the Surface Pro and it went to sleep.  I went back in, changed the plan, and the download picked right up after a few moments.

After about 1 hour 20 minutes, the progress was at around 40% on my 8 Mbps ADSL (considered fast in Ireland Sad smile).

10 minutes later it jumped to around 66%.  This acceleration might have been due to the Build keynote stream that was aborted by Microsoft that I had been watching.

And then after 1 hour and 40 minutes I was prompted to reboot the Surface Pro.  Oooh exciting!  It then rebooted into a Setting Up <XX>% screen.  Less than 3 minutes later that was done and a another reboot.

Now the Surface was Getting Devices Ready.  That was quick, just 30 or so seconds.  Then Getting Ready appeared, and then Applying PC Settings.  That flew up to 100%.  And another reboot.

It then was Setting Up A Few More Things with another % count.  We were done within a minute.  Then it was Getting Ready.  Ooof!  Are we there yet?  Are we there yet?  Are we there yet?

Wait …. License terms Confused smile  I wonder what happens if you don’t accept the license terms!  Now it wants my password and dual factor phone number.  A security code is instantly texted to me and I verify the machine.

Next up: Skydrive.  I choose to use Skydrive.  There’s nothing more than that apparently.

Now it’s the “Hi, we’re setting up things for you”.  Damn you!  You’ve already set up lots of things for me Open-mouthed smile  It’s been 10 minutes since the machine “finished” installing.  A minute later and the Start Screen appears with my previously installed apps.  And we’re done!


We’re not done.  There’s up to 71 MB of updates to install.  Now we’re done.

Technorati Tags: ,

Tip: Legally Deploying Images Windows To OEM Licensed PCs

As usual, I will not be answering licensing questions.  All emails and comments will be deleted without a response.  Please ask your reseller these questions instead – that’s why they add a margin to the license when they sell it to you, so make them work for it.

You cannot legally deploy an image of an OEM media installation of Windows.  According to a Microsoft licensing brief:

Organizations do not have the right to reimage by using OEM media.

An OEM image can only be preloaded on a PC by the OEM during manufacturing. An image can be individually recovered by the organization (or a service provider it chooses) by using the recovery media. The OEM recovery media should match the product version originally preinstalled on the system; no other image can be used to restore the system to its original state

That means a company that buys hundreds or thousands of PCs, intent on using the OEM license, cannot create a custom image from OEM media (assuming OEM media can even be acquired!).  Businesses hate OEM builds because they are full of crap-ware and unmanaged security vulnerabilities.  So what can you do to re-image these PCs?  Do you need to buy a VL for every single machine?  There are benefits to doing that, especially with SA attached, but that’s not for everyone.

There is a little known legal trick that you can apply.  According to Microsoft:

Reimaging is the copying of software onto multiple devices from one standard image. Reimaging rights are granted to all Microsoft Volume Licensing customers. Under these rights, customers may reimage original equipment manufacturer (OEM) or full packaged product (FPP) licensed copies using media provided under their Volume Licensing agreement.

These finer points are detailed in the licensing brief.


  • Say you buy 2,000 PCs and want to use their OEM licensing for Windows 7/8 Pro
  • You want to deploy a custom build/image to these machines
  • You buy a single volume license for Windows 8 Pro (includes downgrade rights)
  • You use the MAK/KMS key to create and deploy an image of Windows 7/8 Pro
  • You’re legit!

You must be sure that you understand:

  • The OEM and the VL license must be the same edition, e.g. you cannot deploy a Pro VL image to Home OEM licensed PCs using this licensing technique.
  • You must ensure that the versions are matched, e.g. the OEM license entitles you to Windows 7 (including downgrades) if deploying Windows 7 images.  For example, you can’t deploy a Windows 7 VL image to a PC with a Windows Vista OEM sticker/license using this licensing technique.
  • The languages must be matched as well.

What if you company does not have a VL agreement?  You need to 5 products to start one.  You can buy a single copy of Windows (to get the ISO download and MAK/KMS keys) and 4 cheap dummy CALs – now you have a VL at minimum cost, and you can re-image your OEM-licensed PCs with an image made from your VL media.

You Have 365 Days To Replace Windows XP

Microsoft will end all support for Windows XP on April 8, 2014, which is one year from today.  Right now, it is in what is called extended support, the period during which you can call to get help and download security fixes.  In one year, all bets are off.  You are on your own.  No more support from Microsoft.  No more security fixes.  And logically from that, no more support from anyone else, e.g. antivirus, backup, etc.  Your apps that rely on IE 6.0 are a security risk to your company.



I’ve emphasized that for those people who get their IT advice from the voices in their heads and the drunk in the corner pub – you know who you are!

I really couldn’t give a flying f**k about excuses so don’t bother posting them.  Harsh?  I don’t think so.  I’m tired of the race to mediocrity in the IT business and would love to see a cleanout when things blow up and people get fired.  This deadline should be no surprise.  Microsoft has emphasised it every time they’ve talked about desktop operating systems since the release of Windows Vista.  You now have 365 days to start replacing your business applications that rely on IE 6.0, dump the 12 year old desktop OS, and join the rest of us in this decade.

I bet the ticking of that clock sounds oppressively loud now?  I bet you are wising you had started planning 2 years ago?  Maybe even 1 year ago?

Technorati Tags: ,

Windows 8 Deployment Resources

These resources apply to Windows 8 but you could also use them in a Windows Server 2012 deployment or cloud.

Windows XP Support ends on 8th April 2014 AND THERE WILL BE NO EXTENSIONS no matter what the penguin-hugging activation-fearing “genius” you know at the bar says.  This means no more security patches or hotfixes for XP after that date, and also means that the support statements of 3rd parties will become meaningless.  It’s time to start planning an upgrade or become a breeding ground for malware.

Microsoft Assessment and Planning (MAP) Toolkit

A free tool that is an important first step in discovering what it is that you have on the network.  Honestly, it’s a good tool.  But, if your XP network is as shagged as many I’ve encountered, then remote admin will be broken on half the PCs and MAP won’t work.  I have found that the push capability of the System Center Configuration Manager agent will get you the same information via hardware audits and Asset Intelligence.

Windows Assessment and Deployment Kit (Windows ADK)

This is a single free download that contains most of the tools you might use to plan, facilitate, and implement a Windows 8 deployment:

  • Application Compatibility Toolkit (ACT): The Application Compatibility Toolkit (ACT) helps IT Professionals understand potential application compatibility issues by identifying which applications are or are not compatible with the new versions of the Windows operating system. ACT helps to lower costs for application compatibility evaluation by providing an accurate inventory of the applications in your organization. ACT helps you to deploy Windows more quickly by helping to prioritize, test, and detect compatibility issues with your apps. By using ACT, you can become involved in the ACT Community and share your risk assessment with other ACT users. You can also test your web applications and web sites for compatibility with new releases of Internet Explorer.
    Deployment Tools: Deployment tools enable you to customize, manage, and deploy Windows images. Deployment tools can be used to automate Windows deployments, removing the need for user interaction during Windows setup. Tools included with this feature are Deployment Imaging Servicing and Management (DISM) command line tool, DISM PowerShell cmdlets, DISM API, Windows System Image Manager (Windows SIM), and OSCDIMG.
    User State Migration Tool (USMT): USMT is a scriptable command line tool that IT Professionals can use to migrate user data from a previous Windows installation to a new Windows installation. By using USMT, you can create a customized migration framework that copies the user data you select and excludes any data that does not need to be migrated. Tools included with the feature are ScanState, Loadstate, and USMTUtils command line tools.
  • Volume Activation Management Tool (VAMT): The Volume Activation Management Tool (VAMT) enables IT professionals to automate and centrally manage the activation of Windows, Windows Server, Windows ThinPC, Windows POSReady 7, select add-on product keys, and Office for computers in their organization. VAMT can manage volume activation using retail keys (or single activation keys), multiple activation keys (MAKs), or Windows Key Management Service (KMS) keys.
    Windows Performance Toolkit (WPT): Windows Performance Toolkit includes tools to record system events and analyze performance data in a graphical user interface. Tools available in this toolkit include Windows Performance Recorder, Windows Performance Analyzer, and Xperf.
    Windows Assessment Toolkit: Tools to discover and run assessments on a single computer. Assessments are tasks that simulate user activity and examine the state of the computer. Assessments produce metrics for various aspects of the system, and provide recommendations for making improvements.
    Windows Assessment Services: Tools to remotely manage settings, computers, images, and assessments in a lab environment where Windows Assessment Services is installed. This application can run on any computer with access to the server that is running Windows Assessment Services.
    Windows Preinstallation Environment (Windows PE): Minimal operating system designed to prepare a computer for installation and servicing of Windows.

Microsoft Deployment Toolkit (MDT)

MDT is a free download.  Think Ghost .. but with MUCH more functionality, e.g. capture user settings & files, blast the machine with a new image, install some software, patch it, and restore the user settings & files … all while you drink your coffee.  MDT is so good that it’s considered an essential extension to Microsoft’s corporate solution: System Center 2012 Configuration Manager SP1.

Free: who can argue with free!?!?!  Who needs Ghost!?!?!

Deploying Windows 8 with System Center 2012 Configuration Manager Service Pack 1

ConfigMgr + MDT gives you the best OS image deployment solution available.  It simply blows people away when they see it in action.

BTW, Microsoft has the driver thing sorted so you can do the single-image deployment that a sector-based image, such as Ghost, hasn’t a hope of matching.

Deliver and Deploy Windows 8

This is an aggregation of content from all across Microsoft.

Johan Arwidmark

The Deployment God of the North is a must-see if he’s presenting at an event near you.  This guy has forgotten more deployment wizardry than we mere mortals will ever learn.  He’s also the author of Deployment Fundamentals, Vol. 4 “Deploying Windows 8 and Office 2013 Using MDT 2012 Update 1” available on:

In fact, for just $9.99, I thought it was such good value that I’ve just bought the e-book myself Smile

Group Policy: Fundamentals, Security, and the Managed Desktop

You’ll want to manage and control those new deployments using GPO.  Jeremy Moskowitz writes the book on the subject:

That should be enough to get you started!

Deploying Application Virtual Machines Just Got A Whole Lot Quicker

Several years ago, I first heard Mark Minasi talk about accidental DBAs.  The term refers to server administrators/engineers who find that the vast majority of their Windows Servers either have or use a SQL Server installation.  We were mostly still in a physical world back then, with virtualisation just in its infancy in the industry (as a whole).  Things have moved on since then.  Anyone deploying servers now should be looking at the virtual option first (be it some open cloud, Xen, VMware, or Hyper-V).  Virtualisation seems to encourage server sprawl and that means lots more servers.

My last experience as a hands-own “own it” engineer was in hosting.  Here’s how a deployment looked:

  1. Time to deploy a VM: about 30 seconds in a wizard, and do something else while the files copied
  2. Customize the OS: about 1-10 minutes
  3. Install SQL Server: 30-45 minutes (longer if SQL 2008 R2 Reporting was required)
  4. Install the SQL Server service pack (if not already slipstreamed): 30-45 minutes
  5. Install the SQL Server service pack cumulative update (if not already slipstreamed): 30-45 minutes

In my experience, I could lose the guts of a day installing SQL Server if I didn’t have a slipstreamed package, while the VM deployment itself took very little time.

“Why, in a cloud, shouldn’t the user install SQL Server?”

LMAO!  Clouds are like hosting, and I left the hosting business because 80% of the customers made me want to scream at them.  They were clueless: e.g. the guy who opened a helpdesk call to get a DR replication application written for his new SaaS business (selling DR).

Not that all of them were like that.  I learned from a few and some were doing very interesting and innovative things.

When it comes to things like SQL Server, the infrastructure people (or system) must do the installation.  But we want to minimize that time.  SQL Server 2012 SP1 CU2 has expanded support for Sysprep.  This means that you can optimise the deployment of virtual machines with SQL Server (including service pack and related cumulative update).  For more information you can see:

Reminder of Windows Server 2012 and Windows 8 Licensing For VL Purchases

You can now buy Windows Server 2012 and Windows 8 via volume license channels.  Here’s a quick reminder of the changes in licensing:

  • The Windows 8 editions: Remember that the RT edition is sold only on ARM tablets and is not in VL.  The Enterprise edition is a benefit for when you add Software Assurance (SA) to Windows 8 Pro.
  • Paul Thurrott and Rafael Rivera: The authors of Windows 8 Secrets did a much more complete job of comparing the editions of Windows 8 than the original Microsoft table did.
  • Windows Server 2012 Licensing In Detail: Windows Server Standard and Datacenter are GA.  Essentials is still in RC.  I’ve no idea about Foundation, but it’ll only be available via OEM channels and is not a VL SKU.
  • Windows Server 2012 Virtualisation Licensing Scenarios: If you are doing virtualisation of Windows Serer on any kind of hypervisor (including VMware) then you need to read this. These rules are not constrained to Hyper-V.

Don’t forget that the virtual launch for Windows Server 2012 is tomorrow afternoon, at 16:00 GMT.  We should expect TechNet and MSDN to be populated sometime around/after that.