Overview
By default, the Code42 agent backs up files in the user's home directory. This article contains information about using variables, wildcards, file extensions, and regex to define what should be included and excluded in the backup file selection.
How it works
There are several ways of specifying which files and folders should be included or excluded from the backup file selection.
- Use substitution variables
- Specify filename patterns using wildcards
- Specify file extensions to exclude
- Use regular expressions
Considerations
Excluded files
- To exclude a file from backup, the file's parent must be included. This means that if an exclusion uses a directory and not a token (for example, :user, :root, and so on), and the exclusion does not have a parent directory explicitly shown in the inclusion list, the exclusion is pruned automatically from the exclusions list.
- Excluded and deselected files are treated differently than deleted files, so the Remove Deleted Files After setting does not apply to excluded files. As a result, the files that have been excluded are removed from the backup archive and are permanently unrecoverable.
Test, test, test
Make sure you verify your exclusions and inclusions any time you make a change. Otherwise, essential files may not be backing up, or too many nonessential files may be taking up space and bandwidth.
Mac metadata
If you find that certain system or media files are not backing up on a Mac, verify that the affected files do not contain exclusion metadata. Certain metadata attributes tell applications that the file should not be backed up. It is possible to remove the exclusion metadata for a file, so that the Code42 agent can back up the file.
Include a trailing slash for directories
When you want to include a directory in the included or excluded files fields of device backup settings, you must include a trailing slash ("/") in the path name. For example, C:/data/ is correct, but C:/data is incorrect. If you do not include the trailing slash, Code42 treats the path name as a file rather than a directory. This could have the following consequences:
- Files within the directory that you want to include in your backup will not be backed up.
- Files within the directory that you want to exclude from your backup will not be excluded.
Console: Use substitution variables
Substitution variables offer cross-platform shortcuts to common user and system folders. Instead of identifying each user folder by name, you can use substitution variables.
Use substitution variables to specify the types of files or locations in the directory field. These variables are applied in the following situations:
- When the Code42 agent software is first installed
- When system-wide or organization-level Device Default settings are pushed
- When a specific device's settings are modified to include the variable
When the variable is applied, then the specific device's settings replace the variable with the explicit list of the corresponding files and folders.
Substitution variables are case-sensitive. As a best practice, add separate inclusions/exclusions for each case-combination that exists on users’ devices (for example, both “My Documents” and “my documents”).
Variable | Description |
---|---|
:main |
Main volume (For example: C:\ on Windows or / on Unix or Mac) |
:applications |
Default applications folder for the device's OS (functions on all platforms) |
:user |
User’s home folder |
:desktop |
User’s desktop folder |
:documents |
User’s default document folder |
:music |
User’s music folder |
:pictures |
User’s pictures folder |
:movies |
User’s movies folder |
:allUsers |
Includes the parent Users folder (For example: C:\Users\ on Windows, /Users/ on Mac, or /home/ on Linux) |
:alldesktops |
All users' desktop folders at the time the Code42 agent is installed |
:alldocuments |
All users' default document folders at the time the Code42 agent is installed |
:allmusic |
All users' default music folders at the time the Code42 agent is installed |
:allpictures |
All users' default pictures folders at the time the Code42 agent is installed |
:allmovies |
All users' default movie folders at the time the Code42 agent is installed |
Substitution variable example
User laptops at ABC Company are deployed with a directory under the user's home directory called “WorkFolder”. Users have been instructed to store their important files in WorkFolder so that this is backed up.
Some users also have certain confidential documents on their systems. These documents cannot be backed up due to compliance reasons and users are instructed to store those confidential documents in a directory called Private. In this example, we include the WorkFolder but exclude the Private folder.
Included | Excluded |
---|---|
|
|
In the case of a specific device, Joe's MacBook Air, the result of applying the variables looks like:
Included | Excluded |
---|---|
/User/Joe/WorkFolder/ |
/User/Joe/WorkFolder/Private/ |
And on Jill's Windows PC, the end result of the same variables is:
Included | Excluded |
---|---|
C:\Documents and Settings\Jill\WorkFolder\ |
C:\Documents and Settings\Jill\WorkFolder\Private\ |
Exclude files from backup
In the Code42 console, you can specify filename patterns to exclude by default for all users in an organization. Go to Organizations > ORG NAME > action menu > Device Defaults > Backup. Enter exclusions in Filename Exclusions. You may also enter Global Exclusions or Cloud Exclusions from the General tab. Clicking in the inclusion and exclusion input fields displays additional examples and help.
The default settings for some of these exclusions are often satisfactory for most customers. You may wish to add additional inclusions and exclusions tuned to your needs.
Code42 agent: Ignore by file extension
You can ignore files by their extension or file type. For example, add “mp3” to the list to cause all .mp3 files to be ignored when the Code42 agent identifies files for backup.
Code42 agent and Code42 console: Regular expressions
Regular expressions are a complex but powerful way of designating files to be excluded from backup. Each expression you provide is always matched against the absolute path of the file, which requires that you take the full file path into account when you exclude files.
Code42 always uses
/
as the file separator character.Here's an example: Consider the absolute path: /Users/Peter/Documents/examples/regex.txt. You could exclude the file with:
regex | Description |
---|---|
.*\.txt |
All text files in all directories will be excluded, case-sensitive |
(?i).*\.txt |
Same as previous, case-insensitive |
(?i).*/examples/.*\.txt |
Text files in examples folder are excluded, case-insensitive |
(?i)/Users/Peter/.*\.txt |
Text files in Peter's home directory are excluded, case-insensitive |
(?i)/Users/.*/examples/.*\.txt |
Text files contained in User's home directory within an examples folder are excluded, case-insensitive |
Make sure the 'Regular Expressions' checkbox is selected if you want to use regular expressions. All entries will be evaluated accordingly.
Test your changes
Test your file inclusion and exclusion changes prior to deploying in a production environment. To test your exclusions on a test system:
- Apply your exclusions by Locking or Pushing your settings changes.
- Manually start a file scan verification from the Backup Set Settings Menu by selecting Scan for file changes. You must complete a file scan verification before the inclusions/exclusions take effect.
- Trigger Archive Maintenance for the test system's backup archive:
- Go to the test system's Device detail screen.
- Select Maintain Archive from the Archive action menu.
- View the files in the backup archive from restore from the console or from the desktop.
When you update existing, locked settings, you must unlock and relock the settings to apply them to existing archives. If you don't, new files will follow the new settings, but existing archives are not affected.
Following the above process in a test environment lets you see which files remain backed up before making changes in your production environment. Always verify in a test environment before making any changes.
Apply settings
In the System-wide and Organization Level Device Defaults, there are three ways to apply settings from the Code42 console: save, lock, and push.
- Saving a setting applies it for new devices in the future. Saving settings does not affect any existing devices.
-
Pushing a setting changes it on user devices, but still allows users to change the setting later.
-
Locking a setting pushes it out to user devices and also prevents users from changing the setting later.
|
Applies changes to future devices | Applies changes to existing devices | Allows users to change settings |
---|---|---|---|
Save | Yes | No | Yes |
Push | Yes | Yes | Yes |
Lock | Yes | Yes | No |
Save
Click Save to save settings for new devices in the future. Saving settings does not affect any existing devices.
Push
Click Push (to the right of the inclusion and exclusion settings) to send your settings to users without replacing the filename patterns that users have already entered, merging the user and administrative file selections.
When you update existing, locked settings, you must unlock and relock the settings to apply them to existing archives. If you don't, new files will follow the new settings, but existing archives are not affected.
Pushing a setting only applies additive changes. Therefore, if you try to remove a path from the included or excluded files field and click Push, that path won’t be removed from existing devices. The path will only be removed from existing devices if you click Lock.
Lock
Click the Lock (to the right of the inclusion and exclusion settings) to overwrite all user-specified settings with your new settings. If the setting is already locked, toggle the lock off and back on.
Lock is the only setting that will affect existing archives, and the only way to use exclusion settings to purge files from existing backups.
When you update existing, locked settings, you must unlock and relock the settings to apply them to existing archives. If you don't, new files will follow the new settings, but existing archives are not affected.
Lock example
For example, an administrator has already set up Code42 to back up users' personal folders and locks the settings. Later, she finds that some users have backed up very large files in their Movies folders. The administrator does not want movie files to be backed up, so she configures the exclusion settings to exclude them using the :movies
variable (discussed in Console: Use Substitution Variables).
After configuring the exclusion settings, the administrator must unlock the exclusion settings, then relock them. This causes Code42 to process the exclusions and remove the contents of the Movies folders from the users' backup archives.
Apply settings considerations
Examples
Several examples are included here. Refer also to Exclude or filter files using file type and regular expressions (regex) for even more information on regular expressions.
In the following examples, the parent directories for the excluded files must have already been added to the file inclusions list.
Example 1: Exclude files ending with .mp3
.*\.mp3
This pattern means any character (the dot) for any number of times (the star) ending with ”.mp3”. The dot in mp3 is escaped with a backslash.
Case-insensitive:
(?i).*\.mp3
Any pattern beginning with (?i) indicates a case-insensitive search. This example will match both .mp3 and .MP3.
Example 2: Exclude folders starting with IMAP
.*/IMAP.*
As above, any characters until a directory starting with IMAP followed by any characters. Note that Code42 treats all file separators as forward slashes (/).
Because these types of regular expressions are often extremely complex, it is especially important to test any regular expressions thoroughly prior to deployment in a production environment.
Global exclusions
The Global Exclusions section identifies files that you want excluded from all backups.
Cloud exclusions
The Cloud Exclusions section identifies files that you want excluded from backups to cloud destinations. However, files excluded via Cloud Exclusions are backed up to any configured local folder or computer destinations.
Still Unsure?
- Please contact sales for information on our consulting options.