Qu’un pourrait poster un lien ? L’inscription à leur site ne fonctionne pas pour moi.
Voici l'ami SX Autoloader v 1.20
ou ici au cas ou ca ne fonctionne pas pour toi avec le lien original
- shadow_shd et mikimike aiment ceci
Posté par artaifix - 07 novembre 2019 - 16:19
Qu’un pourrait poster un lien ? L’inscription à leur site ne fonctionne pas pour moi.
Voici l'ami SX Autoloader v 1.20
ou ici au cas ou ca ne fonctionne pas pour toi avec le lien original
Posté par tralala - 03 août 2019 - 06:56
Posté par giga300 - 19 juin 2019 - 16:00
Tutoriel - Redimensionner la partition USER d'un dump de NAND (pour emuMMC Atmosphère) - OBSELETE
Utiliser NXNANDMANAGER A PLACE (https://github.com/e.../NxNandManager)
Attention: Les manipulations décrites sont parfois assez complexes mais tout le monde peut y arriver en suivant bien les explications, si vous avez une question n’hésitez pas à la poser
Attention: Même si les manipulations décrites ne vont pas affecter directement votre Nintendo Switch, elles vont affecter votre dump de NAND donc veillez à bien à en avoir une copie de côté
Introduction:
Ce tutoriel va intéresser les amateurs de l'emuMMC intégré dernièrement au CFW Atmosphère. En effet, vous avez maintenant la possibilité sur AMS de lancer une NAND "alternatif" stockée sur votre carte SD (au lieu d'utiliser celle sur la puce mémoire de votre switch appellé sysNAND). Le redimensionnement de la partition USER (qui contient vos données utilisateur) est utile dans le cas d'un emuMMC/emuNAND pour récupérer une partie du stockage perdu (en moyenne 20Go), en effet il est inutile d'avoir un emuMMC de 32Go puisque vous installez tous vos jeux dans la SD et le dossier Nintendo.
Ancienne méthode (présente des problèmes de démarrage, longue, uniquement sur système Linux, déconseillé)
sudo losetup -f --show -o 0x800000 emummc.bin
Cette commande va vous retourner le LOOP dans lequel la NAND a été monté:
/dev/loopX
X étant le LOOP, dans mon cas /dev/loop1, ça sera surement différent chez vous. Mettez le bien de côté.
Etape 2 - Sauvegarder les fichiers de la partition USER du dump
mkdir ~/mount (pour le dump) mkdir ~/mount_user (pour la partition USER) mkdir ~/user_backup (ou on mettra le backup de USER temporairement)
On monte dans le dossier ~/mount le LOOP de l'EMUMMC avec ninfs
sudo mount_nandhac /dev/loopX ~/mount
En allant dans le dossier vous trouverez les différents IMG des partitions.
Info importante:
On retrouve bien notre USER.img d'une taille de 27.9Go
On va maintenant monter ce USER.img dans un autre LOOP.
sudo losetup -f --show ~/mount/USER.img
Vous allez avoir un retour
/dev/loopX2
Il est différent du premier on va l’appeler X2, gardez le de côté.
On le monte dans le dossier ~/mount_user
sudo mount /dev/loopX2 ~/mount_user
On va désormais pouvoir copier les données de la partition USER dans notre dossier de backup ~/user_backup
sudo cp -r ~/mount_user/* ~/user_backup/
C'est plus ou moins long en fonction de la quantité de donnée.
Une fois la sauvegarde terminé, on peut démonter la partition USER, la NAND et le LOOP de USER.
sudo umount ~/mount_user sudo umount ~/mount sudo losetup -d /dev/loopX2
sudo gdisk /dev/loopX
Puis:
i > 11
Afin d'obtenir les informations de la partition 11 correspondant à la partition USER. Mettez le retour de la commande côté c'est important.
On indique au logiciel qu'on travaille sur la partition 11 (USER):
d > 11
On passe au redimensionnement:
n > ENTER
On vous demande maintenant le Last Sector, c'est à dire la nouvelle taille, la partition USER faisait 27.9Go mais gdisk utilise des Gio (Gigioctet). On convertit donc 27.9Go en GigiOctet et cela nous donne 25.14Gio (1Go = 0.93Gio). On va maintenant soustraire 10Go (soit 9.31Gio) ce qui nous donne 15.83Gio, on arrondit à 16Gio et on rajoute 3Gio car le Last Sector ce n'est pas tout à fait le Size, il faut prendre en compte le First Sector. Adaptez suivant ce que vous voulez faire comme redimensionnement.
On rentre maintenant ceci pour le Last Sector:
19G (G pour Gio, M pour Mio)
gdisk vous demande un type pour la partition, vous mettez le Partition GUID Code qu'on avait obtenu précédemment avec la commande d'information. Le type devrait être Unknown maintenant.
On fait un:
c > 11 > USER
Puis un :
x > c > 11 > (Le Partition unique GUID obtenu via la commande i précédemment)
On continue avec:
a > 11 > 0 > ENTER
Etape importante, on récupère les informations de la partition:
i > 11
Vous obtenez un retour similaire au premier, vérifie qu'ils soient identique à l'exception du Last Sector et de Size qu'on a modifié, je suis passé de 26Gio à 16.4Gio tout le reste doit être identique.
Si tout est bon vous pouvez terminer en appliquant tous les modifications
w > Y
sudo mount_nandhac /dev/loopX ~/mount
Monter dans un LOOP la partition USER:
sudo losetup -f --show ~/mount/USER.img
qui retourne
/dev/loopX2
Et on ouvre le LOOP (donc la partition USER) avec GParted
gparted /dev/loopX2
Dans GParted, vous obtenez une seule partition et vous la formater en FAT32 (Clic Droit sur la partition > Formater en > fat32 et vous appliquez les changements)
On monte désormais la partition USER dans le dossier ~/mount_user à partir du LOOP
sudo mount /dev/loopX2 ~/mount_user/
On restaure les fichiers à partir du ~/user_backup :
sudo cp -r ~/user_backup/* ~/mount_user/
On va maintenant tout démonter:
sudo umount ~/mount_user sudo losetup -d /dev/loopX2 sudo umount ~/mount sudo losetup -d /dev/loopX
truncate -s -XXG/M emmummc.bin
EMUMMC.bin pèse 31.3Go soit 28.87Gio, on soustrait ce qu'on avait enlevé (pour moi 9.27Gio) soit 19.27Gio, on arrondit à l'unité supérieur par sécurité. Je fais donc un:
truncate -s 20G emummc.bin
La taille du fichier passe 21.5Go ENJOY
Il faut maintenant corriger les en-tête GPT pour que le tout fonctionne, on monte une nouvelle fois notre EMUMMC.bin dans un LOOP
sudo losetup -f --show -o 0x800000 emummc.bin
On l'ouvre avec gdisk
sudo gdisk /dev/loopX
On fait pour corriger les headers:
x > e > w > Y
On démonte:
sudo losetup -d /dev/loopX
cat BOOT0 BOOT1 rawnand.bin > emummc.bin # Sur macOS ou Linux copy /b BOOT0+BOOT1+rawnand.bin emummc.bin # Sur Windows
Dans le cas d'un dump splitté:
cat BOOT0 BOOT1 rawnand.bin.* > emummc.bin # Sur macOS ou Linux copy /b BOOT0+BOOT1+rawnand.bin.* emummc.bin # Sur Windows
Nous nous retrouvons maintenant en possession de notre fichier emummc.bin
Etape 1B - Uniquement utilisateur macOS
Cette étape vous est destine uniquement si vous êtes un utilisateur de macOS. Merci à @shadow_shd pour les précisions.
Installer mbedtls via Homebrew (brew)
brew install mbedtls
Si vous n'avez pas le gestionnaire de paquet Homebrew sur votre installation macOS, ça s'installe très facilement avec:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubus.../master/install)"
Etape 2 - Récupération du script:
1) Télécharger le script sur https://gist.github....75f2720a1e5e486, sur la page cliquez sur Download ZIP afin de récupérer une archive contenant le script resize-user.py
2) Installer la dépendance mbedtls avec PIP pour que le script puisse fonctionner:
python3 -m pip install -U python-mbedtls # Sur macOS ou Linux py -3 -m pip install -U python-mbedtls # Sur Windows
Etape 3 - Redimensionner la partition USER:
Placez-vous dans le dossier contenant le script resize-user.py et mettez dans le même dossier vos fichiers emummc.bin et prod.keys. Exécuter la commande ci-dessous:
python3 resize_user.py emummc.bin <nouvelle taille de la partition en GiB> prod.keys
Le fichier est automatiquement redimensionné, si vous indiquez une taille invalide le script la refusera, ne spécifiez pas l'unité G après votre taille donnez uniquement un nombre.
Si vous comptez réaliser un emuMMC sur Atmosphère en mode partition caché, vous pouvez vous arrêtez ici et écrire le fichier emummc.bin sur la partition de votre carte SD.
Si vous voulez récupérer les fichiers de votre dump BOOT0 BOOT1 et rawnand.bin afin de réaliser un emuMMC en mode fichier ou quelque chose d'autre. Vous pouvez passer à l'étape 4.
(OPTIONNELLE) Etape 4 - Extraire le BOOT0 BOOT1 & rawnand.bin à partir d'un emummc.bin:
Pour se faire nous allons utiliser la commande DD de Linux et macOS, si vous êtes sur Windows vous pouvez récupérer le binaire de DD à cette adresse: http://www.chrysocome.net/dd
Ensuite utilisez les commandes ci-dessous:
dd bs=1c count=4194304 if=emummc.bin of=boot0.bin dd bs=1c skip=4194304 count=4194304 if=emummc.bin of=boot1.bin dd bs=1c skip=8388609 if=emummc.bin of=rawnand.bin
Merci à shadow256 pour les commandes même si elles sont très longues, en l'attente d'une nouvelle façon de faire
Terminé, vous avez redimensionné votre dump, vous pouvez aller le tester Dans ce tutoriel je l'ai réduit de environ 10Go mais on aurait pu très largement viser plus haut. De cette façon on récupéré une grande partie de l'espace du dump.
Community Forum Software by IP.Board
Licence accordée à : Logic Sunrise Ltd