Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/09/2010, à 19:23

nnccii

copie d'un evenement via ssh

Bonjour,

Avant tout, j'aimerais avoir une explication big_smile

Quand on fait

 $ cat fichier

, il y a 2 possibilités :
Soit ça affiche le contenu du fichier et ça libère le terminal, on peut donc entrer de nouvelle commande.
Soit ça affiche rien ou quelque chose mais pour quitter il faut faire Ctrl+C.

J'imagine que dans le 2eme cas, il ne s'agit pas d'un simple fichier mais d'un flux.
(Mais comment créer un flux ??)

Du coup, voila la ligne sur laquelle je travail (elle ne fonctionne pas) :

  $  ssh root@192.168.1.50 cat /dev/input/keypad >> /dev/input/event4

dans l'idéal, ça devrait copier les évènements clavier de l'ordinateur 192.168.1.50 vers /dev/input/event4 mais ça ne marche pas.

Comment corriger cette ligne pour créer une copie de l'évenement keypad exploitable vers le second ordinateur ?

Merci d'avance

Nicolas.

Dernière modification par nnccii (Le 19/09/2010, à 19:39)

Hors ligne

#2 Le 19/09/2010, à 19:42

ssdg

Re : copie d'un evenement via ssh

à supposer que la partie "cat >>" fonctionne, tu peux utiliser l'outil "nc" qui peut faire serveur d'un coté, client de l'autre et utiliser ssh comme proxy.

Je ne suis pas expert de nc, aussi il faudra que tu regarde le man.

ssh -f ... (le -f fait passer le processus en background une fois que tu as entré ton mot de passe je n'ai pas les autres options en tête)

cat ... | nc "options"

et sur ta machine qui reçoit:
nc "options" >> /dev/inp/event4


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#3 Le 19/09/2010, à 19:53

nnccii

Re : copie d'un evenement via ssh

ça aurait pu marcher mais malheureusement seul mon pc est sur ubuntu.

le 192.168.1.50 est un maemo (basé sur debian) et un apt-get install nc n'a rien donné.

Hors ligne

#4 Le 19/09/2010, à 21:31

ssdg

Re : copie d'un evenement via ssh

je ne sais pas vraiment comment marche nc, mais je crois qu'il ne fait que faire suivre ce qui arrive sur le port d'entrée vers la sortie standard...

Tu dois pouvoir y arriver avec un langage de programmation de ton choix... sur le portable.

Sinon, tu as un serveur ssh sur ton portable?

(peut être qu'avec une authentification par clef privée (pour éviter d'entrer le mot de passe) et quelque chose sur le PC comme:
cat monflux  | ssh tonportable sh "cat > tonFluxDest"

commence par tester avec des fichiers à la place des flux histoire de ne pas ruiner ton téléphone wink


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#5 Le 19/09/2010, à 22:10

nnccii

Re : copie d'un evenement via ssh

oui, il y a un serveur ssh sur le portable.

la ligne ici cat monflux  | ssh tonportable sh "cat > tonFluxDest"
c'est plutôt pour faire l'inverse, transmettre un flux du pc vers le portable non ?

Comme, je veux transmettre un flux du portable vers ubuntu, je l'ai modifié comme ceci  et je lance la commande depuis ubuntu :
ssh root@portable cat /dev/input/keypad | sh "cat > /dev/input/event4"
la, ça me dit :
sh: Can't open cat >> /dev/input/event4

et en mettant comme ceci :
ssh root@portable cat /dev/input/keypad | sh cat > "fluxDestination"

la ça attend que quelque chose arrive sur le fluxKeypad mais des qu'il y a quelque chose ça quitte et ça n'écrit rien dans fluxDestination.

Hors ligne

#6 Le 19/09/2010, à 23:19

sputnick

Re : copie d'un evenement via ssh

nnccii a écrit :
  $  ssh root@192.168.1.50 cat /dev/input/keypad >> /dev/input/event4

dans l'idéal, ça devrait copier les évènements clavier de l'ordinateur 192.168.1.50 vers /dev/input/event4 mais ça ne marche pas.

Comment corriger cette ligne pour créer une copie de l'évenement keypad exploitable vers le second ordinateur ?

Nicolas.

$ ssh serveur < foo.txt 'cat > /tmp/foo.txt'

ou encore

$ cat foo.txt | ssh serveur 'cat > /tmp/foo.txt'

Pour nc, il faut installer netcat puis sur le serveur :

nc -z -l -p 89 > fichier

puis sur le client

nc -c <serveur>  <port> < fichier

Pour les noobs, pour copier un fichier la commande normale est scp ou rsync wink


On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

#7 Le 19/09/2010, à 23:43

ssdg

Re : copie d'un evenement via ssh

ah, effectivement ma commande fait l'inverse...

remarque, ça pourrait marcher:
ssh root@tonPC sh -c \"cat FICHERPC \" >> FICHIERPORTABLE


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#8 Le 20/09/2010, à 00:26

sputnick

Re : copie d'un evenement via ssh

ssdg a écrit :

ah, effectivement ma commande fait l'inverse...

remarque, ça pourrait marcher:
ssh root@tonPC sh -c \"cat FICHERPC \" >> FICHIERPORTABLE

??? Ta commande fait l'inverse de la mienne en ce sens que la mienne marche et pas la tienne !!!

Tu ne semble pas comprendre le concept de flux.

tu a besoin de parcourir un fichier, puis rediriger ce flux dans l'entrée standard de ssh et finalement rediriger la sortie standard dans un fichier sur le serveur ssh distant. C'est l'algo de ma commande... On peut pas inventer des syntaxe au petit bonheur la chance, il y a une logique derrière...


On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

#9 Le 21/09/2010, à 10:57

ssdg

Re : copie d'un evenement via ssh

sputnick > mon "effectivement" portait sur la remarque de nncii aussi merci de ne pas.

Ensuite, ma commande fait ce que je lui demande, j'ajoute que coté gestion de flux pour avoir codé mon propre bash en DUT, j'ai une note de projet qui démontre que je sais comment ça marche. Merci donc de refréner cette agressivité.


nnccii > Pour ce qui est du problème de fin de flux, essaye de remplacer cat par tail -f il "suit" ce qui arrive et je m'en sert souvent pour lire un log de serveur et faire un filtre "grep" en live... ça n'est techniquement pas très éloigné de ce que tu essaye de faire.
(je n'ai jamais essayé ça sur un flux clavier, mais ça devrait marcher)


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#10 Le 21/09/2010, à 13:54

sputnick

Re : copie d'un evenement via ssh

Je suis pas agressif, peut être qu'avec mes !!! et ??? tu t'es senti agressé, c'est pas pareil.

Ce que je dit c'est que

ssh root@tonPC sh -c \"cat FICHERPC \" >> FICHIERPORTABLE

ne fonctionnera pas pour copier un fichier sur une machine distante.

Le reste n'est que libre interprétation.


On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

#11 Le 21/09/2010, à 15:52

Nrm

Re : copie d'un evenement via ssh

j'affirme pour avoir essayer que sur le serveur

nc -l 1234 > /dev/input/event3

et sur le client :

nc IP 1234 < /dev/input/event0

Permet de prendre le contrôle du clavier du serveur à partir du client

Dernière modification par Nrm (Le 21/09/2010, à 15:52)

Hors ligne

#12 Le 21/09/2010, à 20:04

nesthib

Re : copie d'un evenement via ssh

un peu HS : il y a aussi synergy qui est une petite appli bien sympa pour partager un clavier ou une souris entre deux machines


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne