Charger ses roms depuis un partage réseau Samba (un NAS par exemple)

Information :

Pour pouvoir stocker ses Roms sur un NAS et donc pouvoir en stocker beaucoup plus que sur une carte SD.

Attention :

Le NAS et la Pi doivent obligatoirement être connectés en ethernet !

Sur le NAS

  • Testé sur un Synology, mais le fonctionnement est identique un peu partout :

    • Créez un répertoire partagé (appelons le "/roms/").

    • Créez un utilisateur avec les droits d’écriture/lecture sur ce répertoire (ou réutiliser un utilisateur avec ces droits).

    • Recréez l'architecture du répertoire Roms de la recalbox (via le partage réseau, via ftp, ou à la main si vous voulez. L'important est d'avoir la même architecture, c'est à dire un répertoire par machines émulées.

  • Il est tout à fait possible de faire la même chose depuis le disque dur de votre PC. Sous Windows :

    • Vous pouvez créer un répertoire partagé

    • Le monter de la même manière sur la Recalbox.

Remarque :

Le seul inconvénient c'est que le PC servant de partage doit être allumé pour accéder aux Roms depuis la Recalbox.

Sur votre Recalbox

Depuis la version 4.1 de Recalbox, le chargement des Roms depuis un partage réseau est grandement simplifié.

Il est maintenant possible d'indiquer au système que le contenu du dossier /recalbox/share doit être monté depuis un partage réseau, sans qu'il soit nécessaire de modifier des fichiers système ou des scripts de démarrage.

Depuis un terminal ou depuis une connexion SSH (Voir le Tuto pour se connecter en SSH)

  • Passez le système de fichiers en mode "lecture/écriture" (il est en "lecture uniquement" par défaut). Cette modification restera active jusqu'au prochain redémarrage de la Recalbox :

mount -o remount,rw /boot
  • Maintenant, éditez le fichier /boot/recalbox-boot.conf avec votre éditeur préféré (nano, vi

  • Remplacez la ligne :

sharedevice=INTERNAL
  • Par la ligne :

sharedevice=NETWORK

Afin d'indiquer à la Recalbox que le contenu du dossier /recalbox/share doit être monté depuis un partage réseau (et non depuis la carte SD)

  • Il est maintenant nécessaire de spécifier, toujours dans le fichier recalbox-boot.conf, les informations de connexion au NAS. Pour cela, deux options possibles :

    • Les commandes basiques : sharenetwork_<nfs|smb><[0-9]>=<SHARE|ROMS|SAVES|BIOS>@<NAS>:<répertoire partagé>:<options>

    • Les commandes avancées : sharenetwork_cmd<[0-9]>=<commande à exécuter>

Exemple :

[email protected]:recalbox/roms:username=recalbox,password=recalbox,vers=2.0
[email protected]:recalbox/saves:username=recalbox,password=recalbox,vers=2.0

Autre exemple, avec les commandes avancées :

sharenetwork_cmd1=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox /recalbox/share

SMB v2 ou supérieure

  • Ajouter ",vers=2.0" / ",vers=2.1" etc, par exemple :

[email protected]:recalbox/roms:username=recalbox,password=recalbox,vers=2.0
[email protected]:recalbox/saves:username=recalbox,password=recalbox,vers=2.0
  • Support SMB sur Windows :

    • 1.0: Win 2k/XP/Server 2003/Server 2003 R2

    • 2.0: Vista SP1/Server 2008

    • 2.1: Win7/Server 2008 R2

    • 3.0: Win8/Server 2012

    • 3.02: Win8.1/Server 2012

    • 3.11: Win10/Server 2016 (doesn't work as of RecalBox 4.1/Dec 2017)

Exemples avec la version 7.0 (testés sur Pi3, Pi4, XU4, PC X86-32 et 64 bits)

Voici les montages CIFS / SMB Possibles:

La commande basique

sharenetwork_<nfs|smb><[0-9]>=<SHARE|ROMS|SAVES|BIOS|MUSIC|OVERLAYS|SCREENSHOTS|SHADERS|SCRIPTS>@<NAS>:<répertoire partagé>:<options>

Soit l'ensemble du dossier SHARE

sharedevice=NETWORK
sharewait=30
#TOUT LE DOSSIER SHARE EN ENTIER
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/SHARE>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0

Soit certains dossier(s) uniquement(s)

Depuis la version v7.0 il est désormais possible de sélectionner uniquement le ou les dossier(s) ci-dessous:

  • ROMS

  • SAVES

  • BIOS

  • MUSIC

  • OVERLAYS

  • SCREENSHOTS

  • SHADERS

  • SCRIPTS

sharedevice=NETWORK
sharewait=30
#UNIQUEMENT UNE SELECTION DES DOSSIER
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/ROMS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/SAVES>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/BIOS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/MUSIC>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/OVERLAYS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/SCREENSHOTS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/SHADERS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0
[email protected]<IP_DU_NAS>:<CHEMIN_NAS/SCRIPTS>:username=<ICI_LOGIN>,password=<ICI_PASSWORD>,vers=3.0

Si besoin voici en exemple mon fichier personnel. Chaque montage CIFS peut pointer vers un NAS spécifique.

Pour les overlays, il faut choisir en fonction de la résolution de son écran

sharedevice=NETWORK
sharewait=30
#FULL ROMS
[email protected]:C/RCB/romsfull:username=USER,password=PASS,vers=3.0
#ROMS SELECTION
#[email protected]:C/RCB/roms:username=USER,password=PASS,vers=3.0
#ROMS POUR TESTS
#[email protected]:TEST/roms:username=USER,password=PASS+,vers=3.0
[email protected]:C/RCB/saves:username=USER,password=PASS,vers=3.0
[email protected]:C/RCB/bios:username=USER,password=PASS,vers=3.0
[email protected]:C/RCB/screenshots:username=USER,password=PASS,vers=3.0
#720p pour Pi0 Pi2 Pi3
#[email protected]:C/RCB/overlays720:username=USER,password=PASS,vers=3.0
#1080p pour Pi4 XU4 et PC en 1080p
[email protected]:C/RCB/overlays1080:username=USER,password=PASS,vers=3.0

Lien Externe :

Il est fortement recommandé de retirer le support SMB v1 de votre machine Windows :