Agramont.net

VP of Mural Consulting...SaaS Strategy & Execution. Accelerated.
Welcome to Agramont.net Sign in | Join | Help
in Search

Conrad Agramont's Blog

January 2007 - Posts

  • BDD 2007 has launched and is now available!

    Business Desktop Deployment 2007 has officially released and is available for immediate download!

    http://www.microsoft.com/downloads/details.aspx?FamilyId=13F05BE2-FD0E-4620-8CA6-1AAD6FC54741&displaylang=en

    Business Desktop Deployment (BDD) 2007 is THE best practice set of comprehensive guidance and tools to optimally deploy desktops running Windows Vista, Microsoft Windows XP, the 2007 Microsoft Office system, or Microsoft Office 2003. It helps IT professionals realize a quick return on investment while also setting new standards for reliability, performance, security, and ease of use.

    There are two different downloads of BDD 2007: BDD 2007 x86 & BDD 2007 x64. The difference in the versions is meant to be installed (the BDD Workbench and other components) on the main deployment machine. Either version can deploy to target machines that are either x86 or x64.

    Here are some cool (or at least I think they're cool) notes about this new release:

    1. Unlike the previous versions of BDD that shipped years after Windows XP was shipped, this version shipped even before the Retail version hit the street! Quite an accomplishment
    2. Deployment Workbench –Enables users to build and manage multiple OS configurations, define network deployment points and network shares, inject drivers, attach language packs, and chain applications Windows Automated Installation Kit (Windows AIK) - The Windows Automated Installation Kit (Windows AIK) is designed to help original equipment manufacturers (OEMs), system builders, and corporate IT professionals deploy Windows onto new hardware. The Windows AIK is a set of deployment tools supporting the latest release of Windows. This also includes ImageX which is a new imaging format that can be ran from within WinPE and store/retrieve a WIM image from a network share or DVD. Very Nice!
    3. Includes the ability to create Windows PE (WinPE) images in an ISO or WIM image.
    4. Deployment Options are Lite Touch (SMS not required) or Zero Touch (Using SMS 2003), which should cover the breadth of deployment scenarios that are out there.

    For more information on BDD, please visit: http://www.microsoft.com/technet/desktopdeployment/bdd/2007/default.mspx

    For information on Desktop Deployment: http://www.microsoft.com/technet/desktopdeployment/default.mspx

  • Using Groove 2007 as a “Roaming Folder” for mobile and multi-computer users

    With the availability of Office 2007 comes a new version of Groove 2007. I must admit that I was never a big user of Groove, but I'm trying to look more into the product to see what I've been missing. A really cool feature of this product is something that all users of multiple machines should get to know. It's called "File Share Workspace".

    File Share Workspace allows me to select a folder that I have on a given machine and set it for synchronization. I like to personally think of it as a "Roaming Folder". As you can have the contents of this folder "roam" on any Windows computer where you have Groove installed (of course you can select to sync the content on that computer or not).

    So let me paint the scenario that I have and how I use it…

    • Home PC – I have a home computer where I do a lot of web reading, documentation writing (dual monitor), software evaluation and testing using Virtual Server, and I use it for picture, videos and more. It's running Windows Server 2003
    • Work Laptop – I have a work laptop that I use for customer demos, connect to corporate network to do internal training and download internal software, and I work on Microsoft related content. This is a Compaq nc8430 running Windows Vista Enterprise. (Intel Centrino Duo Core, 4GB RAM…I love it).
    • Work Laptop (secondary) – This is a backup machine that I use for some Windows and Exchange server demo's. it's not as strong as the first machine, but I need it in case the other laptop goes crazy. For now I use it as a client machine when doing BDD deployment demo's using the primary laptop (all in Virtual PC) as the BDD deployment environment.

    So as you can see here, I have three machines that I'm pretty active with. What I need is to have all of my important information (presentations, documentation, and tools) with me and always up to date. One of the key features of Windows (2000, XP, 2003, and Vista) is the ability to have an Offline version of some content. In order to make this happen in my scenario, I would have to setup a share where all of my machines could sync with. I would then need to setup a each machine to use the content of that share for offline use. This works pretty well, but it's a lot of moving parts and I have to ensure that when I get back home that I sync with the main share and I "hope" that they all get updated with the same data.

    In walks Groove!

    With Groove, I create a new folder on my local drive (you could do this within My Documents as well, but then this gets weird if your company uses My Documents Folder Redirection), right-click on that folder and select "Groove Folder Synchronization" from the context-menu and then click on "Start synchronizing …". You'll get asked if your "sure" (click Yes) and then your off! Now you go to your other machines and you'll see a new workspace in your "Workspaces" list on the Groove Launchbar. You now only need to right click on that workspace and select "Get Workspace" to now synchronize that content on your local computer. That's it! Groove will now take care of keeping all of the content in that folder up to date for you. So no more figuring out if you downloaded that content on your home machine, work laptop, or work desktop. This is great for mobile users that use many machines (like me) in order to do their job.

    For more information on Groove 2007, please visit: http://office.microsoft.com/en-us/groove/FX100487641033.aspx

    Also, here is the description on "file sharing workspaces" from the Groove 2007 documentation. I thought it might also help…

    A file sharing workspace is a special type of Groove workspace that enables you to share the contents of a folder in your Windows file system across all computers on which you have your Groove account, and with other Groove users by invitation.

    Note: File sharing workspaces are not supported on computers running a 64-bit operating system.

    Posted Jan 10 2007, 06:54 AM by agramont with 2 comment(s)
    Filed under:
  • Copy/Increase a VHD using VHDMount

    So after my first post on the subject of "expanding a VHD" by actually copying the contents of a VHD image using WAIK (Copy a Microsoft Virtual Machine VHD/Increase VHD size using Windows Automated Installation Kit), I got some good feedback on my laziness of not going down the VHDMount method. So I took a bit of time tonight to work through that scenario.

    A key new feature in Service Pack 1 for Microsoft Virtual Server 2005 R2 is the availability of a new tool named, "Offline VHD Mounting". It's a command-line utility that allows you to mount a Virtual Hard Drive (VHD) as a local drive on a host server. The great advantage to doing it this way versus using an imaging technology (like I did using ImageX.exe as part of the WAIK), is that you don't need the overhead of taking a snapshot, deploying, rebooting, etc. You simply need to mount the original image, mount the new image, and then do a copy.

    Before we get started, please make sure that you have downloaded and installed the following

    So here are the steps I took to "expand a VHD" by coping the contents from the original to a new VHD that was created at a much larger maximum size.

    1. Ensure the Virtual Machine (VM) that holds the original VHD is currently stopped.
    2. Mount the original image
      1. Open a Command Prompt and change directories

        cd "C:\Program Files\Microsoft Virtual Server\Vhdmount\"

      2. Mount the original image (the path I have below reflects my deployment.

        vhdmount.exe /m F:\Images\Configs\DepA-Web02\DepA-Web02.vhd V

    3. Create a new VHD - Using the Virtual Server Administration Website, create a new Virtual Hard Drive (VHD) that has the new storage capacity that you feel you'll need.
      1. Click Start > All Programs > Microsoft Virtual Server > Virtual Server Administration Website
      2. From the Virtual Disks menu, select "Dynamically Expanding Virtual Hard Disk" or "Fixed Sized Virtual Hard Disk"
      3. Provide the new hard drive name and location. You may also notice that the default size for a VHD is no longer 16 GB, but is now 127 GB.
      4. Click the Create button
    4. Mount the new VHD (same steps as step #2, but you need to point to the new VHD location)
    5. Once the new VHD is mounted, I wasn't able to actually see it using File Explorer. As any new drive, virtual or physical, it has yet to be partitioned and formatted. So the next step is to create a partition and format the new VHD. This (as is everything else) is done on the host machine. There are two ways that we can perform this task: The GUI way using the "Disk Management" MMC Snap-in or the command-line way using the "DiskPart" utility. Below are the steps using DiskPart
      1. Open a Command Prompt and execute:

        diskpart

      2. Find the disk number for the new image. It should have a "Size" and "Free" value that are the same number AND should be the size of the VHD that you created.

        list disk

      3. Now we'll create the partition on the drive (the disk number for my new VHD was 4, but you should use the number that you found from the above command) and assign it a drive letter

        select disk 4

        clean

        create partition primary

        assign letter=w

        exit

      4. The next step is to format the new drive

        format w: /FS:NTFS /Q

      5. Finally, we'll go back into diskpart and activate the partition

        diskpart

        select disk 4

        select partition 1

        active

        exit

    6. At this point, we now have a VHD drive ready to be used. So now we'll simply start copying all of the contents from the original image to the new image. (This will take a while…)
      1. Using the default xcopy command within Windows, we'll copy all of the contents

        xcopy v:\ w:\ /E/H/K/O

    7. Once the copying is complete, we should now unmount the drives
      1. Open a Command Prompt and change directories

        cd "C:\Program Files\Microsoft Virtual Server\Vhdmount\"

      2. Mount the original image

        vhdmount.exe /u v

        vhdmount.exe /u w

    8. We're now ready to point the target Virtual Machine from the original VHD to the new VHD.
      1. Click Start > All Programs > Microsoft Virtual Server > Virtual Server Administration Website
      2. From the "Virtual Machines" menu on the left side, hover over the "Configure" section and then click on the target Virtual Machine from the pop out window.
      3. Click on the "Hard Disks" configuration section link
      4. We don't "really" need to remove and add a new hard drive. What we'll do instead is point the old path to the new path in the "Fully qualified path to file" section for the appropriate disk. Then click OK.
    9. We're all done! Now you can start up you VM and it should now be using your new VHD, but with the previous (and I'm sure lots of time invested in created) content. But don't delete you VHD just yet. I'd give it a few days or hours of testing before you delete the original VHD to save space.

    I'm sure most of this could be scripted out and perhaps that's another late night project for me. But for now, this should at least get you going down a path that worked for me.

    Update:

    I thought some of you might find the before and after file sizes interesting:

    • Original VHD: 15 GB
    • WIM of original VHD: 5.58 GB
    • VHD using WAIK: 12.5 GB
    • VHD using VHDMount: 13.3 GB
  • Copy a Microsoft Virtual Machine VHD/Increase VHD size using Windows Automated Installation Kit

    I have a standard set of Virtual Machines images that I do much of my development with. For the most part, I created the virtual machines and their associated virtual drives using the default settings. As I'm using Microsoft Virtual Server 2005 R2 (x86), the default size for a new virtual drive is 16 GB (this changes with Service Pack 1 to 126 GB). This has been plenty of space and all things have ran well, until I started to install the Microsoft .NET Framework 3.0, Visual Studio 2005 Extensions for Windows Workflow Foundation, Vista and .NET 3.0 SDK, Visual Studio 2005 Extensions for .NET 3.0, and much more. I didn't run all the way out of space, but I was getting close. So I needed to expand my virtual hard drive.

    At the moment, there isn't a feature in Microsoft Virtual Server 2005 R2 (not even with the Service Pack 1 beta) to expand the size of a virtual hard drive. So begins the challenge…

    Since I couldn't make a modification to the original virtual hard drive (VHD) in order to increase the amount of space, I would need a way to copy the contents of the original VHD and store that data on a new VHD. There were two options that I looked into. The first was to leverage the new feature available in Microsoft Virtual Server 2005 R2 Service Pack 1(https://connect.microsoft.com/site/sitehome.aspx?SiteID=151) named, "Offline VHD Mounting". This enables me to mount a VHD drive as a local drive on my workstation and access it like a physical drive. So in theory, I could simply copy and paste the content. I tried this out with not much success. The issue I ran into was trying to mount to a newly created VHD. To be fair, I didn't spend much time working through this issue as I quickly dove into my second option.

    The next approach was to leverage the newly released Windows Automated Installation Kit: http://www.microsoft.com/downloads/details.aspx?FamilyID=c7d4bc6d-15f3-4284-9123-679830d629f2&DisplayLang=en

    The Windows Automated Installation Kit (WAIK) is a deployment and imaging technology the enables IT administrators to take snapshots of a base image, deploy the image, and even directly edit the image while in its compressed form. There ton's of cool stuff in there and I encourage you to read the following article to learn more:

    There are many advantages to leveraging WAIK to solve this problem:

    1. It's a freely available download from Microsoft and fully supported
    2. It's a core deployment technology for Windows Vista and soon Windows "Longhorn" server
    3. Windows XP and Windows Server 2003 are supported clients for deployment

    Another very interesting component of WAIK is the WindowsPE component. WindowsPE enables you to create a bootable CD the provides support for network connections, manage the disk partitions, and (of course) kick off a capture or attach (aka deploy) an image. Here's a great article to learn more: http://www.microsoft.com/technet/technetmag/issues/2006/09/WindowsPE/

    Before you get started, make sure you download and install the following software components:

    OK, so let's get down to how I used WAIK to create a copy of a VHD with an increased disk size. In the steps provided below, I provide the steps I took and the command line arguments that I used. This doesn't mean that this is the only way it can be done, but points out what I used to get the results I was looking for and that matched my configuration/environment. Also, many of the WAIK steps noted below can be found in the "Getting_Started_ITPro.rtf" document provided as part of the WAIK.

    1. Make a WinPE Image

      cd Program Files\Windows AIK\Tools\PETools\

      copype.cmd x86 c:\winpe_x86

      copy "c:\program files\Windows AIK\Tools\x86\imagex.exe" c:\winpe_x86\iso\

      Oscdimg -n c:\winpe_x86\ISO c:\winpe_x86\winpe_x86.iso -n -bc:\winpe_x86\etfsboot.com

    2. Using Virtual Server Manager, map the WinPE ISO to the target Virtual Machine
    3. On your workstation (or other server on the network), create a new folder share. We'll use this as the location to store our WIM file which will be an image of our VHD.
      1. Name: wim
      2. Share Permissions and folder permissions set to allow for rights
    4. Boot the Virtual Machine (WinPE will then start)
    5. From within the WinPE command line environment (running inside of the target VM)-Create a connection to the share

      net use z: \\computername\wim /user:computername\username

    6. Capture the image.
      1. Change to the "d:" drive
      2. Capture the image

      imagex.exe /compress fast /capture c:\ z:\myimage.wim "my image" /verify

    7. Using Virtual Server Manager, create a new VHD. Don't forget to change the default size of the VHD.
    8. Using Virtual Server Manager, edit the configuration of the target virtual machine. Within the "Hard Disks" settings, remove the original drive and assign the new VHD. Save the changes.
    9. Boot the Virtual Machine (WinPE will then start)
    10. Partition and format the new VHD

      diskpart

      select disk 0

      clean

      create partition primary

      select partition 1

      active

      format

      exit

    11. Map a drive to the share where we stored the captured image

      net use z: \\computername\wim /user:computername\username

    12. Apply the image previously captured to the new VHD

      imagex.exe /apply z:\myimage.wim 1 c:

    13. Remove WinPE ISO from VM
    14. Restart VM

    At this point, you should be all set. What you'll now have on your local hard drive is your original VHD (not assigned to an Virtual Machine), a WIM file which is a snapshot of your original VHD, and a new VHD (larger in size) with the content from the Original VHD.

    I've had this up and running for a few days now without any issues. I hope this helps and I plan on doing some more posts on this subject as I start to use it more.

This Blog

Syndication

Community Tools