Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tramp, ssh

5 réponses
Avatar
Jean Magnan de Bornier
Bonjour =C3=A0 tous,
Un serveur que j'utilisais en ftp vient de passer en sftp (donc ssh). J'ai
=C3=A9crit dessus ma cl=C3=A9 publique au bon endroit, j'ai configur=C3=A9 =
.ssh/config
comme il faut, et si je tape en ligne de commande:
=20
sftp monsite.fr

je suis connect=C3=A9 illico.


J'ai =C3=A9valu=C3=A9 ceci:

(tramp-set-completion-function "ssh"
'((tramp-parse-sconfig "~/.ssh/config")))

Tramp lit apparemment ce fichier de conf, mais je m'arrache les
cheveux pour me connecter depuis emacs...:

C-x C-f RET \sftp:user@monsite.fr RET

Pas de connexion, et voici ce que je vois dans les messages:

Tramp: Opening connection for sftp using scp...
Tramp: Waiting 60s for local shell to come up...
Tramp: Sending command `ssh sftp -q -e none && exit || exit'
Tramp: Waiting for prompts from remote shell
File error: Process died
completion--some: Process died


Et en effet sur ce site les utilisateurs n'ont pas de shell! Mais ne
pourrais-je pas =C3=AAtre connect=C3=A9 quand m=C3=AAme, puisque en ligne d=
e commande
j'ai les instruments normaux de ftp comme "put" ou "mkdir"?

Alors si quelqu'un a une id=C3=A9e...
merci d'avance,=20
--=20
Jean

5 réponses

Avatar
Ph. Ivaldi
Bonsoir,

Le 23 mars 2010, Jean Magnan de Bornier écrivit :

C-x C-f RET sftp: RET
Pas de connexion, et voici ce que je vois dans les messages:
Tramp: Opening connection for sftp using scp...
Tramp: Waiting 60s for local shell to come up...
Tramp: Sending command `ssh sftp -q -e none && exit || exit'
Tramp: Waiting for prompts from remote shell
File error: Process died
completion--some: Process died



Je me suis aussi arraché les cheveux avec ftp ; c'était à cause du mode
passif.
Depuis j'ai ça dans un coin de ma configuration
8<------8<------8<------8<------8<------8<------8<------8<------8<------
(eval-after-load 'ange-ftp
'(progn
(add-to-list 'ange-ftp-passive-host-alist
'("ftp.tuxfamily.org|ftp.serviatys.fr|ftpperso.free.fr" . "on"))
))
8<------8<------8<------8<------8<------8<------8<------8<------8<------

mais ça n'a pas fait repousser mes cheveux :o
--
Philippe Ivaldi.
http://www.piprime.fr/
Avatar
Jean Magnan de Bornier
Le 23 mars à 21:42:23 Ph. Ivaldi écrit notamme nt:

| Bonsoir,



| Le 23 mars 2010, Jean Magnan de Bornier écrivit :



| > C-x C-f RET sftp: RET
| > Pas de connexion, et voici ce que je vois dans les messages:
| > Tramp: Opening connection for sftp using scp...
| > Tramp: Waiting 60s for local shell to come up...
| > Tramp: Sending command `ssh sftp -q -e none && exit || exit'
| > Tramp: Waiting for prompts from remote shell
| > File error: Process died
| > completion--some: Process died



| Je me suis aussi arraché les cheveux avec ftp ; c'était à cause du mode
| passif.
| Depuis j'ai ça dans un coin de ma configuration
| 8<------8<------8<------8<------8<------8<------8<------8<------8<------
| (eval-after-load 'ange-ftp
| '(progn
| (add-to-list 'ange-ftp-passive-host-alist
| '("ftp.tuxfamily.org|ftp.serviatys.fr|ftpperso
|.free.fr" . "on"))
| ))
| 8<------8<------8<------8<------8<------8<------8<------8<------8<------



| mais ça n'a pas fait repousser mes cheveux :o

Merci
mais pour sftp le mode passif n'existe pas! (d'ailleurs ange-ftp ne sait
gérer que ftp proprement dit)

Mon problème semble être ailleurs...
--
Jean
Avatar
Erwan David
Jean Magnan de Bornier écrivait :

Le 23 mars à 21:42:23 Ph. Ivaldi écrit notamment:

| Bonsoir,



| Le 23 mars 2010, Jean Magnan de Bornier écrivit :



| > C-x C-f RET sftp: RET
| > Pas de connexion, et voici ce que je vois dans les messages:
| > Tramp: Opening connection for sftp using scp...
| > Tramp: Waiting 60s for local shell to come up...
| > Tramp: Sending command `ssh sftp -q -e none && exit || exit'
| > Tramp: Waiting for prompts from remote shell
| > File error: Process died
| > completion--some: Process died



| Je me suis aussi arraché les cheveux avec ftp ; c'était à cause du mode
| passif.
| Depuis j'ai ça dans un coin de ma configuration
| 8<------8<------8<------8<------8<------8<------8<------8<------8<------
| (eval-after-load 'ange-ftp
| '(progn
| (add-to-list 'ange-ftp-passive-host-alist
| '("ftp.tuxfamily.org|ftp.serviatys.fr|ftpperso
|.free.fr" . "on"))
| ))
| 8<------8<------8<------8<------8<------8<------8<------8<------8<------



| mais ça n'a pas fait repousser mes cheveux :o

Merci
mais pour sftp le mode passif n'existe pas! (d'ailleurs ange-ftp ne sait
gérer que ftp proprement dit)



sftp c'est du "ftp like" dans un canal ssh. Donc pas de 2ème canal à
ouvrir pour les données, donc pas de différence actif/passif.
sftp est plus proche de scp que de ftp quand on regarde ça du réseau.

--
Le travail n'est pas une bonne chose. Si ça l'était,
les riches l'auraient accaparé
Avatar
Gilles Pion
Ref: de Jean Magnan de Bornier


Et en effet sur ce site les utilisateurs n'ont pas de shell! Mais ne
pourrais-je pas être connecté quand même, puisque en ligne de commande
j'ai les instruments normaux de ftp comme "put" ou "mkdir"?

Alors si quelqu'un a une idée...
merci d'avance,



Tramp utilise deux catégories de méthodes pour faire son travail. Mais chacune
requière de pouvoir activer un shell interactif sur la machine distante.

Les méthodes dites "externes" utilisent deux canaux, l'un étant utilisé par un
protocole de transfert sous-jacent tel que rcp, sftp, scp, rsync ou autre,
l'autre étant connectée à un shell distant (qui peut être basé sur du ssh, rsh
ou mème du telnet!) qui va être utilisé pour exécuter les commandes devant
s'appliquer sur le host distant (pour comprendre la nécessité de ce canal shell,
penser par exemple au fait que le répertoire courant d'un buffer *dired* peut
très bien être un chemin "tramp", ou même à l'utilisation de modules de version
control -RCS, CVS, etc...- tout cela à distance via tramp)

Les méthodes dites "inline" utilisent uniquement le "tuyau" connecté au shell
qui est utilisé à la fois pour exécuter les commandes distantes et pour
transférer les fichiers *en ligne* (d'ou le nom) avec encodage à ma volée
(mimeencode, uuencode ou autre).

A noter que ce shell "distant" n'est pas forcément *vraiment* distant, voir les
méthodes "sudo" et "su" par exemple: (/sudo:<user>@localhost/<chemin>)

Ref:

http://www.gnu.org/software/tramp/#External-methods

"The external methods operate through multiple channels, using the remote shell
^^^^^^^^^^^^^^^^
connection for many actions while delegating file transfers to an external
transfer utility. "

Donc, a mon avis, la seule solution qui puisse répondre à votre besoin est de
disposer d'une script/une commande locale qui simule un client ftp tout en
traduisant les commandes ftp en commandes sftp.
Suffit alors d'affecter à la variable "ange-ftp-ftp-program-name" le chemin de
cette commande et, soit de continuer à utiliser ange-ftp, soit d'utiliser la
pseudo méthode "ftp" avec la syntaxe tramp .

J'ai justement écrit à ma boite un tel script en perl (j'imagine que l'idéal
aurait été de l'avoir implémenté en elisp, mais je suis allé au plus rapide).

Si ça vous intéresse je peux essayer de mettre la main dessus.

Mais sachez qu'il ne sera peut-être pas utilisable en l'état: initialement écrit
pour pouvoir utiliser tramp sur des serveurs OpenVMS accessibles uniquement en
ssh il doit probablement contenir des spécificités de cet O.S. (non sensibilité
à la casse par exemple). A vous de voir.
--
Gilles
Avatar
Paul Gaborit
À (at) Tue, 23 Mar 2010 19:18:21 +0100,
Jean Magnan de Bornier écrivait (wrote):

Un serveur que j'utilisais en ftp vient de passer en sftp (donc ssh). J'ai
écrit dessus ma clé publique au bon endroit, j'ai configuré .ssh/config
comme il faut, et si je tape en ligne de commande:


[...]

Et en effet sur ce site les utilisateurs n'ont pas de shell! Mais ne
pourrais-je pas être connecté quand même, puisque en ligne de commande
j'ai les instruments normaux de ftp comme "put" ou "mkdir"?

Alors si quelqu'un a une idée...



L'option sshfs est peut-être une solution : cela permet de faire un
montage local pour accéder à une ressource distante via sftp...


--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>