I had a Veeam backup job that was failing with: Retrying snapshot creation attempt (Writer ‘Microsoft Hyper-V VSS Writer’ is failed at ‘VSS_WS_FAILED_AT_PREPARE_SNAPSHOT’. The writer experienced a non-transient error. If the backup process is retried, the error is likely to reoccur. –tr:Failed to verify writers state. –tr:Failed to perform pre-backup tasks.)
Researching this error online was telling me the issue was on the host, but I wasn’t believing that as all of my other vm’s were backing up without issue daily.
To play it safe I checked the host by running: vssadmin list writers
I received the following error on the host:
microsoft hyper-v vss writer non-retryable error
Looking further on the host’s event logs for the error I saw this:
At this point I was still convinced the host wasn’t at fault due to the fact all other vm’s still backed up fine, so I logged onto the vm in question and ran: vssadmin list writers
I received the following on the vm:
sqlserverwriter non-retryable error
Looking into the event viewer I saw:
Researching these errors online I found several solution saying to delete the old backup software. This server used to use another backup solution prior to Veeam called Altaro, which I was pretty sure I had removed a long time ago. I checked add/remove programs and verified Altaro wasn’t listed. I even checked the vss writers for any other backup software listed and found nothing. Running out of ideas, I checked Windows backup to make sure it wasn’t running and no backup jobs were listed. I then looked into Task Scheduler and found a few manual backup jobs listed. I disabled and deleted these jobs. I then restarted the SQL VSS writer service, restarted SQL VSS service, verified it showed no errors after re-running vssasdmin list writers. I then retried the Veeam backup again and it failed out once again.
Re-running vss list writer I received the same error. I was now convinced this was tied to the old task scheduled backups I had removed.
Next, I tried: vssadmin delete shadows /all
After running that command, I received:
Error: Snapshots were found, but they were outside of your allowed context. Try removing them with the backup application which created them.
After much more research, I found an outside the box way of deleting the snapshots from another site.
In order to get rid of these kinds of shadows we need to apply a “trick”. Basically the VSS diff area storage is where VSS keeps these shadows “alive”.
By seriously cutting this limit to the bare minimum we invoke a mechanism in VSS itself that causes it to dump all shadows.
So we proceed by telling VSS to cut the limit down to 401 MB. For some reason the user interface will claim the bottom is 300MB but on several versions of Windows it refuses and reports:
Error: Specified number is invalid
The command that works uses 401MB and is (adapt it to your drive letter as needed):
*****I ran this against the C: and D: drive of my VM*****
Then once you get “success” you can increase the limit once again to the recommended “unbounded” setting, or an actual limit value if you are using shadow copies for other purposes:
I have only run into this on Dell systems, but the fix should be the same for others minus Dell Command update.
Run all Windows updates
If it’s a Dell pc, run dell command update and continue running command update until all hardware updates are complete (may take several reboots)
Download and run Intel Driver and support assistant (Dell systems may complain on display driver, that’s is OK to skip if it complains)
When all drivers have been updated, make a note of you display driver
In device manager, goto Display adapters, right click on your display adapter and select uninstall device. MAKE SURE YOU ALSO SELECT DELETE THE DEVICE DRIVER FROM THE SYSTEM.
Reboot and everything should work
I didn’t have to reinstall the display adapter driver on a Dell Latitude 7480
On Windows 10, to connect to wireless display, select the windows key + P, then click connect to wireless display.
***The following was on a Hyper-V vm, but this also applies to VMware.***
****This should work on most versions of Windows (doesn’t have to be SBS)****
The other week we picked up a new client with an emergency issue. They had an SBS 2011 Server on failing hardware. The hardware was so bad that we didn’t think it would last until the replacement server would arrive. We had an older Server that had enough power to handle their server virtualized until their new hardware arrived. So I started the virtualization process. This is where the fun began. (There were several issues minor issues, but I’ll stick to the major problem here.)
After creating the vm without any disk drives, I attached the newly created drives and powered up the vm and was greeted by the BSOD: STOP 0x0000007B.
Luckily there is an easy fix for this and you don’t need restart the p2v.
Boot the vm off any Windows CD/DVD (Windows 7 & up. Doesn’t have to be the same OS as vm. You could also mount the drive on the host or another vm. If you mount the drive, just run regedit)
After booting off OS cd, when you encounter the language selection, hit Shift-F10 for a command prompt
At the command prompt, run regedit
In regedit, highlight Hkey_Local_Machine
With Hkey_Local_Machine highlighted, goto File, and Load Hive
In Load Hive, select the drive letter where Windows OS was installed (C: in this case), then go to: Windows\System32\config\system
run the following: ethtool –pause vmnic0 autoneg off tx on rx on ethtool –pause vmnic1 autoneg off tx on rx on ethtool –pause vmnic2 autoneg off tx on rx on ethtool –pause vmnic3 autoneg off tx on rx on
then past the above into: /etc/rc.local.d/local.sh
Dell esxi script for esxi hosts using equalogic:
esxcli storage nmp satp set –default-psp=VMW_PSP_RR –satp=VMW_SATP_EQL ; for i in `esxcli storage nmp device list | grep EQLOGIC|awk ‘{print $7}’|sed ‘s/(//g’|sed ‘s/)//g’` ; do esxcli storage nmp device set -d $i –psp=VMW_PSP_RR ; esxcli storage nmp psp roundrobin deviceconfig set -d $i -I 3 -t iops ; done
Awhile ago, I had a client that had purchased several of the same laptops for training purposes. Since all of the laptops were the same make and model, I setup 1 of the 10 as a master image that I had locked down so the trainees had limited access to the pc. Any changes made are automatically wiped after logout/reboot. For faster deployment of the laptops, I had created an image of the first laptop via Clonezilla (I am a big fan of Open Source).
A few years had gone by and there was an issue with one of the laptops. We checked the warranty status and found it was out of warranty. Rather than pay for repairs, it was cheaper to find a replacement on Amazon. Unfortunately, the one on Amazon had a different processor (not that big of a deal).
The new laptop arrived and I pushed out the image to the replacement laptop and when it booted we were greeted with the BSOD Stop 7B 0x0000007B. Rather than reload and reconfigure Windows from scratch I used a tool I had used in the past to help with this exact issue: fix_7hdc.vbs. To resolve this:
Download fix_7hdc.vbs and copy the .vbs to a USB drive
restart the pc.
When the pc is restarting keep tapping the F8 key.
When the Advanced Startup Options Menu appears, Select “Repair My Computer”
In that window, select “Command Prompt”
Insert your USB drive
To find the drive letter of your USB drive via DOS prompt type: wmic logicaldisk get name,description
Once you have the drive letter, goto that drive: e:
Run the script via: cscript fix_7hdc.vbs /enable /search
When the script is done, you are safe to reboot.
Windows made it quite a bit further after reboot, but it still had issues so I rebooted into safe mode and logged in as the administrator and let Windows Find and install the drivers it was able to on its own. When completed I rebooted to Windows and downloaded the rest of the needed drivers and installed the latest Windows updates.
I ran into the following error after pushing an image to a Microsoft Surface Book and configuring the imaged device for a new user. I tried to Turn on BitLocker and immediately saw:
This device cannot use a Trusted Platform Module. Your administrator must set the “Allow Bitlocker without a compatible TPM” option in the “Required additional authentication at startup” policy for OS volumes
During the imaging process I had turned off TPM via BIOS, so I rebooted into BIOS ad made sure TPM was enabled. Next I saved and exited BIOS and restarted. WIth TPM enabled in BIOS I did the following:
Entered Device manager: (Type device Manager in Start Menu)
In Device Manager, look for “Security Devices” (If you don’t see “Security Devices”, click on “View” and “Show hidden devices”.
Under Security Devices you should See “Trusted Platform Module 2.0” or similar
Right Click on that and select Properties
Mine showed the device was not detected
I then clicked on cancel (In the TPM Properties screen)
I then Right Clicked on TPM module and selected “Uninstall device”
This required a reboot which I did.
After reboot I checked the device manager and TPM was shown as working properly. I was then able to turn on and configure BitLocker
2. Login and bind to AD. While Replace the “/Active Directory/All Domains” entry in the search path with “/Active Directory/adshortname/longadname” (ie:/Active Directory/whatever/whatever.local) Do the same for contacts in search policy. This is accomplished by unchecking the “Allow authentication from any domain in the forest” on the ‘Administrative’ tab of the AD utility. Make sure create mobile account @ login is checked and require confirmation isn’t.
3. Open ‘Network Preferences’ for both your Airport/wifi connection and Ethernet connection (any that might possibly be used off the LAN) and go to the DNS settings. In the “Search Domains” section create two entries: longdomainname local (make sure longdomainname is 1st)