Aller au contenu

[Resolu] Commande Ssh Du Synology Vers Autres Linux


Messages recommandés

Hello tous le monde.

Je ne suis pas tres bon en linux et j'ai donc besoin de vous, et je vous en remercie d'avance.

Je souhaiterais envoyer une commande vers un autres linux.

Pourquoi ?

J'ai fait récemment l’acquisition d'un raspberry Pi ( ça fonctionne super ce petit truc... ) je me sert d'un des port USB du SYno pour l'alimenter, comme ça quand le syno est allumer le RPI est lui aussi allumer.

mais avant d’éteindre le SYno j'aimerais envoyer un shutdown vers le RPI (xbmc-send --action="XBMC.Quit") mon syno ce coupe a 1h00 du mat.

un petit coup de main serais le bienvenue je pense ne pas etre loin...

si j'ai bien compris il faut que j'utilise la commande SSH

j'ai essayer ça :

ssh root@192.168.1.20 -c xbmc-send --action="XBMC.Quit"

je pense avoir un PB avec les ".

et comment envoyer le password ?

merci a vous

Modifié par Petit_bill
Lien vers le commentaire
Partager sur d’autres sites

Plusieurs choses:

  • Je n'ai pas manipulé de Raspberry mais je serais surpris que ce soit une commande dans le style de 'xbmc-send --action="XBMC.Quit" 'qui fasse un shutdown du bidule ("shutdown -h now" me semblerait plus approprié)
  • Le switch "-c" de la commande "ssh" sert à forcer le type de cryptage utilisé lors de la session et requiert un argument. La présence de ce switch dans ta commande est fort probablement une erreur de ta part.
  • une fois trouvée la bonne commande et l'avoir incluse dans un script de shutdown (je suppose que tu as prévu de faire ça dans "/usr/local/etc/rc.d") penser à insérer un délai pour laisser le temps au PI de s'arréter effectivement.
  • pour ne pas avoir à saisir de mot de passe faut passer par une authentification par clé:
    • génération d'une paire de clé privée/publique dédiée au shutdown du PU, sans passphrase, sur le syno (commande "ssh-keygen -f <chemin_fichiee_clé>").
      Pour le chemin, ~root/.ssh est l'endroit approprié (par sécurité il est requis que seul root ait accès à ce répertoire en écriture mais autant verrouiller la lecture aussi).
      La commande ressemblerai alors à:
      ssh-keygen -f ~/.ssh/pi-shutdown
    • ajouter la clé publique générée ci dessus (contenue dans ~/.ssh/pi-shutdown.pub) dans le fichier ~root/.ssh/authorized_keys du PI (on peux même forcer ici la commande "shutdown" en préfixant la ligne avec "command=/bin/shutdown -h now" comme expliqué ici)
    • donner le chemin de la clé privée en argument de la commande ssh sur le syno (ssh -i ~/.ssh/pi-shutdown)

Remarque complémentaire: un NAS est optimisé pour rester en fonction 24/24. Le redémarrer une fois par jour n'est pas optimal pour la durée de vie des composants (et surtout des disques).

Lien vers le commentaire
Partager sur d’autres sites

Merci de ta reponse

  • Je n'ai pas manipulé de Raspberry mais je serais surpris que ce soit une commande dans le style de 'xbmc-send --action="XBMC.Quit" 'qui fasse un shutdown du bidule ("shutdown -h now" me semblerait plus approprié)

Cette commande fonctionne parfaitement la commande classique aussi fonctionne mais coupe XBMC brutalement alors que l'autres coupe proprement XBMC et ensuite arrete le RPI

Remarque complémentaire: un NAS est optimisé pour rester en fonction 24/24. Le redémarrer une fois par jour n'est pas optimal pour la durée de vie des composants (et surtout des disques).

La nuit mon NAS n'a aucune raison d'etre allumé donc je le coupe, tu va me dire ça ne consomme pas beaucoup d'electricité... personnellement je coupe la tele je ne la met pas en veille

Lien vers le commentaire
Partager sur d’autres sites

(surprenant qu'une commande d'arret XMBC arrete également Linux, mais tu dois mieux connaitre cette machine que moi)

Sinon, vu l'absence de remarques sur le reste de mon post, on peut conclure que les réponses conviennent?

**EDIT**

Suis allé parcourir le wiki de XMBC

Et j'ai bien l'impression que la bonne commande est plus "XBMC.powerdown" que "XBMC.quit".

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Je ne connais pas plus la bete que toi. je debute .. mais je connais bien XBMC

"XBMC.powerdown" coupe XBMC et linux quand linux et xbmc ne sont pas lié

"XBMC.quit" coupe simplement XBMC quand linux et xbmc ne sont pas lié par contre dans mon cas ( avec openelec ) l'un ou l'autre

c'est pareille

Ba oui cela me convient enfin je vais mettre en application tes conseils des ce soir

Lien vers le commentaire
Partager sur d’autres sites

Petit HS vu que je me suis offert un rPi aussi !

La puissance du port USB du syno est suffisant ???

J'ai lu qu'il fallait plus de 500ma, voir 750ma pour les 2e génération

hello mon RPI est alimenter par mon syno DS413

j'ai brancher sur mon RPI une cle USB + une carte SD

Aucun PB avec openelec, j'ai meme ete surpris de la vitesse d’exécution d'openelec et d'XBMC

ok ok ça va moins vite que mon PC core I5 quand je navigue dans les menu d'XBMC (carte réseau 100mb )

mais une fois la video lancé on ne fait pas la différence entre mon PC et le RPI

Retour sur le post :

Désolé hier je n'ai pas pris le temp d'essayé mais ce soir je fais un retour promis

Lien vers le commentaire
Partager sur d’autres sites

Hello tous

Donc j'ai tester toute vos commandes et toutes fonctionne.

les commandes linux "pure" eteint le RPI a une vitesse qui de mon point de vue n'est pas normale ( genre 5sec max )

Le poweroff (commande openelec) et le xbmc.powerdown ou xbmc.quit ( commande xbmc ) coupe le RPI en 10 a 12 secondes

sa me parait bien plus credible pour couper proprement XBMC et tous ces add-ons.

et puis quelle idee d'avoir 46 façons d'eteindre un system ...lol

dans tous les cas ça aide

merci

Lien vers le commentaire
Partager sur d’autres sites

Retour au sujet :

Je n'ai pas manipulé de Raspberry mais je serais surpris que ce soit une commande dans le style de 'xbmc-send --action="XBMC.Quit" 'qui fasse un shutdown du bidule ("shutdown -h now" me semblerait plus approprié)

Cette commande fonctionne mais cette commande kill xbmc au lieu de lui envoyer un shutdown.

Le switch "-c" de la commande "ssh" sert à forcer le type de cryptage utilisé lors de la session et requiert un argument. La présence de ce switch dans ta commande est fort probablement une erreur de ta part.

Oui, c'est tout a fait ça une erreur de ma part

une fois trouvée la bonne commande et l'avoir incluse dans un script de shutdown (je suppose que tu as prévu de faire ça dans "/usr/local/etc/rc.d") penser à insérer un délai pour laisser le temps au PI de s'arréter effectivement.

Non je n'ai pas prevu de le metttre dans "rc.d" met de le mettre la ou je range mes scripts sh

Et pour le sllep dans le script je ne pense pas qu'il soit nescessaire le RPI met moins de 12 sec a s'eteindre alors que le SYNO, ba c'est le SYNO...lol (mais j'ai pris bonne note de ta remarque sur le fait que je ne devrais pas l'eteindre tous les soir )

Les commandes que je dois executé sont les suivante :

ssh root@192.168.1.20 xbmc-send --action="XBMC.updatelibrary(video)" # Pour update ma librairy apres un DL

ssh root@192.168.1.20 poweroff #eteindre le RPI

  • pour ne pas avoir à saisir de mot de passe faut passer par une authentification par clé:

    • La ça devient interresant, et je n'ai pas reussi a faire ce que tu a demander...
    • je suis un peu perdu.
  • Tu m'a demandé de passé cette commande :
    • ssh-keygen -f ~/.ssh/pi-shutdown

      ça fonctionne et la il me parle de la passphrase je laisse en blanc.

  • de la il me genere un jolie dessin dans une sorte ASCII

Pour le chemin, ~root/.ssh est l'endroit approprié (par sécurité il est requis que seul root ait accès à ce répertoire en écriture mais autant verrouiller la lecture aussi).

ça me plais comme reflection.


    • ajouter la clé publique générée ci dessus (contenue dans ~/.ssh/pi-shutdown.pub) dans le fichier ~root/.ssh/authorized_keys du PI (on peux même forcer ici la commande "shutdown" en préfixant la ligne avec "command=/bin/shutdown -h now" comme expliqué ici)
    • donner le chemin de la clé privée en argument de la commande ssh sur le syno (ssh -i ~/.ssh/pi-shutdown)

  • La tu m'a perdu

  • car la tu me parle d'un fichier pi-shutdown.pub qu'il faut que je copie dans authorized_keys du RPI

je n'ai pas de fichier .pub a moins que dans la commande de generation de la cle tu a oublier le ".pub" ?

donc je me suis arreté la d'habitude je cherche un peu plus mais vu que je suis limité en linux je ne voudrais pas tous cassé.

ha et j'ai une autre question ces commandes doivent etre fait sur le shell du RPI ou du Syno ?

merci a toi

Lien vers le commentaire
Partager sur d’autres sites

Pour la localisation du script de shutdown dans "/usr/local/etc/rc.d" c'est nécessaire dans la mesure ou on souhaite qu'il soit exécuté *automatiquement* lors de l’arrêt du Syno. Je ne vois pas comment tu peux faire autrement.

Mais, on va essayer traiter un seul problème à la fois si tu veux bien.

je n'ai pas de fichier .pub a moins que dans la commande de generation de la cle tu a oublier le ".pub" ?

Je viens de refaire la manip et j'ai bien deux fichiers dont le ".pub":

fserv> ls ~/.ssh/pi*
/root/.ssh/pi-shutdown
/root/.ssh/pi-shutdown.pub
comprend pas que ca ne marche pas chez toi avec la même version de DSM

Tu me confirme qu'a la suite de la commande "ssh-keygen" tu n'as que le 1er fichier (sans suffixe .pub) dans le répertoire ".ssh" ?

PS: j'ai bien précisé dans chaque cas si les commandes sont à faire ou les fichiers à modifier soit sur le syno soit sur le PI.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Bon ba je t'en dois une ...lol

je viens de faire un ls dans le repertoire .SSH et j'ai bien 2 fichiers

Ba j'ai du m’emmêler les pinceaux hier

j'ai relu ( encore ) ton post et effectivement a tete repossé il est vrai que tu précise ou doivent etre lancé les commandes

comme quoi ce précipité le soir apres une longue journée de bureau c'est pas bien....

Lien vers le commentaire
Partager sur d’autres sites

Juste une petite précision sur une phrase qui pourrait être insuffisamment claire:

ajouter la clé publique générée ci dessus (contenue dans ~/.ssh/pi-shutdown.pub) dans le fichier ~root/.ssh/authorized_keys du PI

Il s'agit bien d'ajouter le *contenu* du fichier ".pub" généré sur le syno au "~root/.ssh/authorized_keys" du PI (ce dernier étant à créer si il n'existe pas déjà.) . Et l'ascii art qui s'affiche lors de la génération peut être oublié.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai tous recommander et ça fonctionne.

j'ai eu quelques probleme pour recuperer le fichier .pub generer dans le folder SSH

je m'en suis sortie

donc j'ai lancer la commande "ssh -i ~/.ssh/pi-shutdown" a partir du syno

Il ma demander d'accepté la RSA key par yes

et voila plus besoin de mot de passe.

je vais détailler ce que j'ai fait plus tard

je te remercie 1000 fois

Lien vers le commentaire
Partager sur d’autres sites

Bonjour a tous
Pour resummé ce qui est a faire pour generer une key Public pour eviter de taper le mot de passe SSH
1) Ce connecter sur le SHELL du linux qui va envoyé vos futur commande ( pour moi c'est le SYNO )
2) une fois connecter taper : ssh-keygen -f ~/.ssh/key ( ~/.ssh/ = le folder ou sera stocker la key ) ( key = fichier qui detiens la key)
3) a la question passphrase je n'ai rien mis
4) faire un LS - al dans le folder /.SSH ( il y a 2 fichiers )
5) copier le fichier key-pub ( fichier qui a ete generer par la commande keygen ) vers un emplacement qui est facilement accesible ( /volume1/video ) peut importe l'emplacement ce fichier sera delete
6) aller recuperer ce fichier et renomé le en "authorized_keys"
7) envoyé le dans le linux de destination ( pour moi le RPI )
Valable que pour le RPI ( a adapter pour les autres linux )
8) se connecter en SFTP
9) uploder le fichier authorized_keys dans le folder .SSH du RPI
10) retourné sur le SYNO et taper la commande : ssh -i ~/.ssh/pi-shutdown root@IP_DU_LINUX
11) Accepter la KEY RSA
Et voila
Un grand merci a Cool Raoul Qui a pris du temps a m'aider
Modifié par Petit_bill
Lien vers le commentaire
Partager sur d’autres sites

Les étapes 5 à 7 peuvent se résumer à éditer directement ~root/.ssh/authorized_keys sur le PI et copier/coller dans l'éditeur le contenu du fichier .pub (une simple ligne, attention à sa longueur)

je m'en doutait qu'il y avait plus simple

mais j'ai preferer la methode debutant...lol

Pour la localisation du script de shutdown dans "/usr/local/etc/rc.d" c'est nécessaire dans la mesure ou on souhaite qu'il soit exécuté *automatiquement* lors de l’arrêt du Syno. Je ne vois pas comment tu peux faire autrement.

j'ai un script qui s'execute en tache planifier et c'est ce dernier qui eteint le syno

Modifié par Petit_bill
Lien vers le commentaire
Partager sur d’autres sites

j'ai un script qui s'execute en tache planifier et c'est ce dernier qui eteint le syno

Je faisais référence au script qui éteint le PI

Pour éteindre le syno de façon planifiée je conseillerai plutôt la méthode "native":

panneau de conf DSM -> matériel et alimentation -> planif alim

Lien vers le commentaire
Partager sur d’autres sites

ne sachant pas faire. j'ai fait un system D

avant j'utilisais la tache native au syno ( dans gestion de l'alimentation )

mais j'ai de plus en plus de petit truc a faire avant d'eteindre de le syno ( backup de fichier, bdd, update de la librairy xbmc, .....)

Donc j'ai creer un script qui exécute toutes ces taches et a la fin il eteint le syn avec cette commande : nohup shutdown -h now

Donc maintenant avant de s’éteindre lui meme il enverra la commande au RPI.

ce n'est pas bien ?

Lien vers le commentaire
Partager sur d’autres sites

ne sachant pas faire. j'ai fait un system D

avant j'utilisais la tache native au syno ( dans gestion de l'alimentation )

mais j'ai de plus en plus de petit truc a faire avant d'eteindre de le syno ( backup de fichier, bdd, update de la librairy xbmc, .....)

Donc j'ai creer un script qui exécute toutes ces taches et a la fin il eteint le syn avec cette commande : nohup shutdown -h now

Donc maintenant avant de s’éteindre lui meme il enverra la commande au RPI.

ce n'est pas bien ?

Faut dire que la commande "shutdown" il me semble bien qu'elle n'existait pas avant DSM 5 : Il n'y avait que la commande poweroff dont je n'ai jamais été certain qu'elle fasse vraiment un arrêt "propre" (attente que chaque package se termine par exemple)

C'est pourquoi que j'ai toujours préféré l'autre approche.

En outre mettre tes taches d’arrêt dans un ou plusieurs scripts dans "/usr/local/etc/rc.d", fera qu'elles seront également exécutée lors d'un arret initialisé via le GUI ou même via le bouton "power" de façade. Ça peut être utile et pratique.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

En outre mettre tes taches d’arrêt dans un ou plusieurs scripts dans "/usr/local/etc/rc.d", fera qu'elles seront également exécutée lors d'un arret initialisé via le GUI ou même via le bouton "power" de façade. Ça peut être utile et pratique.

Ha ça m'interesse ce que tu dis..la

Donc si j'ai bien compris j'ajoute une ligne de code ( ex : Include /volume1/sauvegarde/scripts/off.sh ) dans le fichier "/usr/local/etc/rc.d"

et je pourrait garder la facon native du syno pour qu'il s'arrette ?

et dans tout les cas il executera cette include ?

est ce que ce fichier est "reseter" lors d'un update de la DSM ?

Lien vers le commentaire
Partager sur d’autres sites

Donc si j'ai bien compris j'ajoute une ligne de code ( ex : Include /volume1/sauvegarde/scripts/off.sh ) dans le fichier "/usr/local/etc/rc.d"

Attention ce n'est pas un fichier mais un répertoire qui contient des scripts.

J'en ai expliqué le principe aujourd'hui même ici:

et je pourrait garder la facon native du syno pour qu'il s'arrette ?

tout à fait

et dans tout les cas il executera cette include ?

Tous les scripts de /usr/local/etc/rc.d qui respectent les règles de nommage que j'ai indiquées dans mon autre post sont exécutés dans l'ordre alphabétique de leurs noms (sauf en cas de crash quand même!)

est ce que ce fichier est "reseter" lors d'un update de la DSM ?

C'est l'intéret de "/usr/local": tout ce qui est situé en desous de ce dossier est sauvegardé lors des updates DSM

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.