System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be restored while system is running or from Live CD/USB.
2.38k
stars
86
forks
source link
Backups not including extended attributes (xattr) or ACLs leading to broken restores. #340
Describe the bug
TimeShift runs rsync with -a, but does not include -X which specifically would be needed to copy xattr's as well which is actually more important than one might think in the case of file-based backups.
This is an example of a command I monitored running to help verify the result. -a omits important arguments for file-based backup which are very relevant for system-level backups, such as -X for xattr and -A for ACLs.
To Reproduce
Steps to reproduce the behavior:
Setup Timeshift for Rsync style Snapshot for the system.
Create a snapshot.
In the timeshift backup directory, .../timeshift/snapshots/DATE/localhost/usr/bin verify the command ping has no extended attributes using: xattr ping -- Cross reference that with xattr /usr/bin/ping
Expected behavior
ping command should have security.capabilty xattr.
Screenshots
If applicable, add screenshots to help explain your problem.
System:
Linux Distribution Name and Version: Linux Mint 22.0
Describe the bug TimeShift runs rsync with -a, but does not include -X which specifically would be needed to copy xattr's as well which is actually more important than one might think in the case of file-based backups.
rsync -aii --recursive --verbose --delete --force --stats --sparse --delete-excluded --link-dest=... --log-file=... --exclude-from=.../exclude.list --delete-excluded / .../localhost/
This is an example of a command I monitored running to help verify the result. -a omits important arguments for file-based backup which are very relevant for system-level backups, such as -X for xattr and -A for ACLs.
To Reproduce Steps to reproduce the behavior:
ping
has no extended attributes using:xattr ping
-- Cross reference that withxattr /usr/bin/ping
Expected behavior
Screenshots If applicable, add screenshots to help explain your problem.
System: