Проблемы с восстановлением резервных копий ADB

(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, и в итоге у меня был поврежденный загрузочный образ, так что это все, что я мог сделать. . Я успешно завершил тот же процесс ранее, прежде чем решил рутировать свое устройство.

Ответы (1)

Можете ли вы попробовать запустить команду следующим образом:

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 поврежден. Возможно, резервное копирование было выполнено не полностью, или диск был поврежден, или произошло что-то еще.