Utilisation avancée de FreeNAS

Cette page est la suite directe du tutoriel de configuration de FreeNAS. Nous allons à présent aborder des fonctionnalités un peu plus avancées pour les utilisateurs amateurs que nous sommes, car FreeNAS est capable de chose bien plus puissantes que ce que nous voyons ici mais si vous êtes à ce niveau vous n’avez pas besoin d’un tuto !

Au programme cette fois :

  1. Installation des mises à jour
  2. Les plugins : installation de la jail
  3. Installation et configuration de minidlna
  4. Configuration de SSH
  5. Sauvegarde des données entre 2 freenas

NB: tout comme le premier tuto, celui ci est publié au fur et à mesure de l’écriture et de mes avancées personnelles, soyez donc patient, la suite arrive petit à petit.

 

Etape 1 : Installation des mises à jour

Téléchargement de l’image GUI_Upgrade

Dans la première partie du tuto j’ai installé la version 8.04, car c’était la version stable du moment. Ensuite durant la rédaction, la version 8.2 est sortie et la 8.3 est en version beta3 au moment où j’écris ces lignes… FreeNAS évolue, de nouvelles fonctions sont régulièrement ajoutées, des bugs corrigés, de nouveaux matériels sont supportés,… En bref, pour en profiter il faut faire des mises à jour. Nous allons effectuer les mises à jour depuis l’interface graphique.

NOTE IMPORTANTE mise à jour janvier 2014:Cette partie avancée du tutoriel a été écrite pour FreeNAS en version 8 (mon NAS est toujours en 8.3.2 actuellement), il s’agit de la dernière version de FreeNAS 8. FreeNAS est aujourd’hui en version 9 mais certains paramétrages sont sensiblement différent, particulièrement pour les plugins.

Les téléchargements se font sur cette page : http://cdn.freenas.org/

Toutes les versions sont disponibles, puis à l’intérieur de chacune les sous-versions (beta,  release candidate, stable). Je vous déconseille les versions autres que les stables sur votre NAS contenant vos données, sur une machine virtuelle pour test par contre c’est le but ! Pour la mise à jour depuis l’interface graphique il faut télécharger les images GUI_Upgrade.

Petit piège : les images GUI_Upgrade sont disponible en 2 formats : xz et txz. Si vous mettez à jour depuis une version antérieur à la 8.2 BETA3 il faut télécharger le fichier au format xz, qui se termine donc par .GUI_Upgrade.xz. Si vous mettez à jour depuis une version 8.2 BETA3 ou plus récente il vous faut le format txz.

Il vous faut également télécharger le fichier texte contenant le hash SHA256 correspondant à votre image, cela permet au système de recalculer le hash et vérifier l’intégrité de l’image avant de l’installer.

Sauvegarde des paramètres

Il est primordial de télécharger la base de données contenant tous vos paramètres avant de débuter, en effet en cas de problème lors de la mise à jour il suffira de faire une installation normale puis restaurer la sauvegarde au lieu de tout reparamétrer… à moins que vous soyez fan de mon tuto au point de le recommencer du début ! 😉

Donc dans System -> Settings on clique en bas sur le bouton Save Config et on télécharge le fichier .db. C’est tout !

Sauvegarde de la configuration

En cas de besoin il suffit de partir d’une installation de FreeNAS toute vierge, d’aller directement dans System -> Settings et de faire Upload Config.

Mise à jour proprement dite

Avant de lancer la mise à jour il faut commencer par désactiver tous les services : dans Services -> Control Services on passe tous les interrupteurs sur OFF.

Après ces étapes préliminaire on se rend dans System -> Settings puis l’onglet Advanced et on clique en bas sur le bouton Firmware Update

FreeNAS - mise à jour système

On choisi un emplacement temporaire pour l’upload de l’image, la racine du pool proposée par défaut fait un bon choix. On clique sur Apply Update.

FreeNAS - mise à jour système

Dans la fenêtre suivante on sélectionne l’emplacement de l’image téléchargée et on fait un copier-coller du contenu du fichier texte .sha256.txt avant de cliquer sur Apply Update. Ensuite il faut être patient : l’image est uploadée, le hash est vérifié, l’image décompressée et copiée sur la clé usb puis le système va rebooter 2 fois.

Méé, heu ça marche pas, jfais quoi ?

Si comme moi vous avez un message d’erreur très explicite, du style « an error occured », sans autre explication rapidement après avoir cliqué sur Apply Update alors vous avez peut être un problème de droits d’accès au pool. Après avoir pas mal tatonné, j’ai découvert que « les autres » doivent avoir le droit d’exécution, autrement dit les droits du pool doivent être positionnés au moins comme ceci :

Mise a jour - positionnement des droits

Mise à jour d’un pool ZFS

Comme le système, ZFS évolue également. En version v15 dans FreeNAS 8.3 et antérieur puis v18 dans FreeNAS 8.3.1 et avec avec les « ZFS Feature Flags » maintenant. Un pool ZFS ancien est toujours parfaitement utilisable par un système récent mais FreeNAS vous affichera le petit message suivant avec un clignotant jaune :

The pool is formatted using a legacy on-disk format. The pool can
still be used, but some features are unavailable.
action: Upgrade the pool using ‘zpool upgrade’. Once this is done, the
pool will no longer be accessible on software that does not support feature
flags.

Upgrader un pool est faisable en ligne de commande mais ATTENTION : une fois mis à jour, le pool ne sera plus lisible par une ancienne version de FreeNAS et l’opération est IRREVERSIBLE. Cette opération est normalement sans risque mais il est comme toujours recommandé de sauvegarder les données avant (et puis tout le reste du temps aussi d’ailleurs…)

Pour mettre à jour le pool, on utilise un accès au Shell, via l’interface ou SSH. Quelques vérifications préliminaire pour commencer :

zpool get version MonPool

zpool status -x

Cela vous retourne la version actuelle de MonPool puis le status DOIT indiquer « All pools are healthy », on ne met pas à jour si ce n’est pas le cas. Si tout est bon on peut lancer l’upgrade :

zpool upgrade MonPool

Etape 2 :Les plugins, installation de la jail

Note Importante (mise à jour janvier 2014) : Cette partie est écrite pour FreeNAS 8, sur la version 9, l’installation des plugins est assez différente.

Avant tout quelques brèves explications car il est toujours plus intéressant de comprendre ce que l’on fait. Une jail c’est quoi ? L’environnement jail (prison en français) est une fonctionnalité avancée des systèmes BSD (FreeNAS est basé sur FreeBSD) qui permet d’installer des applications sur votre système en toute sécurité. L’environnement jail est en fait une partie virtualisée du système, ainsi pour un processus installé dedans tout est comme si il était installé directement dans le système sauf que si ce processus devient malveillant il ne pourra pas compromettre le système car il compromettra un système virtuel. En gros la jail est un système virtuel indépendant dans le système.

Si vous voulez toutes les infos imaginables sur les jails lisez donc ceci, c’est le manuel FreeBSD en français et c’est très intéressant.

Téléchargement de la jail

FreeNAS a déménagé, les versions 8 des jails et plugins sont disponibles ici : cdn.freenas.org, dans le dossier de la version 8.3.2. Puis le dossier correspondant à votre architecture (32 ou 64 bits) et plugins. On télécharge le fichier FreeNAS-8.x.xxxxx.Plugin_Jail.pbi.

Emplacement d’installation

La jail et les plugins vont être installés sur le pool ZFS et non sur la clé USB contenant le système freeNAS. Pour que cela soit plus simple à gérer par la suite nous allons donc créer 2 datasets : un pour la jail et un pour les différents plugins. Cela se passe donc dans Storage -> Volumes -> votre volume -> Create ZFS Dataset, on sait faire je ne re-détaille pas tout, si ce n’est pas le cas jetez un œil à la première partie du tuto. Dans mon cas j’ai créé un dataset « Jail » et un dataset « Plugins ».

2 contraintes cependant :

  • Les datasets doivent faire au moins 2Go et
  • Le chemin doit faire moins de 88 caractères de long : /mnt/pool1/Jail par exemple

Création de la jail

On se rend dans Services -> Plugins -> Management -> Settings. Comme pour une mise à jour on choisit un emplacement temporaire pour uploader la jail téléchargée (voir dans l’étape 1 ci-dessus pour les problèmes de droits sur le volume si jamais votre upload se bloque à 1%).

Ensuite dans la boite de dialogue suivante il y quelques paramètres à rentrer :

Installation de la Plugin JailD’abord le dataset où installer la jail, puis un nom pour notre jail, ici dans un élan d’inspiration j’ai mis « Jail ». Ensuite c’est important : il faut assigner une adresse IP et un masque à notre jail, et oui on a dit que c’est comme un système indépendant qui est virtualisé et il doit donc avoir un accès au réseau. Cette adresse doit être accessible depuis freeNAS, donc sur le même réseau et ne doit pas être utilisée par un autre poste sur votre réseau. Un bon plan est donc de mettre une adresse fixe en dehors de la plage de votre DHCP par exemple…  On termine par le chemin du dataset où seront installés les plugins.

On valide puis dans la dernière boite de dialogue il suffit de faire parcourir… et sélectionner le fichier de la jail précédemment téléchargé, puis une dernière validation et après un petit peu de patience la jail est installée.

Démarrage de la jail

Pour l’instant elle est installée mais pas activée, pour cela il faut se rendre dans Services -> Control Services et passer sur ON le bouton correspondant au service Plugins. Cela permet de « démarrer » le système virtuel dans la jail et est nécessaire pour l’installation et le fonctionnement de tous les futurs plugins.

Une fois le bouton sur ON, la jail est installée, vous devriez être en mesure de la « pinguer » depuis le NAS (via l’accès au Shell depuis l’interface graphique) ou même depuis n’importe quel poste du réseau.

Pour le ping depuis freenas on utilise la commande ping avec l’argument « -c » en précisant le nombre de ping (ici j’ai mis 2) sinon il faudra l’arrêter avec Ctrl + C.

Ping de la jail

Ajouter des points de montage

La jail étant un système virtualisé, les plugins que l’on va installer dedans n’auront donc évidemment pas d’accès au reste de l’arborescence du système… sauf que ça nous pose un problème : nos données étant sur le pool de stockage, comment faire pour que (par exemple) minidlna diffuse à la télévision un contenu auquel il n’a pas accès ?

C’est là qu’interviennent les points de montage, on va créer une sorte de lien dans la jail permettant de lier un dossier vers un autre présent à l’extérieur de la jail. Les données ne sont physiquement présentes qu’une seule fois mais accessibles depuis 2 endroits différents de l’arborescence. Attention : effacer des fichiers depuis le point de montage dans la jail les efface réellement du dossier source.

Dans l’optique de rendre nos données multimédias disponible à la diffusion par un plugin, on va donc créer un point de montage de notre dataset Medias vers la jail, c’est à dire que je monte /mnt/pool1/Medias en tant que /medias dans la jail (donc en vrai : /mnt/pool1/Jail/Jail/medias).

Le dossier cible (dans la jail) doit obligatoirement exister. L’avantage de monter vers /medias dans la jail est que ce dossier existe déjà : on se rend donc dans Services -> Plugins -> Management -> Mount Points -> Add Mount Points

Ajouter un point de montageet l’on sélectionne simplement avec les boutons Browse les dossiers source (hors jail) et cible (dans la jail). La case Mounted cochée indique que l’on veut l’activer, elle doit donc être cochée sinon ça ne fonctionne pas.

Et pour créer un dossier dans la jail ?

On vient de voir que pour ajouter un point de montage dans la jail, le dossier cible doit exister, si ce n’est pas le cas on peut le faire manuellement en ligne de commande. Pour accéder à la ligne de commande à l’intérieur de la jail on procède de la façon suivante :

Dans le shell on utilise les commandes suivantes :

jls

pour lister les jails présentes et récupérer le numéro d’ID de celle que l’on veut (bon, là y’en a qu’une, ça devrait aller 😀 )

puis :

jexec 1 csh

pour lancer le shell csh dans la jail numéro 1. Un fois dans la jail, ce qui confirmé par le prompt : nomdevotrejail# on utilise mkdir pou créer un dossier :

mkdir /mnt/Medias

Et voilà, on quitte avec exit et c’est tout. Ca doit donner un truc comme ça :

Créer un dossier dans la jail

Ensuite, comme précédemment, on se rend dans Services -> Plugins -> Management -> Mount Points -> Add Mount Points pour le monter.

Ajouter un point de montage

Maintenant que la jail est installée, on est libre d’y mettre tous les plugins que l’on veut ! Et même bien plus encore.

Etape 3 : Installation et configuration de minidlna

Kesaco ? MiniDLNA est un serveur DLNA qui utilise UPnP pour partager vidéos, musiques et photos entre un NAS (par exemple…) et votre télévision, console de jeux, box tv, téléphone portable, ou application telles que xbmc par exemple.

Chez moi je l’utilise pour diffuser vers la télévision via la Freebox v6 (Revolution) qui sert d’interface de navigation dans les fichiers et de lecteur. Je peux vous certifier que cette configuration fonctionne à merveille. Certaines télévisions modernes savent gérer le DLNA directement, mais il peut y avoir des soucis au niveau du décodage des vidéos par exemple. En effet, minidlna ne fait pas de transcodage, il ne fait que servir le contenu vers le client : donc pour lire votre fichier .avi encodé en divx il faut que votre lecteur sache décoder le xvid.

Installation du plugin

Pour installer le plugin on commence par le récupérer ici : cdn.freenas.org. On prend la version 8.3.2 et celle qui correspond à notre architecture (32 bits -> x86 ou 64 bits -> x64). Dans le dossier plugins, on télécharge le fichier minidlna-x.x.xx_x-amd64.pbi (par exemple, si on est sur du 64bits).

L’installation en elle même est très simple et sera identique quelque soit le plugin : On se rend dans Services -> Control Service puis l’onglet Plugins et enfin le bouton Install Plugin

FreeNAS - Installation d'un pluginUn clic sur Parcourir, on sélectionne le fichier pbi précédemment téléchargé puis Upload. Et l’installation est automatique. On retrouve le plugin listé avec le bouton Service status sur OFF. Et pour l’instant on n’y touche pas !

Configuration du plugin

Dans l’arborescence de configuration on se rend dans Services -> Plugins -> MiniDLNA.

MiniDLNA - optionsLe Friendly name est le nom du serveur qui apparaitra sur votre client, laissez aller votre inspiration ! Ensuite le point important est bien sûr indiquer où se trouvent les fichiers à partager : un clic sur Browse et on sélectionne le point de montage créé à l’étape 2. On laisse le port et le Discover interval par défaut (ceci est la fréquence à laquelle minidlna annonce sa présence sur le réseau, rien à voir avec une recherche de nouveaux médias). Le Model number et le Serial sont inutiles, j’ai laissé les valeurs par défaut.

On va en reparler ensuite mais il faut connaitre une limitation importante : miniDLNA liste dans une base de donnée les fichiers contenu dans le dossier à partager, mais sur FreeNAS, miniDLNA ne sait pas détecter automatiquement l’ajout de nouveaux fichiers. On va donc cocher l’option Rescan on (re)start pour forcer miniDLNA à rescanner l’ensemble du dossier quand le service redémarrera. Après l’ajout d’un fichier il faudra donc arrêter puis redémarrer le service pour voir le nouveau fichier partagé.

Dans les paramètres auxiliaire, j’ai mis une option qui permet de choisir la racine de l’arborescence créée par miniDLNA quand on navigue dans le partage. Ceci est totalement facultatif, je vous conseille de ne rien mettre pour commencer et de vous faire votre propre idée ensuite. Les possibilités sont expliquées en bas de cette page.

Et voilà ! On clique sur OK en bas pour valider, on retourne dans Control Services, onglet Plugins et on active Minidlna en passant le bouton sur ON.

Rescan automatique lors d’un ajout de fichier

Comme je l’ai dit, minidlna ne sait pas détecter l’ajout d’un fichier dans le dossier source des médias pour actualiser la liste. C’est une limitation système de FreeBSD. Fort astucieusement il y a joeschmuck qui a écrit et partagé sur le forum freeNAS un script faisant cela pour nous. En résumé : on installe un petit package nommé wait_on qui ajoute une fonction se déclenchant lors d’un évènement disque et qui va surveiller pour nous les modifs, puis on redémarre minidlna après la détection d’une modification, ce qui déclenche un rescan car on a coché la case adéquate.

Limitations du script :

  • Wait_on se déclenche à l’initiation d’un évènement et non à la fin
  • Lors du redémarrage de minidlna si une lecture est en cours elle est interrompue
  • Il y a une limitation dans la longueur de arborescence, plus exactement lorsque vous listez récursivement l’arborescence complète de vos dossiers médias : par exemple « /media /media/Movies_A_Z /media/Movies_A_Z/Movies_A /media/Movies_A_Z/Movies_B » ça fait une grande chaine de caractères qui ne doit pas dépasser 261649 caractères.

Pour mettre en place ce script il faut avoir au moins un FreeNAS 8.3.1 et minidlna installé et surtout fonctionnel et actuellement démarré.

Ensuite via SSH (voir l’étape 4) après l’établissement de la connexion on se logue en administrateur par « su root » et le mot de passe associé (voir la note de l’étape 4 si vous avez un problème à ce niveau). Puis « jls » permet de lister les jails présentes sur le système avec leur numéro d’ID et ensuite « jexec numéroID /bin/tcsh » permet de rentrer dans la jail.

Ajout de wait onUne fois dedans on commence par installer waint_on en tapant :

pkg_add -r wait_on

rehash

rehash est à faire une fois le téléchargement de wait_on terminé. On se rend alors dans le dossier rc.d pour y créer le script que l’on appelera scanmedia :

cd /etc/rc.d

ee scanmedia

On fait un copier-coller du code suivant (clic droit dans putty pour coller) puis on modifie les paramètres

    #!/bin/sh
    # Nom de fichier 'scanmedia'
    # Placer ce fichier dans /etc/rc.d
    # Editer /etc/rc.conf pour ajouter scanmedia_enable="YES"

    # A savoir...  Le but de ce script est de declencher un rescan des 
    # medias pour le plugin minidlna.  Il utilise la commande "wait_on" qui
    # bien qu'elle fonctionne, a ses propres limitations:
    #  1) Cela rescan a la detection d'un changement, pas une fois que celui ci est termine.
    #  2) Il y a une limite dans la longueur de chaine des dossiers donc j'ai ajoute
    #    une methose alternative pour rescanner mais elle lit activement les disques,
    #    donc si vous souhaitez que vos disques passent en veille, cette methode va
    #    l'empecher et je vous recommande fortement de plutot modifier la structure de vos dossiers.

    . /etc/rc.subr

    name="scanmedia"
    rcvar=scanmedia_enable

    PATH="$PATH:/usr/local/bin"

    start_cmd="${name}_start"
    stop_cmd=":"

    load_rc_config $name
    eval "${rcvar}=\${${rcvar}:-'NO'}"

    # Variables used in this script...

    # RedAlert = Maximum string length wait_on can handle
    RedAlert=261649

    # YellowAlert = User selected warning point.  Looking to use this to enable the
    #  flashing warning light in the GUI.
    YellowAlert=255000

    # TriggeredDelay = La duree en seconde pour retarder le scanning a partir du moment ou
    # un changement a ete detecte.  300 secondes (5 minutes) par defaut.  Mettez ce que vous voulez
    # en reflechissant a combien de temps cela vous prend pour ecrire un gros fichier (film) sur votre NAS.
    TriggeredDelay=300

    # AlternateScanRate = La duree en seconde entre 2 rescan pour la methose alternative.
    # La valeur par defaut est 1800 secondes (30 minutes).
    AlternateScanRate=1800

    # ScanMode = Methode normal ou Alternative.  Par defaut '0' pour la Normale.  This changes
    # in the script based on the actual directory string length vs the RedAlert value.
    ScanMode=0

    # MediaLocation = L'emplacement contenant les medias a surveiller.  Par defaut il s'agit de "/media".
    MediaLocation="/media"

    scanmedia_normal()
    {
    while [ "$ScanMode" -eq "0" ] ; do

    # First lets locate all the subdirectories.  Since the minidlna plugin only
    # allows one path for media we will use the path defined above (default=/media)

    directories=$(find $MediaLocation -type d -print0 | xargs -0 -I % echo -n '"%" ')

    # Check on maximum length of directory string.

    if [ ${#directories} -gt $YellowAlert ];
      then
      if [ ${#directories} -gt $RedAlert ];
      then
      date > /minidlnaerror.log
      echo "RED ALERT! You have exceeded the maximum directory string length of 261649 and you are currently at" >> /minidlnaerror.log
      echo ${#directories}".  The alternate method is in use and you need to shorten the directory names or rearange your folders" >> /minidlnaerror.log
      echo "to restore the normal scanning method." >> /minidlnaerror.log
    # Change from normal scan mode to alternate scan mode.
      ScanMode=1
      else
      date > /minidlnaerror.log
      echo "YELLOW ALERT! The maximum directory string length is 261649 and you are currently at" >> /minidlnaerror.log
      echo ${#directories}".  You should shorten the directory names or rearange your folders" >> /minidlnaerror.log
      echo "to remove this warning." >> /minidlnaerror.log
      fi
    fi

    if [ "$ScanMode" -eq "0" ]
    then

    # Wait_on will trigger on any event which writes to the directories listed.

    csh -c "wait_on -w $directories"

    # Now let's call the rescanning routine
    scanmedia_rescan

    fi
    done
    }

    scanmedia_rescan()
    {
    # This routine pauses for the user specified delay (default 5 mins) before killing
    # the minidlna service and restarting it.

      sleep $TriggeredDelay

    # We must stop the minidlna service in the GUI first, then wait 10 seconds (probably overkill)
    # and then kill the service.

      service minidlna onestop
      sleep 10
      pkill minidlna

    # We wait 10 seconds to allow the service lots of time to wrap up.

      sleep 10

    # And now to start up the service again.

      service minidlna onestart
    }

    scanmedia_alternate()
    {
    while [ "$ScanMode" -eq "1" ] ; do

    #Lets check to see if we can go back to normal_scan mode.
    directories=$(find $MediaLocation -type d -print0 | xargs -0 -I % echo -n '"%" ')
    if [ ${#directories} -lt $RedAlert ]
    then
    ScanMode=0
    fi

    # We list all the files and save as a file in memory, hopefully the file doesn't get too
    # big to cause an issue.  If it does then remove the '/var/' from the below lines.

    ls -RlT $MediaLocation > /var/altscan1.dat
    sleep $AlternateScanRate
    ls -RlT $MediaLocation > /var/altscan2.dat

    # diff return 0 if files are identical, 1 if they are different, 2 if one of the files cannot open.
    diff -q /var/altscan1.dat /var/altscan2.dat

    # We don't really care about cases 0 and 2 but it's nice to have for troubleshooting. They
    # are commented out right now.
    case "$?" in
    #"0") echo "Files Identical";;
    "1") scanmedia_rescan;;
    #"2") echo "Failed to open one of the files";;
    esac

    done
    }

    scanmedia_start()
    {
    while :; do
    if [ "$ScanMode" -eq "0" ]
    then
    scanmedia_normal
    else
    scanmedia_alternate
    fi
    done
    }

    scanmedia_start

    run_rc_command "$1"

Les lignes à personnaliser sont en jaune : 40,44 et 51. Surtout pensez à adapter le chemin où sont stockés les fichiers (le point de montage, en fait…) ligne 51. On sauvegarde avec Echap puis les options adaptées.

On rend le script exécutable avec chmod :

chmod +x scanmedia

Dans le dossier parent on modifie rc.conf pour lui ajouter une ligne qui permet de démarrer le script avec la jail :

cd ..

ee rc.conf

Ajouter : scanmedia_enable= »YES »

La ligne scanmedia_enable= »YES » est ajoutée en fin de fichier et on enregistre avec Echap. On quitte avec « exit » puis on redémarre le NAS : le script et miniDLNA sont lancés

Note : Dans FreeNAS 9.1.1 : après avoir fait cela dans l’interface web minidlna apparaitra comme arrêté, ce qui n’est pas le cas en réalité et n’empêche ni le fonctionnement du script ni de minidlna.

 

Etape 4 : Configurer SSH

SSH pour Secure Shell, va nous permettre un accès à distance au shell, ce qui est encore pour l’instant plus pratique que le shell de l’interface web (enfin ce n’est que mon avis) et permettra ensuite d’établir une connexion sécurisée entre 2 NAS distants pour synchroniser des données via l’outil rsync. Dans les étapes qui suivent nous allons donc mettre en place un accès ssh avec authentification par clé.

Choix d’un client SSH

Déjà avant de commencer à configurer notre NAS il nous faut un client pour s’y connecter en SSH, si vous êtes sur Mac ou Linux, pas de soucis car SSH est déjà intégré dans le système. Pour Windows il existe Putty, open source, complet et sans installation, il est très répandu. Ça se télécharge ici même (utiliser le premier lien pour putty.exe, et vous pouvez aussi au passage récupérer puttygen.exe qui servira plus tard à générer les clés)

Accès par mot de passe

Pour commencer on va configurer un accès SSH par mot de passe, par la suite celui ci sera pour une question de sécurité remplacé par un accès par clés publiques/privés, bien plus sécurisé.

Tout commence comme souvent dans les services : Services -> SSH nous ouvre la boite de dialogue dans laquelle nous allons d’abord pour une question de sécurité changer le port par défaut : en effet le port 22 est celui le plus fréquemment utilisé pour le ssh et donc le plus visé par les attaques, donc autant le changer.

Feenas - SSHIci je met par exemple 12322, ensuite toujours pour raison de sécurité, on ne coche jamais Login as Root with password. J’ai choisi ici de ne pas compresser les connexions, en effet en local le réseau est rapide et pour l’utilisation à distance lors de la synchronisation entre NAS c’est rsync qui se chargera de la compression.

On valide par OK, et on active le service dans Services -> Control Services, celui ci passe alors à l’état ON.

Qui a le droit de se connecter ?

Attention aux droits d’accès au shell ! Il n’est certainement pas très judicieux d’autoriser tout le monde à pouvoir se loguer en ssh. Les réglages se font dans Account -> Users puis pour chaque utilisateur :

FreeNAS - Ajout d'un utilisateurDans le menu déroulant « Shell » vous pouvez choisir le shell que vous voulez et surtout « nologin » pour ceux à qui vous refusez l’accès.

Enfin pour vous éviter de chercher autant que moi… sachez que seuls les membres du groupe « wheel » sont autorisés à faire un « su root » (pour passer en super-administrateur) une fois logués en ssh. Donc si vous en avez besoin, pensez à ajouter votre nom d’utilisateur à ce groupe 😉

Première connexion

Sur notre PC client on lance donc Putty et on rentre les paramètres suivants : Nom@adresse_IP et le port défini précédemment, par exemple pour moi : Neo@192.168.0.11 dans le Host Name et 12322 pour le port puis Open. Comme c’est la première connexion, la fenêtre d’alerte nous indique que la clé d’hôte est inconnue, on est d’accord et on l’accepte. Reste à taper votre mot de passe et voilà la connexion établie :

Feenas Connexion SSH établie Connexion par clé

Pour mettre en place l’authentification par clé on va d’abord utiliser puttygen pour générer celle-ci. Téléchargez le ici si ce n’est pas déjà fait. On le lance et on choisi une clé SSH-2 DSA de 1024 bits et on agite la souris pour générer du mouvement aléatoire. Une fois la génération terminée la clé publique est affichée, on la sélectionne jusque au bout et on copie (Ctrl + C).

Dans l’interface web de FreeNAS on se rend dans Account -> Users -> Notre nom d’utilisateur puis on colle la clé dans la partie SSH Public Key avant de valider par OK.

De retour dans Puttygen on fait « Save private key » (là, personnellement je n’ai pas mis de passphrase, c’est moins bon pour la sécurité car si le PC est physiquement volé ou que quelqu’un s’introduit dessus il peut se connecter au NAS) et on la sauvegarde quelque part en sécurité.

On relance putty et après avoir de nouveau entré nos infos de connexion on va dans Connection -> SSH -> Auth et on sélectionne notre clé privée dans « Private key file for authentication ». Pour plus de facilité à l’avenir on peut revenir dans la partie Session, entrer un nom dans Saved Sessions et cliquer sur Save pour enregistrer les paramètres. Si l’on fait Open à ce stade, la connexion SSH s’établit sans nous demander de mot de passe, ce qui est confirmé par la ligne :

Freenas Connexion SSH par cléImportant : A présent dans les paramètres SSH de FreeNAS il faut désélectionner l’authentification par mot de passe pour gagner en sécurité. Ici pour configurer de cette façon on aurait pu s’en passer mais faire cette étape permet de mieux cerner le problème en cas d’échec de configuration.

Autre note importante : pour pouvoir fair un « su » vers root (switcher vers le compte root depuis celui d’un utilisateur x) il faut obligatoirement que l’utilisateur en question soit membre (entre autre) du groupe wheel, donc penser à l’ajouter dans le groupe peut vous éviter des heures de recherche…

Et voilà ! On a un accès au shell de notre NAS ailleurs que dans la console de l’interface web. Pour y accéder de l’extérieur de votre réseau il suffit de faire un renvoi du port choisi dans votre routeur comme d’habitude.

Pour aller plus loin

Putty est un client Windows, on peut aussi trouver des clients sur d’autres plateformes, par exemple sur iPhone ou iPad j’utilise ServerAuditor. Pour se connecter au NAS par clé j’ai généré une paire de clé dans l’application puis j’ai copié collé la clé publique dans un mail vers mon PC. Via Putty j’ouvre une session SSH sur le NAS, dans le dossier home de mon utilisateur en faisant « ls » on doit y voir un dossier .ssh, on entre dedans avec « cd .ssh », un nouveau « ls » devrait faire apparaitre authorized_keys qui est le fichier contenant les clés publiques autorisées à se connecter.

Freenas Connexion SSH par cléOn fait « ee authorized_keys » pour éditer le fichier, celui ci contient pour l’instant une seule clé (celle de Putty), on ajoute la suivante sur une nouvelle ligne : Ctrl + E pour aller directement en fin de ligne puis Entrée et on colle la clé reçue par mail (clic droit pour faire coller dans Putty), on ajoute une ligne vide à la fin et on quitte par Echap en sauvegardant les changements. C’est tout !

Etape 5 : Sauvegarde des données entre 2 freenas

Enfin nous y voilà ! Voici probablement l’ultime étape de ce tuto avancé et le but final que je m’étais fixé au commencement. J’ai déjà parlé des stratégies de sauvegardes informatiques dans ce petit article, je ne reviendrais donc pas dessus. Nous allons nous intéresser ici à la mise en pratique.

Monter un second NAS

Le but du jeu est d’avoir un second NAS connecté également à Internet dans un lieu physiquement différent du premier et ceci afin de mettre nos données sensibles à l’abri du feu, du vol, du dégât électrique, inondations, etc…

Nous allons donc commencer par assembler et configurer un second NAS de la même façon que celui que nous venons de faire. Si ça peut vous aider je connais un site où il y a un tuto… 🙂 Puis la synchronisation des données sera assurée quotidiennement par un script rsync « maison » qui se connectera par un tunnel ssh pour envoyer les données de façon totalement sécurisée.

En ce qui me concerne, j’habite à Orléans et j’ai un ami domicilié à Toulouse (là au moins c’est vraiment physiquement séparé !), nous avons chacun monté un NAS avec un RAIDZ de 3x2To (soit 4To de stockage) et chacun a en plus dans son NAS un disque de 2To pour la sauvegarde distante de l’autre. Un pool ZFS est créé sur ce disque. Oui mais comment tu sauvegarde 4To sur un disque de 2 ?? Évidemment il faut faire un choix, pour ma part je sauvegarde tout ce qui n’existe pas ailleurs, à savoir les photos personnelles et tous les documents divers (sauvegarde des partitions documents des PC de la maison). Tout ce qui est musique, films, séries tv, enregistrements, etc etc n’est pas sauvegardé à distance. D’où l’intérêt des datasets créés plus tôt dans le tuto…

Sur le NAS distant situé à Toulouse j’ai créé un utilisateur Mickael, un pool ZFS sur mon disque de 2To, j’en suis le seul propriétaire et suis le seul à avoir les droits en lecture/ecriture/modification dessus et le dossier home est ce pool. L’utilisateur Mickael a accès au shell évidemment pour pouvoir se connecter en ssh.

Configurer ssh entre les deux NAS

Voilà nos deux NAS sont fonctionnels, connectés à Internet, les bons ports sont routés dans les box internet et on arrive à se loguer en ssh à partir de notre PC sur chacun des deux où que l’on soit dans le monde, essayons donc de les faire se connecter entre eux ! Pour s’y retrouver, nommons LOCAL le NAS local et DISTANT le NAS distant, pas très compliqué ! Et pour que vous compreniez bien, dans mon cas, Neo est l’utilisateur sur LOCAL et Mickael l’utilisateur sur DISTANT.

Momentanément (uniquement le temps de la mise en place des clés), on active dans les paramètres ssh l’authentification par mot de passe

On va générer une paire de clé publique/privé sur LOCAL et envoyer la clé publique sur DISTANT, donc on commence par se connecter en SSH sur LOCAL via Putty par exemple sur l’utilisateur Neo puis l’on tape la commande :

ssh-keygen -t dsa

Et on valide les autres paramètres avec la touche Entrée :

Generation cle sshNous avons généré une paire de clé dsa dans le dossier indiqué, pour pouvoir nous connecter à DISTANT nous devons donc envoyer la clé publique dans le fichier authorized_keys de l’utilisateur Mickael sur DISTANT, pour cela on exécute :

 cat ~/.ssh/id_dsa.pub | ssh -p N°PORT Mickael@IP_DISTANT ‘cat >> .ssh/authorized_keys’

en remplaçant bien sûr N°PORT par le port ssh de DISTANT et IP_DISTANT par… l’IP du NAS distant ! Après avoir entré le mot de passe de Mickael sur DISTANT la clé est copiée et si l’on retente un :

ssh -p N°PORT Mickael@IP_DISTANT

Cette fois la connexion devrait se faire sans demander le mot de passe, à la première fois il y aura la demande de valider la host fingerprint et de l’ajouter à la liste des serveurs connus.

Quand cela est fait, on se connecte en tant que Mickael sur DISTANT et on recommence dans l’autre sens : génération d’une paire de clé, puis envoi sur LOCAL et tentative de connection depuis la machine DISTANT vers la machine LOCAL. Si tout ce passe bien, dans un sens comme dans l’autre, on n’oublie surtout pas de désactiver dans les paramètres ssh des deux machines l’authentification par mot de passe.

Présentation du script de sauvegarde

Pourquoi utiliser un script et pas les outils rsync présent dans l’interface de freenas ? Quand je l’ai commencé il n’était pas possible d’utiliser rsync sur ssh avec les outils de freenas, donc pas de sécurité dans l’envoi, c’était donc impensable. Maintenant c’est le cas mais je trouve que le script colle mieux à mon besoin.

Toute la présentation, la description du fonctionnement et le sript en lui même sont présentés dans cet article spécifique. Il y a les explications générales d’installation et même ma version de rsync adaptée. Tout est disponible pour les utilisateurs avancés.

Mise à jour de rsync avec la version patchée

Comme expliqué dans l’article, j’utilise des options de rsync non disponibles dans la version de base officielle, du coup je l’ai recompilé, vous pouvez soit le télécharger dans le lien sur l’article soit le recompiler vous même.

On dépose le fichier quelque part sur le NAS puis on se logue en ssh ou via l’interface graphique et le shell. Pour remplacer l’exécutable rsync il faut déjà être logué en root puis monter le système en lecture-écriture car il est par défaut en lecture seule, puis on remplace l’ancien fichier par le nouveau et enfin on remonte en lecture seule. Tout cela ce fait comme ça :

su root

mount -uw /

cp votreDossier/rsync /usr/local/bin

mount -ur /

Et voici ce que vous devriez avoir :

Mise a jour de rsync

Notez les deux dernières commandes qui permettent simplement d’afficher l’aide de rsync pour voir si les options voulues sont bien implémentées (la mise à jour a réussi).

Mise en place du script

Le script s’exécute sur le nas DISTANT et « tire » les données à sauvegarder vers lui. Sur le DISTANT on créé par exemple un dataset dédié, classiquement, via l’interface web. Ensuite on se connecte en FTP dessus et on créé un dossier pour héberger le script, je l’ai appelé… « Scripts » ! Et un pour héberger les sauvegardes…. « Sauvegardes » !! 🙂

Ensuite il vous faut le script, soit sur le lien vers l’article ci dessus, soit ici, je vous ai fait un petit zip. Il vous faut ensuite un éditeur pour mettre vos paramètres dedans, pour ma part j’utilise l’excellent Notepad++. Ouvrez donc je fichier du script et modifiez les paramètres entre les lignes 26 et 48, notamment les deux noms d’utilisateurs, adresse mail, IP du nas LOCAL et port SSH. Tout est commenté pour une meilleur compréhension.

Modifiez ensuite le fichier liste.txt pour indiquer les fichiers et dossiers à exclure de la sauvegarde.

Quand tout est fait on envoie via FTP tout cela dans le dossier Scripts créé sur le NAS Distant.

Le script est maintenant sur le serveur mais il faut lui créer les conditions initiales qu’il s’attend à rencontrer, c’est à dire un dossier « courante » (normalement lien symbolique vers la dernière sauvegarde). Toujours sur le nas DISTANT on créé donc un dossier vide nommé « courante » dans le dossier abritant les sauvegardes (que j’ai appelé Sauvegardes ci dessus).

Et voilà, comme on a déjà mis en place et testé la communication via ssh précédemment, normalement tout va rouler. Il reste à programmer l’exécution du script via cron. Dans l’interface web du NAS DISTANT on se rend dans System-> Cron Jobs -> Add Cron Job Ajouter un cron job

Pour l’utilisateur, c’est celui qui va exécuter le script, il faut donc que ce soit celui qui a les droits d’écriture sur le dataset hébergeant les sauvegardes (je rappelle que nous sommes là sur le nas DISTANT). Ensuite la commande c’est simplement le chemin complet vers le fichier de script ( par exemple /mnt/poolDistant/Scripts/script.sh).

Enfin l’heure, on veut une exécution par jour (surtout pas +) à heure fixe, ici j’ai par exemple sélectionné minuit 10, en dessous dans Every N day of month, on laisse 1 et on coche tous les mois et tous les jours et bien sûr la case « Enabled » pour activer. Validez par OK et voilà enfin la fin du tuto ! 😀

 

Bien sûr pour la sauvegarde initiale, il vaut mieux avoir les deux NAS côte à côte sur le même réseau, modifiez les paramètres du script dans ce cas..


Vous avez aimé ? N'hésitez pas à partager :
Facebook Twitter Google+ Mail

118 réflexions sur « Utilisation avancée de FreeNAS »

  1. bonjour votre tuto ma bien aidé pour la config de freenas encore merci par contre cela fait trois semaines que je suis sur freenas j ai essayer la nouvelle version apres un redemarrage du nas que j avais configuré en suivant votre tuto plus d acces au panneau de config la je pense peut etre que c faute de memoire je n ai que 2go donc j ai installé la 8.0.4 mais la pas de dlna donc je suis parti sur la 8.0.4 multimedia pas de dlna non plus.Ma question est apparement pour le dlna il faut imperativement la version 8.2.0 ? pour la memoire du nas j ai effectué une commande de barette 4 go + mes deux go
    cordialement

    1. Bonjour, votre problème d’accès au panneau de configuration (tu parles de l’interface web ?) ne vient pas de la RAM, ça c’est certain. Essaye de connecter un ecran et un clavier sur le NAS et de voir ce qu’il se passe. Tu peux aussi y faire un reset de l’accès à l’interface web.
      Dans la 8.0.4 multimedia il faut paramétrer minidlna en ligne de commande, il n’y a que dans la 8.2 que les plugins et leur interface graphique sont apparus.

  2. Bonjour ok merci pour votre réponse la je suis en 8 .0.4 je réessayerais de mettre la 8.2.0 via le tuto mise à jour et c été bien sa l accès à l interface n été plus possible en faite . J attend la suite de votre tuto avec impatience
    Cordialement

  3. Bonjour je souhaiterai sa voir si vous pouviez m’aidé je voudrai savoir si il étai possible de restauré a une version antérieure un un instantané zfs

  4. Bonjour,

    très bon tuto pour l’install de freenas, mais là je planche sur l’install des plug-ins et surtout de minidnla, impossible de charger la « jail » … je pense que cela doit venir de l’adresse ip qu’il faut déclarer pour cette prison, j’ai fait différents essais mais je ne trouve pas …
    pourriez vous m’aiguiller ?

      1. Je viens de publier la partie du tuto sur l’install de la jail si ça pet t’aider. J’ai eu aussi un problème lors des mises à jour avec les droits vers le dossier temporaire d’upload (choisi à l’étape 1), essaye de voir de ce côté là peut être.

  5. Je le repete…magnifique tuto. Merci encore pour le partage de tes connaissances.
    Il faudrait bientot un forum pour tes eleves 😉

    1. Merci beaucoup ! C’est vrai que les commentaires sont de plus en plus nombreux, cela dit je ne pense pas mettre un forum non plus. Il y a déjà tout ce qu’il faut 🙂
      – Sur HFR : le topic freenas
      – Sur le site officiel, il y a un forum français en bas

  6. Bonjour,
    Je viens de trouver votre tuto qui m’a bien aidé pour le mise en place du Jail. Merci beaucoup
    Je démarre bien mon le service plugins et je ping correctement l’adresse du jail.
    J’ai un Pb quand je cherche a installer un service avec un PBI publié par freenas. J’ai l’erreur suivante: Erreur: This file was not identified as in PBI format, it might as well be corrupt. et ceux avec tout les plugins publié par freenas.
    Je suis en version 8.3 RC1
    Merci beaucoup pour votre aide.
    Cdt
    Mohamed

    1. J’ai fini par trouver.
      Quand on met en place le point de montage pour les plugin il ne faut pas cocher la case mount.

      1. Merci beaucoup à Mickaël pour le tuto et respect pour Mohamed qui a trouvé la solution pour arriver à installer MiniDLNA sur la dernière version de FreeNAS (j’étais en train de devenir fou !).

  7. Bonjour, merci pour ce tuto. Tout à fonctionné parfaitement. J’ai même pu installer minidlna.

    Par contre je souhaiterais que mon nas puisse faire du stranscodage vidéo et utiliser par exemple « air play » pour lire mes films sur Ipad.
    Avez-vous une idée?

    Merci.

    A+, Olivier.

  8. Bonjour.
    Je n’arrive pas a configurer le DLNA. Je cherche un tuto aussi génial que celui posté précédemment mais en vain.
    J’ai apparemment bien configuré la Jail, mais après je sèche.
    Au secours.
    Merci
    Fred

    1. Bonjour Fred,

      J’ai un petit manque de temps en ce moment, du coup le tuto est un peu bloqué, la partie sur l’installation de minidlna ne devrait pas tarder. Normalement ce n’est pas très compliqué, il faut faire un point de montage, dans la conf de minidlna tu précise alors ce point de montage pour la source des fichiers

      1. Merci pour ta réponse.Je vais attendre patiemment la sortie de ton tuto…
        J’ai également un souci avec le FTP, il faut que je reprenne ça au calme.
        A bientôt.

  9. Merci pour ton tuto, notamment le premier sur l’install de Freenas !

    Si tu as le temps, je serai bien intéressé par un tuto sur la mise en place de raid un peu plus « poussé » comme le raid 0+1, 10 etc dans freenas 🙂
    (et aussi comme tu le disais, la sauvegarde sur NAS distant)

    Merci.

  10. Plop !

    Juste pour dire => Merci 😀

    Je me suis lancer dans le montage d’un NAS, et avec ton tuto c’est juste térrible !
    Donc merci pour le temps que tu nous a accorder, tu nous a rendu un fief service !

    Hâte de voir la suite … =D (si elle sera poster bien sur ^^)

    1. Hâte de voir la suite … =D (si elle sera poster bien sur ^^)
      ==>Le petit coup de pression … lol

      Merci pour ces tutos.
      Je suis en train de tester Freenas sur mon Proliant HP mini Server sous ESXi.
      Pas mal du tout…

  11. Bonjour,

    Merci pour le tuto !!
    j’ai installé MiniDLNA mais quand je veux y accéder via ma FreeBox ou mon PC il n’y a aucun fichier !

    Une petite idée ?

    Merci beaucoup .

    1. Bonjour,
      Tout d’abord je souhaite remercier l’auteur de ce tuto qui m’a beaucoup aidé à installé mon système !
      Par la suite j’ai malheureusement le même problème que toi au niveau du MiniDLNA … Freenas apparait sur ma freebox mais je n’y vois aucun dossier …
      Merci d’avance pour votre aide !

      1. J’ai finalement réussi ! J’ai tout d’abord redémarré mon freenas, puis j’ai redémarré mindlna, mais il me manquais une chose ! j’ai essayé de changer les permission du jeu de donné que j’ai mis en réseau pour le minidlna et j’ai coché en plus read et execute pour other, et là miracle, j’arrive à voir et à lire les videos présente dans mon freenas depuis ma tv !!!!
        J’espère que tu y arrivera de la même façon ! Bon courage 🙂

        1. (j’ai essayé de changer les permission du jeu de donné que j’ai mis en réseau pour le minidlna et j’ai coché en plus read et execute pour other, et là miracle, j’arrive à voir et à lire les videos présente dans mon freenas depuis ma tv !!!!)

          J’ai le même problème aprés installation mais je ne trouve pas exactement ou il faut aller pour « mis en réseau pour le minidlna.
          Pourrez tu m’aiguiller.

          Merci par avance.

          Yvan

  12. A nouveau MERCI.
    J’ai repris le tuto d’installation FreeNas (un vrai bonheur) et corrigé les droits utilisateurs pour l’accès CIFS (j’avais rajouté des paramètres qui se sont révélés bloquer l’accès) et maintenant cela fonctionne nickel.
    La jail est en place et MiniDLNA est opérationnel (en accès LAN).
    Cela répond parfaitement à mes besoins actuels mais je repasserai vous voir pour découvrir la suite éventuelle. Je vous encourage vivement à poursuivre sur la même voie !

  13. Bonjour à tous

    Merci pour ce tuto très bien détaillée. Je rencontre un souci peut-être que je vais avoir une réponse ici. J’ai suivis le tuto est installé le plugin jail, je souhaite réappatrier les ports avec la commande portsnap fetch extract et j’ai un message d’erreur que voici :

    Fetching public key from portsnap.FreeBSD.org… failed.
    No mirrors remaining, giving up.

    Savez-vous ce qu’il faut faire pour que la commande s’exécute. Un tour sur le wiki de Freenas est il est bien expliquer qu’il est possible d’exécuter cette commande.

    Cordialement

  14. Merci pour ce superbe tuto en français !
    J’attends avec impatience l’installation et la configuration des plugins transmission (bittorrent) et firefly (itunes) !!! Tout seul j’y arrive pas

    1. J’ai finalement réussi à utiliser ces 2 plugins ! J’étais tout simplement un peu con ! En fait comme on a créé une jail, une fois les plugins installés et configurés correctement (ce lien youtube m’a beaucoup aidé http://www.youtube.com/watch?v=Wp_pW-8Laro), pour pouvoir accéder aux plugins via le web il faut utiliser l’ip locale de la jail suivi du port utiliser pour le plugin auquel on souhaite accéder (ex ici : 192.168.0.51:9091 pour transmission). J’espère que ce commentaire pourra aider des personnes en difficultés !!!

  15. bonjour et merci pour ces deux superbes tuto excellent travail

    j’ai un souci avec mes fichiers qui n’apparaissent pas sur ma freebox alors que l’installation de minidlna s’est bien passée

    j’ai essayé de modifier les permissions mais sans résultat

    merci de votre aide et bonne continuation

  16. Filezilla est intéressant mais je recherche aussi un logiciel qui me permettrai de lire une vidéo via FTP (comme un streaming) au lieux d’avoir à la transférer d’abord comme le fait filezilla (ça prend environ 1h de transfert pour un film)
    Si quelqu’un connait une solution je suis preneur !

    Merci d’avance 🙂

    1. Salut Bruno,
      Pour faire du streaming ce ne sera pas via le FTP, par contre il y a moyen par les plugins :
      Il faut utiliser le plugin Subsonic en installant d’abord la jail, puis le plugin. Il y a aussi les ports correspondant à rediriger. Le tuto sur cette partie n’est pas prêt d’arriver, il y a tellement de choses à voir avant et j’ai trop peu de temps jusqu’en juin.
      Par contre c’est puissant : lecture depuis n’importe quel navigateur web, appli iphone et android, etc…

        1. Je confirme à tous ceux qui veulent tester ce plugin que c’est de la tuerie !!!!! Ca fonctionne nikel ! Belle interface web personnalisable, on peut voir ou ajouter des jaquettes, lire des musique ainsi que des vidéos depuis le web !!!!! J’ai pas encore test les appli iphone mais ça viendra 🙂 Encore merci, merci beaucoup de m’avoir aiguillé 😉

  17. Merci et félicitation pour ce tuto plus que remarquable.
    Pourriez vous me dire si il existe une solution pour un rafraichissement plus rapide sur les périphérique upnp.
    Merci

  18. Bonjour,

    Merci de tes infos precieuses pour l’aide à la config. de notre FreeNAS.
    Tes infos sont très utiles !
    On attends avec impatience l’eventuelle suite ? ( torrent, NG… 😉 ? )

    Par contre je rencontre un probleme… 🙁
    J’ai installé le mini DLNA, qui fonctionne avec la freebox ( v5 )
    pas de problemes pour lire les films ( si juste pour les sous titres qui ne s’affichent pas . )

    mais surtout, je ne vois pas mes mp3 !…
    je vois le dossiers, et les jpg ( covers qui sont dedans ) mais les fichiers mp3 n’apparaissent pas…
    j’essaye de comprendre le pourquoi de cela, mais ne trouve aucune reponse…

    merci de vos aiguillages ou solutions .

    1. donc apparemment .mp3 pas lisible par la Freebox V5 ( et on suppose que c’est le meme soucis avec les .srt ) :/

  19. bonjour à tous
    je viens le pluging mini dlna en suivant le tuto et j’ai le probleme suivant: je vois bien « medias nas »mais je vois pas les dossiers de mon volume selectionné dans les parametrages
    en attendant mon tvc livré demain je teste avec une appli android dlna qui fonctionne bien en wifi avec mon pc win7
    je teste egalement avec le lecteur windows media ou je vois autre bibliotheque « media nas » mais pas de dossier autres que ceux par defaut des applis
    une idée ??
    merci d’avance

    1. bonjour a tous
      mon freenas fonctionne bien avec le minidlna sur ,tvc,android compatible.
      ma question :j’ai 3 hdd ,je ne vois pas comment creer un lien pour avoir accés à chaque disk avec le minidlna.
      dois-je creer une ip pour chaque jail a installer?
      car mes dossiers sont déjà installés dans les volumes
      sinon je vais effacer et reorganiser ce qui est peut etre le plus simple
      cordialement
      Guy

  20. Bonjour,
    Bravo pour ces tutos. J’ai installé un Freenas dans le même boîtier. Tout est OK. J’ai accès à mes partages sous windows et sous debian wheezy.
    Je voudrais pouvoir synchroniser mes données de mon PC debian vers mon dataset de façon automatique. Il y a Unison mais il faut qu’il soit installé sur le Freenas (et ssh). Est-ce possible ? Comment faire ? Une autre solution (simple si possible) ?
    Merci d’avance

  21. Salut,

    Merci pour ton tuto!

    J’ai juste pour ma part un gros problème avec la JAIL.
    Je m’arrache les cheveux sur transmission et minidlna qui ne fonctionne pas…
    Je n’arrive pas à bien les paramètrer…

    Cela me prend tellement la tête que j’hésite à virer freenas pour repartir sur une debian…

  22. bonjour

    comment supprimer un dossier qui nécessite la permission de freenas (il s’agit d’un dossier d’une ancienne jail)

    merci

  23. Merci pour cette série de tuto sur freenas, je rencontre un soucis concernant le démarrage du module de plugin.
    J’ai suivi plusieurs tutos différents, à chaque fois au lancement du service, j’ai droit au super message d’erreur très explicite : « Le service n’a pas pu être démarré. » Du coup je ne sais pas trop où regarder. Y’a t’il moyen d’avoir des logs plus pertinents ?

    Version : FreeNAS-8.3.1-RC1-x64

  24. Bonjour a tous,
    j’ai installé le plugin mini dlna,ça fonctionne parfaitement avec mes differents appareils le probleme rencontré est qu’apres avoir ajouté un fichier dans freenas,je dois aller sur service, passer le bouton plugin sur OFF puis sur ON pour pouvoir lire le fichier sous dlna.
    ai-je raté quelque chose lors de l’installation du plugin?

  25. bonsoir, tout fonctionne bien mais minidlna ne m’affiche pas tous mes fichiers. En fat il y’a des dossiers qui ne sont pas pris en compte du tout.

    ça peut être des images comme des vidéo ou des musiques ..

    J’ai les droits sur other(read,execute)

    1. bonsoir
      chez moi ça fonctionne bien,mais il est important d’avoir quelques regles ,il faut une coherence des dossiers entre le « dlna » du tv ou android et freenas;ensuite a chaque ajout de fichier dans le dossier(ex:photos) sous freenas en mode admin ,dans service passer plugin sur OFF puis sur ON,attendre quelques secondes et c’est ok.
      Sur freenas,je connecte un tvc samsung dlna,mon telephone android,un mediacenter avec XBMC et un portable en wifi,je suis tres satisfait
      salutations
      guy

  26. Merci pour ce tuto, grace à toi j’ai passé des moments très sympa d autant que ca faisait longtemps que je voulais installer freenas mais il faut bien l admettre, peu de sites francais proposent des tutos aussi bien fait que le tien.
    j ai par ailleurs installe subsonic dans la foulée et c est vrai que c est fantastique aussi bien la musique que les films qui passent sans saccades….. bref c est génial
    Seul bémol cependant la fonction qui permet d ajouter un script de démarrage n est plus présente ds la version 8.3.1 de freenas ce qui oblige a lancer ds le shell la ligne de commande pour lancer subsonic.
    je cherche désespérément la solution mais j y arrive pas…je souhaiterai que subsonic se lance automatiquement au démarrage de freenas…merci de votre aide

  27. Salut et bravo pour ce tuto très explicite .
    j’ai un soucis .
    en voulant ajouter minidlna j’ai suivit ton tuto mais là où il devrait y avoire les paramètres de minidlna je n’ai rien (dans modules>gestion>paramètres>?) (oui il est en français chez moi 🙂 ) j’ai points de montage et rien d’autres .
    alors que dans services>contrôles des services>modules> j’ai minidlna
    j’ai réinstaller 2 fois la jail mais tjs rien !!!
    que faire????

      1. Hello,

        Tout aller bien jusqu’au parametra de Minidlna, en effet comme vous dans modules>gestion>parametres je n’airien pour configurer minidlna et donc je ne peux pas l’activer
        Sinon super tuto !!!!

        1. voila j’ai réinstaller tout en suivant le 1er tuto (avec la version 8.3.1 r2) puis celui ci pour l’installe de la jail et des plugins ça a marcher 😀
          merci beaucoup pour ce super tuto

          encore une question si je voulais avoir les alertes du « feu tricolore » et d’autres logs en flux rss pour les afficher ds le bandeau qui défile dans xbmc sur le bas du dashboard comment puis-je faire ??

  28. Salut et vraiment merci pour ce tuto !
    Je me suis monté un freenas facilement grâce à toi !

    Cependant je rencontre un petit soucis.
    J’ai l’impression que le point de montage ne se fait pas.
    En effet j’ai monté /mnt/pool1/Medias dans: /mnt/pool1/Jail/Jail/medias et j’ai bien coché la case « monted » comme tu l’as indiqué.

    Mais quand je connecte mon téléphone il ne voit pas le contenu de /mnt/pool1/Media
    En revanche si je rajoute des fichier directement dans /mnt/pool1/Jail/Jail/medias, après redémarrage du service ils apparaissent bien sur mon téléphone… 🙁

    Any idea ??

    Après 2e question, est il possible d’accéder à ces ressources depuis l’extérieur ?? En fait l’idée serait d’avoir accès à toute ma musique, photos etc sur mon tel depuis n’importe où.

    Et dernière question est il possible d’installer Music Player Daemon sur Freenas ? Je n’ai pas réussi à trouver de réponse sur le net 🙁

    Encore merci en tout cas pour toutes ces infos.

  29. Bonsoir, j’ai installé transmission dans la jail. Je n’ai rien touché d’autre. J’arrive à dl des torrent par contre l’upload ne se fait pas.

    J’ai testé sur des torrent de t411. J’ai aucun débit montant..

  30. bonjour, et merci pour ces tuto très pratique,
    ma question,
    est-il possible de faire tourner plusieurs « transmissions  » en même temps…
    je me sers du nas comme sauvegarde de site P2P mais dépassé un certain nombre de .torrent actif, tout les logiciels client p2p flanchent, sans exception, donc plusieurs clients en même temps sur freenas, possible ou pas ????
    Merci

  31. Bonjour, FREENAS à évolué en 9.1.1, étant novice, serait-il possible de faire un petit tuto pour pouvoir installer minidnla dans une jails. Je n’y connais rien et ne comprends pas le son fonctionnement. Un grand merci d’avance

  32. Bonjour
    Tout d’abord excellent site nickel
    bon tout marche bien j’ai les versions du site et tout
    j’ai 2 disque dur quand j’en monte l’un ou l’autre dans /jail/media pas de souci
    mon souci réside dans le montage de 2 disques j’ai /mnt/films ou se trouve mon jail dans /mnt/films/jail et avec mon répertoire /FILMS
    et un autre disque /mnt/serie_muzik ou se trouve un répertoire /serie que je voudrais ajouter dans mon DLNA en plus de mon repertoire FILMS
    Pouvez vous m’aider
    Merci d ‘avance et encore félicitations pour votre site

    1. Bonjour !
      Déjà ça me semble un peu confus comme organisation, mais pourquoi pas si tu t’y retrouve 😉 Du coup je pense que dans ta jail tu fais dans /medias un dossier films et un dossier series et puis tu déclare /media à Minidlna et tout ça en mettant en point de montage /mnt/films dans /medias/films et /mnt/serie dans /medias/serie

      1. Bonjour,
        a l’origine j’avais un disque pour les films et un pour les series avannt l’installation de mon DLNA
        j’ai essayé cela mais cela ne fonctionne pas meme en refaisant le DLNA je me demande si on peut affecter 2 disque differents dans le DLNA qui se trouve sur un des disques
        du coup je suis en train de tout sauvegarder pour faire un seul volume de mes 2 disques pour ne plus avoir de souci

  33. Bonjour,
    sympa le tutoriel

    j’ai fait une petite recherche sur Google et et regarder vite fait sur ce site mais je n’ai pas trouver

    ma demande est pas très compliquer mais je ne sais pas coment la mettre en place

    j’ai un FREENAS installer depuis plus d’1 ans, il fonctionne très bien,

    je suis en train de refaire mon appartement, j’aimerai bien laisser dans un coin enfermer mais ventilé mon serveur NAS plutot qu’il prenne de la place sur mon bureau

    ma question est donc, étant donnée que je coupe le courant quand je suis en déplacement

    j’aimerai a mon retour remettre le courant et avoir la possibilité de démarrer via le réseau « Wake On LAN » mon serveur NAS en utilisant un autre ordinateur

    sachant que je connais l’adresse MAC et l’IP car j’ai mis des réservation DHCP via ma box SFR

    Merci de m’aider , je pense qu’il faut ouvrir des port ou bien désactiver des sécurité sur les deux PC

    A+

    1. Bonjour !
      Alors il y a souvent des questions sur le Wake On Lan (WOL), mais en fait ça dépend beaucoup plus du matériel que du système d’exploitation, les réglages se font avant tout dans le BIOS, tu dois y vérifier que WOL est bien activé, parfois tu peux choisir le type de paquet.
      Au niveau freeNAS, la chose à vérifier est que la carte réseau supporte le WOL : dans une console tu fais un ifconfig et tu va voir les paramètres de ta carte réseau. Il doit y avoir dans les options WOL_.
      Honnêtement je n’ai jamais essayé et peu de personnes arrivent à le faire fonctionner.
      Par contre j’utilise une fonction du BIOS qui pourrait t’intéresser : j’ai mis une option de remise en route automatique après perte d’alimentation. Donc si j’arrête le NAS, coupe le courant, dès que je le remet il redémarre. J’ai mis ça pour avoir une remise en marche automatique après panne si je ne suis pas là mais ça doit aussi marcher pour ton cas.

      1. Salut, merci pour la réponse

        je vais essayer cela quand je serait rentrer du boulot

        j’ai juste vérifier le WOL est je le vois bien sur l’interface de ma carte réseau

        reste plus que vérifier sur le BIOS et essayer d’activer le reboot après remise courant comme tu l’a fait

        savoir si tout les BIOS en donne la possibilité

        je tiendrai informé après test

  34. Salut, petite question avant de tester ou non d’ailleurs

    mais seulement pour information,

    Si je décide de changer ma clé USB sur laquel ce trouve mon Freenas 8.0.3 x64

    pour y mettre une nouvelle clé USB contenant la dernière version de Freenas 9.1.1 x64

    j’aurais seulement a brancher la nouvelle Clé et puis me connecter sur l’interface web et importer ma config soigneusement sauvegardé ?

    je me tâte de faire la MAJ car mon NAS actuellement fonctionne très bien

    merci A+

  35. bonjour et cool le tuto ca m’a beaucoup aidé.
    j’ai suivi tout ca avec bcp d’attention mais la j’ai un bug lol
    j’ai fais la mise a jour et je suis maintenant avec FreeNAS-8.3.2-RELEASE-x86
    Platform Intel(R) Pentium(R) D CPU 3.40GHz
    Memory 997MB
    System Time Thu Sep 19 09:30:21 CEST 2013
    Uptime 9:30AM up 9:42, 0 users
    Load Average 0.18, 0.09, 0.04
    la je rencontre un souci. j’ai le bouton alert ( le bouton rouge au debut du tuto) qui clignote jaune 🙁
    quand je clique dessus voici le message qu il me donne:
    WARNING: The volume nas (ZFS) status is UNKNOWN: The pool is formatted using an older on-disk format. The pool can still be used, but some features are unavailable.Upgrade the pool using ‘zpool upgrade’. Once this is done, the pool will no longer be accessible on older software versions.
    quelqu un peut m’aider svp? merci a vous et bonne continuation pour le tuto

  36. Salut, alors j’ai essayer aujourd’hui de paramètrer le Wake On LAN sur mon freenas

    alors dans le Bios j’ai bien activer le power on lan

    si je fait ifconfig, sur ma carte réseau j’ai ceci
    nfe0 …………….
    option=82008(VLAN_MTU,WOL_MAGIC,LINKSTATE)
    capabilities=82008((VLAN_MTU,WOL_MAGIC,LINKSTATE)
    ether 90:e6:ba:xx:xx:xx
    inet 192.168.1.10 netmask 0xffffff00 broadcast 192.168.1.255

    comment puis-je faire pour activer le WOL

    merci

    1. Bonjour, alors j’ai passé environ 3 à 4h sur mon freenas hier soir

      après avoir écrit mon message précedent, j’ai retester une manip et puis la le drame, la carte réseau exister plus
      aucun traffic dessus, invisible sur freenas, mis à par l’adresse de bouclage

      alors j’ai cocher et decocher, plein de chose dans le BIOS, remis les paramètre par défaut, sans succè, j’ai deplacer le serveur puis retester quelque combinaison de activation et désactivation BIOS,

      la carte est remonté, MAIS , il voulais plus booté sur la clé USB malgré que elle était en premier dans l’ordre Boot

      après quelque paramètrage en plus, mon serveur démarre normalement

      j’ai donc via une autre clé USB contenant le serveur en version 9.1.1, démarrer, et la j’ai importer ma config

      il reboot et la nickel , je suis en dernière version et je n’ai pas perdu de donnée apparemment, j’ai pas tt vérifier lol (3.5To :p)

      et maintenant le WOL fonctionne , donc apparemment il faut juste activer dans le BIOS et cela fonctionne

      j’utilise pour WOL, a partir de mon Windows WakeOnLANGui.exe facilement trouvable sur internet

      voila Merci pour l’aide apporter. et pour le Tuto

      A+

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *