By JackTheLabRat - 20 October 2021 4:50 AM
THE ISSUE: Macrium buiids faulty recovery disks for a pair of machines that had new motherboards installed in November 2020. The fault is a missing Ethernet driver. Without the driver, our first floor machine’s Ethernet connection cannot reach a similar machine in the attic, where Macrium stores its backup files on USB book drives. Before I replaced the first floor and attic motherboards, backup and recovery operations on the first floor machine worked flawlessly over the Ethernet connection. Now, first floor backup operations still run properly because the first floor machine has the critical Ethernet driver. But the lack of an Ethernet driver on the restoration disk means that recovery of images or files to the first floor machine means schlepping a backup book drive, a USB cable, and a wall-wart from the attic to the first floor, where I connect the drive to the first floor machine directly. In contrast to the problem described very clearly in “v7.2.4325 Create Rescue Media wongly says missing device drivers,” the built recovery disk really does lack the Ethernet driver. It’s worth noting that if the .mrimg files were on NAS or stored on a hard drive inside the attic machine’s case, the missing driver would create a major nuisance.
THE SCENE OF THE CRIME: A homebrew machine
- Asus ROG STRIX B550-F motherboard
- AMD Ryzen 3700x 8-core CPU with 32gB
- 2.5gHz Ethernet hardware interface running at 1gHz
- Win10 Pro V1909 (build 18363.836) Automatic Win10 updates are disabled
because the Win10 Pro v2001 update inflicts serious audio problems.
RESCUE MEDIA BUILDER SETTINGS:
So, where is the missing driver? First, a summary of the CD/DVD media build operation. Here's what is on the "Macrium Rescue Media Builder" windows:
Rescue Media Settings
- Macrium Reflect Home Edition (64 bit) v7.3.6284 (UEFI)
- Windows PE 10 Release 1709 (64 bit, WADK), which seems to be BACKLEVEL but I have no way to update it.
- Status: OK
- Device: CD/DVD Burner
CD/DVD Rescue Media options
- Enable Check for devices missing drivers on boot
- Enable Prompt for key press to continue boot continue
Press the "Advanced Options" button and get four tabs, which have these values:
Tab "Choose Base WIM" values: Given above.
Tab "Options": 64-bit. All "Options" and "Advanced" boxes are unchecked.
Tab "Devices & Drivers":
- All of the "Device" offerings are checked green.
- All but the bottom two devices have a "Status" value of "Compatible device support in WinPE".
- The penultimate "Device" is "Realtek PCIe GBE Family Controller". Its value is "Device support in Win PE".
- The bottom "Device" is "Intel(R) Ethernet Controller I225-V". Its value is "Driver already present in Drivers folder".
It's unclear what this means in practice. Yes, the Device Manager finds the correct Ethernet driver set in
where they belong and provides several "Compatible ID"s, notably "PCI\VEN_8086&DEF_15F3", among many
others that are similar. However, despite knowing where the right driver is, the recovery disk builder exec doesn't
include it in the built-disk's driver library. I foreshadow the crime by noting that these files are available as downloads
from ASUS or Intel. I saved copies of the files - redundant with the ones in C:\Windows\system32\*, on a shared
drive which I used later to shake the problem out, without success.
Tab "Rescue Media Volume" is volume F, which has 3.06tB free. I assume that this drive is for intermediate storage.
The tab window says nothing about intent.
Press the "Help" button, and
- A useless "404" web window appears, ostensibly for Macrium V7.2.
Press the "Build" button, and:
- The program almost immediately writes to the CD/DVD drive.
- After a minute or two, a "Create CD/DVD Rescue Media" info box says "Rescue media successfully created."
- Closing the info box returns control to the top level window.
Nothing on the display prior to or after the disk write operation suggests that a problem looms, except for
the uninformative "Driver already present in Drivers folder" value for the "Intel(R) Ethernet Controller I225-V".
USING THE RECOVERY DISK:
The ASUS ROG STRIX B550-F UEFI/BIOS brings the recovery disk up as expected, except for a small window entitled
You may need to load drivers for the following devices in order to backup/restore
- Ethernet Controller
Click Yes to load drivers for these devices.
Click No to continue without loading drivers.
When I click on "Yes", a subordinate window appears
“Devices With No Drivers"
Drivers may need to be loaded for the following devices in order to backup/restore.
Description Vendor Device Type Last Load Result
Ethernet Controller VEN_8086 DEV_15F3 NIC No driver loaded
I notice that the "Vendor" and "Device" values are substrings that appear within the "Compatible ID" values I pulled from the Device Manager, as mentioned under the "Devices & Drivers" tab notes above. I pressed the "Scan Folder" button to chase the drivers anywhere they might appear on volume C:. The scan put up an unsatisfying info notice
"1 driver(s) found but none were loaded"
The notice is short on specifics. I'm led to believe that it found the Win10 driver in C:\Windows\system32\DRIVERS that I mentioned above. When I tried to load it with a "Load" button on the higher-level window, it failed again. Instead, it send me on a ridiculous chase for an anonymous .inf file without supplying a search function. That’s no loss, as none of the directory offerings had anything promising under them, anyway.
The missing mystery .inf file may be on many household .mrimg files, but I can't get into them without wasting even more time. In truth, I have no reason to believe that the mystery .inf file exists.
So, now, after hours wasted poking around, burning useless CD/DVD disks. and writing this interminable note, how do I get the Ethernet drivers to load, or closer to the point, how does one add them to the WinPE 10 library and thence to a recovery disk without spending another evening on this. I have no confidence that spending more time will fix what I strongly suspect is a bug or bugs in either Macrium or WinPE.
By jphughan - 20 October 2021 1:26 PM
The Drivers folder referenced in the "Driver already present in Drivers folder" status message pertains to the Rescue Media staging folder, not the Windows driver store. That message means that Rescue Media Builder has determined that WinPE does NOT have native support for that device, as it does for OTHER devices where it has noted "Compatible device support in WinPE" instead, and therefore it has copied a driver package (out of your host OS, in this case) into the staging folder so that the driver will be embedded as an additional item in the Rescue Media, supplementing the WinPE native driver library. And thus, the necessary additional driver is....already present in the Drivers folder. (This is as opposed to a scenario where the selected WinPE version and the user's host OS are using completely different kernel versions and therefore copying a required driver out of the host OS may not be feasible, in which case Rescue Media Builder might need the user to supply a suitable driver manually.)
For a WinPE 10-based build and an Ethernet driver, the staging folder would be "C:\boot\macrium\WA10KDrivers\64Bit\Ethernet". The contents of that folder should end up on the Rescue Media under its "\Drivers\Ethernet" folder. So check the staging folder to confirm that the driver package is there, and then check your Rescue Media to confirm that it made it into the Rescue Media itself. If that driver is present, then it should load automatically when Rescue launches, but if not, you should still be able to go to Restore menu (not the Restore tab!) and select Unsupported Devices to load the driver for that device manually by specifying that \Drivers\Ethernet\[relevant subfolder] as the path. If that doesn't work either, then you can go to Rescue Media Builder > Advanced .> Devices & Drivers, select that Ethernet controller, and click Update Driver to provide a replacement driver package if you've already got a suitable driver package for that device downloaded and extracted somewhere.
WinPE 10 1709 is what Reflect has been using since V7.2 when building on WinPE 10, because it is what Macrium tested. Prior to that it was using WinPE 10 1607, but 1709 added support for multi-partition flash drives, which Macrium found a use for in Rescue Media Builder included in V7.2. If you want to use something newer, you can change your Base WIM to WinRE, which will use the files from your system's WinRE partition that should use the same kernel as the OS you're running, but newer is not always better. I use WinPE 10 because I prefer to stick with a foundation that Macrium tested. The initial release of Win10 1809 had a bug that broke Reflect Rescue's automatic driver loading at startup, for example, even though those drivers could be loaded manually after Reflect Rescue launched. Those who used WinRE for their Rescue Media and updated their systems to 1809 early suffered some side effects on their Rescue Media if they needed to load additional drivers.
And if you're concerned about wasting discs, it might be worth building at least your test Rescue Media onto USB flash drives. I personally would recommend using them full-time since they boot much faster than discs and are much easier to update with new Reflect releases and such when needed. Even decent flash drives are inexpensive in the low capacity variants that are perfectly fine for Rescue Media.