Next: External methods, Previous: Connection types, Up: Configuration [Contents][Index]
The inline methods in TRAMP are quite powerful and can work in situations where you cannot use an external transfer program to connect. There are also strange inline methods which allow you to transfer files between user identities rather than hosts, see below.
These methods depend on the existence of a suitable encoding and decoding command on remote host. Locally, TRAMP may be able to use features of Emacs to decode and encode the files or it may require access to external commands to perform that task.
TRAMP checks the availability and usability of commands like
mimencode
(part of the metamail
package) or
uuencode
on the remote host. The first reliable command
will be used. The search path can be customized, see Remote Programs.
If both commands aren’t available on the remote host, TRAMP transfers a small piece of Perl code to the remote host, and tries to apply it for encoding and decoding.
The variable tramp-inline-compress-start-size controls, whether a file shall be compressed before encoding. This could increase transfer speed for large text files.
Connect to the remote host with rsh
. Due to the unsecure
connection it is recommended for very local host topology only.
On operating systems which provide the command remsh
instead
of rsh
, you can use the method remsh. This is true
for HP-UX or Cray UNICOS, for example.
Connect to the remote host with ssh
. This is identical to
the previous option except that the ssh
package is used,
making the connection more secure.
All the methods based on ssh
have an additional feature: you
can specify a host name which looks like host#42 (the real host
name, then a hash sign, then a port number). This means to connect to
the given host but to also pass -p 42
as arguments to the
ssh
command.
Connect to the remote host with telnet
. This is as unsecure
as the rsh method.
This method does not connect to a remote host at all, rather it uses
the su
program to allow you to edit files as another user.
That means, the specified host name in the file name must be either
‘localhost’ or the host name as returned by the function
(system-name)
. For an exception of this rule see
Multi-hops.
This is similar to the su method, but it uses sudo
rather than su
to become a different user.
Note that sudo
must be configured to allow you to start a
shell as the user. It would be nice if it was sufficient if
ls
and mimencode
were allowed, but that is not
easy to implement, so I haven’t got around to it, yet.
As you would expect, this is similar to ssh, only a little different. Whereas ssh opens a normal interactive shell on the remote host, this option uses ‘ssh -t -t host -l user /bin/sh’ to open a connection. This is useful for users where the normal login shell is set up to ask them a number of questions when logging in. This procedure avoids these questions, and just gives TRAMP a more-or-less ‘standard’ login shell to work with.
Note that this procedure does not eliminate questions asked by
ssh
itself. For example, ssh
might ask “Are you
sure you want to continue connecting?” if the host key of the remote
host is not known. TRAMP does not know how to deal with such a
question (yet), therefore you will need to make sure that you can log
in without such questions.
This is also useful for Windows users where ssh
, when
invoked from an Emacs buffer, tells them that it is not
allocating a pseudo tty. When this happens, the login shell is wont
to not print any shell prompt, which confuses TRAMP mightily.
This supports the ‘-p’ argument.
This method is also similar to ssh. It only uses the
krlogin -x
command to log in to the remote host.
This is another method from the Kerberos suite. It behaves like su.
This method is mostly interesting for Windows users using the PuTTY implementation of SSH. It uses ‘plink -ssh’ to log in to the remote host.
With a recent PuTTY, it is recommended to check the ‘Share SSH connections if possible’ control for that session.
This method supports the ‘-P’ argument.
Another method using PuTTY on Windows. Instead of host names, it expects PuTTY session names, calling ‘plink -load session -t’. User names and port numbers must be defined in the session.
With a recent PuTTY, it is recommended to check the ‘Share SSH connections if possible’ control for that session.
Next: External methods, Previous: Connection types, Up: Configuration [Contents][Index]