Aller au contenu


Photo

Emunand, partition caché et changement de carte micro sd


Best Answer titoftit, 08 février 2020 - 17:06

J'ai finalement réussi grâce à cet outil : https://www.rmprepus...nts/release-2-0

 

Il permet de copier une image sur un disk, en précisant P2 donc partition 2. Ca a bien marché !

 

Merci pour le coup de main ;)

Go to the full post

  • Please log in to reply
12 replies to this topic

Posté 07 février 2020 - 11:33

#1
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

Hello,

 

Je suis en train de changer de carte sd pour une plus grosse.

Je suis avec une Emunand sur partition caché.

 

Pour ce faire, j'ai utilisé Win32DiskImager qui m'a fait une image des 2 partitions, jusque là, pas de soucis.

 

Ensuite, j'ai restauré le dump sur la nouvelle carte, mais voilà, le soucis : La partition caché se trouve après la partition visible, du coup, je ne peux pas redimensionner la partition visible ...

 

Y'a t'il une solution pour placer la partition caché au début de la mémoire ?

 

Merci

 

PAVO0.jpg


Ce message a été modifié par titoftit - 07 février 2020 - 11:38.

  • Retour en haut

Posté 07 février 2020 - 14:26

#2
eliboa

eliboa

    Développeur

  • Members
  • PipPipPipPipPip
  • 2 112 Messages :
  • Sexe:Male

Salut,

 

En fait on dit "partition cachée" mais il ne s'agit pas d'une vraie partition, c'est-à-dire qu'elle n'est pas décrite dans la table des partitions (MBR pour les cartes SD). C'est simplement de la mémoire contiguë qui n'est décrite nul part sur le disque. 

Ce que tu fais ne peut fonctionner qu'avec Atmosphère (vraie partition) mais ne pourra pas fonctionner sous SX OS (fausse partition).

 

Pour créer une partition cachée sur une nouvelle SD, sans passer par SX OS ce n'est pas simple. Ça sera possible assez facilement via la future version de NxNandManager qui sortira dans les prochains jours/semaines mais en attendant voilà comment faire :

- D'abord il faut dumper le deuxième secteur (secteur 1 à l’offset 512) de ton ancienne carte SD. C'est très important car il contient une signature (TXNAND en hexadécimal) qui permettra à SX OS de détecter l’emuNAND. Sans ce secteur l’emuNAND ne fonctionnera pas. 
- Ensuite il faut avoir un dump de ton emuNAND (BOOT0 + BOOT1 + RAWNAND). Tu peux utiliser NxNandManager pour créer un dump de ton emuNAND dans un seul fichier image.
- Il faut ensuite créer une partition qui démarre au secteur X. X est égal à 2 (2 premiers secteurs) + taille de ton emuNAND en secteurs + 1. X doit être aligné sur la taille d’un cluster (32 secteurs). Par ex : si ton emuNAND fait 31 276 924 928 octets (29Gb), X vaudra 2 + (31 276 924 928 / 512) + 1 soit 61 087 747. Mais comme 61 087 747 n’est divisible par 32 (cluster), il faut faire x = (61 087 747 / 32 + 32) * 32 = 61 088 768 (attention, on travaille seulement en entiers).
Donc la première vraie partition de ta SD doit commencer au secteur n°61 088 768.
- Une fois ta première partition créée, tu devrais voir 29 Gb de mémoire non allouée en début du disque, puis la partition derrière. Maintenant il faut copier l’image de ton emuNAND à partir du secteur 2 (3ème secteur) sur ta nouvelle SD avec l’outil « dd ». Il ne faut pas oublier de recopier également le secteur TXNAND (deuxième secteur, le n°1) de l'ancienne carte vers la nouvelle.
 
Voilà, comme tu le vois ce n’est pas simple. Il serait peut-être plus rapide de recréer une nouvelle emuNAND depuis SX OS. Puis de la restaurer avec ton dump d’emuNAND via NxNandManager. Ça sera plus long mais plus simple.

Ce message a été modifié par eliboa - 07 février 2020 - 14:41.

Tuto Switch : Bloquer les maj | Supprimer les maj téléchargées | Lancer Linux | Lancer des payloads

switch-h4x0r |`FW max conseillé sur Switch => 4.1

 

  • Retour en haut

Posté 07 février 2020 - 15:24

#3
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

Salut, merci pour ta réponse bien complète !!

 

Je suis sous Atmosphère donc je ne sais pas si ça s'applique de la même façon ?


  • Retour en haut

Posté 07 février 2020 - 15:42

#4
eliboa

eliboa

    Développeur

  • Members
  • PipPipPipPipPip
  • 2 112 Messages :
  • Sexe:Male

Si tu es sous Atmosphère tu n'as pas besoin de passer par une "fausse" partition. Tu crées juste une partition de la bonne dimension, après ta partition principale (il faut bien respecter cet ordre, il faut donc bien calculer d'abord la taille de ta partition principale, soit taille totale de la SD - la taille de l'emuNAND). Tu copies ensuite ton emuNAND sur cette seconde partition et enfin tu lances Hekate puis emuMMC -> Migrate emuMMC


Ce message a été modifié par eliboa - 07 février 2020 - 15:43.

Tuto Switch : Bloquer les maj | Supprimer les maj téléchargées | Lancer Linux | Lancer des payloads

switch-h4x0r |`FW max conseillé sur Switch => 4.1

 

  • Retour en haut

Posté 07 février 2020 - 19:07

#5
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

Si tu es sous Atmosphère tu n'as pas besoin de passer par une "fausse" partition. Tu crées juste une partition de la bonne dimension, après ta partition principale (il faut bien respecter cet ordre, il faut donc bien calculer d'abord la taille de ta partition principale, soit taille totale de la SD - la taille de l'emuNAND). Tu copies ensuite ton emuNAND sur cette seconde partition et enfin tu lances Hekate puis emuMMC -> Migrate emuMMC

 

Ok, mais comment je copie l'emuNAND dessus ? Je la prend ou ?


  • Retour en haut

Posté 07 février 2020 - 19:18

#6
eliboa

eliboa

    Développeur

  • Members
  • PipPipPipPipPip
  • 2 112 Messages :
  • Sexe:Male

NxNandManager te permet de faire un dump de ton emuNAND. Tu insères ta carte SD dans ton lecteur SD sur ton PC, tu ouvres NxNM, tu fais File > Open drive et là tu devrais voir le volume de ta carte SD, tu le sélectionnes et ça ouvre ton emuNAND dans NxNM. Ensuite tu fais FULL DUMP et voilà tu as une image de ton emuNAND.

Ensuite tu la copies via le programme "dd" (il te faudra connaitre le numéro du secteur de début de la partition de destination).


Tuto Switch : Bloquer les maj | Supprimer les maj téléchargées | Lancer Linux | Lancer des payloads

switch-h4x0r |`FW max conseillé sur Switch => 4.1

 

  • Retour en haut

Posté 07 février 2020 - 19:27

#7
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

NxNandManager te permet de faire un dump de ton emuNAND. Tu insères ta carte SD dans ton lecteur SD sur ton PC, tu ouvres NxNM, tu fais File > Open drive et là tu devrais voir le volume de ta carte SD, tu le sélectionnes et ça ouvre ton emuNAND dans NxNM. Ensuite tu fais FULL DUMP et voilà tu as une image de ton emuNAND.

Ensuite tu la copies via le programme "dd" (il te faudra connaitre le numéro du secteur de début de la partition de destination).

 

Ahhh ok !!! c'est en cours !! merci beaucoup !


  • Retour en haut

Posté 07 février 2020 - 22:56

#8
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

j'ai lancé cette commande : dd if=F:\FULLNAND.bin of=\\?\Device\HarddiskVolume39 skip=34816 bs=1024 conv=notrunc

 

Ca fait bien 2 heures que ça tourne ... c'est normal ? Le dump fait 30Go.


  • Retour en haut

Posté 07 février 2020 - 23:48

#9
eliboa

eliboa

    Développeur

  • Members
  • PipPipPipPipPip
  • 2 112 Messages :
  • Sexe:Male

j'ai lancé cette commande : dd if=F:\FULLNAND.bin of=\\?\Device\HarddiskVolume39 skip=34816 bs=1024 conv=notrunc

 

Ca fait bien 2 heures que ça tourne ... c'est normal ? Le dump fait 30Go.

Le problème c'est la taille de ton bloc (bs). Le bloc size est en fait la taille du buffer de copie donc il faut l'augmenter, 1ko c'est trop peu

Ca devrait aller plus vite avec un buffer de 32 Ko :

dd if=F:\FULLNAND.bin of=\\?\Device\HarddiskVolume39 skip=1088 bs=32768 conv=notrunc

Le problème dans cette commande avec dd, c'est que ton bloc de départ (skip) est forcément exprimé en bloc size, ce qui réduit la taille de ton buffer.

J'ai pas essayé mais peut-être qu'il est possible de directement écrire sur la partition (sans l'arg skip donc) avec un truc du style of=\\?\Device\Harddisk3\Partition1 (dd --list devrait te donner le nom de partition lié à ton disque). Du coup tu pourrais utiliser un blocsize=4194304 pour utiliser un buffer de 4 Mo.

 

edit : arf j'avais pas fait gaffe, tu sembles déjà écrire sur un volume (HarddiskVolume39), donc une partition. Pourquoi du coup tu skip 34816 Ko dans ta commande ?


Ce message a été modifié par eliboa - 08 février 2020 - 00:02.

Tuto Switch : Bloquer les maj | Supprimer les maj téléchargées | Lancer Linux | Lancer des payloads

switch-h4x0r |`FW max conseillé sur Switch => 4.1

 

  • Retour en haut

Posté 08 février 2020 - 00:05

#10
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :
En fait, quand je fais --list, je vois qu'une seule ligne pour ma carte alors que j'ai bien créé 2 partitions. Donc j'en déduit que c'est la carte entière. C'est pour ça que je skip 34816 qui correspond au début de ma partition emummc. Enfin si je me trompe pas...
  • Retour en haut

Posté 08 février 2020 - 08:03

#11
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

Salut,

 

Bon, il a tourné toute la nuit, et toujours pas fini ce matin. Je l'ai stoppé.

 

Alors, voici le formatage de ma carte : 

 

naYJX.jpg

 

Et les propritétés de la partition "caché" :

 

9DnEg.jpg

GD0XK.jpg


Ce message a été modifié par titoftit - 08 février 2020 - 08:21.

  • Retour en haut

Posté 08 février 2020 - 10:44

#12
eliboa

eliboa

    Développeur

  • Members
  • PipPipPipPipPip
  • 2 112 Messages :
  • Sexe:Male

Ton emmummc commence au secteur 433723392 et non 34816 qui fait référence à un secteur à l'intérieur de ta partition (et non sur le disque entier)

Essaye  ça :

dd bs=1024k seek=211779 of=\\.\physicaldrive2 in=F:\FULLNAND.bin --progress

Ca va copier sur ton disque 2 (ta sd),  à partir de (seek) 211779 * 1024 * 1024 soit 433723392 * 512 (433723392 étant bien le secteur de départ de ta partition emummc).

Expliqué autrement, ton secteur de départ transformé en bytes c'est 433723392 * 512 soit 222066376704 (c'est l'offset de départ de ton emummc)

Si tu appliques maintenant un bloc size de 1024k (1024 * 1024 soit 1MB) ça fait 222066376704 / (1024 * 1024) soit 211 779 comme position de départ (seek).

Ne pas oublier de lancer dd en mode admin.

 

PS : Dans ma commande j'écris vers le disque 2 (physicaldrive2) mais dans ton cas c'est peut-être physicaldrive3, tout dépend le nombre de disque qui sont montés sur ton PC, il faut bien vérifier avant ("physicaldrive" c'est la même chose que "Harddisk" dans dd --list).


Ce message a été modifié par eliboa - 08 février 2020 - 11:00.

Tuto Switch : Bloquer les maj | Supprimer les maj téléchargées | Lancer Linux | Lancer des payloads

switch-h4x0r |`FW max conseillé sur Switch => 4.1

 

  • Retour en haut

Posté 08 février 2020 - 17:06   Best Answer

#13
titoftit

titoftit

    Sunriseur

  • Members
  • PipPip
  • 102 Messages :

J'ai finalement réussi grâce à cet outil : https://www.rmprepus...nts/release-2-0

 

Il permet de copier une image sur un disk, en précisant P2 donc partition 2. Ca a bien marché !

 

Merci pour le coup de main ;)


  • Retour en haut




1 utilisateur(s) en train de lire ce sujet

0 invité(s) et 1 utilisateur(s) anonyme(s)