(Android 7.0, планшет Shield)
Я оказался в ситуации, когда мне приходилось несколько раз создавать резервные копии моих данных без рута, и до сих пор все шло довольно хорошо.
Что касается приложений и относительных данных (на data/data
), я использую Helium , который выполняет резервное копирование adb для каждого приложения с помощью apk, аналогично тому, что делает Adebar , затем я восстанавливаю их по отдельности с помощью adb restore
команды (восстановление через Helium никогда не работало для меня).
Это работало безупречно до сих пор.
Я регулярно делал резервные копии своих приложений, и .adb
были созданы соответствующие файлы правдоподобного размера, затем, после очистки данных, я приступил к восстановлению своих резервных копий, но обнаружил, что они восстанавливаются неправильно. Вот adb restore
лог, полученный через adb logcat -s BackupManagerService
:
07-17 19:14:39.562 759 2184 I BackupManagerService: Beginning full restore...
07-17 19:14:39.604 759 2184 D BackupManagerService: Starting restore confirmation UI, token=761002928
07-17 19:14:39.620 759 2184 D BackupManagerService: Waiting for full restore completion...
07-17 19:14:41.125 759 3508 D BackupManagerService: acknowledgeFullBackupOrRestore : token=761002928 allow=true
07-17 19:14:41.127 759 16894 I BackupManagerService: --- Performing full-dataset restore ---
07-17 19:14:41.142 759 16894 I BackupManagerService: Package org.fdroid.fdroid not installed; requiring apk in dataset
07-17 19:14:41.144 759 16894 D BackupManagerService: APK file; installing
07-17 19:14:41.144 759 16894 D BackupManagerService: Installing from backup: org.fdroid.fdroid
07-17 19:14:41.968 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.968 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.969 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.970 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.970 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.971 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.971 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.971 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.972 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.972 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.973 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:41.976 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:42.548 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:42.548 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:42.548 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:42.549 759 16894 D BackupManagerService: [discarding file content]
07-17 19:14:42.549 759 16894 W BackupManagerService: Saw type=0 in tar header block, info=FileMetadata{null,0,null:,0}
07-17 19:14:42.550 759 2184 I BackupManagerService: Full restore processing complete.
07-17 19:14:42.551 759 16894 D BackupManagerService: Full restore pass complete.
Вот, например, я пытался восстановить приложение FDroid и вижу много странных [discarding file content]
сообщений. Итак, я попытался восстановить их с помощью Titanium Backup , но он показал мне этот пустой экран: [![Экран восстановления adb резервной копии Titanium][1]][1]
Я тоже пытался экспортировать .adb
файл в tar-файл с помощью этого инструмента , но все, что у меня получилось, это META-INF
папка с MANIFEST.MF
файлом.
Мои резервные копии adb необратимо повреждены?
Редактировать: я прекрасно знаю, что не должен полагаться на системы резервного копирования без полномочий root, но я неожиданно потерял привилегии root после печально известного обновления SuperSu v2.80, и в итоге у меня был поврежденный загрузочный образ, так что это все, что я мог сделать. . Я успешно завершил тот же процесс ранее, прежде чем решил рутировать свое устройство.
Можете ли вы попробовать запустить команду следующим образом:
dd if=<your-file>.ab bs=24 skip=1 | pigz -d | tar -tvf - > file-list.txt
Например, это вывод:
dd if=backup-2018-10-19-2.ab bs=24 skip=1 | pigz -d | tar -tvf - > backup-file.ab.list
Вывод может выглядеть так:
56606374+1 records in
56606374+1 records out
1358552980 bytes (1.4 GB, 1.3 GiB) copied, 74.4385 s, 18.3 MB/s
Но если вы также видите:
pigz: skipping: <stdin>: corrupted -- incomplete deflate data
pigz: abort: internal threads error
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
... тогда есть большая вероятность, что ваш файл ab поврежден. Возможно, резервное копирование было выполнено не полностью, или диск был поврежден, или произошло что-то еще.