The Code42 app supports backing up open files in Windows by using the Volume Shadow Service (VSS) that is built into the operating system. This is the same service that Windows' built-in backup application, NT Backup, uses. This article describes:
- The technical details about how the Code42 app and VSS work together
- The limitations of this approach
- Recommended solutions for errors associated with VSS
Under the hood
At a high-level, the Code42 app coordinates with VSS to back up open files as follows:
- The Code42 app starts to back up.
- The Code42 app fails to back up an open file.
- The Code42 app requests a snapshot from VSS for all local drives.
- VSS sends a freeze to all registered “writers,” such as, Exchange, Outlook, and SQL Server.
- Writers flush their state to disk.
If an application isn't a known writer then it may or may not work. The application isn't given a chance to flush its state to disk. The snapshot will be exactly as it exists on disk.
- VSS creates snapshot.
- VSS provides the Code42 app with details to access the new snapshot.
- The Code42 app backs up ALL files using the snapshot until it reaches a file that has changed since the snapshot was created or the backup session finishes.
For more details, see the TechNet article from Microsoft MSDN.
Using VSS allows the Code42 app to back up open files. However, VSS has some restrictions and limitations. For example, the program writing to the open file needs to support VSS, not just the Code42 app. In addition, the following conditions must exist for VSS to be successful:
- VSS must be enabled
- There must be devices enabled and associated to the VSS.
- The Windows user account must have full access to VSS.
- Only local disks are supported.
- An NTFS partition must exist on an internal drive, with at least 100 MB free space for the shadow copies.
- Free space must be available on drives containing locked files.
In addition, VSS is known to fail if there is too much disk activity.
You may see the message “Unable to backup n files” in the history log if the Code42 app is unable to back up an open file via VSS. If this occurs, the Code42 app will try again later and may succeed if the file has been closed.
Applications known to fail
These applications don't appear to work well with VSS:
While the file(s) may back up, they might not restore to a state that the application can use. We suggest closing these applications before backing up. Alternatively, you can use a known method for creating a backup of the application files, then use the Code42 app to back up the backup.
Limitations when installed per user
When you install per user, the Code42 app has the same level of access as the user account, so it does not have full access to VSS. Files that are left open may not back up regularly. If files are not backing up you will see the message “Unable to backup n files” in the history log. If this occurs, the Code42 app will try again later; if the file is closed, then backup will succeed.
Supported versions of Windows
All versions of Windows that meet the Code42 app system requirements support VSS.
32 and 64-bit compatibility
If you are running a 32-bit version of Windows, use the 32-bit version of the Code42 app. Likewise, if you are running a 64-bit version of Windows, use the 64-bit version of the Code42 app. You may experience VSS issues if the version of your operating system and the Code42 app are not compatible. See our instructions for installing the Code42 app for links to the appropriate version of the Code42 app for your operating system.
Unable to back up files
If your backup never reaches 100%, or you see the message "unable to back up n files" in your history log, consult our Unable to back up files (Windows) troubleshooting article.
Failing to back up open files and 0x8004230f error displays in logs
If you see the following in your logs:
Volume C:\ not supported. COM object method returns error code: **0x8004230F**
This is an unexpected provider error from Microsoft VSS. The Microsoft default provider is very reliable, so a 3rd party VSS provider may be causing the issue.
This error may be caused by the following:
- TrueCrypt encrypted drives
- Disk partitioning utilities like Acronis (cloning process may cause VSS system to fail)
- Defragmentation running at the same time
First make sure that you have DEP for essential Windows programs and services only enabled:
- Right-click the Windows Start Menu.
- Select System.
- Click Advanced system settings.
If prompted, enter your administrator password or confirmation.
- Under Performance, click Settings.
- Select the Data Execution Prevention tab.
- If necessary, click Turn on DEP for essential Windows programs and services only.
- Click OK, and close System Properties.
If you continue seeing the error, then log on to Windows as an administrator, and enter the following commands into Windows Command Prompt:
Net stop vss Net stop swprv regsvr32 ole32.dll regsvr32 vss_ps.dll Vssvc /Register regsvr32 /i swprv.dll regsvr32 /i eventcls.dll regsvr32 es.dll regsvr32 stdprov.dll regsvr32 vssui.dll regsvr32 msxml.dll regsvr32 msxml3.dll regsvr32 msxml4.dll
If that doesn't work, send our Customer Champions at Code42 for Enterprise support or CrashPlan for Small Business (previously CrashPlan PRO) support the results of the following commands (cmd.exe):
C:\> vssadmin list providers C:\> vssadmin list shadows C:\> vssadmin list writers