0

Today I found out, that just showing a diff in btrfs is extremely complicated.

While in ZFS, it's only zfs diff, in btrfs, one has to use either btrfs subv find-new <SNAPNAME> <last-gen> and this find-new does never show me files I created with touch... or empty directories I created...

or one has to use btrfs send --no-data <SNAP1> <SNAP2> | btrfs recv dump

No what I did to test this: I created an empty directory, called 'blah2' and this is what the "diff" shows me:

    [andreas@archlinux data]$ ./bdiff .snaps/Fotos-20220910c .snaps/Fotos-20220910b
At subvol .snaps/Fotos-20220910b
snapshot        ./Fotos-20220910b               uuid=5b07b5f0-ba94-5a47-b586-6d36805b0c9e transid=6783 parent_uuid=1f25f808-28a4-f34d-98e0-fcb54acf4a8a parent_transid=6788
utimes          ./Fotos-20220910b/              atime=2022-09-10T16:10:50+0200 mtime=2022-09-10T16:08:07+0200 ctime=2022-09-10T16:08:07+0200
rmdir           ./Fotos-20220910b/blah2
utimes          ./Fotos-20220910b/              atime=2022-09-10T16:10:50+0200 mtime=2022-09-10T16:08:07+0200 ctime=2022-09-10T16:08:07+0200
[andreas@archlinux data]$ ./bdiff .snaps/Fotos-20220910b .snaps/Fotos-20220910c
At subvol .snaps/Fotos-20220910c
snapshot        ./Fotos-20220910c               uuid=1f25f808-28a4-f34d-98e0-fcb54acf4a8a transid=6788 parent_uuid=5b07b5f0-ba94-5a47-b586-6d36805b0c9e parent_transid=6783
utimes          ./Fotos-20220910c/              atime=2022-09-10T16:10:50+0200 mtime=2022-09-10T16:16:55+0200 ctime=2022-09-10T16:16:55+0200
mkdir           ./Fotos-20220910c/o4139-6788-0
rename          ./Fotos-20220910c/o4139-6788-0  dest=./Fotos-20220910c/blah2
utimes          ./Fotos-20220910c/              atime=2022-09-10T16:10:50+0200 mtime=2022-09-10T16:16:55+0200 ctime=2022-09-10T16:16:55+0200
chown           ./Fotos-20220910c/blah2         gid=1000 uid=1000
chmod           ./Fotos-20220910c/blah2         mode=755
utimes          ./Fotos-20220910c/blah2         atime=2022-09-10T16:16:55+0200 mtime=2022-09-10T16:16:55+0200 ctime=2022-09-10T16:16:55+0200
[andreas@archlinux data]$ 

Why the hell does it not only report a mkdir blah2, but a mkdir o4139-6788-0 with a following rename? But the otherway, it just reports one rmdir?

andi8086
  • 394
  • 2
  • 9

0 Answers0