1

I am unable to copy a certain file. At first I tried using a cloud share app, then USB file transfer, then ADB, then local file browsing apps, finally a terminal emulator. All fail. I can see the file and the app that created it can partially interact with it, but I cannot copy the file, permission denied. Phone is rooted. This is a large file created by TitaniumBackup. It's large because the backed up app has a lot of data, about 4 GB worth. I can copy all the small files that Titanium creates during its backup process, including the apk and properties files. And I can rename the big file, even delete it, just not copy. Even Titanium itself can delete and restore backups but not upload to the cloud using the built-in function to Sync to Google Drive. I am thoroughly confused.

I don't think it matters but this is a rooted Pixel 5 with stock ROM.

-EDIT- responding to alecxs

adb: error: failed to copy '/sdcard/TitaniumBackup/ws.clockthevault-20201202-212154.tar.gz' to 'vaultcopy.gz': remote open failed: Permission denied
ls -lZ
-rw------- 1 media_rw media_rw u:object_r:fuse:s0

Before chmod: -rw------- 1 u0_a256
After chmod: -rwxrwxrwx 1 u0_a256
But pull still fails: 
adb pull /data/media/0/TitaniumBackup/ws.clockthevault-20201130-045341.tar.gz vaultcopy.tar.gz
adb: error: failed to stat remote object '/data/media/0/TitaniumBackup/ws.clockthevault-20201130-045341.tar.gz': Permission denied
5
  • 1
    Where are you trying to copy it to? If it's to a SD card and the card is FAT32 you can't copy a file larger then 4GB.
    – Sruly
    Dec 3, 2020 at 22:06
  • I attempted multiple targets, including cloud, my PC, as well as just the same folder where the source file is located /storage/emulated/0/TitaniumBackup/
    – prl77
    Dec 4, 2020 at 19:03
  • chmod won't work on /sdcard thats expected. but maybe Titanium is writing files to /data/media/0 which is ext4 where any file size is allowed. but you try to create a file bigger than 4 gb on /sdcard which is most likely fuse mounted (even if it's same location). fuse probably doesn't allow files bigger than 4 gb (because fuse is usually used for fat32). but that still doesn't explain why adb pull fails?
    – alecxs
    Dec 5, 2020 at 22:11
  • @alecxs chmod does indeed change the permissions to the file when accessed within /data/media/0/TitaniumBackup - I can see the change with the ls -lZ But even then I can't copy the file out, see edit on the post.
    – prl77
    Dec 6, 2020 at 4:39
  • android.stackexchange.com/q/91900
    – alecxs
    Dec 6, 2020 at 10:11

1 Answer 1

0

assuming the issue is caused by file size not respecting fuse-mount 4 gb file size limitation, this workaround should work

either move the file to another ext4 location which has adb permissions

adb shell mv /sdcard/TitaniumBackup/ws.clockthevault-20201130-045341.tar.gz /data/local/tmp
adb pull /data/local/tmp/ws.clockthevault-20201130-045341.tar.gz

or stream the file content over terminal stdout (linux only)

adb shell su -c "cat /data/media/0/TitaniumBackup/ws.clockthevault-20201130-045341.tar.gz 2> /dev/null" > ws.clockthevault-20201130-045341.tar.gz
3
  • you are a genius, dude. I was able to copy the file into local/tmp and then adb pull it to my PC. While I was doing that I was questioning in my head how the file was even created in the first place. Creating a file size larger than the file system allows should not be allowed. So while it is in a way a bug within Titanium, as you say, the file system should not allow this to happen and Titanium should be notified of failure to create the file. Otherwise it thinks it succeeded. I will reach out to Titanium, though. Thanks for your help, man. I was going freakin nuts!
    – prl77
    Dec 6, 2020 at 19:18
  • the thing is, Titanium doesn't respect rules. it should use only /storage/emulated/0 like other apps (where this could not happen) but it is kinda 'misusing' it's root permissions writing directly to /data/media/0 instead (where it is 'allowed')
    – alecxs
    Dec 6, 2020 at 19:25
  • very interesting. I messaged Titanium devs, we'll see if I hear back. This might be a unique case they haven't seen before since most apps don't have over 4GB of data.
    – prl77
    Dec 7, 2020 at 5:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .