
How to Back Up Your Android Phone’s Shared Storage Without Root, Using ADB and Android Backup Extractor
Table of Contents
TL;DR
- Turn on USB debugging on your phone and plug it into a Kali Linux PC.
- Create a backup with the command adb backup -apk -shared -no-system -no-apk -f backup.ab and set a password.
- Convert the encrypted .ab file to a standard .tar archive with Android Backup Extractor.
- Extract the tar with tar -xvf backup.tar and find all your photos, videos, downloads, and DCIM folder.
- Store the extracted folder or archive in a safe place; you can restore to another device later.
Why this matters
Every Android user wants a reliable way to keep their photos, documents, and app data safe when the phone ages, crashes, or is sold.
The built-in cloud backup in Android protects only a handful of app data and never the shared storage on the SD card or internal shared folder.
Rooting the phone is a common workaround, but it breaks security, voids the warranty, and makes future updates difficult.
Using ADB you can back up only the part of the device you care about—shared storage—without ever enabling root.
The backup file is an encrypted archive that requires only a password to open, so your data stays private on the machine where you store it.
Core concepts
- ADB is a command-line tool that lets a computer talk to an Android device over USB or Wi-Fi.
- The adb backup command writes a file with the .ab extension Android Developer — ADB documentation (2023).
- Flags control what gets included:
- -shared keeps only files in the public storage areas (/sdcard, /storage/emulated/0).
- -no-system skips all system apps.
- -no-apk skips the APK files themselves, leaving only app data.
- When a password is supplied, the archive is encrypted with AES-256 Android StackExchange — Extract ab files (2023) and compressed with DEFLATE.
- The resulting .ab file is about 2 GB for a typical mid-range phone that has a lot of media and downloads StackOverflow — Backup size 2GB issue (2023).
- Android Backup Extractor (ABE) is a Java program that reads the .ab file, decrypts it if needed, and writes out a plain .tar archive GitHub — Android Backup Extractor (2024).
- The .tar archive can be opened with any archive tool, or extracted on the command line with tar -xvf.
- The directory tree inside the tar mirrors the phone’s storage layout: /Download, /DCIM/Camera, etc.
How to apply it
1. Prepare the workstation
On Kali Linux you can install the Android platform tools in one line:
sudo apt update && sudo apt install -y android-tools-adb
Check that the binary is available:
adb version
The output should look like Android Debug Bridge version 1.0.41.
Install a recent Java runtime because ABE is a Java 11+ application:
sudo apt install -y openjdk-17-jre
2. Enable USB debugging on the phone
- Open Settings → About phone and tap Build number seven times to unlock Developer options.
- In Developer options turn on USB debugging.
When you connect the phone for the first time, a dialog will ask you to authorize the computer’s RSA key. Tap Allow and keep the screen unlocked while the backup runs.
3. Verify the connection
adb devices
The command should list your device serial number followed by the word device.
If the list is empty, make sure the USB cable is connected to a data port and that the phone is not in charging only mode.
4. Create a backup directory
mkdir -p ~/android_backup && cd ~/android_backup
5. Run the backup command
adb backup -apk -shared -no-system -no-apk -f backup.ab
When the phone prompts “Backup my data”, tap Back up my data.
If you want encryption, type a strong password. The prompt will say “Password” and “Repeat password”.
The backup will take several minutes; the progress bar is shown on the phone.
6. Verify the file
ls -lh backup.ab
file backup.ab
The ls output should show roughly 2 GB (-rw-r–r– 1 user user 2.0 GiB …).
The file command should report “Android backup” and “AES-256” if encryption was chosen.
7. Download Android Backup Extractor
wget https://github.com/nelenkov/android-backup-extractor/releases/download/v1.0/abe.jar
Rename the jar for simplicity:
mv abe.jar abe
8. Convert the .ab file to a .tar archive
java -jar abe unpack backup.ab backup.tar
If the backup was encrypted, the command will ask for the password.
When finished, backup.tar will contain the directory tree that matches the phone’s shared storage.
9. Extract the tar archive
mkdir shared && tar -xvf backup.tar -C shared
Now the shared folder holds everything that was on your phone’s /sdcard area.
To view the tree quickly, run tree shared | head -20.
You can also mount the folder in your file manager and copy files to another drive or cloud service.
10. Clean up
Move the original .ab file if you no longer need it:
mv backup.ab ~/secure_storage/
If you plan to keep the backup, store it on a USB stick from Fresh Forensics Store or a solid-state drive with encryption enabled.
Pitfalls & edge cases
- RSA key prompts: The phone will ask to trust each new computer. If you skip it, the backup fails.
- Wrong password: ABE will throw a BadPaddingException. Double-check the password you entered during backup.
- Large backups: A 2 GB file needs that much free space on the host. If your laptop has less, move the .ab file to an external drive before unpacking.
- App data exclusions: Some apps set allowBackup=false in their manifest. Those apps will not appear in the backup, even if they live in shared storage.
- Android 12+ changes: The backup format can change; ABE’s latest release (v1.0) supports all current Android versions.
- Restoration: While you can restore the .ab file to the same device with adb restore backup.ab, restoring to a different device may fail if the target does not have the same apps or if the device’s backup manager expects a different format.
Quick FAQ
| Question | Answer |
|---|---|
| How can I handle a backup that exceeds the available space on my computer? | Move the .ab file to an external USB or cloud storage before running ABE. |
| Is it possible to restore the extracted backup to another Android device? | Yes, use adb restore backup.ab on the new device. It works best on the same Android version. |
| What is the difference between the -no-apk and -no-system options? | -no-apk skips the APK files themselves; -no-system skips all system apps and their data. |
| Can I back up apps or system apps using this method? | The default command skips them. Remove the flags to include them, but the backup size will grow. |
| How do I secure the extracted files after backup? | Store the .tar or the shared folder on an encrypted drive or use file-level encryption tools. |
| Can I automate this backup on a schedule? | Use a cron job that runs adb backup and ABE in a script, then cleans up old files. |
Conclusion
Back-up your Android phone’s shared storage without rooting it, and keep your photos and documents safe in a single, encrypted archive.
The ADB command is fast, the ABE tool is lightweight, and the resulting .tar file can be moved, version-controlled, or stored on a secure USB stick.
If you are an IT professional, a security researcher, or just a curious user who wants peace of mind, this workflow is the most reliable method to protect shared storage on any Android device.





