NAS - Tuning: le NAS, extension invisible du PC

Publié par Adrien le 19/06/2017 à 15:07
Nous avons un NAS avec des disques durs performants. Tous les équipements de la maison peuvent s'y connecter. Mais le NAS reste un périphérique indépendant. L'idéal serait de le rendre le plus discret possible, afin qu'il se manifeste uniquement lorsque l'on en a besoin (Les besoins se situent au niveau de l'interaction entre l'individu et l'environnement. Il est...), et se fasse oublier autrement.

Dans cette partie tuning (Le terme tuning se rapporte à la personnalisation d'un véhicule routier (automobile,...), nous allons voir comment faire pour que le NAS sorte de son sommeil (Le sommeil est un état naturel récurrent de perte de conscience (mais sans perte de la...) lorsqu'un équipement se connecte sur le réseau (Un réseau informatique est un ensemble d'équipements reliés entre eux pour échanger des...), et retourne en veille après la déconnexion du dernier équipement... Et ceci de manière totalement automatique (L'automatique fait partie des sciences de l'ingénieur. Cette discipline traite de la...).

Accéder à la console Linux

Comme vu dans le chapitre "Configuration logicielle", le système d'exploitation interne (En France, ce nom désigne un médecin, un pharmacien ou un chirurgien-dentiste, à la...) du NAS est basé sur un noyau Linux (Le noyau Linux est un noyau de système d'exploitation de type UNIX. Le noyau Linux est un...). Vous pouvez y accéder via ssh, avec le login 'root' et le mot de passe administrateur renseigné lors du premier démarrage du NAS.

Voici ce que retourne la commande (Commande : terme utilisé dans de nombreux domaines, généralement il désigne un ordre ou un...) 'cat /proc/version':

Citation:
Linux version 4.4.24 (root@sw1-server) (gcc version 4.6.4 (crosstool-NG crosstool-ng-1.22.0 - x86_64 64-bit toolchain - ASUSTOR Inc.) ) #1 SMP Wed May 10 03:13:12 CST 2017


A noter, le linux en place est optimisé par Asustor, il est allégé comparé aux distributions du marché. Entre autres, certaines commandes pourtant habituelles ne fonctionnent pas par défaut, telle que 'history', et d'autres ont un nombre (La notion de nombre en linguistique est traitée à l’article « Nombre...) de paramètres fortement réduits, telle que 'netstat (La commande netstat, pour « network statistics », est une commande en ligne...)'.

Surtout, n'espérez pas modifier en profondeur les paramétrages systèmes: les fichiers de configuration sont réinitialisés à leur valeur d'origine à chaque redémarrage du NAS.

Vous pourrez toutefois éditer la crontab (crontab est le nom du programme sous Unix (ou Linux) qui permet d'éditer des tables de...) pour lancer automatiquement des scripts qui s'exécuteront dans votre répertoire 'home'. C'est ce que nous allons faire, avec un script forçant la mise en veille S3 du NAS basé sur l'occupation réseau et non l'occupation des disques durs.


Résultat de la commande htop

Forcer la mise en veille S3

Comme vu plus haut, ADM permet de configurer une mise en veille automatique du NAS à condition que les disques durs ne soient pas sollicités. Le problème est que nous souhaitons utiliser Resilio Sync, qui par nature effectue des accès disques réguliers.

Une nouvelle stratégie (La stratégie - du grec stratos qui signifie « armée » et ageîn qui signifie...) serait une mise en veille automatique du NAS à condition qu'aucun équipement ne soit connecté sur celui-ci. Ce qui revient à le mettre en veille lorsque personne ne l'utilise. Il est important de noter que cette procédure n'est pas fournie par Asustor, et qu'elle peut comprendre des risques. A vous d'accepter, si vous souhaitez la mettre en place, les risques qui peuvent survenir (risque de mauvaise manipulation par exemple).

Pour forcer la mise en veille S3, le NAS doit être capable:
1- de contrôler régulièrement les connexions réseaux en cours
2- si aucune connexion n'est établie durant plusieurs minutes ( Forme première d'un document : Droit : une minute est l'original d'un...), de se mettre en veille S3

Pour cela, nous pouvons créer dans un sous-dossier 'scripts' du home de 'adrien' le fichier ( Un fichier est un endroit où sont rangées des fiches. Cela peut-être un meuble, une pièce,...) 'sleepNAS.sh' suivant:

Citation:
#!/bin/sh

cd ~adrien/scripts

if [ `netstat -ap | grep (grep est un programme en ligne de commande initialement écrit pour Unix utilisant l'algorithme...) ESTABLISHED | grep -vf sleepNAS_ignoreNetstat | wc -l` = 0 ]
then
sleep 300
if [ `netstat -ap | grep ESTABLISHED | grep -vf sleepNAS_ignoreNetstat | wc -l` = 0 ]
then
/etc/init.d/NASsuspend
fi
fi


On ajoute au même endroit le fichier sleepNAS_ignoreNetstat comprenant les lignes suivantes:

Citation:
Plex DLNA
NAS-AS3202T.*NAS-AS3202T
orbwebM2M


sleepNAS.sh dénombre le nombre de connexions en cours. Si ce nombre est à 0, il attend 5 minutes et dénombre de nouveau le nombre de connexions en cours. Si il n'y a toujours pas de connexion ouverte, le script 'NASsuspend' est appelé. Il s'agit du script développé par Asustor permettant de mettre en veille S3 le NAS, après une série de vérifications. Il s'agit 'a priori' de la même procédure qui est exécutée lorsque l'on met le NAS en veille via l'interface (Une interface est une zone, réelle ou virtuelle qui sépare deux éléments. L’interface...) ADM.

Le fichier 'sleepNAS_ignoreNetstat' est une liste de mots-clés associés aux connexions à ignorer. Par exemple, une connexion 'Plex DLNA' est constamment ouverte entre la NAS et la Box. Cette connexion peut être ignorée, car lorsque Plex diffuse du contenu, une nouvelle connexion 'Plex MEDIA' est créée et c'est cette dernière qui empêchera le NAS de se mettre en veille. Ce fichier doit être complété en fonction des connexions ouvertes par les applications installées.

Nous ajoutons enfin cette règle dans la crontab afin que 'sleepNAS.sh' soit exécuté toutes les 10 minutes:

Citation:
*/10 * * * * ~adrien/scripts/sleepNAS.sh


Le NAS ne se mettra donc pas en veille si il existe au moins une connexion entre un équipement, par exemple un PC ou MAC, et ce dernier. Comme nous avons configuré Resilio Sync ainsi qu'un partage réseau de dossiers du NAS sur tous nos ordinateurs, ces connexions existent tant que ces équipements sont connectés au réseau. A l'extinction (D'une manière générale, le mot extinction désigne une action consistant à éteindre quelque...) du dernier équipement, le NAS ne détectera plus de connexion et le script le mettra automatiquement en veille dans le quart d'heure (L’heure est une unité de mesure du temps. Le mot désigne aussi la grandeur...) qui suit.

Démarrer automatiquement le NAS au démarrage de son PC

Nous avons vu dans le chapitre précédent comment mettre automatique en veille S3 le NAS en l'absence de connexion réseau (Une connexion réseau désigne le fait qu'un équipement informatique (au sens ETTD,...). Nous voyons dans ce chapitre comment démarrer le NAS automatiquement au démarrage d'un PC sous Windows (Windows est une gamme de systèmes d'exploitation produite par Microsoft, principalement destinées...) (procédure transposable sur d'autres systèmes, comme MAC ou Linux).

Asustor fournit ses NAS avec la fonctionnalité Wake On Line (WOL). Il s'agit d'un protocole permettant le réveil d'un équipement, ici le NAS, via le réseau. La méthode est simple: un 'paquet magique', c'est son nom, est envoyé sur tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou...) le réseau avec pour paramètre (Un paramètre est au sens large un élément d'information à prendre en compte...) l'adresse MAC (En réseau informatique une adresse MAC (Media Access Control address) est un identifiant...) de la carte réseau du NAS. Lorsque cette dernière reçoit ce 'paquet magique', reconnu grâce à l'adresse (Les adresses forment une notion importante en communication, elles permettent à une entité de...) MAC, l'ordre est donné au NAS de se réveiller.

Pour démarrer automatiquement le NAS au démarrage de son PC, il nous faut:
1- Connaitre l'adresse MAC de la carte réseau du NAS
2- Exécuter un script envoyant le paquet magique sur le réseau
3- Programmer une tache planifiée à l'ouverture d'une connexion réseau

Comme tout équipement disposant d'une carte réseau, le NAS possède sa propre adresse MAC. Nous la déterminons via l'utilitaire (Le mot utilitaire peut désigner :) ASUSTOR Control Center.


ASUSTOR Control Center détecte le NAS sur le réseau, et permet de connaitre son adresse MAC

Il nous faut maintenant un outil (Un outil est un objet finalisé utilisé par un être vivant dans le but d'augmenter son...) permettant de générer et d'envoyer un paquet magique sur cette adresse MAC. Nous avons pour cela téléchargé l'exécutable mc-wol.exe disponible ici: http://www.matcode.com/wol.htm

La commande suivante permet de réveiller notre NAS:

Citation:
mc-wol.exe 10:BF:48:8B:BA:EC


Pour que le NAS se réveille au démarrage du PC, il suffit d'ajouter la commande précédente dans une tâche planifiée Windows, avec pour évènement associé la connexion au réseau:

Citation:
Path="Microsoft-Windows-NetworkProfile/Operational">*[System[Provider[@Name='Microsoft-Windows-NetworkProfile'] and EventID=10000]


Résultat: au démarrage de Windows, le NAS se réveille automatiquement avant même que l'utilisateur n'ait eu le temps (Le temps est un concept développé par l'être humain pour appréhender le...) de s'identifier et d'arriver sur le bureau. Les disques réseaux liés au NAS se connectent à leur tour automatiquement, de même pour Resilio Sync, et ce sont ces connexions qui maintiendront le NAS réveillé tant que le PC restera allumé (voir chapitre précédent).
Page générée en 0.096 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique