Si vous avez un serveur FreeNAS à la maison, vous pouvez vouloir l'allumer et l'éteindre en fonction des autres ordinateurs du réseau. Avec deux scripts et un Raspberry Pi, le Wake-on-LAN automatique et l'arrêt automatique sont possibles pour FreeNAS.
La condition préalable de base est que Wake-on-LAN avec FreeNAS travaux. En outre Arrêter automatiquement FreeNAS. C'est le cas lorsqu'il n'y a pas d'autres appareils en ligne sur le réseau qui peuvent faire une demande de données à FreeNAS. Vous avez également besoin d'un Rasberry PiDans cette configuration, il scanne le réseau à la recherche de périphériques actifs et envoie le paquet WOL à FreeNAS dès qu'un ordinateur est trouvé.
Etape 1 : Eteindre FreeNAS automatiquement & activer le Wake-on-LAN
Comme décrit dans mes instructions, FreeNAS doit être configuré de sorte qu'il s'arrête automatiquement lorsque plus aucun ordinateur n'est en ligne. Assurez-vous que le support Wake-on-LAN est activé. J'ai décrit les étapes requises pour ces deux points dans d'autres articles du blog :
Étape 2 : Préparer le Raspberry Pi
Afin que le Raspberry Pi puisse envoyer le "paquet magique", qui réveille le serveur FreeNAS, il est nécessaire d'installer le logiciel approprié. Je le décris ici en utilisant Raspbian, mais cela fonctionne aussi pour d'autres distributions.
~# sudo apt-get install etherwake
Etherwake est utilisé pour envoyer la commande de réveil à l'adresse MAC du serveur FreeNAS. Vous pouvez essayer avec la commande suivante, le NAS devrait alors démarrer :
~# etherwake 00:11:22:33:44:55
Si le serveur FreeNAS démarre maintenant, cette partie de la configuration a fonctionné : le Raspberry Pi peut démarrer le serveur FreeNAS via Wake-On-LAN.
Étape 3 : Automatiser le Wake-on-LAN
Ces instructions supposent que tous les ordinateurs du réseau qui accèdent au serveur FreeNAS ont une adresse IP fixe. Sinon, il faudrait scanner une certaine plage d'adresses IP, mais l'idée de base reste la même : le Raspberry Pi vérifie toutes les 5 minutes si l'une des adresses IP répond à un ping. S'il y a une réponse, le paquet Magic est envoyé pour réveiller le FreeNAS. Le temps d'attente maximum entre le démarrage du client et l'accès possible aux données est donc de 5 minutes + le temps de démarrage du NAS.
Le script suivant vérifie si les adresses IP stockées dans "pinglist.txt" répondent :
#!/bin/bash # Nom du programme : wakeup.sh date cat /directory/to/pinglist.txt | while read output faire ping -c 1 "$output" > /dev/null if [ $ ? -eq 0 ] ; then echo "IP $output is up". /usr/sbin/etherwake 00:11:22:33:44:55 sinon echo "IP $output is down". fi fait
La sortie devrait alors ressembler à ce qui suit si vous avez rendu le script exécutable avec chmod 777. Un appareil est en ligne, donc un signal de réveil est envoyé à FreeNAS :
Sun Sep 7 16:37:18 CEST 2014 L'IP 192.168.0.60 est en panne. L'IP 192.168.0.61 est en panne. L'IP 192.168.0.68 est en place. L'IP 192.168.0.65 est en panne. L'IP 192.168.0.73 est en panne.
Conclusion
En combinaison avec l'arrêt automatique, le démarrage automatique prend encore plus de sens. Le NAS n'est donc vraiment actif que lorsqu'il est nécessaire - cela permet d'économiser de l'énergie et déjà les disques durs. Avec un Raspberry Pi, il y a d'autres options de contrôle intéressantes, par exemple le démarrage ciblé du FreeNAS la nuit autour de l'heure du coucher du soleil. Sauvegarde à réaliser.
[amazon box="B07P7TNND4″]