Windows 7 to Windows 10 in-place upgrade by component
VIDEO Datto RMM Best Practice: Migrating Windows 7 to Windows 10
Join Datto RMM technical experts Jon North and Aaron Engels to learn how to leverage Datto RMM to quickly build a business case for the best strategy for your Windows 7 to 10 upgrades, and then execute them smoothly and at scale. This session also covers how to manage Windows 10 Feature Updates.
High level summary
Datto RMM can facilitate the upgrade of Windows 7 SP1 to Windows 10 via the use of components. The current version available in the ComStore covers the most common requirements. For more specific use cases, however, additional components are available. Please note that all steps within this document assume the endpoints being managed are sufficient for the task in that they are powerful enough for the new OS and they are upgraded as appropriate with tested drivers and applications, compatibility issues identified and resolved, and so forth.
The ComStore component upgrades Windows 7 SP1 Professional or above (including earlier versions of Windows 10) to Windows 10 version 1803 or 1809 Professional. By default, it downloads the ~7GB disk image (“ISO”) file from Datto’s repository to every device that runs the component, although this can be overridden by providing your own ISO in a network folder and entering the UNC path into the component as a variable. These are both options for upgrading a Professional edition, but they do not work for the Enterprise edition (the EULA prohibits redistribution of the Enterprise ISO), and are not necessarily scalable due to the size of the ISO file multiplied by a large number of endpoints.
In addition, not all users are ready for the latest version of Windows 10 and would prefer to upgrade to an earlier version. There are a number of options available to streamline the upgrade process, and not all are covered by the ComStore component. For this reason, a set of equivalent components with more options was created in order to fit the needs of those looking to perform more specific deployments.
Your approach is determined by the editions of Windows you are looking to move from. Components for both of these use cases are discussed in the Components section of this article:
- When upgrading from Windows 7 SP1 Enterprise to Windows 10 Enterprise, provide an Enterprise ISO and point the UNC path to it.
- When upgrading from Windows 7 SP1 Professional to Windows 10 Enterprise, provide an Enterprise ISO. However, in order to activate successfully, a product key must be supplied as part of the installation process.
Alternative solutions to the main Windows Upgrade component have been developed to better suit mass deployment. In one example, the ISO file is directly attached to the component itself, permitting use of local caches and greatly reducing external network traffic. Refer to Designate a local cache for more information.
The framework for this component is available in the Components section at the bottom of this article, and the ISO file you attach to it can contain any build you like. For example: Enterprise, an earlier build, an alternative language, your own specific image that has been prepped with injected drivers, and so forth. Attach the ISO file to the component, save (mark it as a favorite for use in quick jobs), and deploy. There are some considerations to bear in mind however, and you’ll need to prepare the ISO file for attachment as outlined below.
Splitting the ISO file for use with the “Framework Only” component
A Windows 10 ISO with support for 32- and 64-bit architectures runs at over 4GB; the 1809 edition for both 32- and 64-bit came in at 6.9GB. However, the separate ISO files for the individual architectures is much smaller: 32-bit is 2.8GB and 64-bit is 3.8GB. Datto RMM is only able to deal with components up to 5GB, so consideration should be given to the ISO that you are looking to deploy, especially if you have your own ISO image with a number of injected drivers. Additionally, there is a hard-coded limit per attachment. Before you attach and upload a Windows 10 ISO, you will need to split it up into segments and submit them as individual attachments into the component via the Web Portal. The recommended size limit of an attached file is 1GB, so it is recommended that you limit these segments to a 1GB maximum.
NOTE We recommend the Fsplit tool for this task. You will need to be sure to rename the parts “part<x>.iso” in sequential order before you attach them in order to comply with the syntax of the script.
Installing a version of Windows 10 lower than the latest; non-English languages; and specific builds with injected drivers
The build of Windows 10 installed by the component is dictated by the ISO that is associated with it (by scripted download location or direct attachment). Use an ISO of an earlier version or in a different language to upgrade to that build instead.
A number of other options are available to control the behavior of the upgrade, all of which are available via various components, and all of which primarily use Boolean (true/false) variables. These include:
- Whether to present the “Out of Box Experience” questions (for example, using Cortana) to the end user to customize when Windows 10 first launches, or to hide them and accept the defaults.
- Whether to reboot automatically and to perform the upgrade immediately, or to merely provision the machine so that it downloads the ISO and prepares for the upgrade but doesn’t actually start until the next manual (or otherwise automated) reboot.
- The use of a Product Key to facilitate the upgrade of a Windows 7 Professional device to Windows 10 Enterprise.
NOTE The first option can be controlled by the ComStore component.
The same component used to perform the upgrade from an earlier version of Windows can also be used to perform a Feature Pack update from an earlier version of Windows 10. The same rules and logic apply, just ensure the base OS is higher (that is, an earlier version of Windows 10 rather than 7 SP1, 8 or 8.1) in this instance. Refer to Patch Management and Windows 10.
- OSEdition and ProdKey variables to allow the use of Enterprise ISO either from Professional or Enterprise, and a Reboot variable to allow for “provisioning only” of devices so that you can control the time of the reboot to perform the upgrade. The ISO would be stored either in a location on the network and addressed via UNC path, or online via a URL. These would be stipulated in the variables. Download the component here.
- The framework for a direct-attached ISO file, with OSEdition, ProdKey and Reboot variables as above, but without the split ISO file parts attached. This enables you to attach your own, whether it is an older build, an Enterprise edition, a non-English language, a prepared driver-injected image and so forth without having to download the attached ISO from the component above only to then delete it immediately afterward. Download the component here.