Problème avec mon ondulateur
Bonjour,
Mon PC est relié à mon onduleur APC, et quand j'éteins mon PC, l'APC s'éteint lui aussi. J'aimerais lui envoyer une commande shell pour lui "dire" de s'éteindre dans au bout d'un certain temps.
Sauriez-vous comment faire ?
Mon PC est relié à mon onduleur APC, et quand j'éteins mon PC, l'APC s'éteint lui aussi. J'aimerais lui envoyer une commande shell pour lui "dire" de s'éteindre dans au bout d'un certain temps.
Sauriez-vous comment faire ?
2 réponses
-
Bonjour,
En admettant que la machine distance soit joignable parssh
, alors tu peux utiliserssh
pour transporter une commande vers une machine distance.
Exemple :
ssh user@machine "hostname"
La commandessh
demandera le mot de passe de l'utilisateuruser
supposé créé machinemachine
. Il est possible de faire une authentification sûre et transparente à l'aide d'une clé ssh.
La commandehalt
permet d'arrêter un ordinateur, mais nécessite des droits administrateur. Si ssh est bien configuré, l'utilisateuruser
ne peut pas être l'utilisateurroot
car par défaut ssh est configuré pour refuser les authentifications en root.- Activer les authentifications root via ssh est dangereux, donc le mieux est sans doute de faire en sorte que
user
ait le droit d'exécuter la commandehalt
. - Une meilleure approche consiste à utiliser
sudo
. Sans rentrer dans les détails desudo
, le plus simple est d'en faire un sudoer (en ajoutant cet utilisateur au groupesudo
). Cela permet àuser
de lancer des commandes comme s'il était root après avoir saisi son propre mot de passe.
Or le mot de passe demandé parsudo
doit être saisi au niveau de la machine distante, alors comment faire ?- Première méthode, tu peux définir dans
/etc/sudoers
(de la machine distante, pour le profil user) la possibilité d'utilisersudo
sans mot de passe. C'est assez dangereux mais c'est une manière de faire. Mais c'est un choix très discutable en terme de sécurité. - Seconde méthode, tu utilises l'option
-S
desudo
pour transporter le mot de passe.
Exemple :
ssh user@machine "sudo -S halt"
Reste à retarder la commandehalt
. Comme évoqué dans cette discussion il existe plusieurs manière de faire, principalement soit en utilisantsleep
, soit en utilisantat
.
Exemple :
ssh user@machine "sleep 3 && sudo -S halt"
Malheureusement, cette commande est contraignante, car il faut attendre 3 secondes avant de pouvoir saisir le mot de passe. Pour contourner ce problème, tu peux écrire surmachine
un script (disons/home/user/toto.sh
) contenant :
#!/bin/bash sleep 3 halt
... et que tu lanceras viassh + sudo
:
ssh user@machine "sudo -S /home/user/toto.sh"
Bonne chance - Activer les authentifications root via ssh est dangereux, donc le mieux est sans doute de faire en sorte que
-
Bonjour
Si vous branchez et allumez un autre élément (en +) que votre PC sur cet onduleur, genre une petite lampe ou un réveil..
L'onduleur s'éteint il aussi quand vous éteignez l'ordinateur ?
L'onduleur n'est pas fait pour s'éteindre automatiquement sauf "peut être" s'il est raccordé avec un câble USB/RJ50 au PC et configuré avec l'appli spécifique de l'APC...
A+