Warning: Creating default object from empty value in D:\home\site\wwwroot\wp-content\themes\throne\include\options\ReduxCore\inc\class.redux_filesystem.php on line 29
featured – Regular IT guy

Tag - featured

“Dear John…” how to breakup with your old infrastructure

From:         SysAdmin
Sent:          Friday, August 29th, 2014 11:38 am
To:             JOHN-WS2003R2.CONTOSO.COM
Subject:     I really don’t know how to say this in person…

Dear John (a.k.a. Windows Server 2003)

I wish I were writing you for other reasons, but I just can’t continue supporting our relationship feeling the way I feel right now. I’m writing this email instead of logging into the console because I have so much to tell you and this seems like the best way to say it without getting distracted.

What can I say – it has been fun.  You have worked hard all these years keeping our old mission critical applications running, long after others have abandoned you. You stood by me as we transitioned Active Directory away from you and over to the bright shiny new systems running a “more modern” flavor of Windows Server.  It must have been difficult to see those services migrated away after the planning and pilot deployment. This has gotten me thinking – I’ve realized I need to sit down and take stock of where our relationship stands today and I realized that we’ve grown apart.  I’m ready to move to a more mature relationship but I don’t think you and I are on the same page. After reading this – I definitely believe you are not able to continue fulfill my needs.

I want to make this as easy as possible for both of us – so I started exploring other options.

First off, I need to discover what exactly we’ve been doing over the last 11 years. I mean really – you never cease to surprise me when a site visit turns up yet another one of your relatives running some application or print server that is critical to someone’s daily routine. This concerns me – it really does. You’ve obviously gotten around a lot and have been very popular with the IT staff.  This has got to stop. I’ve contacted a couples councilor who has recommended I try “The Microsoft Assessment and Planning Toolkit” in order to get a view of just how far reaching your deployment has grown over the years and what workloads you still maintain.

Next – it’s time for me to set aside some “alone time” to plan and Assess just how much work lies ahead.  I know it will be tough and there will be lots of work to come – but knowing what lies ahead and prioritizing is half the battle.  I still have a lot to learn about what my options are, so I started a personal learning path as part of this Tech Journey of Modernizing the Datacenter.

As much as I don’t like to say it – after taking the time to Assess and reflect on things, it’s time for me to Target exactly what needs to get done to painlessly end our relationship without another nasty fight. I’ll be honest, some things will need to be replaced because the old way isn’t working anymore. Other things will require some assistance to migrate to new solutions. I am going to keep an open mind and explore my options.  I plan on making some hard decisions in the months to come.

Finally – when all is said and done, I’ve got to be strong and stand firm to our deadline of July 14th, 2015. With it fast approaching, I’ll prepare myself to Migrate things on my own or get some additional help from partners who are better equipped to get me through this stressful time.

I know I will revisit our time together and remember the happy times – successful Service Packs, new CD-ROM updates and Sneakernet deployments. I’ll forever hear your disks whirring and see your lights blinking in my minds eye for a long time to come. I’m going to miss all of this, more than you can imagine.

…but it’s time for me to move on.



Your SysAdmin

“Server Huggers” guide to Windows Azure–new series

WP_20140307_13_38_38_ProAs you may or may not know – I am a Server Hugger – heck I even have a pin to prove it. But – as I like to take on challenges, I thought I would transition my expertise out of on-premise server architecture and infrastructure and walk on the wild side for a while. I’m on a personal mission to get my head around everything there is to know about Windows Azure – from a Server Hugger’s perspective.

WP_20131031_12_32_29_Pro (340x640)Since I’m making this transition and embarking on a fully immersive Azure experience – I thought I’d document it along the way here on the blog. Don’t worry – I won’t be abandoning all things Windows Server / Storage / On-Premises – that will be continuing. I’ll be able to transition my skills to be more “cloudy” based on everything I’ve read and come out for the better on the other side.

I’ll be tagging my posts in a new category “Azure 4 Server Huggers” so you can find them amongst the stuff I have going on here. I will also caveat that each entry will be date specific as technologies evolve extremely fast in the Azure space. I’ll do my best to keep them updated as things change.

Finally – all content in this series will be coming from the perspective of a Server Hugger with 25+ years experience working in on-premises IT environments. There will be minimal “dev” stuff going on – other than how to support and work with them along the way. I’ll be bringing my architect experience along with me.

I hope you enjoy it.


Hyper-v Extensible Switch in Windows Server 2012 R2

A while back, when Windows Server 2012 was codenamed “Windows Server 8”, I sat down and talked with Bob Combs, a Sr. Program Manager on the Windows Core Networking Team about the newly released “Hyper-V Extensible Switch”.  Well, now that Windows Server 2012 R2 has been released and planning has already begun for whatever comes next – I decided it was time to pay Bob a visit and get the details on what was new in Extensible Switch land…

Pretty cool stuff.

This is the start of a bunch of video interviews I’ll be doing over the next while. Let me know if you have teams / topics you’d like me to reach out to and see if they are interested in sitting down to chat.


How To: Delete windows.old from Windows Server 2012 R2

I’ve been updating my various environments from Windows Server 2012 RTM or Preview releases (build 9431) of Windows Server 2012 R2 to the final bits. On some boxes I just use my scortched earth policy of leveling the partitions and starting from scratch – others I will do an install and use the same partition. You get the following dreaded message – which you dismiss and move on.


Sure – I’ll just go and delete that directory after a while and go about my merry way.

Unfortunately it is not that easy.

In Windows client environments, you can just kick off a “disk cleanup” routine and have it removed – saving you a dozen or more GB of space. Unfortunately, that Disk Cleanup does not exist in Windows Server 2012 / 2012 R2 Full GUI install, unless you add Desktop Experience.


Fear not. Once you have confirmed you need nothing from that old c:windows.old directory structure, you can manually delete it, with a little bit of extra effort.

Here’s how you do it.

1) Download Junction.EXE from Sysinternals. I extracted and saved it to c:source. You will use this tool to generate a list of all the junctions that have to be removed.

2) create a reference file that lists all the junction points and symbolic links in use by opening up a command prompt, changing into C:source and running

junction.exe –s –q c:windows.old >junctions.txt

3) open up PowerShell ISE administrator rights and run the following script to remove all symbolic links and junction points in c:windows.old.

foreach ($line in [System.IO.File]::ReadLines(“c:sourcejunctions.txt”))
if ($line -match “^\\”)
$file = $line -replace “(: JUNCTION)|(: SYMBOLIC LINK)”,””
& c:sourcejunction.exe -d “$file”

You should get the following scrolling by…


Now it’s some simple taking of ownership, granting rights and deleting windows.old to get your space back.

4) to take ownership use

takeown /F C:windows.old /R /D Y

5) delete c:windows.old – you now have permissions and ownership.

How much space you get back will change based on your particular situation.  My last run at this saved me 15.5 GB of space on my OS drive.

Note: Kudos to Peter Hahndorf’s response on ServerFault.com on which this article was based.

Warning: sizeof(): Parameter must be an array or an object that implements Countable in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\project-nami-blob-cache.php on line 416

Fatal error: Uncaught WindowsAzure\Common\ServiceException: Fail: Code: 400 Value: The account being accessed does not support http. details (if any): <?xml version="1.0" encoding="utf-8"?><Error><Code>AccountRequiresHttps</Code><Message>The account being accessed does not support http. RequestId:f5ddb648-701e-005d-6c38-02af21000000 Time:2022-11-27T08:18:42.4942424Z</Message><AccountName>ritgcache</AccountName></Error>. in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php:382 Stack trace: #0 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php(275): WindowsAzure\Common\Internal\Http\HttpClient::throwIfError() #1 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\RestProxy.php(141): WindowsAzure\Common\Internal\Http\HttpClient->send() #2 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\S in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php on line 382