Acceder

Ver la Versión Completa : [REF] ADB BACKUP, haz y restaura backups de tus datos en ICS desde el ordenador y sin necesidad de ser root


intronauta
09/04/12, 16:59:25
Hay una característica incluida en Android ICS muy curiosa que ha pasado bastante desapercibida, y es la posibilidad de hacer y restaurar backups con adb sin necesidad de ser root.
Por aclarar antes de nada, esta función ni existe ni funciona en GingerBread

Además de lo útil que es para quien no tenga/sea root y quiera hacer un factory reset sin perder sus datos, para los que solemos tener las sdcard llenas continuamente además nos permite hacer lo mismo que hace por ejemplo titanium (copiar todas nuestras apps con sus datos) pero dejando el backup en el PC y restaurarlo desde eĺ, es decir, sin necesitar espacio en la sdcard para almacenarlo.



El comando


Esta es la sintaxis que propone adb de serie, pero parece que solo es compatible tal cual con el Galaxy Nexus o similares, ya que por la propia estructura interna del SGS2 (especialmente por la gestión de vold) hay cosas que no funcionan como se propone aquí:

adb backup [-f <file>] [-apk|-noapk] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>]
- write an archive of the device's data to <file>.
If no -f option is supplied then the data is written
to "backup.ab" in the current directory.
(-apk|-noapk enable/disable backup of the .apks themselves
in the archive; the default is noapk.)
(-shared|-noshared enable/disable backup of the device's
shared storage / SD card contents; the default is noshared.)
(-all means to back up all installed applications)
(-system|-nosystem toggles whether -all automatically includes
system applications; the default is to include system apps)
(<packages...> is the list of applications to be backed up. If
the -all or -shared flags are passed, then the package
list is optional. Applications explicitly given on the
command line will be included even if -nosystem would
ordinarily cause them to be omitted.)

adb restore <file> - restore device contents from the <file> backup archive


A pesar de todas las opciones que brinda el applet y mil pruebas después, lo único que podemos hacer en el SGS2 (al menos con stock roms, no he probado en cyanos o aosps):


Hacer un backup de los datos de nuestra apps (/data/data)
Hacer un backup de nuestras apps + sus datos (/data/app+/data/data) [esta es la opción recomendada, equivale a decirle a Titanium que haga backup de todas nuestras apps de usuario con sus datos]
Hacer un backup de nuestras apps + sus datos +sus datos volcados en la sdcard (/data/app+/data/data+/sdcard/Android+/sdcard/.android_secure)
Hacer un backup de nuestras apps y del sistema + sus datos +las sdcard completas!!(/system/app+/data/app+/data/data+/sdcard+/sdcard/external_sdcard)
Restaurar el backup :P



Estos serían los comandos para cada opción. Ten en cuenta que el tiempo de aplicación y el tamaño del backup varía en función del número de apps y los datos en la sdcard, especialmente si usas las dos últimas opciones como puedes ver a continuación:


adb backup -noapk -noshared -all -nosystem -f /RUTA/ARCHIVO
en mi caso supuso un par de minutos y 118MB de backup
adb backup -apk -noshared -all -nosystem -f /RUTA/ARCHIVO
en mi caso supuso varios minutos y 800MB aprox de backup
adb backup -apk -shared -all -nosystem -f /RUTA/ARCHIVO
en mi caso supuso casi una hora y 7,9GB aprox de backup
adb backup -apk -shared -all -system -f /RUTA/ARCHIVO
en mi caso con las dos sdcards llenas (tengo una externa de 16GB) , después de 3h y 20GB lo detuve por quedarme sin espacio XD
adb restore /RUTA/ARCHIVO
tardará lo mismo que tardó en hacer el propio backup, más o menos.


También puedes hacer backup individuales por aplicación, pero debes utilizar el nombre del proceso para ello:

adb backup -apk com.anddoes.fancywidgets -f /RUTA/fancywidgets.backup
*si pones -noapk en vez de -apk, no incluirás apk en sí y solo harás backup de sus datos

y para restaurarlo:

adb restore /RUTA/fancywidgets.backup



Requisitos


Tener el sdk de android instalado y actualizadas sus "tools", y preferiblemente tener asignado en el PATH del sistema la ruta a la carpeta platform-tools del sdk (donde se encuentra adb), para poder ejecutar el comando desde cualquier ruta.

Y en tu terminal, ajustes->opciones desarrollador y activar Depuración de Usb.



El proceso

Una vez lanzado el comando, debemos desbloquear el terminal y confirmar la solicitud de backup. A partir de ahí solo esperar a que termine.
No es un proceso muy amigable que digamos, apenas emite mensajes, solo deja el terminal tranquilo hasta que termine. Yo lo que hacía era comprobar de vez en cuando el tamaño del archivo-backup para saber si se había bloqueado o no, ya que como digo, llegado un punto y dependiendo del backup en que se queda como en pausa sin emitir ningún mensaje ni progreso. Si el backup crece, es que el proceso está activo.

También te da la oportunidad de añadir un password si quieres proteger el backup o en el caso de tener encriptado el contenido de tu terminal, meter la clave oportuna.

A la hora de restaurar es igual de "opaco" o más si cabe, solo déjale que termine.




He creado una par de scripts super básicos para hacer estas tareas de una forma un poco "más amigable" , puede ser útil para quien no quiera trastear con los comandos:

Asistente adb_backup para linux: http://db.tt/PpzojGDG
Asistente adb_backup para windows: http://db.tt/7YA4KSBd **gracias a jrsoft por los tips :ok:

*Si no tienes configurado en el PATH la ruta a platform-tools, pon el archivo en la carpeta platform-tools y ejecútalo desde ahí.

kalonso
09/04/12, 17:07:56
Vaya maquina estas hecho!!!!

Enviado desde mi iPhone

sergy330
09/04/12, 17:35:11
Cada post tuyo vale su peso en oro :aplausos:

Me gustaría saber como has dado con esta característica... enreda, que eres una enreda! :lengua:

intronauta
09/04/12, 17:43:14
Cada post tuyo vale su peso en oro :aplausos:

Me gustaría saber como has dado con esta característica... enreda, que eres una enreda! :lengua:

juas! de casualidad. Al intentar conectar con adb y escribir mal "adb shell", te saca el listado de comandos y de casualidad lo vi. me llamó la atención porque no me sonaba de verlo antes, probé con versiones antiguas de adb y vi que no salía, así que me puse a probar comandos como un loco. Busqué info pero no encontré casi nada, y menos en android.developers O_o, así que mucho ensayo y error XD

sergiofct
09/04/12, 17:49:52
Yo es que me quedo muerto con lo que Intronauta saca cada vez :oh:. Yo cuando se mayor quiero ser él. Felicidades tío, por tus post y por lo útiles que son, de verdad!!:elmejor:

hairam
09/04/12, 17:51:18
Para verlo, aunque sea de casualidad, HAY QUE ESTAR AHI!!!!!!
Gracias x tu trabajo

satyr
09/04/12, 18:01:28
A sus pies :dios:

intronauta
09/04/12, 18:13:12
Si algún alma caritativa prueba el "asistente" de windows me haría un favor, porque no controlo mucho batch y no he podido probarlo "intensivamente", solo he tenido acceso a windows 7 durante un rato para hacerlo y de primeras no he visto nada raro. La versión de linux es la que más he probado y parece que funciona sin fallos.

La versión de windows funcionar funciona, porque he hecho un par de backups y los he restaurado, pero en cuanto a los menús y eso no se si irán del todo bien, y mira que es simple XD

Hay algunas comprobaciones para evitar errores como checkear que las rutas existen cuando nos pide introducirlas que no están implementadas en la versión de windows y si en la de linux, pero es que no se como hacerlo. Así que como no las pongas bien, dará error y saldrá, teniendo que volver a repetir los pasos. Tampoco es un drama, pero en la versión de linux al menos te deja reintentar hasta que lo escribas bien y compruebe que la ruta es válida, que es lo suyo :P

Si alguien controla de batch, sabe como hacerlo y se anima bienvenido sea ;)

SuperCocoV6.5
09/04/12, 18:24:05
Me encanta, no me gusta nada tener la sd ocupada de lo que para mi es basura.

Millones de zankius

Enviado desde mi GT-I9100 usando Tapatalk

jrsoft
09/04/12, 20:06:30
Si algún alma caritativa prueba el "asistente" de windows me haría un favor, porque no controlo mucho batch y no he podido probarlo "intensivamente", solo he tenido acceso a windows 7 durante un rato para hacerlo y de primeras no he visto nada raro. La versión de linux es la que más he probado y parece que funciona sin fallos.

La versión de windows funcionar funciona, porque he hecho un par de backups y los he restaurado, pero en cuanto a los menús y eso no se si irán del todo bien, y mira que es simple XD

Hay algunas comprobaciones para evitar errores como checkear que las rutas existen cuando nos pide introducirlas que no están implementadas en la versión de windows y si en la de linux, pero es que no se como hacerlo. Así que como no las pongas bien, dará error y saldrá, teniendo que volver a repetir los pasos. Tampoco es un drama, pero en la versión de linux al menos te deja reintentar hasta que lo escribas bien y compruebe que la ruta es válida, que es lo suyo :P

Si alguien controla de batch, sabe como hacerlo y se anima bienvenido sea ;)


Lo de implementar la comprobación de ruta para que la compruebe y la cree en caso necesario es sencillo, puede ser una cosa tal que así:

:COMPROBACION DE RUTA
if exist %WW% goto AVISO
goto seguir

:AVISO
echo.
echo ================================================== ==
echo [!] AVISO. La ruta ya existe, así que se va a utilizar
echo ================================================== ==
echo.
pause
goto backup

:seguir
echo Creando la ruta %ww%
md %ww%
goto backup

:backup

jrsoft
09/04/12, 20:14:33
Otra cosa, la linea 90 para establecer el nombre del archivo de backup.... casi que queda más curiosa si cambias esto:

SET FILE=-f %WW%\Back_up.back

Por esto otro:

:: variables al iniciar el script
set Any=%Date:~8%
set Mes=%Date:~3,2%
set Dia=%Date:~0,2%
set Dig=%Time:~0,1%
IF "%Dig%"==" " (
set Hor=0%Time:~1,1%
set Min=%Time:~3,2%
) ELSE (
set Hor=%Time:~0,2%
set Min=%Time:~3,2%
)

::nombre del archivo con fecha y hora
SET FILE=-f %WW%\Backup_%Dia%%Mes%%Any%_%Hor%%Min%.back

(sacado de mi programilla de cocina de uso propio para Windows) :-)

jrsoft
09/04/12, 21:02:11
Ya por ultimo, el bloque final lo dejaría así de momento:

:EXE
CLS
title [!] Reiniciando adb server...
adb kill-server
adb start-server
echo %HEADER%
echo .
title [!] Acepta la solicitud en tu terminal para iniciar el proceso.
IF '%V1%' == 'backup' (echo [!] Puedes introducir un password si quieres encriptar los datos)
echo [!] Depende de la opcion y la cantidad de datos puede durar desde unos
echo minutos hasta una o varias hora. Se paciente...
echo .
title [!] Realizando backup, espera por favor...
echo adb %V1% %V2% %FILE%
adb %V1% %V2% %FILE%
echo Finalizado

:FIN
adb kill-server
EXIT /b 0

Se colocan un par de avisos en la barra de titulo para asegurarse de que todo el mundo los puede ver siempre. Con el comando exit del final, cuando se crea el archivo directamente se cierra la pantalla y a otra cosa, así no es necesario ir tanteando para saber cuando se termina (cerrando la sesión de adb, que si no luego da error al cabo del rato).

raziel-77
09/04/12, 21:17:20
Tremendo aporte, como todos los de intronauta (que suerte tener el mismo termial que el)

Esto creo que deberia de estar entre las chinchetas al igual que otros hilos de intronauta como el CMWodin para transformar una instalacion por Odin en recovery.

Por cierto jrsoft ¿no te animas con la cocina en SGS2 con una de tus maravillosas ROMS? de intronauta llegue muy tarde a este terminal y no probe ninguna pero tambien deben ser la bomba.(lo dejo caer por si cuela por parte de alguno de los dos :ok:)

PD: Yo tambien estoy algo perrete con las ROMs desde hace muuuuchoooo tiempo.

Lorse
09/04/12, 21:52:11
:oh:

:aplausos: Masquina, eres un masquina :aplausos:

X-D

intronauta
09/04/12, 22:00:12
Otra cosa, la linea 90 para establecer el nombre del archivo de backup.... casi que queda más curiosa si cambias esto:

SET FILE=-f %WW%\Back_up.back

Por esto otro:

:: variables al iniciar el script
set Any=%Date:~8%
set Mes=%Date:~3,2%
set Dia=%Date:~0,2%
set Dig=%Time:~0,1%
IF "%Dig%"==" " (
set Hor=0%Time:~1,1%
set Min=%Time:~3,2%
) ELSE (
set Hor=%Time:~0,2%
set Min=%Time:~3,2%
)

::nombre del archivo con fecha y hora
SET FILE=-f %WW%\Backup_%Dia%%Mes%%Any%_%Hor%%Min%.back

(sacado de mi programilla de cocina de uso propio para Windows) :-)

Ya por ultimo, el bloque final lo dejaría así de momento:

:EXE
CLS
title [!] Reiniciando adb server...
adb kill-server
adb start-server
echo %HEADER%
echo .
title [!] Acepta la solicitud en tu terminal para iniciar el proceso.
IF '%V1%' == 'backup' (echo [!] Puedes introducir un password si quieres encriptar los datos)
echo [!] Depende de la opcion y la cantidad de datos puede durar desde unos
echo minutos hasta una o varias hora. Se paciente...
echo .
title [!] Realizando backup, espera por favor...
echo adb %V1% %V2% %FILE%
adb %V1% %V2% %FILE%
echo Finalizado

:FIN
adb kill-server
EXIT /b 0

Se colocan un par de avisos en la barra de titulo para asegurarse de que todo el mundo los puede ver siempre. Con el comando exit del final, cuando se crea el archivo directamente se cierra la pantalla y a otra cosa, así no es necesario ir tanteando para saber cuando se termina (cerrando la sesión de adb, que si no luego da error al cabo del rato).

Lo de "exist" ya lo tenía solucionado pero lo de poner fecha y hora en el nombre de archivo lo dejé por imposible, muchas gracias tío! . por cierto, la sintaxis de ese tip es diabólica! XD

Ya está resubido.

Ahora al menos ya son prácticamente iguales ambos scripts :-)

Hacía milenios que no hacía nada en DOS batch, la verdad es que es bastante sencillo si recuerdas los comandos, y para cosas sencillas como esta es más fácil que bourne-bash shell, aunque menos flexible.

Una cosa que prefiero no incluir en tu propuesta de "exist" es que cree la ruta si no existe. De hecho, el comando de adb backup ya crea las rutas si no existen. Cuando empecé a probar en windows, como las rutas en consola, "las reales". son en inglés me volví loco porque me creaba la ruta c:\usuarios\intronauta\escritorio y claro, no veía el backup por ningún lado ya que debía ser c:\Users\intronauta\Desktop (o todo en minúsculas) , así que prefiero que la ruta final ya exista, así el usuario tiene el control de la ruta final y no perderá de vista la localización del backup por fallar en la sintaxis.

El único problema que me queda por resolver en el batch es que en linux es muy sencillo diferenciar entre que detecte si existe una carpeta o un archivo. Cuando hacemos un backup, exist cumple perfectamente porque el proceso nos pide una ruta a una carpeta y comprueba que existe esa ruta. Pero en el restore, cuando nos pide la ruta completa incluyendo el nombre del archivo del backup, si pones c: te lo acepta porque la ruta existe, que es lo único que hace exist, comprobar que una ruta es válida.
¿hay algúna variante de exist que diferencie entre comprobar que existe una carpeta y un archivo? una opción sería hacerlo en dos preguntas, una a la ruta y otra del nombre del archivo backup y luego comprobar, pero me gustaría hacerlo todo del tirón ¿es posible?

Por eso el comando de salida EXIT o la autosalida no me gusta mucho, porque cuando da error no te da tiempo a ver qué pasó (como lo de poner en el restore la ruta c: , tarda un segundo en cerrarse, o que no se encuentra adb, adb out of date, etc,...). Así que prefiero un pause y luego matar el adb, que no sabía que daba errores si se mantiene abierto en windows. En el proceso incluí lo de reiniciar el server solo porque cuando hacía pruebas y a base de interrumpir el proceso terminaba quedándose tonto, así que me hacía la vida más fácil reiniciarlo por defecto. Al final lo dejé por garantizar el proceso, ya que cuando se quedaba "tonto", como el proceso no lanza mensajes de progreso (por ejemplo al hacer un restore), te puedes tirar horas hasta darte cuenta de que ni había empezado.

jrsoft
09/04/12, 22:38:43
En Windows si no se cierra el proceso adb se van creando múltiples en memoria hasta que se satura, y al cabo de un rato al relanzarlo saldría un mensaje fugaz en la consola de session expired y se cierra. Si uno no está atento no lo ve y ya piensa en fallos de sintaxis.
Para diferenciar entre archivo o carpeta creo que con una simple barra inclinada al final de la ruta serviría, pero no me acuerdo y habría que comprobarlo bien:

c:\backup\backup ---> archivo
c:\backup\backup\ ---> carpeta

intronauta
09/04/12, 23:00:03
En Windows si no se cierra el proceso adb se van creando múltiples en memoria hasta que se satura, y al cabo de un rato al relanzarlo saldría un mensaje fugaz en la consola de session expired y se cierra. Si uno no está atento no lo ve y ya piensa en fallos de sintaxis.
Para diferenciar entre archivo o carpeta creo que con una simple barra inclinada al final de la ruta serviría, pero no me acuerdo y habría que comprobarlo bien:

c:\backup\backup ---> archivo
c:\backup\backup\ ---> carpeta

Vaya faena entonces lo de adb O_o , en linux solo puede haber uno a la vez, al menos nunca he visto dos conviviendo a la vez :pensando: . genial entonces lo de matar el server al final.

Sobre lo de diferenciar archivo-carpeta es que no soluciona el problema cuando el proceso pide una ruta completa incluyendo el nombre archivo y le ponemos cualquier ruta válida, dándola por buena aunque sea una ruta a una carpeta. :/

Creo que voy a poner dos preguntas en esa parte del proceso, una para pedir la ruta a la carpeta y otra del nombre del archivo backup, luego crear una cadena con ambas y comprobar con exist si existe. Al menos hasta que aparezca otra solución más "limpia".

helio_150
09/04/12, 23:06:34
Intronauta y jrsoft valla dos fenómenos. Como echo de menos vuestras rom aunque con el one de la seño sigo con la jrsoft.
Gracias y un saludo

intronauta
09/04/12, 23:42:15
:MENU4
SET V1=restore
SET V2=
SET x=0
SET FILE=
SET AA=
SET RR=
CLS
echo %HEADER%
echo .
echo [!] Introduce la ruta completa a la carpeta donde se encuentra el backup:
echo (p.ej: c:\Users\pepito\backups\) ("menu" para volver)
echo .
SET /p RR=Ruta=
IF '%RR%' == 'menu' (GOTO MENU1)
echo .
echo [!] Introduce el nombre del backup:
echo (p.ej: Backup_XXXX_XXXX.back) ("menu" para volver)
echo .
SET /p AA=Archivo=
IF '%AA%' == 'menu' (GOTO MENU1)
SET FILE=%RR%%AA%
echo .
IF exist '%FILE%' (GOTO EXE)
CLS
echo [ERROR] No se encuentra el archivo, revisa la sintaxis
echo.
echo %FILE%
echo.
pause
GOTO MENU4

Nada, no doy con ello, genera bien las cadenas pero falla para comprobar si existe el archivo ¿ideas?

jrsoft
10/04/12, 09:32:20
Nada, no doy con ello, genera bien las cadenas pero falla para comprobar si existe el archivo ¿ideas?

Acabo de descargarme la ultima versión del sdk para tener el adb actualizado y estoy probando en la oficina con XP.
La copia de seguridad se crea sin problemas en una ruta sencilla (c:\backup) y también detecta bien el archivo cuando le das a restaurar, he probado introduciendo el nombre mal para que mostrara el error, y también introduciendo el nombre bien para que me lo detecte, y así lo hace.
No se de donde te puede venir el problema.

Eso si, cuando introduces la ruta de la carpeta hay que hacerlo siempre sin poner una barra inclinada al final (p.e: c:\Backup\) porque da error. La forma correcta sería c:\Backup)

Para facilitar el proceso creo que lo mas sencillo sería establecer siempre por defecto una carpeta única para las copias de seguridad, ya que los backups se generan solos con la referencia de la fecha y la hora y no se sobreescribirían nunca.

intronauta
10/04/12, 10:15:53
Acabo de descargarme la ultima versión del sdk para tener el adb actualizado y estoy probando en la oficina con XP.
La copia de seguridad se crea sin problemas en una ruta sencilla (c:\backup) y también detecta bien el archivo cuando le das a restaurar, he probado introduciendo el nombre mal para que mostrara el error, y también introduciendo el nombre bien para que me lo detecte, y así lo hace.
No se de donde te puede venir el problema.

Eso si, cuando introduces la ruta de la carpeta hay que hacerlo siempre sin poner una barra inclinada al final (p.e: c:\Backup\) porque da error. La forma correcta sería c:\Backup)

Para facilitar el proceso creo que lo mas sencillo sería establecer siempre por defecto una carpeta única para las copias de seguridad, ya que los backups se generan solos con la referencia de la fecha y la hora y no se sobreescribirían nunca.

¿Te detecta bien bien los archivos con los cambios del post anterior o tal cual descargado del primer hilo?

A lo que me refiero, es que si das a restaurar y pones de ruta c: te lo acepta simplemente por ser una ruta válida y quiero que solo lo acepte si es válida y apunta a una archivo, no a una carpeta. En el post anterior lo hago en dos preguntas, creo una solo cadena unificando ambas respuestas y le hago un "exist" pero el mamón no me lo detecta y da error de sintaxis, y eso que en el error se muestra la cadena final unificando ambas respuestas (para ver si hay fallos como lo de la barra que comentas) y está perfecta :pensando:

Lo de la barra final intenté que no pasara proponiendo un ejemplo donde se ve si debe ser incluida o no cuando nos toca introducirlo ;) y con los cambios propuestos se mostraría en el mensaje de error dicha cadena donde se vería si hemos metido una barra "de más".

El problema de una ruta preconfigurada es que depende del tipo de backup estamos hablando de muchos gigas (no te digo ya como la sdcard externa sea de 32GB y alguien elija hacer una backup completo), por eso prefiero dejar al usuario que decida la ruta, por si prefiere una partición o disco específico.

jrsoft
10/04/12, 10:31:02
Yo he descargado el archivo adjunto del primer post, que es el que he probado.
Introduciendo en la pregunta la ruta directa con el nombre del archivo lo detecta bien en el caso de que exista (y genera bien el error en caso de que no exista el archivo).
En dos partes no lo he probado :pensando:

frodo
10/04/12, 10:33:43
Impresionante la trayectoria de este hombre, el mas grande.
Tengo que decir que para mi se me hace mucho, pero no deja de sorprenderme lo que hace intonauta.
Sus hilos son dignos de todo tipo de halagos, yo los leo todos.
GRANDE MAESTRO GRANDE

intronauta
10/04/12, 10:39:16
Yo he descargado el archivo adjunto del primer post, que es el que he probado.
Introduciendo en la pregunta la ruta directa con el nombre del archivo lo detecta bien en el caso de que exista (y genera bien el error en caso de que no exista el archivo).
En dos partes no lo he probado :pensando:

Sería sustituir el MENU4 por este http://www.htcmania.com/showpost.php?p=4282389&postcount=19 X-D

Es que no entiendo porqué "exist" no detecta la cadena final, exista la ruta o no :pensando:

jrsoft
10/04/12, 11:09:17
Sería sustituir el MENU4 por este http://www.htcmania.com/showpost.php?p=4282389&postcount=19 X-D

Es que no entiendo porqué "exist" no detecta la cadena final, exista la ruta o no :pensando:

En una ruta simple, sin espacios en blanco en el nombre, me ha funcionado simplemente editando esta linea (128 en mi caso) para dejarla así:

IF exist "%FILE%" (GOTO EXE)

(quitando la comilla simple que definía la variable %FILE% y poniéndola doble)

Para rutas con espacio en blanco, este sistema directamente no funciona porque se cierra el script X-D

intronauta
10/04/12, 12:45:25
En una ruta simple, sin espacios en blanco en el nombre, me ha funcionado simplemente editando esta linea (128 en mi caso) para dejarla así:

IF exist "%FILE%" (GOTO EXE)

(quitando la comilla simple que definía la variable %FILE% y poniéndola doble)

Para rutas con espacio en blanco, este sistema directamente no funciona porque se cierra el script X-D



De locos. He instalado un windows7 por virtualbox y falla siempre al localizar una archivo tanto al hacer el backup como al restaurarlo, ni idea de porqué. tanto con el archivo del primer post como con culquier modificación. exist falla siempre. Pero los mismo archivos en un windows instalado en partición funciona perfecto :pensando:

He añadido lo de la doble pregunta para hacer el restore y he cambiado la comilla simple a doble ya por evitar problemas, aunque lo que he probado funciona bien con la simple (deberían ser equivalentes, pero por seguridad).

En fin, resubido y si podéis probarlo para ver que funciona, mejor.


Lo de los espacios en las carpetas ya es otro tema, creo que windows (como linux) acepta rutas entrecomilladas tipo c:\Users\pepito\"Mis documentos", cd "Mis Documentos", md "Mis Documentos", etc...

jrsoft
10/04/12, 15:51:19
Lo de los nombres con espacios es un rollo, de todas formas, si quieres simplificar un poco y forzar los backups en la carpeta de documentos de usuario siempre puedes usar esto:

%HOMEPATH%\AndroidBackup ---> para crear:

C:\Documents and Settings\{pepito}\AndroidBackup (en XP)
\Usuarios\{pepito}\AndroidBackup (en W7)

ayasystems
10/04/12, 16:24:34
Enhorabuena tio!! GRACIAS por el aporte ;)

JJ_07
01/07/12, 00:36:02
Intentado esto en un Xperia S al hacer el backup me salta este mensaje

Now unlock your device and confirm the backup operation.

y me reconoce el teléfono y todo....Si alguien conoce alguna solución estaremos agradecidos :)

intronauta
01/07/12, 02:13:30
Intentado esto en un Xperia S al hacer el backup me salta este mensaje



y me reconoce el teléfono y todo....Si alguien conoce alguna solución estaremos agradecidos :)


Pues deberías hacer lo que te dice, desbloquear el teléfono y verás una ventana negra relativa al proceso de backup donde deberás aceptar la realización del backup ¿no te sale? ¿qué opción o comando estás usando?

131060

JJ_07
02/07/12, 10:05:34
Que va, no me salía eso. Voy a hacer otra prueba de todos modos

Entonces esa parte es normal, os ocurre a todos lo que dice de desbloquear el teléfono? pensaba que era algo relacionado con desbloquear el bootloader ..

gracias

PD_Nada, sigue igual, me reconoce todo bien pero no me llega la confirmación al teléfono

por favor alguna idea? Muchas gracias

intronauta
02/07/12, 15:06:20
Que va, no me salía eso. Voy a hacer otra prueba de todos modos

Entonces esa parte es normal, os ocurre a todos lo que dice de desbloquear el teléfono? pensaba que era algo relacionado con desbloquear el bootloader ..

gracias

PD_Nada, sigue igual, me reconoce todo bien pero no me llega la confirmación al teléfono

por favor alguna idea? Muchas gracias


No sabría que decirte. Esta función es nativa en Ice Cream Sandwich.

Asumo que no estás en gingerbread, así que lo más probable es que sea algo que sony ha tocado o capado. :/

¿estás utilizando el script del primer post o lanzas el comando a mano?

JJ_07
02/07/12, 21:53:46
He probado de ambas formas, y nada compi. Al final me he tenido que aguantar, he hecho wipe sin backup...

muchas gracias por la ayuda de todas formas, un saludo ! :)

basilisk
07/09/12, 06:42:52
El aporte esta muy bueno, te felicito intronauta y a jrsoft que tambien aporta mucho, pero tengo un inconveniente, les explico:

Tengo un Galaxy Nexus con la rom yakjuxw y quiero tener el jakju o en tal caso el Jelly Bean (depende si el respaldo es compatible con este), pero quiero respaldar todo lo que tengo. En ese caso usaría la opción de respaldo que no incluye el sistema (corrijanme si me equivoco).

El caso es que intentando hacer el respaldo veo que no queda ningún archivo en la carpeta que le indico

Yo escribí el siguiente comando (estoy usando Windows 7):

C:\user\mi nombre\downloads\android\platform-tools adb backup -apk -shared -all -f C:\user\mi nombre\downloads\android\platform-tools\nueva carpeta
NOTA: este comando lo escribí así porque lo leí en otro lado, cuando vi el tema en el foro me di cuenta que hay varias opciones de respaldo entre ellas la que no tiene el sistema.


me aparece el mensaje en mi galaxy le digo que haga la copia de seguridad de datos, empieza parece que esta escribiendo pero realmente no me crea ningún archivo ni nada y allí me quede, no se si me falta hacer algo