It's even more funny. The problem seems to occur if and only if I'm running in a graphical environment. # systemctl isolate multi-user.target # btrfs prop set -ts / ro true; btrfs send --no-data -v / >/dev/null; \ btrfs prop set -ts / ro false BTRFS_IOC_SEND returned 0 ## (this can be repeated with same result) # btrfs isolate graphical.target # btrfs prop set -ts / ro true; btrfs send --no-data -v / >/dev/null; \ btrfs prop set -ts / ro false ERROR: send ioctl failed with -2: no such file or directory ## (this can also be repeated with same result) # systemctl isolate multi-user.target # btrfs prop set -ts / ro true; btrfs send --no-data -v / >/dev/null; \ btrfs prop set -ts / ro false BTRFS_IOC_SEND returned 0 ## (this can be repeated with same result)