help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: specifying identity file for scp within tramp


From: 锁住子
Subject: Re: specifying identity file for scp within tramp
Date: Sun, 21 Dec 2008 00:56:32 -0800 (PST)
User-agent: G2/1.0

On Dec 20, 9:45 am, Barry Margolin <bar...@alum.mit.edu> wrote:
> In article
> <b4647b13-f390-48aa-9373-46192b1bb...@b41g2000pra.googlegroups.com>,
>
>
>
>  À¯×°×² <gir...@gmail.com> wrote:
> > On Dec 19, 1:38 pm, Barry Margolin <bar...@alum.mit.edu> wrote:
> > > In article
> > > <97c43290-2786-4b18-aaa8-429005829...@s9g2000prm.googlegroups.com>,
>
> > >  À¯×°×² <gir...@gmail.com> wrote:
> > > > Can anyone tell me if it's possible to direct tramp to use a
> > > > particular set of ssh keys when connecting to a particular server? I'm
> > > > trying to use scp with the equivalent of the -i option, what I tried
> > > > below just seems to confuse tramp, is there some other way I should be
> > > > doing this?
>
> > > > (add-to-list 'tramp-default-method-alist
> > > >               '("remote_server" "" "scp -i /Users/my_user/.ssh/
> > > > my_key"))
>
> > > Why not use the IdentityFile directives in ~/.ssh/config?
>
> > I'm already using a set of keys for regular ssh login, and there's a
> > passphrase on that set. I was trying to create a second set
> > specifically for tramp to use, with no passphrase and restricted
> > permissions on the server side. So far as I know, I can only provide a
> > single IdentityFile per host in ssh/config -- do you know of any other
> > ways to automatically distinguish the proper keys for tramp to use
> > with my server?
>
> I think you have to define a new method.
>
> (defvar my-scp-extra-args '("-i" "/Users/my_user/.ssh/my_key"))
> (let* ((scp-method (assoc "scp" tramp-methods))
>        (new-method (copy-tree (cdr scp-method)))
>        (login-args (assoc 'tramp-login-args new-method))
>        (copy-args (assoc 'tramp-copy-args new-method)))
>   (setf (cadr login-args)
>         `(,@my-scp-extra-args ,@(cadr login-args))
>         (cadr copy-args)
>         `(,@my-scp-extra-args ,@(cadr copy-args)))
>   (push `("myscp" . ,new-method) tramp-methods))
>
> Then set the default method for remote_server to "myscp".

Thanks for this! I'm going to ask a fairly stupid follow-up question.
I put this in my emacs, but it raised this error "void variable tramp-
methods". I thought maybe you had to quote tramp-methods, but after I
did it started raising "Wrong type argument: listp, tramp-methods".
I'm not quite sure where to go from here. If I'm running 22.3.1, I
shouldn't have to have (require 'tramp) at the top of my .emacs,
should I? I added that, for the heck of it, and it started complaining
about other tramp-related variables being undefined elsewhere in
my .emacs file.

Sorry to chump out, hoping for a little more help...

Thanks,
Eric




>
> --
> Barry Margolin, bar...@alum.mit.edu
> Arlington, MA
> *** PLEASE post questions in newsgroups, not directly to me ***
> *** PLEASE don't copy me on replies, I'll read them in the group ***



reply via email to

[Prev in Thread] Current Thread [Next in Thread]