NAS Backup to Tape and FLR fails with "Invalid ACL data"
Challenge
A File to Tape Backup job (e.g., SMB Share to Tape, NFS Share to Tape, or File Server to Tape) or a File Restore from Tape fails with the error:
-
Error Invalid ACL data.
-
Error: Unable to find ObjectVersion in cache for the file. File path: X
Other symptoms include:
- A failing file enumeration of source NAS backups with:
[CTapeFileSystemEnumerator] Failed to enumerate path 'Y'
- Failed to search for files on tape:
Invalid configuration: the element path must begin with the symbol | at Veeam.Backup.AgentProvider.CNasFsItem.NormalizePath(String agentRelativePath) at Veeam.Backup.AgentProvider.CNasAgentEnumItemsResult.Parse(CVcpCommandArgs outArgs, Encoding pathEncoding, Boolean enumWithStreamInfo)
- The file path may contain special/unrecognized symbols like �.
Cause
Solution
Solution 1: Use en-us.UTF-8 Encoding
If possible, set the share encoding to en-us.UTF-8.
Solution 2: Manually Specify the Encoding of Each Share
Veeam recognizes that in some environments, it may not be feasible to use only en-us.UTF-8 encoding. In such an environment, the following registry value can be configured on the Veeam Backup Server to specify which encoding system Veeam Backup & Replication should expect to find in use.
Key Location: HKLM\SOFTWARE\Veeam\Veeam Backup and Replication\
Value Name: SourceFileSystemEncoding
Value Type: Value Type: String Value (REG_SZ)
Value Data: <sharename1>;<encodingname1>;<sharename2>;<encodingname2>;...;<sharenameN>;<encodingnameN>
A semicolon ';' is used as the divider between share name and encoding and between sets of share+encoding pairings.
Example: \\NAS1;windows-1258;\\NAS2\sharename;iso-8859-9;NFSServer:/nfsshare;hz-gb-2312;servername;windows-1251
A list of valid encoding names can be found here: Microsoft Documentation: List of Encodings.
Note: You must specify the encoding name, not the code page number. (e.g., use 'windows-1255' and not '1255')
Functionality Note
The logic checks if the share being processed has a name starting with the value specified. Therefore, using the value myserver will match every share on the server, like myserver\myshare and myserver\myothershare. If only one share needs the encoding applied, specify its full path name, as shown in the Veeam Backup & Replication Console, when configuring the the registry value.
To report a typo on this page, highlight the typo with your mouse and press CTRL + Enter.