Hi all,
on TrueNAS SCALE 25.10.7, the “Previous Versions” tab in Windows is always empty for my SMB shares, even though periodic snapshots are created and readable. Restarting the SMB service did not help.
Setup
- TrueNAS SCALE 25.10.7
- Pool “daten”, datasets daten/data/manuel, daten/data/orga (and others), each shared separately via SMB
- Periodic Snapshot Task on daten/data: recursive, hourly, lifetime 2 days, naming schema auto-%Y-%m-%d_%H-%M
- Dataset ACL type: nfsv4 (aclmode restricted), snapdir visible
- Pool is healthy (zpool status -x), ~1250 snapshots in total
What works
- Snapshots exist for the datasets, e.g. daten/data/manuel@auto-2026-10-02_17-00
- They are readable on the filesystem: ls /mnt/daten/data/manuel/.zfs/snapshot/auto-2026-10-02_17-00 lists the files
- testparm shows shadow_copy_zfs loaded for the shares:
vfs objects = streams_xattr shadow_copy_zfs ixnas zfs_core io_uring
What fails
Accessing a snapshot via the @GMT path fails, both from Windows and locally with smbclient. The timestamp comes from the snapshot’s creation time:
date -u -d @$(zfs get -Hp -o value creation daten/data/orga@auto-2026-10-02_17-00) +“@GMT-%Y.%m.%d-%H.%M.%S”
→ @GMT-2026.10.02-15.00.00
smbclient //127.0.0.1/orga -U <user> -c 'ls @GMT-2026.10.02-15.00.00/*'
→ NT_STATUS_UNSUCCESSFUL listing @GMT-2026.10.02-15.00.00*
Same result for the share “manuel”, so it is not specific to one dataset.
/var/log/samba4/log.smbd shows on each attempt:
vfs_shadow_copy_zfs.c:743(zfs_lookup_snapshot_list)
zfs_lookup_snapshot_list: [shadow_copy_zfs_open()]: Failed to get snapshot list for /mnt/daten/data/manuel
zfs_lookup_snapshot_list: [zfs_parent_pathname()]: Failed to get snapshot list for /mnt/daten/data/manuel
Already checked
- Snapshot names match the default auto- schema; no other snapshot names in daten/data
- Share paths point to the dataset roots, no nested child datasets
- SMB service restarted
- Windows side not the cause: the error appears with smbclient directly on the NAS
Is this a known issue in 25.10.x? Is there anything else I can check (e.g. debug logging for shadow_copy_zfs)? I can provide a debug file if needed.
Thanks!