blob: c076f642dc9bd6a55203336d798e532f9294a01b (
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
|
[[!meta title="Smartphone"]]
[[!toc levels=4]]
Objetivo
--------
* Ter um smartphone disponível e funcional sempre que preciso.
* Reduzindo ao máximo as perdas de privacidade e segurança.
* Estabilidade de longo prazo: escolhas de hardware, software e configuração duráveis.
Sistema escolhido
-----------------
Para este estudo, o sistema escolhido foi o [LineageOS](https://lineageos.org).
### Prós
* Código mais aberto.
* Risco menor de backdoors.
* Google Apps não-mandatório.
### Contras
* Menor base de aplicativos.
* Atualizações de segurança mais lentas.
* Ainda dependente de um ecossistema tecnotóxico.
* No caso de root no dispositivo, há redução de segurança.
Modelo escolhido
----------------
Para este estudo, o modelo escolhido foi o Moto E.
### Prós
* Custo relativamente baixo.
* Bom suporte ao LineageOS.
### Contras
* Sem flash.
* Bateria não-removível.
* Jack de áudio não é compatível com qualquer conector.
Checklist
---------
Iterador básico para a manutenção do smartphone:
* Destravamento do bootloader.
* Instalação ou atualização do recovery.
* Instalação do LineageOS.
* [Criptografia do armazenamento interno](https://source.android.com/security/encryption/full-disk).
* Configuração de senha e intervalo de travamento (após cifrar o armazenamento).
* Ferramentas de desenvolvimento habilitadas.
* Restaurar backups e configurações, caso existam.
* Configurações de aparência e comportamento.
* Apps:
* VPN.
* Editor.
* LibreSignal.
* Barcode Scanner.
* [Scuttloid](https://f-droid.org/packages/gr.ndre.scuttloid/).
* [MPDroid](https://f-droid.org/packages/com.namelessdev.mpdroid/).
* Teste e correções.
* Realização de backups.
* Upgrade:
* Atualizar ROM.
* Atualizar apps via F-Droid.
* Atualizar apks manualmente.
* Alguns apps podem ser auto-autualizáveis.
Detalhes a seguir sobre algumas das etapas acima elencadas.
Destravamento
-------------
Este procedimento é específico para alguns aparelhos para que o bootloader
possa ser desbloqueado, como é o caso do modelo escolhido:
# stretch onwards: sudo apt install adb fastboot
sudo apt install android-tools-adb android-tools-fastboot
1 20160410 14:55:06 user@box:~ $ adb reboot bootloader
0 20160410 14:55:22 user@box:~ $ fastboot devices
0012711246 fastboot
0 20160410 14:55:40 user@box:~ $ fastboot oem get_unlock_data
...
(bootloader) [...]
OKAY [ 0.235s]
finished. total time: 0.235s
0 20160410 14:56:01 user@box:~ $ fastboot oem unlock $code
...
(bootloader) Check 'Allow OEM Unlock' in Developer Options.
FAILED (remote failure)
finished. total time: 0.007s
1 20160410 15:30:32 user@box:~ $ fastboot devices
0012711246 fastboot
0 20160410 15:30:49 user@box:~ $
Recovery
--------
Usando o [TWRP para Moto E surnia](https://twrp.me/devices/motorolamotoelte.html):
adb reboot bootloader
fastboot flash recovery recovery.img
fastboot reboot
Instalação
----------
Detalhes de instalação já são bem cobertos pela documentação do LineageOS,
incluindo a ativação do ADB:
* [Update and build preparation](http://lineageos.org/Update-and-Build-Prep/).
* [Moto E surnia builds](https://download.lineageos.org/surnia).
* [Verifying builds](http://wiki.lineageos.org/verifying-builds.html).
* [Info about surnia | LineageOS Wiki](https://wiki.lineageos.org/devices/surnia).
* [Install LineageOS on surnia | LineageOS Wiki](https://wiki.lineageos.org/devices/surnia/install).
* [Using ADB and fastboot | LineageOS Wiki](https://wiki.lineageos.org/adb_fastboot_guide.html).
Backups
-------
Usaremos o [adb-sync](https://github.com/google/adb-sync) e o [adb-export](https://github.com/snatik/adb-export):
# Parameters
date="`date +%Y%m%d`"
base="/storage/emulated/0"
mkdir $date && cd $date && mkdir 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
Restauro
--------
A partir de um sistema recém-instalado:
# Arquivos: cópia completa
#for file in `ls $backup`; do
# adb push $backup/$file files/
#done
# Arquivos: cópia incremental
for file in `ls $backup`; do
adb-sync --delete $backup/$file files/
done
# Configurações
adb restore backup.ab
## Subir músicas
Podem ser enviadas a partir de acervos compatíveis com o [playlister](https://git.fluxo.info/playlister/about/):
playlist-copy <playlist> adb
Dicas
-----
## Escondendo arquivos do mídia player
touch /storage/emulated/0/SomeApp/Media/.nomedia
Via [Hide Certain Files in Android Music Player (or Photo Gallery)](http://www.guidingtech.com/15563/hide-certain-files-android-music-player-photo-gallery/).
## Checagem de fingerprint do ADB
awk '{print $1}' < ~/.android/adbkey.pub | openssl base64 -A -d -a | openssl md5 -c | \
awk '{print $2}' | tr '[:lower:]' '[:upper:]'
Via [Validating the Android 4.2.2 RSA fingerprint](https://shred.zone/cilla/page/374/validating-the-android-422-rsa-fingerprint.html).
## Instalação manual de apps
adb install app.apk
## Movendo arquivos do sdcard para o armazenamento interno
adb shell
cd /storage/emulated/0
mv /storage/1FAC-34C3/Music/* Music/
Referências
-----------
* Aplicativos interessantes: snoopsnitch.
* [Modificações de hardware](https://web.archive.org/web/20160402005909/https://people.torproject.org/~ioerror/skunkworks/moto_e/).
* [List of custom android firmware](https://en.wikipedia.org/wiki/List_of_custom_Android_firmware).
* [Fossdroid: Free and open source Android apps](https://fossdroid.com/).
* Backups:
* [Android: How to Backup Contacts and SMS Messages | chombium's blog](https://chombium.wordpress.com/2012/09/30/android-how-to-backup-contacts-and-sms-messages/), but requires root on recent androids.
* [Does adb backup include contacts? - Android Enthusiasts Stack Exchange](https://android.stackexchange.com/questions/85269/does-adb-backup-include-contacts).
* [GitHub - stachre/dump-contacts2db: Bash script that dumps contacts from an Android contacts2.db to stdout in vCard format. Especially helpful when the device is inop or missing, with only a contacts2.db file available (from backup, etc.) to migrate contac](https://github.com/stachre/dump-contacts2db).
* [Full Phone Backup without Unlock or … | Samsung Galaxy Nexus](https://forum.xda-developers.com/galaxy-nexus/general/guide-phone-backup-unlock-root-t1420351).
* [How to use ADB backup to back up your unrooted phone - Pocketables](http://www.pocketables.com/2012/09/how-to-use-adb-backup-to-back-up-your-unrooted-phone.html).
|