HV Backup A free Hyper-V backup Tool

HVbackup is a very easy and powerful free tool to backup and restore Hyper-V virtual machines, in standalone and clustered (CSV) environments, overcoming all the limitations that a generic tool like Diskshadow provides.
This tool targets Windows 2008 (R2) and Windows Server 2012 (R2). All the corresponding core and free Hyper-V editions are also supported!
HVBackup supports app consistent and crash consistent backups through the Hyper V VSS writer component integrated in the operating system.
There are quite a few expensive commercial solutions on the market supporting this scenario, but this is the first open source one, based on the research we did before publishing the project.
We integrated this tool in our datacenter’s production environment management infrastructure, which means that it undergoes continuous testing in a real world environment 🙂
HVBackup can be invoked from the command line, scripted with Powershell or integrated in any .Net program through it’s class library.
The backup process generates a separate zip file for each virtual machine in the specified output directory, containing all the files owned by the VM and identified for backup by the VSS Hyper-V provider.
Requirements:
.Net Framework 3.5, which can be easily enabled on the command line.

Samples:

HVBackup -a -o c:\backup
Performs a full VSS backup (using the HyperV VSS writer) of all VMs on the host.
HVBackup -l VM1,VM2 -o \\yourserver\backup
Performs a full VSS backup of the provided list of VMs (use quotes if the names contain spaces).
In this sample the output directory is on a remote server.
HVBackup -f list.txt -o c:\backup
Performs a full VSS backup of the VMs names provided in “list.txt”, one per line.

How to perform a scheduled backup

backup.cmd :

set BCKPATH=\\yourserver\yourpath
net use %BCKPATH% /user:<user> <password>
pushd %BCKPATH% && forfiles.exe -m *.zip -d -7 -c “cmd /c del @path”
popd
HVBackup.exe -a -o %BCKPATH% 1> lastlog_out.txt 2> lastlog_err.txt

Note: This script will delete every zip file older than 7 days in the target directory before performing a backup of all the VMs on the host. Change it accordingly to your needs.

Now, as we don’t have a scheduled task UI on hyper-v or server core, in order to schedule the previous script every night at 01 AM, just run:

schtasks.exe /create /tn HVBackup /tr c:\hvbackup\backup.cmd /sc DAILY /ru <username> /rp /st 01:00:00

Tool: http://hypervbackup.codeplex.com/

Download: HVBackup_1_0_beta1_20120330.zip Windows 2008 (R2) and Windows Server 2012

Download: HVBackup_1_0_1_Beta.zip Windows Server 2012 R2

Adding GPO Pack support in MDT 2013 for Windows 8.1 & 2012 R2

If you ever tried to use GPO Packs in MDT 2013 or ConfigMgr 012 R2, you quickly find out they will fail for Windows 8.1 or 2012 R2. The reason?  Microsoft forgot to add support for Windows 8.1 in the ZTIApplyGPOPack.wsf script.
Luckily it’s easy to fix, and while you’re at it, why not also add support for Windows Server 2012 R2.

Fix the bug

Find the following section in ZTIApplyGPOPack.wsf (line 86 – 92):

sOSVersion = oEnvironment.Item(“OSCurrentVersion”)
If (Left(sOSVersion,3) = “6.2”) and oEnvironment.Item(“IsServerOS”) then
    sOS = “WS2012RTM”
    oLogging.CreateEntry “Using Default Windows Server 2012 RTM GPO Pack”, LogTypeInfo
ElseIf (Left(sOSVersion,3) = “6.2”) and Not(oEnvironment.Item(“IsServerOS”)) then
    sOS = “Win8RTM”
    oLogging.CreateEntry “Using Default Windows 8 RTM GPO Pack”, LogTypeInfoAnd change to:

If (Left(sOSVersion,3) = “6.3”) and oEnvironment.Item(“IsServerOS”) then
    sOS = “WS2012R2”
    oLogging.CreateEntry “Using Windows Server 2012 SP1 PO Pack”, LogTypeInfo
ElseIf (Left(sOSVersion,3) = “6.3”) and Not(oEnvironment.Item(“IsServerOS”)) then
    sOS = “Win81”
    oLogging.CreateEntry “Using Windows 8.1 GPO Pack”, LogTypeInfo
ElseIf (Left(sOSVersion,3) = “6.2”) and oEnvironment.Item(“IsServerOS”) then
    sOS = “WS2012RTM”
    oLogging.CreateEntry “Using Default Windows Server 2012 RTM GPO Pack”, LogTypeInfo
ElseIf (Left(sOSVersion,3) = “6.2”) and Not(oEnvironment.Item(“IsServerOS”)) then
    sOS = “Win8RTM”
    oLogging.CreateEntry “Using Default Windows 8 RTM GPO Pack”, LogTypeInfo

Or download the file Winking smile

ZTIApplyGPOPack.7z

Free e-learning course – Virtualizing Microsoft Exchange 2013 on VMware vSphere 5 Fundamentals

This self paced free eLearning course illustrates why organizations need to consider virtualizing Exchange 2013 on VMware vSphere. This course focuses on Exchange design prerequisites and considerations, when virtualizing Exchange 2013.
It also describes design, sizing, and implementation guidelines and best practices, that should be followed as part of a structured design and implementation methodology.

The course consists of three modules:

  • Introduction to Virtualizing Microsoft Exchange 2013 provides an overview of the challenges that organizations typically face when deploying Microsoft Exchange 2013 on physical hardware, and how these challenges can be addressed by virtualizing Exchange on VMware vSphere. This module also describes the benefits that organizations can realize by virtualizing Exchange 2013 on the vSphere platform.
  • Designing the Virtualized Exchange Environment evaluates the prerequisites for designing an Exchange 2013 solution when deployed in a virtualized environment. This module also covers the design considerations and guidelines for designing and sizing Exchange 2013 on vSphere.
  • Implementing the Virtualized Exchange Solution covers various implementation options that should be considered when virtualizing Exchange 2013 on the vSphere platform. This module also discusses several implementation considerations that should be factored into an Exchange 2013 design. Finally, this module discusses how to monitor and test the performance of Exchange 2013 on VMware vSphere.

Virtualizing Microsoft Exchange 2013 on VMware vSphere [V5.X] Fundamentals

Thnx to Eric Sloof

Microsoft Security Bulletin MS13-105 for Exchange

the Exchange team released security bulletin MS13-105. Updates are being made available for the following versions of Exchange Server:

Microsoft Exchange Server 2007 Service Pack 3
Microsoft Exchange Server 2010 Service Pack 2
Microsoft Exchange Server 2010 Service Pack 3
Microsoft Exchange Server 2013 Cumulative Update 2
Microsoft Exchange Server 2013 Cumulative Update 3

Cumulative Update 3 for Microsoft Exchange Server 2013

Issues that the cumulative update resolves

Cumulative Update 3 for Microsoft Exchange Server 2013 contains the fix for the security issue that is described in Security Bulletin MS13-061

(http://technet.microsoft.com/en-us/security/bulletin/MS13-061)

and resolves the issues that are described in the following Microsoft Knowledge Base (KB) articles:

  • 2865161 “Errors: Failed exporting item id: from source id” when you try to copy search results in an Exchange Server 2013 environment

  • 2866064 Can’t load OWA Premium by using Internet Explorer 11 in an Exchange Server environment

  • 2871980 Child domains are not displayed for selection when you create a mailbox by using EAC in an Exchange Server 2013 environment

  • 2874216 Security issue that is described in Security Bulletin MS13-061 is resolved by an Exchange Server update

  • 2878160 “The Active Directory user wasn’t found” error when you create or update an In-Place eDiscovery search in an Exchange Server 2013 environment

  • 2882608 Exchange Server 2013 does not share the inproxy.dll file

  • 2886115 Retention policies are not applied to Exchange Server 2013 mailboxes when user accounts are on different domains

  • 2888274 WebClientReadFormQueryString string and WebClientEditFormQueryString string return incorrect URLs in an Exchange Server 2013 environment

  • 2888315 Event 2112 or 2180 is logged when you try to back up a database in an Exchange Server 2013 environment

  • 2888612 Retention policy does not work after you run a cmdlet in an Exchange Server 2013 environment

  • 2889786 Sign-in format for Outlook Web App on mobile devices is not adjusted according to the Set-OwaVirtualDerictory cmdlet in an Exchange Server 2013 environment

  • 2890650 Items in the Drafts folder are not stamped with the retention policy tag in an Exchange Server 2010 or 2013 environment

  • 2895487 “Copy Search Results” option does not work in an Exchange server 2013 environment

  • 2895500 DBCS characters appear garbled when you run some PowerShell scripts in EMS in an Exchange Server 2013 environment

  • 2895678 “Nombre de usuario\dominio” is displayed unexpectedly on the Spanish version of the OWA and EAC logon pages in an Exchange Server 2013 environment

  • 2902929 You cannot forward an external meeting request in an Exchange Server 2013 environment

  • 2902933 “Generate incident report” does not display the “Bcc” field in an Exchange Server 2013 environment

  • 2902934 Korean language localization issue in Exchange 2013 OWA user interface

  • 2902936 You cannot change SMTP addresses for distribution groups by using EAC in an Exchange Server 2013 environment

  • 2902938 You cannot preview Office documents in shared folders by using Outlook Web App in an Exchange Server 2013 environment

  • 2902939 EMS connection error when you separately install an Exchange Server 2013 Mailbox server and a Client Access server

  • 2883203 Exchange Server 2013 restarts frequently after Cumulative Update 2 is installed

  • 2890814 No redirection to the Outlook Web App URL for Exchange Online users in an Exchange hybrid deployment

Download

Update Rollup 3 for Exchange Server 2010 SP3

Update Rollup 3 for Exchange Server 2010 SP3 contains the fix for the security issue that is described in Security Bulletin MS13-061

and resolves the issues that are described in the following Microsoft Knowledge Base (KB) articles:

  • 2715761 “550 5.6.0” NDR when you send a yearly recurring meeting request in an Exchange Server 2010 environment

  • 2839533 RPC Client Access service freezes in an Exchange Server 2010 environment

  • 2840454 “The rules on this computer do not match the rules on Microsoft Exchange” error when you manage rules by using Outlook 2013 in an Exchange Server 2010 environment

  • 2866064 Can’t load OWA Premium by using Internet Explorer 11 in an Exchange Server environment

  • 2874070 Public folders are exposed although the user does not have rights to see the parent folders in an Exchange Server 2010 SP3 environment

  • 2878175 Client Access server crashes when you use Outlook with a Riverbed WAN optimizer in an Exchange Server 2010 environment

  • 2879320 Retention action setting is not updated in FAI items by running the Set-RetentionPolicyTag cmdlet in an Exchange Server 2010 environment

  • 2879736 Office 365 users cannot retrieve an on-premises user’s free/busy data in an Exchange Server 2010-based hybrid deployment

  • 2880153 RPC Client Access Service crashes if Outlook is in online mode in an Exchange Server 2010 environment

  • 2880290 RPC Client Access service crashes when you use Outlook in ANSI online mode in an Exchange Server 2010 environment

  • 2882467 RPC Client Access service stops if Outlook is in online mode in an Exchange Server 2010 environment

  • 2882677 BlackBerry device is not redirected in an Exchange Server 2010 environment

  • 2886469 EAS client receives status code 8 during synchronization in an on-premises Exchange Server 2010 environment

  • 2886567 “Objects added to a BindingSource’s list must all be of the same type” error message when you add an additional domain name in Exchange Server 2010 SP3

  • 2887574 RPC Client Access service freezes when your mailbox reaches the quota limit in an Exchange Server 2010 environment

  • 2888406 Mailbox Replication service crashes when you try to move mailboxes in an Exchange Server 2010 environment

  • 2888906 Events 1000, 4999, and 9775 are logged when Store.exe crashes on an Exchange Server 2010 SP3 Mailbox server

  • 2888911 W3wp.exe crashes when you decline a meeting request by using Outlook Web App or an EWS application in an Exchange Server 2010 environment

  • 2890650 Items in the Drafts folder are not stamped with the retention policy tag in an Exchange Server 2010 or 2013 environment

  • 2891194 Exchange ActiveSync devices are marked as “Blocked” in EMS and EMC when the devices are synchronizing with the Exchange Server 2010 server

  • 2892337 Outlook client freezes when you try to sort email folders by columns in an Exchange Server 2010 environment

  • 2893437 Delegate can read your AD RMS protected messages by using Outlook Web App in an Exchange Server 2010 environment

  • 2896304 Background image is displayed incorrectly in an email message when a disclaimer rule is enabled in an Exchange Server 2010 environment

  • 2899146 You cannot drag email messages to other folders by using Outlook Web App in an Exchange Server 2010 environment

Download

Free ebook: Microsoft System Center: Troubleshooting Configuration Manager

There is a Free ebook available for download offering from Microsoft Press. These unique (and free) ebooks bring System Center experts together to discuss designing, deploying, and troubleshooting some of the most complex and mission critical aspects of key System Center capabilities.

image

Get the Book

Removing Windows 8.1 Built-in Applications

Last year Ben Hunter published a PowerShell script that is designed to remove the built-in Windows 8 applications when creating a Windows 8 image. Well now that Windows 8.1 has been released it must update the PowerShell script to work with Windows 8.1.

The script below takes a simple list of Apps and then removes the provisioned package and the package that is installed for the Administrator. To adjust the script for your requirements simply update the $AppList comma separated list to include the Apps you want to remove. The script is designed to work as part of an MDT or Configuration Manager task sequence. If it detects that you are running the script within a task sequence it will log the to the task sequence folder otherwise it will log to the Windows\temp folder.

I chanced the script a little bit. I don’t want to remove some programs dat Ben Hunter did…

The Script:

<#    
    ************************************************************************************************************
    Purpose:    Remove built in apps specified in list
    Pre-Reqs:    Windows 8.1
    ************************************************************************************************************
#>

#—————————————————————————————————————
# Main Routine
#—————————————————————————————————————

# Get log path. Will log to Task Sequence log folder if the script is running in a Task Sequence
# Otherwise log to \windows\temp

try

{
$tsenv = New-Object -COMObject Microsoft.SMS.TSEnvironment
$logPath = $tsenv.Value(“LogPath”)
}
catch
{
Write-Host “This script is not running in a task sequence”
$logPath = $env:windir + “\temp”
}
$logFile = “$logPath\$($myInvocation.MyCommand).log”

# Start logging
Start-Transcript $logFile
Write-Host “Logging to $logFile”

# List of Applications that will be removed

$AppsList = “microsoft.windowscommunicationsapps”,”Microsoft.BingFinance”,”Microsoft.BingMaps”,`
“Microsoft.BingWeather”,”Microsoft.ZuneVideo”,”Microsoft.ZuneMusic”,”Microsoft.Media.PlayReadyClient.2″,`
“Microsoft.Media.PlayReadyClient.2″,”Microsoft.XboxLIVEGames”,”Microsoft.HelpAndTips”,”Microsoft.BingSports”,`
“Microsoft.BingNews”,”Microsoft.BingFoodAndDrink”,”Microsoft.BingTravel”,”Microsoft.WindowsReadingList”,`
“Microsoft.BingHealthAndFitness”,”Microsoft.WindowsAlarms”,”Microsoft.Reader”,”Microsoft.WindowsSoundRecorder”,”Microsoft.SkypeApp”

ForEach ($App in $AppsList)

{
$Packages = Get-AppxPackage | Where-Object {$_.Name -eq $App}
if ($Packages -ne $null)
{
  Write-Host “Removing Appx Package: $App”
  foreach ($Package in $Packages)
      {
      Remove-AppxPackage -package $Package.PackageFullName
      }
}
else
{
      Write-Host “Unable to find package: $App”
}
$ProvisionedPackage = Get-AppxProvisionedPackage -online | Where-Object {$_.displayName -eq $App}
if ($ProvisionedPackage -ne $null)
{
      Write-Host “Removing Appx Provisioned Package: $App”
      remove-AppxProvisionedPackage -online -packagename $ProvisionedPackage.PackageName
}
else
{
      Write-Host “Unable to find provisioned package: $App”
}

}

# Stop logging
Stop-Transcript

Microsoft Deployment Toolkit 2013 Final

Download from http://www.microsoft.com/en-us/download/details.aspx?id=40796

Microsoft Deployment Toolkit (MDT) 2013 is a Solution Accelerator for operating system and application deployment. MDT 2013 supports deployment of Windows 8.1, Windows 8, Windows 7, Windows Server 2012 R2, Windows Server 2012, and Windows Server 2008 R2.
Feature Summary

  • Deploy Windows and Office with Microsoft Deployment Toolkit 2013. MDT is the recommended process and toolset for automating desktop and server deployment. MDT provides you with the following benefits:
  • Unified tools and processes, including a set of guidance, for deploying desktops and servers in a common deployment console.
  • Reduced deployment time and standardized desktop and server images

Some of the key changes in MDT 2013 are:

  • Support for the Windows Assessment and Deployment Kit (ADK) for Windows 8.1. Download final release here 
  • Support for deployment of Windows 8.1 and Windows Server 2012 R2.
  • Support for System Center 2012 R2 Configuration Manager.
  • Improved support x86-based Unified Extensible Firmware Interface (UEFI) systems.
Translate »