i have been looking for a way to backup my android phone regularly and easily. it is important to me not to enable android developer options like usb debugging to avoid security vulnerabilities. the backup strategy is to store the data locally on my computer hard drive and then in a packed and encrypted file in the cloud.
You have to create the same folder structure like your phone generates by connecting in MTP mode.
fnz@os:/run/user/1000/gvfs/mtp:host=ANDROID_PHONE$ tree -L 2 ├── Card │ ├── Alarms │ ├── Android │ ├── DCIM │ ├── Documents │ ├── Download │ ├── Memes │ ├── Movies │ ├── Music │ ├── Notifications │ ├── Podcasts │ ├── Ringtones │ ├── Sync └── Phone ├── DCIM ├── Documents ├── Download ├── Pictures ├── Podcasts ├── Ringtones
filesystem example with selected folders for backup
fnz@pop-os:/media/fnz/Volume/backup/phone$ tree . ├── Card │ ├── DCIM └── Phone └── DCIM
now just launch the script with the given path to your backup folder
output should look like this:
fnz@pop-os:~/code/sh/adbackup$ adbackup /media/fnz/Volume/backup/phone Device: Backup root directory: /media/fnz/Volume/backup/phone Leaf directories found: sed: -e expression #1, char 11: unknown option to `s' Continue? [Y/n] Y sending incremental file list ./ Camera/ Camera/20200606_194225.mp4 Camera/20200607_162134.jpg Camera/20200607_162139.jpg ...
the script will create incremental backups when run repeatedly. It is suitable for those who do not want to share developer / usb debugging permissions for their android smartphone. in case of theft and the possibility of future android debugging exploits, it is for me a reliable and secure way to backup my android phone.