Ich versuche, mein Nexus 7 zu sichern, bevor ich ein neues Factory-Image installiere. (Es gibt ein Problem, das verhindert, dass das OTA-Update erfolgreich ist .) Aber wenn ich laufe
adb backup -f android-nosystem-backup.ab -apk -shared -all -nosystem
Die Sicherung bleibt nach dem Schreiben von 2147483647 Bytes hängen. Diese Zahl ist 2^31 minus 1, und ich erkenne das Problem als fehlende Unterstützung für große Dateien irgendwo. Ich verwende das adb
, das mit meiner aktuellen Debian-Linux-Distribution "Jessie" geliefert wird. Das Problem tritt auf, wenn ich versuche, in einer lokalen Datei oder auf einem entfernten, über NFS gemounteten Dateiserver zu sichern, daher vermute ich, dass etwas in der adb
Toolchain ohne Large File Support kompiliert wurde.
Das Nexus 7 meldet eine Gesamtspeichernutzung von 4,2 GB, daher erwarte ich eine Sicherungsdatei in dieser Größenordnung. Gibt es eine Problemumgehung, die ich verwenden sollte? Gibt es eine Möglichkeit, das Backup in Teile aufzuteilen?
Es stellt sich heraus, dass dies ein bekanntes Problem ist und es einen Patch gibt .
Izzy
mkfifo
Fragen zu SU ). Grundsätzlich erstellen Sie ein Fifo und geben dieses als "Datei" anadb backup
. Parallel dazu führen Sie einen zweiten Prozess aus, der aus diesem Fifo liest, z. B. Erstellen Sie ein Tar-Archiv, das in Blöcke mit maximaler Größe aufgeteilt ist . Wenn Sie dies versuchen, teilen Sie uns bitte mit, wie es geklappt hat.Norman Ramsey
Izzy
writerproc > mypipe
undreaderproc < mypipe
.Wyatt Ward
tar
Dateien über 2 GB unterstützt. Meine Website ist im Moment nicht verfügbar, aber ich habe hier eine armv7-eine statisch verknüpfte Binärdatei für 4.4 und höher (5.0, 5.1, 6.0 usw.) . Sie können dies irgendwo ablegen, wo Siechmod
, wie /data/local/tmp, verwenden können, und auf diese Weise einen Tarball erstellen und fertigadb push
.