Mastodon IzzyOnDroid

Say thanks!
Privacy Links
↓ Your product here? ↓
Das Inoffizielle Android-HandbuchAndroid kennenlernen, Tipps & TricksDas Inoffizielle Android-Handbuch
Android kennenlernen, Tipps & Tricks
Buy at Amazon for EUR 16,99
Das Inoffizielle Android SystemhandbuchTiefer ins System einsteigenDas Inoffizielle Android Systemhandbuch
Tiefer ins System einsteigen
Buy at Amazon for EUR 7,00
Die besten Android-AppsDen Androiden austattenDie besten Android-Apps
Den Androiden austatten
Buy at Amazon for EUR 5,00

Bash and ADB: Adebar helps you backup, document, and restore your device

Android green figure
Android green figure; © Dsimic (CC-BY)
Source: Wikipedia

Now it had happened: I needed to send one of my devices to the service center. Of course, this means factory-resetting it before packaging – which implies having a good backup. While I’m using different variants of backups already (e.g. a regular, automated backup with Titanium Backup), does that really cover all? And will restoring be a breeze? Maybe I could use that chance for some cleanup as well? Oh, and how do I remember which „Crap & Bloatware“ I had frozen, which „auto-starts“ disabled? How much manual work would that leave to me when the device returns?

Those were the thoughts I had when deciding to write Adebar. So let’s see what were the results.

What is Adebar?

So in a few words: What is Adebar, and what does it do? Basically, it uses Bash scripting and utilizes ADB to retrieve data from your device, and then creates multiple files:

A sample „output directory“ of generated files could look like this:

├── conf
│   ├── gps.conf
│   ├── hosts
│   └── wpa_supplicant.conf
├── docs
│   ├── build.prop
│   ├── deadreceivers
│   ├──
│   ├──
│   ├── packages.xml
│   └──
├── defaultInstallLoc
├── disable
├── sysbackup
├── sysrestore
├── userbackup
└── userrestore

As you can see, a run of Adebar produces three sets of files:

Most of the latter are, for your convenience, already made „executable“.

One thing to point out at this place: not all of the files are created in all circumstances. Retrieving some of them requires the ADB daemon to run in root-mode (which is the case on many custom ROMs, and can be achieved on others using chainfire’s adbd Insecure – but in both cases, requires a rooted device), others additionally require the PHP CLI packages to be available (parsing of the packages.xml is done that way).

What do the generated scripts achieve?

First off: you might wish to check their contents, and comment out things you dont want. This could e.g. be apps you’ve installed long ago and don’t need anymore, so no reason to back them up.

What are those files in docs/ for?

Well, some „device documentation” can be expected here. This includes some files simply pulled from your device (build.prop, packages.xml), but also some Markdown files derived from those:

Where can I get more information?

Adebar is open-source, hosted at Github – so naturally you can go there: whether you want the sources, have issues, miss a feature, or want to participate (hint: testers and feedback welcome as well as someone to write a GUI ;) ). The dev (me) is also available via IRC at Freenode in the #izzysoft channel.


While definitely not being a „one-click solution”, Adebar can give you a „better peace of mind“ about your backups and what they cover. As a side-effect, it provides you with a „minimal device documentation“. It might come in especially handy when you’ve got to factory-reset your device, or plan on „duplicating“ its configuration to another one. It’s not thoroughly tested yet, so feedback (be it problems or success notices) are highly welcome: I can’t declare it „production-ready“ without knowing it is :)