aboutsummaryrefslogtreecommitdiff
path: root/android-backup
blob: 873a389d324e3099dc728ee1307ecceafd64e17b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
#
# Android backup
#

# Pasta de trabalho
cd ~/load

# Parâmetros
date="`date +%Y%m%d`"
base="/storage/emulated/0"
storage="/var/backups/remote/celular.`facter domain`/"
previous="`sudo ls -1 $storage | tac | head -n 1`"

# Check
if [ -d "$storage/$date" ]; then
  echo "backup for $date already exists"
  exit 1
fi

mkdir -p $date && cd $date

# Se você tiver um backup antigo e quiser aproveitá-lo com hardlinks:
sudo cp -alf $storage/$previous/files files

# Garante a existência da pasta de arquivos
mkdir -p files

# Contatos
# Exportar também para .vcf direto do aplicativo de contatos
adb-export.sh           -e    content://com.android.contacts/contacts
adb shell content query --uri content://com.android.contacts/contacts > contacts.rows

# Configurações
adb backup -all

# Arquivos: cópia completa
#adb pull $base files/

# Remover cache multimídia do backup
#rm -rf files/Music

# Arquivos: cópia completa básica
#adb shell ls -1 $base | grep -v ^Music | while read file; do
#  adb pull $base/$file files/
#done

# Arquivos: cópia incremental básica
adb shell ls -1 $base | grep -v ^Music | while read file; do
  adb-sync --delete --reverse $base/$file files/
done

# Move backup to storage
cd .. && sudo mv $date $storage/