After having our SBS 2008 server in operation for 9 months I noticed that restarts were taking much longer than normal, around 40 minutes. On an unrelated issue I went to open Device Manager and it took some time (probably around a minute) to display the list. Viewing hidden devices (with the environment variable DEVMGR_SHOW_NONPRESENT_DEVICES enabled) is where I found the problem.
Under the section “Volume Shadow Copies” were thousands of “generic volume shadow copy” entries, most of them disabled (not present). My guess is these had been created by windows server backup and the swapping of external usb backup disks. The thousands of shadow copy devices had made the system registry hive huge, causing the delay opening device manager and the black screen at startup.
Here is my solution. Please do this at your own risk!
1. Obtain the Microsoft devcon utility from the Windows Driver Kit. This TechNet Wiki page explains how.
2. Get Rob van der Woude’s RmHidDev.bat script here.
3. Modify lines 53-56 to this:
FOR /F "tokens=1 delims=: " %%A IN ('DEVCON FindAll @STORAGE\VolumeSnapshot\HarddiskVolumeSnapshot* ^| FIND /I /V "matching device(s)"') DO ( TYPE "%Temp%\DevconFind.txt" | FIND "%%~A" >NUL IF ERRORLEVEL 1 %Debug% DEVCON Remove "@%%~A" )
4. Start an elevated command prompt.
5. Run RmHidDev.bat /Y /D >> output.txt to pipe the output to a log file. This will give a list of all devices the script will remove. Do this to double check it will only remove the disabled generic volume shadow copy devices.
6. Run RmHidDev.bat without switches to remove the devices.
After doing this Device Manager and restarts were much quicker. I noticed no issues with the backups but again do this at your own risk!
Thanks to this post as the basis of this solution.