Hyper-V, Windows 10, and Insider Preview…

2017-07-27T00:00:58+00:00July 21st, 2016|blog, Hyper-V, Microsoft|

I am guilty of running Windows 10 with the Insider Preview “Fast Ring” in production as my day-to-day laptop.  I also maintain a lab of Hyper-V Virtual Machines (VMs) on my laptop that use shared virtual networking with the built-in interfaces, so I can have the equivalent of a NAT environment for my VMs.

Mind you, it’s really been great in almost every way — except that every time I get an update to the Windows 10 Insider Preview (and that is ever few days lately), I have to re-configure my interface sharing and NAT so my VMs can reach the Internet.  So, I thought I’d whip up the steps for you, in case you face the same thing.

So first, after you notice that your VMs don’t have Internet access — and then you remember that you got another Fast Ring update recently, you do this:

Open the Hyper-V Manager on the Windows 10 laptop, and click on “Virtual Switch Manager…” from the Actions area.


Select the virtual switch to be fixed, in my case named “Internal-NAT switch”, and change from Internal to Private, and apply.


You may notice that the Hyper-V interface disappears from the laptop Interface list.  Select Internal again to change from Private, and click OK.  The Hyper-V interface reappears in the interface list.


Right-click on the WiFi interface (or whichever you wish to share networking with the VMs), and choose Properties.  On the Sharing tab, ensure the box is checked for “Allow other network users…” and click the drop-down list under “Home networking connection:”.  Change from “Select a private network connection to choose the Hyper-V interface, and click OK.


Note that the previous step has not *always* worked for me, though it usually does.  A couple times, I’ve had to either a.) un-check the check box and save before re-enabling sharing, or in rare cases, b.) go into Device Manger and remove the WiFi interface, reboot, and return to re-enable sharing.  Anyway, if all goes well and you’ve re-enabled sharing, your VM pings will start going through as the networking gets reconnected.


I’ve become quite used to doing this series of steps and have got it down to a quick few moments, but it always seems to catch me off-guard each time it happens.  I hope it helps you a bit!

Repair Broken Hyper-V Integration Services…

2017-07-27T00:01:02+00:00June 12th, 2014|Uncategorized|

Recently, I ran a bunch of Windows patches and upgraded the Hyper-V Integration Services at the same time on a Hyper-V Windows 7 guest in my lab. 

Error 1083

After a reboot, a few of the Hyper-V Integration Services would not start correctly.  Honestly, I wouldn’t have even noticed initially if I weren’t regularly running a PowerShell shutdown script that calls my VMs with a “Stop-Vm”, that was suddenly unable to gracefully shut down this newly-patched VM.  I’m not sure if the simultaneous patching and updating directly caused my error symptoms, but I’m guessing the update was unable to write the registry at the same time as some patch that was installing. 

In trying to restart the service manually, I got the following error:

Error 1083: The executable program that this service is configured to run in does not implement the service.



It turns out that I actually had three serivices failing (vmicshutdown, vmicvss, vmictimesync).  I did some searching, and fortunately a user named “gzzhouch” at the Windows Server Forum was following up an old post (thanks!) with a similar issue…  And I was able to follow his recommendation and get everything back in order. 

Let’s step through the fix of the Hyper-V Time Syncronization Service in a little more detail, which was one of the few that failed for me.  First, open the Services MMC, look at the details of the failing service, and note the “Service name” and the item at the end of the “Path to executable”, as in my example in the image at right.

…in my example case, the Service Name is “vmictimesync”, and the path item is “LocalServiceNetworkRestricted”.  Next, open regedit (don’t do this if you are not comfortable editing the registry!), and browse to:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSvchost

Edit the Registry

…and open the value that matches your path item (in my case “LocalServiceNetworkRestricted”), and add the service name (in my case “vmictimesync”) to the list, like this:


…and do this for each Integration Service for which you receive the error. 

I’ll warn you though, be very thorough; it can trick you since LocalServiceNetworkRestricted and LocalSystemNetworkRestricted look almost the same (ask me how I know). 

Then reboot, and that should do it!  At least it did for me.  Enjoy!


Converting a VMware Linux Guest to Hyper-V…

2017-07-27T00:01:02+00:00May 1st, 2014|Uncategorized|

If there were enough room, the full title for this article would actually be something more like, “Converting a Suse SLES or Opensuse Linux machine from either VMware Workstation or ESXi or to Hyper-V, even when you don’t have the VMware environment anymore…

To give you a little background, Microsoft recently released the MVMC v2 (http://www.microsoft.com/en-us/download/details.aspx?id=42497), packed with some critical new features, including better handling of Linux VM guests.  And it just so happens that I have a small handful of dev/test Linux machines lying around from a VMware lab environment that I tore down a while ago that I’d love to have in my Hyper-V lab.  The problem is that I just don’t have the VMware workstation or space on my ESXi servers to bring the VMs back up and follow the standard documented procedure.

If you haven’t figured it out already, the basic problem here is that the Linux VMs (that came from the VMware environment) don’t have the Hyper-V drivers configured because they weren’t needed at installation (again, on VMware), but the Installation ISOs *do* have the drivers at the ready when booting the “rescue system”.

And while the very nice documentation provided with the converter kit (Microsoft_Virtual_Machine_Converter_Admin_Guide_2_0.docx) gets you close to knowing what you need to do, it doesn’t quite provide you with step-by step instructions, especially with the guests already downed or in an archive.


Without further ado, here’s how to convert and fix those Linux VMs.  Of course, there are a few particulars here; for instance, this procedure was tested with Opensuse versions 12.2 and 12.3, and SLES 11 sp3, but should be the same for other similar versions.  And it should go without saying that by following these instructions, you proceed at your own risk. 

Step 1: Install MVMC2

First, the installation.  Go to the MVMC2 download site, get the software, and install.  I recommend doing this on a Windows 8+ or Server 2012R2 machine, for a few small niceties (like defaulting to vhdx format, etc.).

Step2: Convert the Disk

Open Powershell *as Administrator* (right-click, run as Administrator), and load the module:

Import-Module "C:Program FilesMicrosoft Virtual Machine ConverterMvmcCmdlet.psd1"

We need to create a temporary folder for our converted disk — in my case on a separate drive from where my source VMs reside, to speed things up a tad:

md c:MvmcResults
cd c:MvmcResults

And then we can convert out source disk:

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "E:Virtual MachinesOpensuse12.3Opensuse12.3.vmdk"

Next, move the newly converted disk to wherever you keep your virtual hard disks (I assume you have a designated location).

Then, create a Generation 1 Virtual Machine in Hyper-V (try to use the same name, memory settings, and so on as before), but choose to “Use an existing virtual hard disk” and set it to the newly converted hard disk.  But before you start it, attach the correct installation ISO (I use the tiny “network install” ISO).  Remember, it’s mandatory that you use the correct processor type ISO (32 vs. 64), and you should use the correct distro version.

Step 3: Boot and Mount the Alternate Root

Start the VM (booting from ISO), and choose “Rescue System” as the boot choice.  Tip: while the splash screen is up, hit the escape key and notice the Hyper-V drivers it chose; in my case it was only hv_netvsc and hv_storvsc, but you may have others.

Once at the “Rescue” prompt, enter “root” as the login.

Now, mount the proper disk partition for your root filesystem; this may take some guessing if you don’t remember which is which.  For instance, on some of my lab machines, I used /dev/sda2 as the full root filesystem.  On others, I created a separate partition for /boot, so the root file system was on /dev/sda3.  If you don’t know, you might have to mount a few of them and look and see what’s in them.  And of course, if you have a separate /boot, you’ll have to mount that too.  But for the examples that follow, we’ll assume the full root file system is all on /dev/sda2.

So mount the root filesystem under the alternate mount point, like this example:

# mount the root
mount /dev/sda2 /mnt
# you may have to mount /boot too, depending on your setup
# mount /dev/sda1 /mnt/boot
# you must re-mount the live dev and proc
mount -–rbind /dev /mnt/dev
mount -–rbind /proc /mnt/proc
# set the chroot environment
chroot /mnt

…and then we’re ready to actually do some fixing.

Step 4: Fix the Modules

(These next instructions are re-interpreted from the MVMC2 guide, courtesy Microsoft):

Use vi to edit /etc/sysconfig/kernel to include the Hyper-V modules.  Sorry, there’s not enough room here to teach you how to use vi…  😉  Add the “hv_” modules to the end INITRD_MODULES line, which *may* look something like this:

INITRD_MODULES="mptspi ata_piix ata_generic vmxnet3 vmw_pvscsi vmxnet”

…or perhaps like this (this example does not have VMtools drivers):

INITRD_MODULES="mptspi ata_piix ata_generic”

…and with your change, you’re making it look more like this (again, we’re only adding the hv_ modules to the end):

INITRD_MODULES="mptspi ata_piix ata_generic vmxnet3 vmw_pvscsi vmxnet hv_vmbus hv_netvsc hv_storvsc”

And finally, recreate the initrd with something similar to the following command (this example is taken from one of my older ones). The kernel and initrd specified in the command must match your current kernel the machine boots with.

mkinitrd -k /boot/vmlinux-3.7.10-1.11-desktop.gz -i /boot/initrd-3.7.10-1.11-desktop

…and you’re done!  Type “exit” to end the chroot environment, and “init 0” to shut down.  Go to the settings of the VM, and detach the ISO, and boot it up.

Phew!  You did it.  Enjoy your Linuxy goodness…


Windows 8.1, Week 1…

2017-07-27T00:01:03+00:00October 24th, 2013|Uncategorized|

Much like my “Week 1″ article that coincided with the release of what we now call Windows 8.0 just about a year ago now, I wanted to take a moment and pass along the things that I have discovered in my initial days on the job with Windows 8.1.  

Just for reference, while I almost always do a complete fresh re-install, this time I chose to do the upgrade from the Windows 8.1 DVD.  Some of my reasons were that it did not seem to be such a massive change (this turned out to be correct), I didn’t have a bunch of time to re-install all my apps and such at the moment (who does?), and I didn’t buy a new hard drive, etc.  So I downloaded the ISO from MSDN, burned it to a DVD, and upgraded my laptop. 

So here we go; let’s dive in to some of this things I’ve observed…

Net Use Behavior

I work on a domain-based computer (the Coretek domain), in customer (or home) environments where my domain is not available.  In the past, mapping a drive to resources in another domain (other than my own) always worked with something like the following:

net use y: \Customer-Domain.orgDfsRoot /USER:Customer-Domainpavlovj 

…and now with Windows 8.1 for some reason it does not function without the optional asterisk at the end, like this:

net use y: \Customer-Domain.orgDfsRoot /USER:Customer-Domainpavlovj *

Without the asterisk, I get errors like: “System error 1311 has occurred“, and “There are currently no logon servers available to service the logon request” after long delays; it just never seems to log me in.  With Windows 8.0, it would delay a bit, but always manage to find an authenticating server to log me in.  And now with the asterisk, it works almost instantly.  Strange.

Blurry Fonts and Rendering

After the upgrade, some of my programs had a blurry video rendering and fonts, while others looked crisp and beautiful.  With a little quick research, I found the answer and I want to thank:

…for providing me the answer.  Now everything looks great!  On a side note, I also had to change my font back to my preferred “small” in that same location as described above, as the Windows 8.1 upgrade had changed it to Medium.

Booting to Desktop, and Start Screen Desktop Wallpaper

Probably the best, most exciting and demanded set of changes surround the Desktop.  Finally, we get “boot to desktop” back, as well as the ability to have our Desktop wallpaper appear behind our “Start page”.  I love it because it helps tie the whole experience together, and makes it all feel much more cohesive.  To make the changes, just right-click on Taskbar, click Properties, and go to the Navigation tab.  Here’s how I have mine set:

…you know you really want to do this… 

VMware and Hyper-V

Well, I finally did it.  Like before, I faced the choice of having to upgrade my VMware Workstation again — this time to version 10 — in order to work on Windows 8.1… or just use the Hyper-V that comes with it.  So, now I’m in the process of converting all my VMDKs to VHDs.  Yes, it’s still not quite apples-to-apples, but I’m getting by so far, and dealing with the limitations.  More on this later, I’m sure…

Other Apps

Thank goodness that almost everything works in Windows 8.1 like it did before in Windows 8.0.  Things that are critical to my world and job, like iFolder3 and Remote Desktop Connection Manager (RDCMan 2.2 as of this writing).  I still have to figure out what they did to SkyDrive, but I’ll get that sorted too, and everything else seems to be as good or better in the new version.

So Far, So Good…

So there you have it.  I give it a thumbs-up, and am left wondering why it all didn’t behave like this in the first place.  Windows 8.1 seems to be what Windows 8.0 should have been.  So let’s get to it, and let’s see those enterprise-level Windows 7 upgrade projects swerve a bit and get Windows 8.1 underway; it’s time!

Windows 8, Week 1…

2017-07-27T00:01:05+00:00October 31st, 2012|Uncategorized|

Well, it’s been almost a week since I upgraded my laptop to Windows 8, and it’s actually been a very smooth ride so far.  However, I’ve had to deal with just a few twists in getting used to some of the new locations and limitations of the things I’ve always been used to in Windows XP and Windows 7.  So, I thought I’d toss together a few tips from my first week of use, and I hope you’ll toss a few back at me!

Shutdown and Reboot buttons

Shutting down a Windows 8 computer is not as immediately obvious as it used to be.  There are a couple “new” ways of shutting down your Windows 8 machine, for instance:

  • Mouse to bottom-right –> Settings –> Power –> Shut down
  • (Win Key) + I –> Power –> Shut down
  • (Win Key) + C –> Settings –> Power –> Shut down
  • (Win Key) –> Right click on username (at top right) –> Lock/Sign out –> Right-click on lock screen –> click on power icon at bottom right

But I needed an easier way.  Fortunately, if you invest a few minutes now, you’ll have easier Shutdowns and Reboots for years to come.  Here’s how to do it:

  • In Windows Explorer, go to this folder:
  • C:Users(username)AppDataRoamingMicrosoftWindowsStart MenuPrograms
  • Right-click and choose New –> Shortcut
  • For the “location”, type: shutdown /s /t 00
  • Click Next, and for the “name”, type: Shutdown Now
  • Click Finish, and press the (Win Key).
  • Right-click the new “Shutdown Now”  app tile, and choose Pin to taskbar
  • Resume sanity
  • (Note: You can create others, like “Restart Now” with shutdown /r /t 00 and “Delayed Restart” with shutdown /r /t 10 etc.)

…by the way, that tip for adding shortcuts on the taskbar works great for other things too; effectively bringing back your shortcuts menu that you were so used to

Wireless Driver Back-Rev

Of course, I couldn’t resist mentioning our awesome post about back-revving your Windows 8 “n” wireless driver to a Windows 7 driver version — since I had to do that this week too, in order to be able to stay productive.  So far this week, we’ve been noticing that this seems to predominantly affect Broadcom-based drivers, and Intel-based drivers seem to work fine in some cases.  It’s only the first week, so we’ll be watching that…

VMware and Hyper-V

I was excited to find out Hyper-V was included in Windows 8.  Unfortunately, I cannot use on it yet on my Windows 8 laptop.  As part of my work/experimentation in my current role, I have to keep virtual machines like NetWare, CentOS, Opensuse, and other non-mainstream OS’s around for scripting, and testing automation and integrations, and such.  And while I’m thrilled that Hyper-V supports a few recent versions of CentOS and the latest version of Opensuse (12.1 at this writing), it still does not support NetWare and a guest OS.  As a result, I’ve had to choose VMware workstation of my hypervisor of choice on my laptop for now (since VMware and Hyper-V cannot co-exist on the same base hardware), and I’ll run Hyper-V in the dedicated lab instead.

Remote Desktop Connection Manager

The Remote Desktops snap-in for the MSC is gone!  It’s not available in Windows 8.  If you know what that means, then you’re probably as upset as I was.  Fortunately, I discovered that the old Remote Desktop Connection Manager still works on Windows 8!  Phew!  Honestly, it’s a better tool anyway. 

So Far, So Good…

…So that’s where I’m at so far.  The good news is that just about everything I’ve brought over to Windows 8 so far from my Windows 7 world has worked perfectly.  And I “get it” now; what I mean by that is that I understand and appreciate the dual layer effect of the “tablet-like” OS on top of the “traditional-style” OS.  Now that I’m able to dance easily between them, I quite like it and am eager for a Windows 8 based tablet, actually.  Hint, hint…

Now, share some of your tips, please!



The Windows Optimized Desktop

2017-07-27T00:01:12+00:00October 27th, 2009|Uncategorized|

windows-7-logoWith the Windows Optimized Desktop, Microsoft has created the single client infrastructure framework that will empower the new diverse workforce by supporting the execution and administration of multiple desktop and worker scenarios.

The building blocks of the Windows Optimized Desktop are:

Windows 7

The next release of Microsoft’s venerable desktop operating system, Windows 7 is faster, more reliable, and features better performance. It boasts an intuitive, easy-to-navigate user interface, including the enhanced Windows Taskbar, and offers new scripting and automation capabilities based on Windows PowerShell™ 2.0.

Windows Server® 2008 R2

The latest version of Microsoft’s time-tested 64-bit server operating system, Windows Server 2008 R2 supports network-oriented management frameworks such as Active Directory® and the .Net Framework. Windows Server 2008 R2 incorporates tried and-true management capabilities such as Microsoft System Center as well as Hyper-V™ virtualization hypervisor, which facilitates desktop virtualization.

Microsoft Desktop Optimization Pack (MDOP)

A suite of best-of-breed desktop management and virtualization technologies, MDOP is an integral part of the Windows Optimized Desktop. It includes Microsoft’s exciting new Application Virtualization technology, App-V, and Enterprise Desktop Virtualization technology, MED-V.

Other MDOP tools are Microsoft Asset Inventory Service for centralizing desktop inventories, Advanced Group Policy Management for managing administrative rights, Microsoft Diagnostics and Recovery Toolset for identifying desktop problems, and System Center Desktop Error Monitoring to enable proactive problem management. 

System Center

A set of server-based technologies, System Center helps IT administrator’s aggregate information related to infrastructure, processes and policies. Using System Center, they can better manage systems and automate operations, which helps reduce cost, improve application availability and enhance service delivery.

Forefront™ Client Security

A client-server application designed to view and manage security settings and configurations across an enterprise, Microsoft Forefront Client Security provides unified virus and spyware protection, simplified administration and critical visibility and control. From an administrative point of view, the Windows Optimized Desktop is both a blueprint and a toolset intended to help technology managers address issues related to desktop productivity, security and manageability.

Source: Microsoft.com