Bonjour à tous,
je gère un petit parc informatique, qui se compose d'un serveur et de 4 pc pour une asso,
Les pc allument le serveur via un wakeonlan là facile :).
quand le serveur est allumé je souhaite l'éteindre quand toutes les autres machines sont éteintes et là moins facile :(
Je pourrais lancer un script toutes les heures qui scan le réseau à la recherche de PC connectés
mais y'a t il plus simple ?
# Pas mieux
Posté par tetraf . Évalué à 3.
Le script qui vérifie la présence (un simple
ping
/fping
suffit) des machines à intervalle régulier me semble le plus simple.L'alternative serait que les machines informent le serveur de leur état mais ça serait plus (pas beaucoup) complexe à mettre en place et pas vraiment plus efficace.
Ou alors il faut regarder du coté de la découverte du voisinage (avec
ip n
, par exemple) mais ce ne sera pas aussi fiable qu'une vérification active (et puis une volée de ping ça ne coûte pas grand chose).[^] # Re: Pas mieux
Posté par Sytoka Modon (site web personnel) . Évalué à 3.
On doit pouvoir faire simple et rapide sur un petit réseau (sans VLAN) avec un simple fping suivis d'un arp (avec une petite tempo entre les deux…).
[^] # Re: Pas mieux
Posté par Sytoka Modon (site web personnel) . Évalué à 3.
Plus lent mais plus fiable, le arping…
[^] # Re: Pas mieux
Posté par jmax17 . Évalué à 2.
merci pour les infos je posterais mon script quand il marchera :)
# Dernier client allumé
Posté par ptit_poulet . Évalué à 0.
Bonjour,
Et pourquoi ne pas ajouter un script sur chaque client qui lors de l'arrêt regarde si les 3 autres petits camarades sont allumés et s'ils sont éteint, il envoie un shutdown au serveur. Comme ça lorsque le dernier client s'éteint, le serveur s'éteint dans la foulée. Donc pas besoin de le laisser tourner plusieurs minutes/heures l'instant que le script ajouté dans le cron fasse son job.
[^] # Re: Dernier client allumé
Posté par totof2000 . Évalué à 3.
Mauvaise idée pour au moins 2 raisons :
- tu ne prends pas en compte les arrêts intempestifs (oui, même sous Linux, une machine peut se vautrer)
- tu donnes aux clients le droit d'éteindre le serveur, ce qui pourrrait donner des idées à des petits malins.
[^] # Re: Dernier client allumé
Posté par ptit_poulet . Évalué à 0.
Un arrêt intempestif n'arrêtera pas le serveur puisque le script ne sera pas exécuté. Donc forcément après un plantage le client va relancer sa machine pour continuer à bosser.
Même si un utilisateur est mal intentionné, il ne pourra pas nuire aux autres. Puisque si un autre utilisateur bosse sur sa machine le serveur ne sera pas éteint par la machine de l'utilisateur mal intentionné…
[^] # Re: Dernier client allumé
Posté par totof2000 . Évalué à 2.
Oui, mais dans le cas ou le client se plante et n'est pas démarré, le serveur n'est pas arrêté.
Et comment empêches-tu ça ?
[^] # Re: Dernier client allumé
Posté par NeoX . Évalué à 2.
parce que le script qui va eteindre le serveur doit d'abord pinguer ses copains pour savoir s'ils sont allumés.
donc il n'y a que le dernier PC allumé qui peut eteindre le Serveur.
[^] # Re: Dernier client allumé
Posté par totof2000 . Évalué à 2.
Tu supposes que le client passera automatiquement par le script pour éteindre le serveur ? Moi non.
[^] # Re: Dernier client allumé
Posté par NeoX . Évalué à 2.
je ne crois pas que l'utilisateur le fasse, c'est exact,
mais quelques soit le PC, il y a toujours un 'logoff script' possible, meme avec un windows
et avec des linux, ca se rajoute des les initlevel
[^] # Re: Dernier client allumé
Posté par ptit_poulet . Évalué à 0.
Non je ne pensais pas non plus faire faire ça par l'utilisateur.
Mais plutôt de mettre ça en place dans les tâches d'extinction de l'ordinateur…
[^] # Re: Dernier client allumé
Posté par totof2000 . Évalué à 2.
Dans ce cas, personnellement, je suis un peu parano, et je ferais un peu différement. Je mettrais dans les taches d'extinction un script qui préviens le serveur que leclient s'éteint, puis le serveur vérifie lui-même que d'autres clients ne sont pas encore allumés avant de s'éteindre. On ajoute à ca un contrôle périodique (toute les 15 mn par exemple) pour ne pas rater les clients qui ne sont pas passés par une phase d'extinction propre (comme je ne connais pas le contexte, je suppose être en présence d'utilisateurs qui pourraient décider d'éteindre la machine en débranchant le cable d'alim).
[^] # Re: Dernier client allumé
Posté par totof2000 . Évalué à 2.
Moi non plus, mais donner les droits à un client de pouvoir éteindre un serveur me parait "risqué" : une faille ou un problème de configuration pourrait permettre à un utilisateur d'élever ses privilègess et d'éteindre le serveur. Certes ce n'est pas fréquent, mais ça arrive assez souvent pour m'inciter à être prudent (et les découvertes de ces derniers temps en matière de sécurité me confortent dans cette approche).
[^] # Re: Dernier client allumé
Posté par ptit_poulet . Évalué à 0.
Ba ce cas alors, c'est le serveur tout seul qui fait le taff.
[^] # Re: Dernier client allumé
Posté par NeoX . Évalué à 2.
autre piste, si c'est un serveur, il y a des connexions ouvertes, visibles avec
netstat -puant | grep EST
un ou deux grep /cut/awk pour eliminer les connexions du serveur sur lui meme, et tu sais si des connexions sont encore actives.
evidemment cela peut arreter le serveur alors qu'un client est juste "non connecté"
et donc provoquer un arret non souhaité
à ce moment là, il devra faire un wakeonlan pour le rallumer
# le dernier appuie sur le bouton...
Posté par NeoX . Évalué à 3.
un serveur ca reste un PC comme un autre,
tu peux programmer la mise en veille, voire l'hybernation.
sinon tu peux simplement demander au dernier d'eteindre le serveur, comme il devra eteindre son PC, la lumiere et fermer le local de l'asso.
[^] # Re: le dernier appuie sur le bouton...
Posté par jmax17 . Évalué à 1.
oui c'est aussi une très bonne idée mais elle n'est pas très fun :)
j'ai encore quelques problèmes avec l’installateur automatique debian (le preseed.cfg)
une fois ces problèmes réglés je me penche sérieusement sur la question
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.