How do you backup your Android?
The only data I care about on the phone already gets backed up by Google and is then exported regularly via Google Takeout. I don't live on my phone so I tend not to generate much of any value on it other than random pictures of things.
Prior to Google automatically backing up everything, I used Titanium Backup.
Just to note, it seems Titanium Backup is no longer maintained (last Play store update in 2019) and definitely does not work on more recent versions of Android.
I've found Swift Backup pretty much fills the same role at TB.
NeoBackup on FDroid is what I used before grapheneOS (where I'm not rooted)
Titanium backup requires root to do anything useful at this point, since apps can set a flag to allow backup of their data or not.
I didn't know about Google Takeout despite having searched for a way to get my photos out years ago. Blows me away.
The problem with Takeout is it removes the metadata from your photos. Google wants you locked in to Google Photos. Years ago they also removed the ability to sync with Google Drive, so the only way to get your photos out without losing metadata is to download them directly from photos.google.com, 50 at a time
AFAIK Takeout + Photos returns the original image file exactly as it originally existed, EXIF intact. Any additional metadata you have added manually is placed in a JSON file with the same name, adjacent to the image file.
It sounds like you want Photos to somehow merge that added metadata back into the image files, altering them. I'm quite confident that there would be an equal number of people complaining about changing their originals, if photos did that.
No, they remove all of it, date/time, camera, location, all of that is in the JSON. There are 3rd party tools to automate adding it back, but direct from Google all of your photos will not have any of the metadata
Based on my November 2020 Google takeout of 30 gigabytes of photos that I just spot sampled from my Synology, I can verify that the EXIF information on my photos from 2012 (jpg format) include the phone that I took the picture with, the aperture and shutter speed, the date and the time. I didn't do anything other than download the zip files and then extract them.
Beware when relying on Google Takeout for e-mail backup if you have old e-mails in other encodings than utf-8 : it permanently breaks some characters, which are replaced by 0xEFBFBD (that issue does not occur when doing backup with IMAP or GMVault)
> The only data I care about on the phone already gets backed up by Google and is then exported regularly via Google Takeout.
Are you using Google Authenticator?
If so, how do you backup your secrets?
It has an export function that you can scan from an old phone. And I kept the setup keys in my keepass database.
On top of that now Google backs those up for you too.
I use a self-hosted Bitwarden instance for that kind of stuff and before that I used Aegis + Synchthing.
It does do that similarly to Authy now doesn't it? I saw a thread here recently with people arguing it broke MFA to do so.
Google already automatically backs up secrets to your Google Account
What could possibly go wrong.
This is industry standard now. "Your security is very important for _us_". (and for the companies they work with, and for the 3 letter agencies they work with)
Plenty of TOTP apps that sync (including google)
aegis plus syngcthing fork works well
aegis authenticator uses google's android backup system.
My device is rooted and I use NeoBackup to backup apps with all their data (including what the app developer marked as "should not be backed up", often data that they would like you to backup on their own cloud instead).
Syncthing synchronises these backups to my home server automatically, as well as the phone's user data (photos, mainly).
The photos are additionally sent to Photoprism.
I avoid Google's cloud as much as I can.
My device is not rooted, but I use Syncthing as well. I mainly sync my photos and my TOTP tokens (Aegis). The rest I don't care about.
I used Nextcloud sync in the past, but found it unreliable.
Synchthing on Android is End of life, alas https://forum.syncthing.net/t/discontinuing-syncthing-androi...
Yes, very sad.
Two alternatives exist:
1. Syncthing-Fork (https://github.com/Catfriend1/syncthing-android) - Works just like the official app. Install from F-Droid or GitHub. Single developer but active.
2. Syncthing in Termux - Run the actual Syncthing program in Termux. Takes more setup but uses the standard version.
The fork is easier to use, while Termux needs more setup but gives you the standard Syncthing experience.
I have been using Syncthing fork since before the official app was discontinued, and can vouch for its quality. My favorite feature is that it allows conditional pausing of folders based on phone state, such as if the phone is charging or connected to WiFi. Just be warned that the version on Google Play was no longer updated last time I checked (Googles fault), so you're better downloading releases from the Github repo.
Are there any issues or tricks for syncthing in termux, for e.g. always running in the background?
Termux persists for me via a silent notification—is that what you mean?
Dows it auto start at boot?
There's Termux:Boot for that.
I did not know that.
Its a definitely problem for me.
> I used Nextcloud sync in the past, but found it unreliable.
What was wrong about nextcloud sync? I'm just about to set it up for myself.
The sync would stall and I'd have to go retry, or it would fail with no error clear message. In the end, I had no idea what had really synched correctly. The app was unhappy if I deleted a photo too quickly.
With Syncthing, I sync to a directory that my Nextcloud user can access (a read-only mount), so I can still easily share photos using Nextcloud, for example.
(although it's unfortunate that the Android syncthing app is being retired. h/t for the heads up and the recommended alternatives)
Would you trust a restore of those “do not back up” data you have a copy of? Or is this for inspection only?
I just restored my backups a few weeks ago when I bought a new phone. It doesn't work for all apps (I knew it, it's far from the first time I do that) but I am satisfied with the results.
It does help sometimes for retrieving some data manually by digging through the backup files (used it recently for retrieving all invoices from a service that were otherwise only available one by one through a painfully complicated process).
My use case would be to get my WhatsApp database…. Anyone knows if it restores properly?
(Useful even if not … WhatsApp search is abysmal, the db file is much more useful)
Not sure if it restores well because I don't use WhatsApp anymore, but I checked in an old backup and somewhere in the files there's an SQLite3 database "msgstore.db" with a "messages" tables that contains messages.
also use NeoBackup, and it works pretty well for the most part.
Since your phone is rooted, how do you manage banking apps and other things that don't like working on a rooted device? How much work is involved in getting those to work?
I'm running LineageOS, rooted, with MicroG' Safetynet emulation (of sorts?). So a build signed with userdebug keys.
Some banking apps just work - two with warning on first launch, and one just doesn't care at all.
Two refuse to run and I have an old unrooted phone for them. Resulting in me being a good customer of those three banks that are not fussy.
So try and see, perhaps things just work!
For my part I use Magisk, and a specific module for one bank.
The French and Belgian identity apps (France Identité and itsme) don't work though. When I really need them (which is rare) I have to use an old phone that's not rooted.
I was positively surprised that the German passport app worked rooted without denylist.
I don't use banking apps, but you usually can get around this with Magisk's DenyList.
> My device is rooted
A problem in and of itself: brittle when upgrading, won't work with you banking app, etc...
Just install a couple Magisk modules and your banking app should work fine. At least mine does.
Sorry for a dumb question, what are those
Magisk is a way to handle root on Android, it allows to insert system modules to change some things deep in Android. There used to be a feature called Magisk Hide that could make apps unable to detect you were rooted. Now you have to install other modules to circumvent safety net and other checks. It's an arms race : google changes the way it detects things, and modules developers update their circumvention techniques. Try to search "magisk hide 2024" and you should find more information
To add to the existing comment, the solution I use, and I think the most popular solution right now is called Play Integrity Fix: https://github.com/chiteroman/PlayIntegrityFix/
I haven't had to touch it in about a year, but some apps may try harder to keep people from having control of their own devices.
This makes me want to switch back more than ever.
It's true that it makes some things more complicated, but it's a trade-off that I'm willing to make for the convenience and security of hosting my own backups.
Banking web apps usually, mostly work just fine. The one exception is depositing checks. It's pretty rare that I need to do that these days, though.
I'm not rooted anymore, but my banking app worked fine when I was. Only the health insurance app (TK) had issues
Play Integrity Fix.
I don't have root on my android and I try to avoid using any FAANG's infrastructure. A few weeks ago I bricked my phone and lost a bunch of data because I only backed up my photos. More on that in a sec, but the big thing I learned is how much stuff on my phone I didn't miss once it was gone and how much I did miss.
App backup? who cares? This was a chance for me to see what's new on F-Droid and it's been great (lookin' at you keyboard.futo.org).
I back up my photos using termux, rsync, and rsync.net. This model seems pretty solid. I should extend it to app data, but I don't have an automated way to back up app data yet. It's just a thing I have to do when I think of it, which is a recipe for disaster.
I'm taking syncthing out of the picture. I was using it to share markdown, html and some graphics between devices and my phone, but I regularly end up diffing .conflict files. I hope to get better behavior from Nextcloud.
Still, I'm the same happy guy I was before December 30 so I think a few manual app data back-ups, back-ups for non-photo content to Nextcloud so I can share it between devices more easily, and the same old rsync stuff for photos should work great.
"I back up my photos using termux, rsync, and rsync.net. This model seems pretty solid."
This is a common workflow.
In addition to termux/rsync we do see a number of people using syncopoli.
FWIW, my personal phone is an iphone and I use the excellent 'iexplorer' to browse the phone as if it were a filesystem.
Can you share resources on how to backup through termux? I hadn't thought of that.
I wrote a how-to!
https://troyvit.net/2023/01/backing-up-android-to-rsync-net/
It has one error. termux-job-scheduler isn't a separate install.
One extra tip is to use rrsync to restrict which folders your rsync client can read/write to: https://b.tuxes.uk/termux-rsync-photos.html
This helps mitigate ransomware, and escalation (e.g. reading previously backed up files) attacks.
Nice, thank you!
I just did tar / | netcat
try flickboard. once it stops melting your brain it is awesome
Stop using F-droid. It is insecure and shouldn't be the primary way of installing apps. Stick to Aurora Store or Play Store
I read your sources, and one, as a user, I'll let these people sort out their drama among themselves, two, the security issues of the apps that are downloaded I think are way higher potentially than the ones in F-Droid in itself. With these considerations, F-droid is fine as a way of installing apps. Just as fine as any other technically imperfect service, business, or product that we use daily. In fact, I consider it higher than average in quality.
Could you elaborate on that? Do you mean bigger possibility of apps containg malware or what?
https://privsec.dev/posts/android/f-droid-security-issues/, the recent findings of bypass of certificate pinning [0], wireguard creator doesn't trust f-droid himself [1], continued harmful attacks to GrapheneOS devs [2] and a few more points regarding their build infra using a deprecated debian release.
[0] https://www.openwall.com/lists/oss-security/2024/04/08/8
[1] https://gitlab.com/fdroid/fdroiddata/-/issues/3110#note_1613...
[2] https://gitlab.com/ironfox-oss/IronFox/-/issues/7#note_22877...
The handling of the project appears quite troubling, the whole board resigned last year: https://gitlab.com/fdroid/admin/-/issues/447
Why is it insecure?
I just let Google handle it with the built in backup: https://support.google.com/googleone/answer/9149304?hl=en&co...
This never once worked for me with app data. I always have to set up apps from scratch.
I just went from Pixel to Motorola and this has worked surprisingly well. Even for apps that I install manually.
That said, if I don't use the old phone to pull "the data" Google will not transfer more important things (Wi-Fis), settings etc.
What is app data? I guess maybe everything I use is already in the cloud anyway, so I never noticed that?
Whenever I switch android phones, I need to setup each app from scratch, unless is a google app.
What do you mean "set up"? Like when I get a new phone, my previous apps just reinstall themselves. I might have to log back in, but that only takes a sec with a password manager.
Does it not work like that for you?
I've only gone from Nexus to Pixel to Pixel though (all Google phones) so maybe that's why?
Configure all the apps as they were before.
Is like a new phone besides contacts/mails/photos, the rest (besides the pre-installation) is like I never used the apps on the phone.
From having to login to having to re-configure everything.
Using the LineageOS built-in backup tool : Seedvault and upload it to my nextcloud server. Didn't have to use it to restore yet so no real idea how good the restoration is. I also have automatic pictures/video upload to nextcloud and contact/agenda sync with DAVx5.
SeedVault is a trainwreck. Backups sometimes fail, restores very often fail. It's time this thing gets a rewrite.
Then it's not a backup. Always test your restoration properly before calling it a day
Having switched phones a couple of months ago, there didn't seem to be a good option. Either you need to have root - which means that most banking apps won't work anymore -, you need to backup to the cloud which a) not every app supports and b) I don't want to do for more private data, or you need to use the backup API that however some apps also don't support.
It's a mess and I don't understand that Google hasn't fixed that.
Going from a Samsung to a new Samsung is easy. But if you switch between brands yeah it gets difficult.
What’s wrong with their built in support?
https://support.google.com/android/answer/2819582?hl=en
It doesn’t work like iCloud where everything is backed up - even private app data?
I am an Android guy but this is one of the things that iPhone does much much better.
It doesn't work for every app. Not sure if it's opt-in or opt-out.
Which apps doesn’t it work with that you think it should?
I am looking through my apps and most of them are clients for server side functionality or productivity apps that use iCloud Drive, OneDrive or Google Drive.
Google Photos would take care of videos and photos and Contacts and calendars use standard syncing protocols.
Unfortunately his positronic net contains too much information to duplicate, so I rely on the third law.
I just plug in an external SSD formatted with exFAT via the USB-C port and manually copy folders (Documents, DCIM, Downloads, etc.) to it in the Files app.
After dismounting it in the Settings app (Advanced menu), I plug it into my computer and copy any files over I want to store there too (e.g., Pictures).
How do you deal with duplicates when you copy the files?
rsync -a --delete --quiet '/run/user/1000/gvfs/mtp:host=SAMSUNG_SAMSUNG_Android_5210f7e3ea5e5417/Internal shared storage' /home/luqtas/Android; notify-send "android backed!"
How does this work, isn't gvfs a userspace virtual fs? FUSE?
i have no idea... all i did was to click in 'Copy Location' on the 3 dots icon ^-^
I use Folder Sync Pro to sync files to a NAS. This app provides a lot of flexibility in terms of the kinds of destinations (NAS, various cloud service providers) and support for different protocols like FTP and SMB.
Nextcloud for me. I run my own home server, which is just a normal PC on a cheap UPS, on a residential internet connection with dynamic DNS. On that, Proxmox, and Nextcloud lives in there as an LXC container.
On my phone, the Nextcloud app is installed, and that takes care of the photo/video/downloaded file "cloud" sync, and DAVx5 takes care of calendar, contacts, todo. Nextcloud, with additional apps, can also do Kanban, multimedia notes.
Important to note: unless backups are implemented on the nextcloud server itself, this is sync, not backup.
I see your point, but from the perspective of the Android phone, this is already a backup. This is because if I lose the phone, I can restore the important parts of its state from the copy on the server - which is the definition of a backup, according to Wikipedia for example.
Now, of course, we can look at more stringent approaches to backing up data, which I already do, but for some reason I didn't elaborate on the original comment. My home server uses ZFS as storage, and I snapshot that from time to time, and I sync those snapshots to another, otherwise offline ZFS storage. The true 3-2-1 I still don't achieve, because both the online and the offline copies are at the same site, but I opted to take this risk.
>I see your point, but from the perspective of the Android phone, this is already a backup. This is because if I lose the phone, I can restore the important parts of its state from the copy on the server - which is the definition of a backup, according to Wikipedia for example.
I am not familiar enough with nextcloud but what happens if - excluding your home server setup - you modify a picture on your smartphone and overwrite it? I guess it is synchronized to the nextcloud server in modified form and replace the original file, right[1]? If so what if you were to realize you screwed up and should not have overwritten it? Hence the reason I am saying it is not exactly a backup.
[1] that would be the behavior I expect of a syncing mechanism, I use syncthing-fork myself for that.
Ah, right, then maybe I didn't see the point after all. Nextcloud handles this quite well though, I think, it will say, on the phone, that there is a conflict between the two versions of the file, and in case of images, it ever shows them side by side, and asks you what to do.
OK in that case that makes at least clearer for the user. Thanks.
Nextcloud has a first-party plugin that keeps a version history, which is very useful to enable to mitigate issues like this. That combined with the default behavior that deletions on devices only go to the trash on the server turns it into a real backup option.
Oh that's great. Thanks.
Unfortunately, NextCloud for Androidadoes not support syncing directories other than a few hardcoded ones.
The classic tools for local Android backup are/were Titanium Backup, Swift Backup, and 3C All-in-One Toolbox. Here is a comparison chart provided by the latter versus Titanium:
DAYS=(some number); cd /place-to-save-stuff ; adb -e shell "cd /sdcard/; find . -mtime -${DAYS} | cpio -o" | cpio -idmuv # rooting phone not required
> find . -mtime -${DAYS} | cpio -o
That will break if a file name has new lines.
Is that really an issue? I just haven't seen a file name with a newline in it. If so, couldn't it just be run with -o0?
How does that reach into app folders where adb has no permissions ?
/sdcard is just the user-visible internal storage (the same thing that shows up via MTP if you connect via USB), and ADB can access that fine.
Syncthing for files (music, photos, videos, noted), DAVx5 for contacts+calendar. Everything else is either a client app (email) or ephemeral (text messages).
Same for me
I posted it above, but unfortunately synchthing for Android is at end of life https://forum.syncthing.net/t/discontinuing-syncthing-androi...
This fork has been better for a long time already: https://github.com/Catfriend1/syncthing-android
Android internal storage backup with Termux (and ssh daemon and rsync):
https://wiki.termux.com/wiki/Remote_Access
and apps I use the internal Google mechanism.
Restic also works pretty well through termux. I found it easier to setup with include & exclude lists than rsync.
Really interesting! Though what do you back up? Just files?
I use root and back up specific appdata and files to a remote backup. I tried backing up the-whole-damn-thing, but it is slow and pointless, hence the picking and choosing.
All personal data - photos/videos, mail, messages, etc - is synced to my own server. Since I mostly use web apps running on my own server there isn't that much personal data or configuration on the things anyway. Configuring a 'new' device comes down to installing an AOSP-derived distribution without any Googly bits, add F-Droid to get applications, add Termux and the necessary applications to:
- connect to my network: Wireguard (encrypted tunnel)
- keep out unwanted content: Adaway (hosts-based content blocker), AFWall (firewall configuration)
- access control to my own and other services: Aegis (TOTP app, configuration is synced to the server)
- access services on my own server: Nextcloud (sync), DavX5 (contacts, agenda), K9 (mail), Conversations (messaging), DSub (audio), Antennapod (netcasts, syncs with gpodder on Nextcloud), Audiobookshelf (audio book player), M.A.L.P (controls several MPD instances around the premises), zmNinja (Zoneminder viewer, used for video surveillance around the farm), Timelimit (access controls for my 13yo daughter's devices), Librera Reader (eBook reader, connects via OPDS to archive on server)
- add the few proprietary applications needed: BankID (Swedish electronic ID), DigiD (Dutch electronic ID), DB Navigator (German railway app), NS reisplanner (Dutch railway app), Västtrafik To Go (Swedish railway app for western Sweden). These all connect to accounts on remote services and do not keep local state so backups are not needed, for the first two backups are not even useable on other hardware since their state is directly connected to the IMEI and/or IMSI of the local device.
Once configured I make a backup in the recovery (TWRP, PBRP etc) which I sync to the server. After that I only make backups after more radical changes to the device, e.g. when I install a new distribution. The rationale for this is that it is always possible to recreate the device from 'scratch' by following the above steps, these are scripted for a number of devices. All personal data ends up on the server (currently a DL380 G7 running Proxmox) which gets backed up daily. If and when a device breaks or gets lost in some way I can recreate it after repairing or replacing the hardware and firmware.
Apart from the mentioned proprietary apps there is no data leakage outside of my own network.
Contacts and such I currently "trust" the default behaviours for, though I've got some noted down the old fashioned way for emergencies or if I somehow get looked out of the account. I keep meaning to use Takeout as an extra measure. Photos I sync to my own backup system via rsync+SSH via Termux. Everything else is easy enough to replace or came from other sources (my local media library, etc) anyway. I used to backup more (podcasts & such) via rsync but recent versions of Android have made that more difficult without rooting.
For backing up Android contacts, go to https://contacts.google.com/ on your phone or laptop. You can export everything as csv.
Takes less than a minute It's well worth doing from time to time.
I use immich to backup my photos and MyPhoneExplorer to backup my data (contacts, files, etc ).
MyPhoneExplorer is Windows only but works via wifi.
I'm thinking about switching to nextcloud / ente.io but this will take some time.
Another thing I'd like to check out is KDE connect.
wow, hacker news and all these people just "phoning it in"
We really need more folks to hack on their phones and set/spread a good example.
Otherwise "general computing" will be replaced by landlords.
The concept of a landlord may be traced back to the feudal system of manoralism (seignorialism), where a landed estate is owned by a Lord of the Manor...
Perhaps a few more responses now from people who own their data?
There are still a scary few "I use adb" or "I copy the data over MTP"
Sadly, not everything on the phone is visible to those two. IIRC, [MS]MS logs aren't (I might be wrong here though) and if you use Google Authenticator, your OTPs aren't, which I learned the hard, hard way.
I need to root my phone.
Tragically, as you mention, the security restrictions on most apps at this point block filesystem access via adb.
Wild to learn about the OTPs, I'll need to take a look and (likely) rectify that security hole since I manage my backups myself (at enrollment time the keys go in escrow).
My phone is an appliance. I have no more desire to manage my phone than I do my dishwasher.
I sign into my Apple account, pay Apple for more storage and everything gets backed up that’s on my iPhone and iPad.
When I get a new phone, I log in while I’m at the Apple Store, wait for everything to be restored, wipe my old phone and give it back to Apple for a carrier discount or a discount from Apple.
Life is too short to do otherwise. I work with computers 40 hours a week in exchange for money that I then exchange for goods and services.
xdaforums abides! Be of good cheer.
I use adb and a script to pull my data via USB. Backup and restore is easy. Unfortunately, this is largely useless to me. The actual data on my phone already easily syncs as needed as part of the apps I use. What I really care to back up is the app settings and account data, which I haven't been able to successfully transfer. When wiping or changing phones, reconfiguring and logging in to all my ~100 apps is tedious to say the least, even with a password manager. If anyone has a non-google-services, non-root solution to that, I would love to know about it. Convenience and difficulty don't matter, anything can be scripted.
I'm running crDroid, all my photos are backed up using Immich, and the rest is handled with Seedvault [1] to my Nextcloud server.
The only thing on my phone that really ever needs to be backed up is my pictures, videos, and audio recordings. I use Owlfiles to automatically back all that up to my NAS via Tailscale for fast secure connectivity to my home network. Everything else is Nextcloud on the same system. All of that data gets backed up daily to Backblaze B2, and once per month I write everything to an LTO-6 tape that I swap out between 3 tapes: One in my bank deposit box, two in my firesafe.
Backblaze costs me about $100/year for the ~2TB of data I store there.
I got my LTO-6 drive for free from my employer after we upgraded to LTO-8.
I got a 20-pack of new LTO-6 tapes from eBay for $100, and have no idea what to do with the remaining 42.5TB of space. I guess after several years of rotating my existing tapes, I should start using new ones.
Install adb then:
adb pull /sdcard/ /path/to/backup
I use LineageOs and my device is rooted. Weekly backups via seedvault (including files) to a dedicated backup server. I haven't done a restore in ages so I don't have any inkling of what may work or not but I like the simplicity of the routine.
rclone [1] (bidirectional sync) on Termux [2], with Termux:Widget [3] to make syncing as simple as a button press. I backup my stuff to Google Drive, although rclone has many other supported remotes.
Copy all photos / videos periodically to my linux server where everything important lives and gets backed up. Everything else gets nuked.
If I change phone I log into Google, start from scratch and download the apps I need / log in wherever I need the first time I need to.
I'm not very happy with using Google / Gmail for contacts and as a login manager, I've been postponing de-googling for 5+ years. The only promise I made to myself is that I'm not giving them a cent (and I keep living with 3% free space).
Interesting! The only thing of value are pictures, notes, and TOTP 2FA.
I use kde connect to backup the first two, and store keys at time of creation instead of scanning QR code for the last one.
Which then gets into my NAS / 3-2-1 manual backup process.
I back up my photos to a Synology NAS via USB cable a little more frequently than quarterly. The NAS does off site backups to aws glacier (low price s3).
Anything interesting I download, pdfs etc periodically I'll backup to the NAS before I retire a phone. Anything that's not photos I just assume are destroyed when I upgrade and that's fine I don't keep anything else on my phone.
The NAS for backing up my desktop has been very freeing, dumping my Documents folder to the network and installing a fresh copy of Linux or whatever is very freeing.
All the stuff I care about is all backed up in some form (photos to Google Photos, emulator game saves through Syncthing between my decices, contacts in Google Contacts, emails are in Gmail, credentials through Bitwarden, etc).
I can literally throw my iPhone in the ocean, buy another phone, log in to my Apple account and my new phone looks and works just like the old one with all of the settings, Home Screen app placement, widgets being in the same place and local app data being restored.
You would be missing all of that
Which I don't really care about tbh
Just copy DCIM to NAS
Everything else like contacts, sms, software backups goes to the cloud.
I use syncthing to sync all my photos and a few other bits and bobs to my local NAS. Works wonderfully.
I also took that setup to allow me to sync some selected media back from the NAS to my phone.
This way I am not reliant on cloud services as the primary store of my personal data, and I don't have to use their export tools to get my data back. I back up the original sources directly from the phone to my own infrastructure.
I've never used Android, so the answers here are surprising. There's really no equivalent to iTunes/Finder that'll just back up your phone to a PC?
This is partly because Android apps may store data in one of several locations.
In previous versions of Android it was possible for apps to store data in an arbitrary folder on the device (if the user granted the relevant permission).
That resulted in it being quite difficult for the OS to identify which files and folders related to any single app.
In more modern versions of Android, most apps are no longer allowed to write wherever they want, and are encouraged to only store data in a private folder (like iOS).
A backup system is now present that can back things up in a manner to iOS, but it's limited to 25MB per app, and some apps opt out:
So if one app writes files somewhere random, can another app simply read them? So two apps can share data that isn't something standard like the camera roll.
Even then, I don't see why the PC can't back up the whole phone.
What’s the motivation for app makers to completely opt out?
I understand that some data is considered cached and shouldn’t be backed up. But Android already allows that.
> Auto Backup excludes files in directories returned by getCacheDir(), getCodeCacheDir(), and getNoBackupFilesDir(). The files saved in these locations are needed only temporarily and are intentionally excluded from backup operations.
Overall though, this has been a solved problem since 2010 on iOS. True you only get 5GB of iCloud storage by default. But you can pay for more or use iTunes for local backup
Basically, opting out is the most reliable way to not accidentally give Google full access to private use data because backups are stored in their cloud by default.
My understanding is that this was the same for Apple until they added e2e encrypted backups, but Apple users seem much less sensitive to privacy violations done by Apple (which is probably reasonable given that Apple is not as focused on profiting off of data)
Plug my phone into my computer and run a php script that puts all the photos in neat folders onto a hd attached to a pi. Sound like i could upgrade based on the responses here.
I use my Android tablet for sheet music. The music often gets annotated during rehearsals, and so it needs to be backed up. I find that SyncThing works great for this, and my backups go to another PC in my house. Since it doesn't require the cloud, I can access it in performance spaces where I can't get WiFi.
Everything else is backed up through their respective services, such as Gmail, and I just don't have an interesting enough digital life to have much else to backup.
Git works fine with Termux.
Google for contacts and small stuff. Photos get copied to a home server which itself gets backed up. I've used rsync front-ends, non-standard apps which I don't like (PhotoSync). It's been plain SMB shares accessed through CX Filebrowser recently, I haven't cared to get fancy. I'm always using this SMB share with various devices anyway because tons of things "just work" like VLC on Chromecast.
How do you copy the photos to a home server?
I use CalyxOS and sync with the Nextcloud app to my home server. There is Seedvault built in but I've found it to be slightly janky. Many apps can directly operate on files synced through the Nextcloud app like that, or at least directly export backups to Nextcloud through the file provider APIs. Calendars and contacts are supported through WebDAV apps lile DAVx5.
It pretty much just works with little manual involvement.
I don't. Anything worth saving is not on my phone.
> I don't. Anything worth saving is not on my phone.
This is the way.
Aegis for 2fa. Can backup to a file which can then be imported on the new phone.
Google's own backup service for normal backups. When I was rooted I used titanium backup but that was ages ago.
And then a lot of apps that have data that I care about have an export/import functionality, so I can just copy those over without much hassle.
2FA is Authy which backs up everything automatically.
Google photos for images, and a periodic download to my computer of original sized images (then backed up to other locations).
Any other data worth storing is placed in my persona Nextcloud instance (backed up via BorgBackup to an offsite location multiple times a day).
Seedvault. Natively in LineageOS. It makes fully encrypted backups regularly. Then syncthing-fork to backup data on NAS and desktop.
Restoring took about 15 minutes. It restores everything from apps data to system settings.
I don't backup my android but I synchronize some stuff (photos/docs) using syncthing-fork. These are then backuped on the server they are synced to.
Additionally I sync my calendar and contacts with davx. Same as before, backup is done on the server itself.
I don't see the point making a backup of installed apps and their local config.
Things I cannot (easily) replace, such as contacts and photos, I keep with Google (this will change once I run out of free space, most likely). For passwords, I use Bitwarden.
Everything else is either account-based, or can backed up using Seedvault (a backup solution integrated into AOSP, and therefore present in GrapheneOS)
I use EasySSHFS to mount a backup directory my desktop, then NeoBackup to back up apps to it. Both require root.
I just spent the last few weeks figuring out how to solve this problem for myself after running out of space on my free Google plan, so here goes.. I do have a NAS at home, so I was basically trying to move my backup from Google Cloud to my local NAS. Another consideration was that my wife should be able to use the solution so it needed to be simple and hands-off.
Probably the most difficult to solve for is Google Photos. Google offers 15 GB, and this gets filled up really fast if you take a lot of photos and videos. I don't, but still with every phone upgrade I've tried to move all files over to my new device, which results in space running out quite quickly. On top of that, Photos is actually _really_ nice. It works seamlessly, and offers features like facial recognition out of the box.
Anyway, I tried 3 different options - Nextcloud, Syncthing, and Immich.
Nextcloud was a little too complicated to setup, even with docker. Wasn't impressed by it.
Syncthing had an issue with Android app support. I think there are a couple of forks, but I didn't want to rely on that.
Immich was what I finally settled on. It is photos/videos specific, so doesn't work as a general purpose backup but I was more than happy just solving for this. My Google storage was being used roughly half and half by Email and Photos. Solving for half was good enough! On the plus side, Immich is a really impressive Google Photos replacement, and behaves almost exactly the same as the Google app, and has advanced features like facial recognition, dupe detection etc.
For email, contacts, SMS etc, I'm still relying on native Google backup.
Finally, there was Whatsapp. I had disabled Google backup a while ago, but wanted to preserve the photos from it. For that, I configured Immich to sync the whatsapp images folder with my library, and that's been working perfectly well.
Seedvault. What I miss is a backup app which can take a full snapshot of the current state and make it flashable from adb or TWRP. Although, I think that method would definitely require root which is not worth the hassle
Syncthing for loose files and exported backup configurations, SMS Backup & Restore Pro for text messages, radicale for calendar and contacts in addition to Zoho (email provider). Immich and Google photos sync photos in the background.
The important stuff gets auto uploaded to my NAS via the NAS app, whenever I'm home.
Self-hosted Nextcloud + Nextcloud's auto-upload feature. Works on non-media as well.
Used to do complete system mirrors with lower level backup solutions, but gave up, when I realized, that I won't be restoring it to a phone anyways.
My contacts are saved in Nextcloud. For other local data, I have Magisk and back up apps (including data) weekly using NeoBackup. Syncthing also comes in handy for other specific data that I need to save.
Resilio Sync. Very efficient and fast. Start periodically on desktop and phone to sync all needed data both ways. Uploading data from desktop to s3 compatible storage as backup.
I use Fusion https://github.com/mohammad-mallaee/fusion for the files. Swift Backup for Apps, Contacts, etc.
do you leave USB or wireless debugging enabled at all times?
Restic over termux triggered by Tasker to s3 (backblaze) . Addionally syncthing to my laptop. Sounds unnecessary complicated, because it it's.
The Android container on my phone keeps its data in ~/.local/share/waydroid/data, so it just gets rsynced with the rest of the backup.
I've wanted a linux phone for quite some time. Which phone do you have? How good is the waydroid experience? Can you use apps that access bluetooth devices? Do you have any regrets?
I enduro using my phone explorer: https://www.fjsoft.at/en/
It has the similar feel to iTunes for the iphone.
Samsung smart switch has a backup feature on the PC application.
Syncthing to my home NAS. Bakup is triggered automatically when the phone is connected to the wifi and charging (which happens every night).
"adb backup" sometimes works (when it does not hang randomly). Restore also sometimes works. This was one of the reasons i got an iPhone, TBH
I have a folder synced with syncthing to my laptop and a raspberry pi that has a hdd. I actually have three hdds that I rotate now and again.
Off-topic: The exact phrasing of this question is probably going to mean something completely different in a generation or two.
Syncthing-Fork running on phone in background and syncing one-way to my PC all the time on home network
I use Nextcloud to backup images or potentially other files. Other than that, there is nothing important to backup.
Seedvault, Syncthing, DAVx5-to-Nextcloud, Signal Archive, passwordstore.app (discontinued) + git
I see Seedvault allows you to backup and restore app data. Are there any issues transferring app data from one device to another? Screen size, Android version, hardware, etc could all be different.
+1 for Syncthing, and self-hosting a few services like Bitwarden so the data is under my control.
Genuine question: what do you feel the need to backup other than photos?
So many things! Just recovering my (device-bound, i.e. explicitly opted out of cross-device restores) 2FA authentication credentials, banking apps etc. takes me a few hours on iOS.
Restoring all app data and configuration would probably take me several days. The fact that Android still doesn't offer an equivalent to iTunes local backups of iOS devices was one of the reasons I switched.
I echo this. Having gone through several phones over the past few years, configuration settings just feel ephemeral, and there are headaches involved in porting them to different systems. And anything that's even remotely important gets backed up on a cloud.
At the least, contacts. Possibly local notes too.
If someone likes their layout, perhaps the config of their launcher.
SyncThing-fork, Google cloud for everything I can, and FolderSync handles that!
FTP over LAN with no access to internet gateway.
You don't. Google backup is partial and very limited compared to what apple does, plus privacy issues and you don't get access to app folder without root. (I know about adb but then you can't push the files back there).
So it's a shitshow as usual with Android, it all depends on the app. My weight lifting app it can backup on Google cloud. Great. My 2Fa on the other hand it only backup to the 'external' storage, need to transfer it to the computer then. Some app don't have backup option. Some app give backup option but then break when you restore it, like moon reader. Some books just disappeared from the backup.
And so on, and so on.
At the end I focus on photo, obsidian vault and 2fa. Everything else is just bonus if I backed it up.
Last time I had an Apple device the only way to backup was plugging it into a desktop with iTunes.
How do you figure Google's backup (which backs up contacts, messages, photos, mail, and remembers which apps you have installed) is bad? What more could it do or should it do in your opinion? Also Google Authenticator now backs up to your account and you can recover it through a logged in browser.
> Last time I had an Apple device the only way to backup was plugging it into a desktop with iTunes.
That hasn’t been true since 2011 with iOS 5.
I remember it well. I upgraded my iPhone 4 on AT&T with iOS 5 using iTunes. Shortly afterwards, I had an iPhone 4s shipped to me from Verizon.
I logged into my Apple account on my iPhone 4s and after it restored everything, it looked and worked just like my iPhone 4 with all of the settings and app icon positions bring in the same place.
There is also internal app data that gets backed up
> How do you figure Google's backup (which backs up contacts, messages, photos, mail, and remembers which apps you have installed) is bad?
It uses Google. I have servers, desktops, laptops and phones, all of which are computers and all of which are on a local network. It should be possible for me to move all the data on my phone to a server, desktop, laptop or other phone without once sending a single byte outside of my network.
> Last time I had an Apple device the only way to backup was plugging it into a desktop with iTunes.
Apple's supported full iCloud backups and over-the-air restore for at least 11 years, maybe 13 years.
Yeah, I would have figured. My actual question is how is Google's backup lacking?
to be clear Apple's "full" icloud backup is full in name only. if you get a new iphone and do a backup and restore, expect to spend several more hours setting up various apps and details on your new device. you'll have to log in to your apps on the new device and setup things there if the app doesn't work with iCloud's backup mechanism.
it might be better than android's backup system, but it still leaves a lot to be desired.
Yep, Signal is not backed up via iCloud for example
It's a feature, not a bug. Apps like banks or Signal don't want to get backed up as it's a security risk if someone could just duplicate the authentication.
The owner of a phone should be able to back up all of the data on it, regardless of the wishes of anyone who doesn't own said phone.
I don't disagree, but I vote with my wallet. If the owner of the phone doesn't agree with that, they could stop using the phone/apps. Similarly the biometric data also doesn't get backed up or transferred over to a new phone. That's a product decision and I'm just explaining why things are done that way on iOS.
It backs up... Photos, basically? With an iPhone you can take a complete image of the device, and never lose a file again. With Android, solid chance you'll never migrate to a new phone and not lose stuff. It's such a fucking shitty thing that doesn't need to be.
I've gone through like 5 Android phones back to back. Photos, documents, emails, installed apps, contacts... It's all seamless and works, literally just with Google's defaults.
What do you think you lose?
App data. Play store simply reinstalls the apps but they're in a clean state. Some apps supposedly back up and restore their data from Google cloud but that's rare.
Honestly, I can't think of a single app that doesn't back up its own data. Meta apps have their own backup mechanism, games all backup either through their own servers or Play Games service, pretty much everything I use is a service of some sort.
But yeah, I guess Google isn't backing up the state of the offline chess app I downloaded 10 years ago...
It's nice that you don't have this problem with the apps that you use, but others do.
Can you give an example? An app that doesn't back up data that's essential to you?
Not the same person, but this affects me and I can explain. I have around a hundred apps installed, and use them just frequently enough to keep them around. All of them can sync their data back to a new device without issue.
The problem is that when a new or wiped device installs those apps again, they won't have any of their account or configuration data. Even with a password manager to help, logging back in and configuring my preferences is a tedious, all-day affair. In years past, there were ways to transfer account data, but they stopped working a long time ago. I am eager to find a solution to this that works without root and on modern Android.
Yeah Google's implementation here objectively sucks.
I should be able to toss my phone in a river, buy a new one and get it back exactly the way it is.
Syncthing handles the stuff which matters to me, but it can't get apps back exactly the way they were.
Step 0: Use a reasonable device.
Story from a few years back: I have an old Samsung Galaxy I needed to migrate off of. As I recall, the only way to back up all the important data without involving trusted cloud infra was unlocking the bootloader and using TWRP. Don't recall if rooting was also part of the process - I think I wanted to back up before attempting rooting and later actually reflash it. Somehow I think I managed to trip a hardware fuse in the process because the device bricked and I'm not sure if I will ever be able to get at that data or if it's already gone forever...
Especially infuriating that what caused the full data loss was an attempt to back it up!
I'm so done with combating malicious manufacturers and OSs.
GrapheneOS's backup system
it really is just astonishing how far behind iOS Android is on this front, in 2025.
By signing into my Google account.
i have passwords in bitwarden and i backup my photos regularly to my pc
Syncthing
I backup photos onto external drives every few months when I remember too. Is there anything else to backup?
Contacts, SMS messages, that sort of thing. Some people are also really particular about all their settings and widgets and such.
I just can't imagine having to worry about this.
It is why I like a low end Samsung android. It is borderline disposable and I would never view it as more than temporary storage. Works until it breaks or I lose it then start over. In the meantime, if something is that important it mounts easy in linux and I copy over what I want to save.
Syncthing is the answer
Syncthing
none
phones are treated as disposables
including all data around it
simpler that way
I use Syncthing.
I recently put my backup strategy to the test upgrading from Lineageos 20/Android 13 on a Oneplus 8pro to Lineageos 21/Android 14 on a Pixel 8pro, so can claim it works - mostly. Rooted OS in both cases.
For contacts, I use DAVx⁵ to sync with a Nextcloud install on my NAS. All my family's phones do this and it makes it super easy to add and edit contacts sitting at the desktop instead of in the phone (I hate typing on the phone and avoid it where I can).
For calendar I use Google calendars. Again, whole family uses and we share via that. If I was to shift I would probably look at DAVx⁵ and Nextcloud like contacts, but syncing when away from the home network may be more of an issue here. (Business Calendar is my preferred calendar app currently - although I believe they may have switched to a subscription model since I bought it.)
Messages and call logs are backed up by Swift Backup (more on that below).
I'm a Bitwarden user so that takes care of passwords and TOTP.
I use Foldersync to do a two-way sync of photos (the DCIM folder, and other photo folders) between my phone and the NAS via SFTP, when on the home wifi. It does a really good job of this I've found.
For actual application backups I use to use Titanium Backup which I'd previously found very good. Unfortunately it appears to no longer be maintained as the last update in the Play store was 2019 and it definitely does not work with Android 13 and later.
These days I have three different backups running. I started with Neo Backup which is okay although instability earlier in its development made me want an alternative. That's when I came across Swift Backup which has a bit more of a solid feel to it. At some point I saw a Lineageos blog post about Seedvault so turned that on too. The backup files for all three are sent to my NAS via Foldersync just like photos.
I'm going to be away from home for five weeks later this year and am pondering if I want to stress about off-phone backups for that time. I might look at using Folder Sync to some other target, or think about using Syncthing Fork. That said, a five week old backup is probably going to be 95% okay to maybe not worry too much.
--
So how was restoring? It was still painful to be honest.
The good:
Seedvault restored the data on probably half my apps. Could not really figure out the whys as to which it did and which it didn't. It was disappointing in that regard.
I can't remember if it was Seedvault or Swift Backup, but restoring messages was not a drama.
Most other apps I could restore from either Swift Backup or failing that, Neo Backup.
The Bad:
Some account details, mainly the DAVx⁵ ones, I had to re-enter again by hand. Fortunately I've documented the URLs and configuration settings this time to make it easier in the future.
I still had to go through each app and check it was working as expected and had my data. Sometimes had to completely uninstall the Seedvault version and restore from Swift Backup or Neo Backup to get the data. I think a couple of apps I had to install fresh from the Play store or F-droid before doing just a data restore, or there was no way to restore data.
All in all it was a lot of frigging about.
Lessons learned:
Redundancy is good! I would recommend Swift Backup and at least one other backup - be it Seedvault, Neo Backup, Google or another option.
Doing a comprehensive restoration is time consuming! There is no click-and-restore-the-whole-phone solution which is a pain.
Currently, root access seems to be needed for even a decently reliable backup.
And before you ask: I've used Magisk in the past, but have tried out Apatch which fills a similar role with hte new phone and feels a bit easier to deal with. That, along with chiteroman/PlayIntegrityFix gets Google Wallet and some other apps working for me, but it is an annoying arms race.
I also use Netguard as my network firewall - don't have a phone without one. Used Afwall+ on my previous phone but was flaky on the new one so went with the second choice.
By throwing it in a trash bin :)
Pretty reliable and you only need it once )
Iuse unison to sync to a private server and borg to backup most of /data to the same server via ssh, both from termux. I restore quite often, when reinstalling phones ( rDroid)