Manual para usuarios de Windows
Descargamos dd desde
http://www.chrysocome.net/downloadNOTA: Yo tengo sistema operativo de 32 bit así que he tenido que recurrir a la versión dd-0.6beta3.zip de 2010
Una vez descomprimido abrimos CMD, nos vamos a la ubicación donde hayáis descomprimido (OJO, mi ruta va a ser "Z:\Nswitch\dd\")
Ejecutamos:
dd --list
Y nos saldrá algo así:
rawwrite dd for windows version 0.6beta3.
Written by John Newbigin <jn@it.swin.edu.au>
This program is covered by terms of the GPL Version 2.
Win32 Available Volume Information
\\.\Volume{64c5ec20-aa42-11e5-8c46-806e6f6e6963}\
link to \\?\Device\HarddiskVolume1
fixed media
Mounted on \\.\c:
\\.\Volume{dad8e188-6f3b-4dc1-b932-36df88919e46}\
link to \\?\Device\HarddiskVolume6
fixed media
Mounted on \\.\z:
\\.\Volume{834f274b-aa45-11e5-a9aa-001a80f440d8}\
link to \\?\Device\HarddiskVolume2
fixed media
Mounted on \\.\h:
\\.\Volume{834f26f5-aa45-11e5-a9aa-001a80f440d8}\
link to \\?\Device\HarddiskVolume3
removeable media
Mounted on \\.\f:
\\.\Volume{834f26f9-aa45-11e5-a9aa-001a80f440d8}\
link to \\?\Device\HarddiskVolume4
removeable media
Mounted on \\.\g:
\\.\Volume{64c5ec23-aa42-11e5-8c46-806e6f6e6963}\
link to \\?\Device\CdRom0
CD-ROM
Mounted on \\.\d:
\\.\Volume{885ee808-8685-11e6-b77f-001a80f440d8}\
link to \\?\Device\CdRom1
CD-ROM
Mounted on \\.\e:
NT Block Device Objects
\\?\Device\CdRom0
size is 2147483647 bytes
\\?\Device\CdRom1
size is 2147483647 bytes
\\?\Device\Harddisk0\Partition0
link to \\?\Device\Harddisk0\DR0
Fixed hard disk media. Block size = 512
size is 200049647616 bytes
\\?\Device\Harddisk0\Partition1
link to \\?\Device\HarddiskVolume1
\\?\Device\Harddisk0\Partition2
link to \\?\Device\HarddiskVolume2
\\?\Device\Harddisk1\Partition0
link to \\?\Device\Harddisk1\DR1
\\?\Device\Harddisk1\Partition1
link to \\?\Device\HarddiskVolume3
\\?\Device\Harddisk2\Partition0
link to \\?\Device\Harddisk2\DR2
Removable media other than floppy. Block size = 512
size is 256087425024 bytes
\\?\Device\Harddisk2\Partition1
link to \\?\Device\HarddiskVolume4
\\?\Device\Harddisk3\Partition0
link to \\?\Device\Harddisk3\DR3
Fixed hard disk media. Block size = 512
size is 5000981077504 bytes
\\?\Device\Harddisk3\Partition1
link to \\?\Device\HarddiskVolume5
Fixed hard disk media. Block size = 512
size is 134217728 bytes
\\?\Device\Harddisk3\Partition2
link to \\?\Device\HarddiskVolume6
Virtual input devices
/dev/zero (null data)
/dev/random (pseudo-random data)
- (standard input)
Virtual output devices
- (standard output)
/dev/null (discard the data)
Con esto vemos las unidades que hay conectadas a nuestro dispositivo.
En mi ejemplo he buscado la letra donde tengo ubicada mi SD que es G: y veo que corresponde con
HarddiskVolume4, recordadlo.
\\.\Volume{834f26f9-aa45-11e5-a9aa-001a80f440d8}\
link to \\?\Device\HarddiskVolume4
removeable media
Mounted on \\.\g:
Bajamos un poquito más hasta
NT Block Device Objects y buscamos
HarddiskVolume4 (en mi caso)
Vemos que corresponde con
\\?\Device\Harddisk2\Partition1\\?\Device\Harddisk2\Partition0
link to \\?\Device\Harddisk2\DR2
Removable media other than floppy. Block size = 512
size is 256087425024 bytes
\\?\Device\Harddisk2\Partition1
link to \\?\Device\HarddiskVolume4
Bien, nosotros necesitamos la partición
CERO así que nuestro objetivo será
\\?\Device\Harddisk2\Partition0
Para leer la emunand necesitamos leer todos los bloques de la partición oculta.
El formato es
dd if=ORIGEN of=DESTINO bs=TAMAÑO DEL BLOQUE skip=BLOQUES A SALTAR count=BLOQUES A LEER
Primero leemos nuestra cabecera:
dd if=\\?\Device\Harddisk2\Partition0 of=Z:\Nswitch\dd\3FF.bin bs=1024 count=1
Esto nos creará un archivo llamado 3FF.bin con 1kb
Luego leemos nuestra emunand:
dd bs=1024 if=\\?\Device\Harddisk2\Partition0 of=Z:\Nswitch\dd\boot0.bin skip=1 count=4096
dd bs=1024 if=\\?\Device\Harddisk2\Partition0 of=Z:\Nswitch\dd\boot1.bin skip=4097 count=4096
dd bs=1024 if=\\?\Device\Harddisk2\Partition0 of=Z:\Nswitch\dd\rawnand.bin skip=8193 count=30535680
Peeerfecto, ya tenemos nuestros boots y rawnand en el pc y los podríamos usar como SD files si quisiéramos.
Restaurar nand en parte oculta:
Creamos un archivo completo con el comando COPY:
Si has extraído la nand de una partición oculta:
copy /b 3FF.bin+boot0.bin+boot1.bin+rawnand.bin sxos.bin
Si has obtenido los ficheros desde una nand en SD files:
copy /b 3FF.bin+boot0.bin+boot1.bin+full.00.bin+full.01.bin+full.02.bin+full.03.bin+full.04.bin+full.05.bin+full.06.bin+full.07.bin sxos.bin
OJO, fijáos que la parte 3FF.bin es necesaria y la debéis extraer de vuestra propia SD en la que vayáis a escribir.
Y lo copiamos a nuestra SD
dd bs=1024 if=Z:\Nswitch\dd\sxos.bin of=\\?\Device\Harddisk2\Partition0 --progress