annotate man/tramp.texi @ 53308:ecb83c041da3

(Fringes): Fix typo "set-buffer-window" -> "set-window-buffer".
author Markus Rost <rost@math.uni-bielefeld.de>
date Thu, 25 Dec 2003 14:09:56 +0000
parents 83d9437acbf3
children c1bfc266f10a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2 @c %**start of header
45864
112a1c9eb59b use correct @setfilename
David Kastrup <dak@gnu.org>
parents: 45861
diff changeset
3 @setfilename ../info/tramp
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
4 @settitle TRAMP User Manual
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
5 @setchapternewpage odd
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
6 @c %**end of header
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
7
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
8 @c This is *so* much nicer :)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
9 @footnotestyle end
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
10
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
11 @c In the Tramp CVS, the version number is auto-frobbed from
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
12 @c configure.ac, so you should edit that file and run
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
13 @c "autoconf && ./configure" to change the version number.
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
14
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
15 @c Additionally, flags are set with respect to the Emacs flavor; and
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
16 @c depending whether Tramp is packaged into (X)Emacs, or standalone.
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
17
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
18 @include trampver.texi
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
19
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
20 @c Macro to make formatting of the tramp program name consistent.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
21 @macro tramp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
22 @sc{tramp}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
23 @end macro
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
24
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
25 @c Macros for formatting a filename.
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
26 @c trampfn is for a full filename, trampfnmhp means method, host, localname
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
27 @c were given, and so on.
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
28 @macro trampfn(method, user, host, localname)
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
29 @value{tramp-prefix}@value{method}@value{user}@@@value{host}@value{tramp-postfix}@value{localname}
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
30 @end macro
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
31
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
32 @copying
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
33 Copyright @copyright{} 1999, 2000, 2001, 2002, 2003 Free Software
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
34 Foundation, Inc.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
35
52869
4c969f6bcb01 (Inline methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52401
diff changeset
36 @quotation
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
37 Permission is granted to copy, distribute and/or modify this document
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
38 under the terms of the GNU Free Documentation License, Version 1.1 or
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
39 any later version published by the Free Software Foundation; with no
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
40 Invariant Sections, with the Front-Cover texts being ``A GNU
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
41 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
42 license is included in the section entitled ``GNU Free Documentation
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
43 License'' in the Emacs manual.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
44
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
45 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
46 this GNU Manual, like GNU software. Copies published by the Free
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
47 Software Foundation raise funds for GNU development.''
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
48
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
49 This document is part of a collection distributed under the GNU Free
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
50 Documentation License. If you want to distribute this document
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
51 separately from the collection, you can do so by adding a copy of the
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
52 license to the document, as described in section 6 of the license.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
53 @end quotation
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
54 @end copying
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
55
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
56 @c Entries for @command{install-info} to use
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
57 @dircategory Emacs
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
58 @direntry
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
59 * TRAMP: (tramp). Transparent Remote Access, Multiple Protocol
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
60 Emacs remote file access via rsh and rcp.
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
61 @end direntry
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
62
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
63 @tex
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
64
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
65 @titlepage
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
66 @title @tramp{} version @trampver{} User Manual
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
67
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
68 @author by Daniel Pittman
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
69 @author based on documentation by Kai Gro@ss{}johann
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
70
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
71 @page
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
72 @insertcopying
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
73
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
74 @end titlepage
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
75 @page
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
76
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
77 @end tex
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
78
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
79 @ifnottex
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
80 @node Top, Overview, (dir), (dir)
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
81 @top @tramp{} version @trampver{} User Manual
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
82
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
83 This file documents @tramp{} version @trampver{}, a remote file
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
84 editing package for @value{emacs-name}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
85
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
86 @tramp{} stands for `Transparent Remote (file) Access, Multiple
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
87 Protocol'. This package provides remote file editing, similar to
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
88 @value{ftp-package-name}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
89
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
90 The difference is that @value{ftp-package-name} uses FTP to transfer
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
91 files between the local and the remote host, whereas @tramp{} uses a
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
92 combination of @command{rsh} and @command{rcp} or other work-alike
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
93 programs, such as @command{ssh}/@command{scp}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
94
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
95 You can find the latest version of this document on the web at
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
96 @uref{http://www.freesoftware.fsf.org/tramp/}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
97
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
98 @c Pointer to the other Emacs flavor is necessary only in case of
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
99 @c standalone installation. Text taken from trampinst.texi.
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
100 @ifset tramp-inst
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
101 @otherflavor{}
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
102 @end ifset
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
103
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
104 @ifhtml
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
105 @ifset jamanual
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
106 This manual is also available as a @uref{@value{japanese-manual},
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
107 Japanese translation}.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
108 @end ifset
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
109
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
110 The latest release of @tramp{} is available for
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
111 @uref{http://savannah.gnu.org/download/tramp/,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
112 download}, or you may see @ref{Obtaining @tramp{}} for more details,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
113 including the CVS server details.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
114
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
115 @tramp{} also has a @uref{https://savannah.gnu.org/projects/tramp/,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
116 Savannah Project Page}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
117 @end ifhtml
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
118
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
119 There is a mailing list for @tramp{}, available at
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
120 @email{tramp-devel@@mail.freesoftware.fsf.org}, and archived at
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
121 @uref{http://www.mail-archive.com/emacs-rcp@@ls6.cs.uni-dortmund.de/} as
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
122 well as the usual Savannah archives.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
123
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
124 @insertcopying
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
125
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
126 @end ifnottex
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
127
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
128 @menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
129 * Overview:: What @tramp{} can and cannot do.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
130
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
131 For the end user:
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
132
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
133 * Obtaining @tramp{}:: How to obtain @tramp{}.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
134 * History:: History of @tramp{}.
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
135 @ifset tramp-inst
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
136 * Installation:: Installing @tramp{} with your @value{emacs-name}.
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
137 @end ifset
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
138 * Configuration:: Configuring @tramp{} for use.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
139 * Usage:: An overview of the operation of @tramp{}.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
140 * Bug Reports:: Reporting Bugs and Problems.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
141 * Frequently Asked Questions:: Questions and answers from the mailing list.
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
142 * Concept Index:: An item for each concept.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
143
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
144 For the developer:
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
145
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
146 * Version Control:: The inner workings of remote version control.
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
147 * Files directories and localnames:: How file names, directories and localnames are mangled and managed.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
148 * Issues:: Debatable Issues and What Was Decided.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
149
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
150 @detailmenu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
151 --- The Detailed Node Listing ---
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
152 @c
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
153 @ifset tramp-inst
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
154 Installing @tramp{} with your @value{emacs-name}
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
155
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
156 * Installation parameters:: Parameters in order to control installation.
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
157 * Load paths:: How to plug-in @tramp{} into your environment.
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
158 * Japanese manual:: Japanese manual.
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
159
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
160 @end ifset
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
161
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
162 Configuring @tramp{} for use
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
163
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
164 * Connection types:: Types of connections made to remote machines.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
165 * Inline methods:: Inline methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
166 * External transfer methods:: External transfer methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
167 * Multi-hop Methods:: Connecting to a remote host using multiple hops.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
168 * Default Method:: Selecting a default method.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
169 * Customizing Methods:: Using Non-Standard Methods.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
170 * Customizing Completion:: Selecting config files for user/host name completion.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
171 * Remote Programs:: How @tramp{} finds and uses programs on the remote machine.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
172 * Remote shell setup:: Remote shell setup hints.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
173 * Windows setup hints:: Issues with Cygwin ssh.
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
174 * Auto-save and Backup:: Auto-save and Backup.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
175
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
176 Using @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
177
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
178 * Filename Syntax:: @tramp{} filename conventions.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
179 * Multi-hop filename syntax:: Multi-hop filename conventions.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
180 * Filename completion:: Filename completion.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
181 * Dired:: Dired.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
182
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
183 The inner workings of remote version control
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
184
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
185 * Version Controlled Files:: Determining if a file is under version control.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
186 * Remote Commands:: Executing the version control commands on the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
187 * Changed workfiles:: Detecting if the working file has changed.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
188 * Checking out files:: Bringing the workfile out of the repository.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
189 * Miscellaneous Version Control:: Things related to Version Control that don't fit elsewhere.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
190
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
191 Things related to Version Control that don't fit elsewhere
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
192
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
193 * Remote File Ownership:: How VC determines who owns a workfile.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
194 * Back-end Versions:: How VC determines what release your RCS is.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
195
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
196 How file names, directories and localnames are mangled and managed
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
197
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
198 * Localname deconstruction:: Breaking a localname into its components.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
199
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
200 @end detailmenu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
201 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
202
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
203 @node Overview
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
204 @chapter An overview of @tramp{}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
205 @cindex overview
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
206
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
207 After the installation of @tramp{} into your @value{emacs-name}, you
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
208 will be able to access files on remote machines as though they were
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
209 local. Access to the remote file system for editing files, version
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
210 control, and @command{dired} are transparently enabled.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
211
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
212 Your access to the remote machine can be with the @command{rsh},
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
213 @command{rlogin}, @command{telnet} programs or with any similar
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
214 connection method. This connection must pass @acronym{ASCII}
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
215 successfully to be usable but need not be 8-bit clean.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
216
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
217 The package provides support for @command{ssh} connections out of the
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
218 box, one of the more common uses of the package. This allows
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
219 relatively secure access to machines, especially if @command{ftp}
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
220 access is disabled.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
221
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
222 The majority of activity carried out by @tramp{} requires only that
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
223 the remote login is possible and is carried out at the terminal. In
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
224 order to access remote files @tramp{} needs to transfer their content
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
225 to the local machine temporarily.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
226
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
227 @tramp{} can transfer files between the machines in a variety of ways.
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
228 The details are easy to select, depending on your needs and the
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
229 machines in question.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
230
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
231 The fastest transfer methods (for large files) rely on a remote file
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
232 transfer package such as @command{rcp}, @command{scp} or
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
233 @command{rsync}. The use of these methods is only possible if the
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
234 file copy command does not ask for a password for the remote machine.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
235
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
236 If the remote copy methods are not suitable for you, @tramp{} also
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
237 supports the use of encoded transfers directly through the shell.
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
238 This requires that the @command{mimencode} or @command{uuencode} tools
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
239 are available on the remote machine. These methods are generally
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
240 faster for small files.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
241
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
242 Within these limitations, @tramp{} is quite powerful. It is worth
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
243 noting that, as of the time of writing, it is far from a polished
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
244 end-user product. For a while yet you should expect to run into rough
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
245 edges and problems with the code now and then.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
246
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
247 It is finished enough that the developers use it for day to day work but
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
248 the installation and setup can be a little difficult to master, as can
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
249 the terminology.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
250
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
251 @tramp{} is still under active development and any problems you encounter,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
252 trivial or major, should be reported to the @tramp{} developers.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
253 @xref{Bug Reports}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
254
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
255
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
256 @subsubheading Behind the scenes
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
257 @cindex behind the scenes
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
258 @cindex details of operation
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
259 @cindex how it works
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
260
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
261 This section tries to explain what goes on behind the scenes when you
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
262 access a remote file through @tramp{}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
263
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
264 Suppose you type @kbd{C-x C-f} and enter part of an @tramp{} file name,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
265 then hit @kbd{@key{TAB}} for completion. Suppose further that this is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
266 the first time that @tramp{} is invoked for the host in question. Here's
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
267 what happens:
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
268
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
269 @itemize
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
270 @item
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
271 @tramp{} discovers that it needs a connection to the host. So it
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
272 invokes @samp{telnet @var{host}} or @samp{rsh @var{host} -l
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
273 @var{user}} or a similar tool to connect to the remote host.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
274 Communication with this process happens through an
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
275 @value{emacs-name} buffer, that is, the output from the remote end
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
276 goes into a buffer.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
277
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
278 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
279 The remote host may prompt for a login name (for @command{telnet}). The
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
280 login name is given in the file name, so @tramp{} sends the login name and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
281 a newline.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
282
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
283 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
284 The remote host may prompt for a password or pass phrase (for
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
285 @command{rsh} or for @command{telnet} after sending the login name).
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
286 @tramp{} displays the prompt in the minibuffer, asking you for the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
287 password or pass phrase.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
288
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
289 You enter the password or pass phrase. @tramp{} sends it to the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
290 host, followed by a newline.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
291
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
292 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
293 @tramp{} now waits for the shell prompt or for a message that the login
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
294 failed.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
295
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
296 If @tramp{} sees neither of them after a certain period of time (a minute,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
297 say), then it issues an error message saying that it couldn't find the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
298 remote shell prompt and shows you what the remote host has sent.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
299
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
300 If @tramp{} sees a @samp{login failed} message, it tells you so,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
301 aborts the login attempt and allows you to try again.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
302
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
303 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
304 Suppose that the login was successful and @tramp{} sees the shell prompt
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
305 from the remote host. Now @tramp{} invokes @command{/bin/sh} because
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
306 Bourne shells and C shells have different command
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
307 syntaxes.@footnote{Invoking @command{/bin/sh} will fail if your login
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
308 shell doesn't recognize @samp{exec /bin/sh} as a valid command.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
309 Maybe you use the Scheme shell @command{scsh}@dots{}}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
310
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
311 After the Bourne shell has come up, @tramp{} sends a few commands to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
312 ensure a good working environment. It turns off echoing, it sets the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
313 shell prompt, and a few other things.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
314
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
315 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
316 Now the remote shell is up and it good working order. Remember, what
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
317 was supposed to happen is that @tramp{} tries to find out what files exist
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
318 on the remote host so that it can do filename completion.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
319
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
320 So, @tramp{} basically issues @command{cd} and @command{ls} commands and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
321 also sometimes @command{echo} with globbing. Another command that is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
322 often used is @command{test} to find out whether a file is writable or a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
323 directory or the like. The output of each command is parsed for the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
324 necessary operation.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
325
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
326 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
327 Suppose you are finished with filename completion, have entered @kbd{C-x
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
328 C-f}, a full file name and hit @kbd{@key{RET}}. Now comes the time to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
329 transfer the file contents from the remote host to the local host so
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
330 that you can edit them.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
331
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
332 See above for an explanation of how @tramp{} transfers the file contents.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
333
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
334 For inline transfers, @tramp{} issues a command like @samp{mimencode -b
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
335 /path/to/remote/file}, waits until the output has accumulated in the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
336 buffer that's used for communication, then decodes that output to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
337 produce the file contents.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
338
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
339 For out-of-band transfers, @tramp{} issues a command like the following:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
340 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
341 rcp user@@host:/path/to/remote/file /tmp/tramp.4711
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
342 @end example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
343 It then reads the local temporary file @file{/tmp/tramp.4711} into a
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
344 buffer and deletes the temporary file.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
345
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
346 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
347 You now edit the buffer contents, blithely unaware of what has happened
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
348 behind the scenes. (Unless you have read this section, that is.) When
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
349 you are finished, you type @kbd{C-x C-s} to save the buffer.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
350
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
351 @item
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
352 Again, @tramp{} transfers the file contents to the remote host either
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
353 inline or out-of-band. This is the reverse of what happens when reading
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
354 the file.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
355
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
356 @end itemize
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
357
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
358 I hope this has provided you with a basic overview of what happens
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
359 behind the scenes when you open a file with @tramp{}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
360
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
361
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
362 @c For the end user
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
363 @node Obtaining @tramp{}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
364 @chapter Obtaining @tramp{}.
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
365 @cindex obtaining @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
366
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
367 @tramp{} is freely available on the Internet and the latest release
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
368 may be downloaded from
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
369 @uref{http://savannah.nongnu.org/download/tramp/}. This
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
370 release includes the full documentation and code for @tramp{},
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
371 suitable for installation. But Emacs (21.4 or later) includes
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
372 @tramp{} already, and there is a @tramp{} package for XEmacs, as well.
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
373 So maybe it is easier to just use those. But if you want the bleeding
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
374 edge, read on@dots{...}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
375
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
376 For the especially brave, @tramp{} is available from CVS. The CVS
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
377 version is the latest version of the code and may contain incomplete
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
378 features or new issues. Use these versions at your own risk.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
379
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
380 Instructions for obtaining the latest development version of @tramp{}
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
381 from CVS can be found by going to the Savannah project page at the
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
382 following URL and then clicking on the CVS link in the navigation bar
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
383 at the top.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
384
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
385 @noindent
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
386 @uref{http://savannah.gnu.org/projects/tramp/}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
387
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
388 @noindent
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
389 Or follow the example session below:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
390
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
391 @example
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
392 ] @strong{cd ~/@value{emacs-dir}}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
393 ] @strong{cvs -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/tramp login}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
394
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
395 (Logging in to anoncvs@@subversions.gnu.org)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
396 CVS password: @strong{(just hit RET here)}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
397 @dots{}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
398
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
399 ] @strong{cvs -z3 -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/tramp co tramp}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
400 @end example
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
401
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
402 @noindent
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
403 You should now have a directory @file{~/@value{emacs-dir}/tramp}
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
404 containing the latest version of @tramp{}. You can fetch the latest
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
405 updates from the repository by issuing the command:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
406
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
407 @example
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
408 ] @strong{cd ~/@value{emacs-dir}/tramp}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
409 ] @strong{cvs update -d}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
410 @end example
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
411
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
412 @noindent
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
413 Once you've got updated files from the CVS repository, you need to run
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
414 @command{autoconf} in order to get an up-to-date @file{configure}
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
415 script:
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
416
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
417 @example
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
418 ] @strong{cd ~/@value{emacs-dir}/tramp}
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
419 ] @strong{autoconf}
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
420 @end example
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
421
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
422
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
423 @node History
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
424 @chapter History of @tramp{}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
425 @cindex history
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
426 @cindex development history
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
427
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
428 Development was started end of November 1998. The package was called
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
429 @file{rssh.el}, back then. It only provided one method to access a
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
430 file, using @command{ssh} to log in to a remote host and using
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
431 @command{scp} to transfer the file contents. After a while, the name
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
432 was changed to @file{rcp.el}, and now it's @tramp{}. Along the way,
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
433 many more methods for getting a remote shell and for transferring the
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
434 file contents were added. Support for VC was added.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
435
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
436 The most recent addition of major features were the multi-hop methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
437 added in April 2000 and the unification of @tramp{} and Ange-FTP
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
438 filenames in July 2002.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
439
50495
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
440 @c Installation chapter is necessary only in case of standalone
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
441 @c installation. Text taken from trampinst.texi.
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
442 @ifset tramp-inst
cf8b9e443180 2003-04-08 Michael Albinus <Michael.Albinus@alcatel.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50342
diff changeset
443 @installationchapter{}
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
444 @end ifset
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
445
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
446 @node Configuration
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
447 @chapter Configuring @tramp{} for use
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
448 @cindex configuration
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
449
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
450 @cindex default configuration
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
451 @tramp{} is (normally) fully functional when it is initially installed.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
452 It is initially configured to use the @command{ssh} program to connect
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
453 to the remote host and to use base64 or uu encoding to transfer the
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
454 files through that shell connection. So in the easiest case, you just
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
455 type @kbd{C-x C-f} and then enter the filename
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
456 @file{@value{tramp-prefix}@var{user}@@@var{machine}@value{tramp-postfix}@var{/path/to.file}}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
457
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
458 On some hosts, there are problems with opening a connection. These are
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
459 related to the behavior of the remote shell. See @xref{Remote shell
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
460 setup}, for details on this.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
461
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
462 If you do not wish to use these commands to connect to the remote
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
463 host, you should change the default connection and transfer method
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
464 that @tramp{} uses. There are several different methods that @tramp{}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
465 can use to connect to remote machines and transfer files
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
466 (@pxref{Connection types}).
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
467
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
468 If you don't know which method is right for you, see @xref{Default
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
469 Method}.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
470
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
471
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
472 @menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
473 * Connection types:: Types of connections made to remote machines.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
474 * Inline methods:: Inline methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
475 * External transfer methods:: External transfer methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
476 * Multi-hop Methods:: Connecting to a remote host using multiple hops.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
477 * Default Method:: Selecting a default method.
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
478 Here we also try to help those who
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
479 don't have the foggiest which method
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
480 is right for them.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
481 * Customizing Methods:: Using Non-Standard Methods.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
482 * Customizing Completion:: Selecting config files for user/host name completion.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
483 * Remote Programs:: How @tramp{} finds and uses programs on the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
484 * Remote shell setup:: Remote shell setup hints.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
485 * Windows setup hints:: Issues with Cygwin ssh.
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
486 * Auto-save and Backup:: Auto-save and Backup.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
487 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
488
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
489
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
490 @node Connection types
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
491 @section Types of connections made to remote machines.
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
492 @cindex connection types, overview
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
493
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
494 There are two basic types of transfer methods, each with its own
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
495 advantages and limitations. Both types of connection make use of a
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
496 remote shell access program such as @command{rsh}, @command{ssh} or
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
497 @command{telnet} to connect to the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
498
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
499 This connection is used to perform many of the operations that @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
500 requires to make the remote file system transparently accessible from
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
501 the local machine. It is only when visiting files that the methods
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
502 differ.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
503
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
504 @cindex inline methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
505 @cindex external transfer methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
506 @cindex external methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
507 @cindex out-of-band methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
508 @cindex methods, inline
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
509 @cindex methods, external transfer
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
510 @cindex methods, out-of-band
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
511 Loading or saving a remote file requires that the content of the file
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
512 be transfered between the two machines. The content of the file can be
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
513 transfered over the same connection used to log in to the remote
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
514 machine or the file can be transfered through another connection using
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
515 a remote copy program such as @command{rcp}, @command{scp} or
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
516 @command{rsync}. The former are called @dfn{inline methods}, the
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
517 latter are called @dfn{out-of-band methods} or @dfn{external transfer
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
518 methods} (@dfn{external methods} for short).
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
519
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
520 The performance of the external transfer methods is generally better
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
521 than that of the inline methods, at least for large files. This is
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
522 caused by the need to encode and decode the data when transferring
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
523 inline.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
524
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
525 The one exception to this rule are the @command{scp} based transfer
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
526 methods. While these methods do see better performance when actually
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
527 transferring files, the overhead of the cryptographic negotiation at
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
528 startup may drown out the improvement in file transfer times.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
529
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
530 External transfer methods do require that the remote copy command is not
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
531 interactive --- that is, the command does not prompt you for a password.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
532 If you cannot perform remote copies without a password, you will need to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
533 use an inline transfer method to work with @tramp{}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
534
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
535 @cindex multi-hop methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
536 @cindex methods, multi-hop
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
537 A variant of the inline methods are the @dfn{multi-hop methods}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
538 These methods allow you to connect a remote host using a number `hops',
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
539 each of which connects to a different host. This is useful if you are
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
540 in a secured network where you need to go through a bastion host to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
541 connect to the outside world.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
542
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
543
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
544 @node Inline methods
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
545 @section Inline methods
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
546 @cindex inline methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
547 @cindex methods, inline
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
548
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
549 The inline methods in @tramp{} are quite powerful and can work in
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
550 situations where you cannot use an external transfer program to connect.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
551 Inline methods are the only methods that work when connecting to the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
552 remote machine via telnet. (There are also strange inline methods which
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
553 allow you to transfer files between @emph{user identities} rather than
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
554 hosts, see below.)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
555
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
556 These methods depend on the existence of a suitable encoding and
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
557 decoding command on remote machine. Locally, @tramp{} may be able to use
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
558 features of Emacs to decode and encode the files or it may require
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
559 access to external commands to perform that task.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
560
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
561 @cindex uuencode
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
562 @cindex mimencode
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
563 @cindex base-64 encoding
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
564 @tramp{} checks the availability and usability of commands like
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
565 @command{mimencode} (part of the @command{metamail} package) or
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
566 @command{uuencode} on the remote host. The first reliable command
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
567 will be used. The search path can be customized, see @ref{Remote
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
568 Programs}.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
569
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
570 If both commands aren't available on the remote host, @tramp{}
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
571 transfers a small piece of Perl code to the remote host, and tries to
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
572 apply it for encoding and decoding.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
573
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
574
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
575 @table @asis
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
576 @item @option{rsh}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
577 @cindex method rsh
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
578 @cindex rsh method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
579
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
580 Connect to the remote host with @command{rsh}. Due to the unsecure
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
581 connection it is recommended for very local host topology only.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
582
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
583 On operating systems which provide the command @command{remsh} instead
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
584 of @command{rsh}, you can use the method @option{remsh}. This is true
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
585 for HP-UX or Cray UNICOS, for example.
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
586
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
587
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
588 @item @option{ssh}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
589 @cindex method ssh
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
590 @cindex ssh method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
591
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
592 Connect to the remote host with @command{ssh}. This is identical to
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
593 the previous option except that the @command{ssh} package is used,
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
594 making the connection more secure.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
595
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
596 There are also two variants, @option{ssh1} and @option{ssh2}, that
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
597 call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can
46584
f548d7d0c651 Bump version to 2.0.2.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46366
diff changeset
598 explicitly select whether you want to use the SSH protocol version 1
f548d7d0c651 Bump version to 2.0.2.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46366
diff changeset
599 or 2 to connect to the remote host. (You can also specify in
f548d7d0c651 Bump version to 2.0.2.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46366
diff changeset
600 @file{~/.ssh/config}, the SSH configuration file, which protocol
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
601 should be used, and use the regular @option{ssh} method.)
46584
f548d7d0c651 Bump version to 2.0.2.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46366
diff changeset
602
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
603 Two other variants, @option{ssh1_old} and @option{ssh2_old}, use the
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
604 @command{ssh1} and @command{ssh2} commands explicitly. If you don't
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
605 know what these are, you do not need these options.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
606
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
607 All the methods based on @command{ssh} have an additional kludgy
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
608 feature: you can specify a host name which looks like @file{host#42}
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
609 (the real host name, then a hash sign, then a port number). This
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
610 means to connect to the given host but to also pass @code{-p 42} as
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
611 arguments to the @command{ssh} command.
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
612
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
613
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
614 @item @option{telnet}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
615 @cindex method telnet
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
616 @cindex telnet method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
617
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
618 Connect to the remote host with @command{telnet}. This is as unsecure
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
619 as the @option{rsh} method.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
620
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
621
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
622 @item @option{su}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
623 @cindex method su
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
624 @cindex su method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
625
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
626 This method does not connect to a remote host at all, rather it uses
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
627 the @command{su} program to allow you to edit files as another user.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
628
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
629
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
630 @item @option{sudo}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
631 @cindex method sudo
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
632 @cindex sudo method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
633
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
634 This is similar to the @option{su} method, but it uses @command{sudo}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
635 rather than @command{su} to become a different user.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
636
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
637 Note that @command{sudo} must be configured to allow you to start a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
638 shell as the user. It would be nice if it was sufficient if
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
639 @command{ls} and @command{mimencode} were allowed, but that is not
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
640 easy to implement, so I haven't got around to it, yet.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
641
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
642
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
643 @item @option{sshx}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
644 @cindex method sshx
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
645 @cindex sshx method
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
646 @cindex Cygwin (with sshx method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
647
52869
4c969f6bcb01 (Inline methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52401
diff changeset
648 As you would expect, this is similar to @option{ssh}, only a little
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
649 different. Whereas @option{ssh} opens a normal interactive shell on
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
650 the remote host, this option uses @samp{ssh -t -t @var{host} -l
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
651 @var{user} /bin/sh} to open a connection. This is useful for users
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
652 where the normal login shell is set up to ask them a number of
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
653 questions when logging in. This procedure avoids these questions, and
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
654 just gives @tramp{} a more-or-less `standard' login shell to work
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
655 with.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
656
46346
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
657 Note that this procedure does not eliminate questions asked by
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
658 @command{ssh} itself. For example, @command{ssh} might ask ``Are you
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
659 sure you want to continue connecting?'' if the host key of the remote
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
660 host is not known. @tramp{} does not know how to deal with such a
46346
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
661 question (yet), therefore you will need to make sure that you can log
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
662 in without such questions.
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
663
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
664 This is also useful for Windows users where @command{ssh}, when
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
665 invoked from an Emacs buffer, tells them that it is not allocating a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
666 pseudo tty. When this happens, the login shell is wont to not print
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
667 any shell prompt, which confuses @tramp{} mightily. For reasons
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
668 unknown, some Windows ports for @command{ssh} (maybe the Cygwin one)
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
669 require the doubled @samp{-t} option.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
670
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
671 This supports the @samp{-p} kludge.
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
672
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
673
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
674 @item @option{krlogin}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
675 @cindex method krlogin
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
676 @cindex km krlogin
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
677 @cindex Kerberos (with krlogin method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
678
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
679 This method is also similar to @option{ssh}. It only uses the
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
680 @command{krlogin -x} command to log in to the remote host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
681
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
682
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
683 @item @option{plink}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
684 @cindex method plink
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
685 @cindex plink method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
686
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
687 This method is mostly interesting for Windows users using the PuTTY
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
688 implementation of SSH. It uses @samp{plink -ssh} to log in to the
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
689 remote host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
690
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
691 Additionally, the method @option{plink1} is provided, which calls
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
692 @samp{plink -1 -ssh} in order to use SSH protocol version 1
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
693 explicitely.
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
694
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
695 CCC: Do we have to connect to the remote host once from the command
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
696 line to accept the SSH key? Maybe this can be made automatic?
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
697
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
698 CCC: Does @command{plink} support the @samp{-p} option? @tramp{} will
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
699 support that, anyway.
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
700
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
701 @end table
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
702
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
703
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
704
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
705 @node External transfer methods
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
706 @section External transfer methods
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
707 @cindex methods, external transfer
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
708 @cindex methods, out-of-band
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
709 @cindex external transfer methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
710 @cindex out-of-band methods
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
711
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
712 The external transfer methods operate through multiple channels, using
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
713 the remote shell connection for many actions while delegating file
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
714 transfers to an external transfer utility.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
715
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
716 This saves the overhead of encoding and decoding that multiplexing the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
717 transfer through the one connection has with the inline methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
718
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
719 If you want to use an external transfer method you @emph{must} be able
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
720 to execute the transfer utility to copy files to and from the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
721 machine without any interaction.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
722
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
723 @cindex ssh-agent
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
724 This means that you will need to use @command{ssh-agent} if you use the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
725 @command{scp} program for transfers, or maybe your version of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
726 @command{scp} accepts a password on the command line.@footnote{PuTTY's
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
727 @command{pscp} allows you to specify the password on the command line.}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
728 If you use @command{rsync} via @command{ssh} then the same rule must
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
729 apply to that connection.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
730
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
731 If you cannot get @command{scp} to run without asking for a password but
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
732 would still like to use @command{ssh} to secure your connection, have a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
733 look at the @command{ssh} based inline methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
734
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
735
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
736 @table @asis
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
737 @item @option{rcp} --- @command{rsh} and @command{rcp}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
738 @cindex method rcp
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
739 @cindex rcp method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
740 @cindex rcp (with rcp method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
741 @cindex rsh (with rcp method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
742
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
743 This method uses the @command{rsh} and @command{rcp} commands to connect
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
744 to the remote machine and transfer files. This is probably the fastest
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
745 connection method available.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
746
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
747 The alternative method @option{remcp} uses the @command{remsh} and
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
748 @command{rcp} commands. It should be applied on machines where
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
749 @command{remsh} is used instead of @command{rsh}.
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
750
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
751
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
752 @item @option{scp} --- @command{ssh} and @command{scp}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
753 @cindex method scp
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
754 @cindex scp method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
755 @cindex scp (with scp method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
756 @cindex ssh (with scp method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
757
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
758 Using @command{ssh} to connect to the remote host and @command{scp} to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
759 transfer files between the machines is the best method for securely
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
760 connecting to a remote machine and accessing files.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
761
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
762 The performance of this option is also quite good. It may be slower than
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
763 the inline methods when you often open and close small files however.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
764 The cost of the cryptographic handshake at the start of an @command{scp}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
765 session can begin to absorb the advantage that the lack of encoding and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
766 decoding presents.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
767
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
768 There are also two variants, @option{scp1} and @option{scp2}, that
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
769 call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
770 explicitly select whether you want to use the SSH protocol version 1
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
771 or 2 to connect to the remote host. (You can also specify in
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
772 @file{~/.ssh/config}, the SSH configuration file, which protocol
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
773 should be used, and use the regular @option{scp} method.)
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
774
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
775 Two other variants, @option{scp1_old} and @option{scp2_old}, use the
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
776 @command{ssh1} and @command{ssh2} commands explicitly. If you don't
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
777 know what these are, you do not need these options.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
778
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
779 All the @command{ssh} based methods support the kludgy @samp{-p}
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
780 feature where you can specify a port number to connect to in the host
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
781 name. For example, the host name @file{host#42} tells @tramp{} to
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
782 specify @samp{-p 42} in the argument list for @command{ssh}.
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
783
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
784
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
785 @item @option{rsync} --- @command{ssh} and @command{rsync}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
786 @cindex method rsync
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
787 @cindex rsync method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
788 @cindex rsync (with rsync method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
789 @cindex ssh (with rsync method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
790
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
791 Using the @command{ssh} command to connect securely to the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
792 machine and the @command{rsync} command to transfer files is almost
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
793 identical to the @option{scp} method.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
794
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
795 While @command{rsync} performs much better than @command{scp} when
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
796 transferring files that exist on both hosts, this advantage is lost if
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
797 the file exists only on one side of the connection.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
798
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
799 The @command{rsync} based method may be considerably faster than the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
800 @command{rcp} based methods when writing to the remote system. Reading
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
801 files to the local machine is no faster than with a direct copy.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
802
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
803 This method supports the @samp{-p} hack.
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
804
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
805
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
806 @item @option{scpx} --- @command{ssh} and @command{scp}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
807 @cindex method scpx
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
808 @cindex scpx method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
809 @cindex scp (with scpx method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
810 @cindex ssh (with scpx method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
811 @cindex Cygwin (with scpx method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
812
52871
f0730b222101 (External transfer methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52869
diff changeset
813 As you would expect, this is similar to @option{scp}, only a little
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
814 different. Whereas @option{scp} opens a normal interactive shell on
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
815 the remote host, this option uses @samp{ssh -t -t @var{host} -l
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
816 @var{user} /bin/sh} to open a connection. This is useful for users
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
817 where the normal login shell is set up to ask them a number of
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
818 questions when logging in. This procedure avoids these questions, and
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
819 just gives @tramp{} a more-or-less `standard' login shell to work
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
820 with.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
821
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
822 This is also useful for Windows users where @command{ssh}, when
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
823 invoked from an Emacs buffer, tells them that it is not allocating a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
824 pseudo tty. When this happens, the login shell is wont to not print
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
825 any shell prompt, which confuses @tramp{} mightily. Maybe this
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
826 applies to the Cygwin port of SSH.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
827
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
828 This method supports the @samp{-p} hack.
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
829
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
830
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
831 @item @option{pscp} --- @command{plink} and @command{pscp}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
832 @cindex method pscp
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
833 @cindex pscp method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
834 @cindex pscp (with pscp method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
835 @cindex plink (with pscp method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
836 @cindex PuTTY (with pscp method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
837
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
838 This method is similar to @option{scp}, but it uses the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
839 @command{plink} command to connect to the remote host, and it uses
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
840 @command{pscp} for transferring the files. These programs are part
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
841 of PuTTY, an SSH implementation for Windows.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
842
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
843 CCC: Does @command{plink} support the @samp{-p} hack?
46010
d07b0e5f80b9 (tramp-open-connection-rsh): Support a kludgy feature for the
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45979
diff changeset
844
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
845
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
846 @item @option{fcp} --- @command{fsh} and @command{fcp}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
847 @cindex method fcp
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
848 @cindex fcp method
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
849 @cindex fsh (with fcp method)
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
850 @cindex fcp (with fcp method)
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
851
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
852 This method is similar to @option{scp}, but it uses the @command{fsh}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
853 command to connect to the remote host, and it uses @command{fcp} for
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
854 transferring the files. @command{fsh/fcp} are a front-end for
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
855 @command{ssh} which allow for reusing the same @command{ssh} session
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
856 for submitting several commands. This avoids the startup overhead of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
857 @command{scp} (which has to establish a secure connection whenever it
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
858 is called). Note, however, that you can also use one of the inline
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
859 methods to achieve a similar effect.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
860
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
861 This method uses the command @samp{fsh @var{host} -l @var{user}
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
862 /bin/sh -i} to establish the connection, it does not work to just say
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
863 @command{fsh @var{host} -l @var{user}}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
864
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
865 @cindex method fsh
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
866 @cindex fsh method
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
867 There is no inline method using @command{fsh} as the multiplexing
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
868 provided by the program is not very useful in our context. @tramp{}
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
869 opens just one connection to the remote host and then keeps it open,
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
870 anyway.
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
871
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
872
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
873 @ifset emacs
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
874 @item @option{ftp}
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
875 @cindex method ftp
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
876 @cindex ftp method
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
877
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
878 This is not a native @tramp{} method. Instead of, it forwards all
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
879 requests to @value{ftp-package-name}.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
880 @end ifset
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
881
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
882
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
883 @item @option{smb} --- @command{smbclient}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
884 @cindex method smb
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
885 @cindex smb method
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
886
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
887 This is another not natural @tramp{} method. It uses the
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
888 @command{smbclient} command on different Unices in order to connect to
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
889 an SMB server. An SMB server might be a Samba (or CIFS) server on
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
890 another UNIX host or, more interesting, a host running MS Windows. So
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
891 far, it is tested towards MS Windows NT, MS Windows 2000, and MS
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
892 Windows XP.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
893
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
894 The first directory in the localname must be a share name on the remote
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
895 host. Remember, that the @code{$} character in which default shares
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
896 usually end, must be written @code{$$} due to environment variable
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
897 substitution in file names. If no share name is given (i.e. remote
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
898 directory @code{/}), all available shares are listed.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
899
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
900 Since authorization is done on share level, you will be prompted
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
901 always for a password if you access another share on the same host.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
902 Due to security reasons, the password is not cached.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
903
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
904 MS Windows uses for authorization both a user name and a domain name.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
905 Because of this, the @tramp{} syntax has been extended: you can
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
906 specify a user name which looks like @code{user%domain} (the real user
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
907 name, then a percent sign, then the domain name). So, to connect to
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
908 the machine @code{melancholia} as user @code{daniel} of the domain
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
909 @code{BIZARRE}, and edit @file{.emacs} in the home directory (share
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
910 @code{daniel$}) I would specify the filename
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
911 @file{@value{tramp-prefix}smb@value{tramp-postfix-single-hop}daniel%BIZARRE@@melancholia@value{tramp-postfix}/daniel$$/.emacs}.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
912
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
913 The domain name as well as the user name are optional. If no user
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
914 name is specified at all, the anonymous user (without password
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
915 prompting) is assumed. This is different from all other @tramp{}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
916 methods, where in such a case the local user name is taken.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
917
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
918 The @option{smb} method supports the @samp{-p} hack.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
919
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
920 @strong{Please note:} If Emacs runs locally under MS Windows, this
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
921 method isn't available. Instead of, you can use UNC file names like
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
922 @file{//melancholia/daniel$$/.emacs}. The only disadvantage is that
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
923 there's no possibility to specify another user name.
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
924
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
925 @end table
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
926
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
927 @node Multi-hop Methods
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
928 @section Connecting to a remote host using multiple hops
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
929 @cindex multi-hop methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
930 @cindex methods, multi-hop
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
931
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
932 Sometimes, the methods described before are not sufficient. Sometimes,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
933 it is not possible to connect to a remote host using a simple command.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
934 For example, if you are in a secured network, you might have to log in
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
935 to a `bastion host' first before you can connect to the outside world.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
936 Of course, the target host may also require a bastion host. The format
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
937 of multi-hop filenames is slightly different than the format of normal
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
938 @tramp{} methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
939
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
940 @cindex method multi
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
941 @cindex multi method
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
942 A multi-hop file name specifies a method, a number of hops, and a
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
943 localname (path name on the remote system). The method name is always
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
944 @option{multi}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
945
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
946 Each hop consists of a @dfn{hop method} specification, a user name and
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
947 a host name. The hop method can be an inline method only. The
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
948 following hop methods are (currently) available:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
949
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
950 @table @option
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
951 @item telnet
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
952 @cindex hop method telnet
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
953 @cindex telnet hop method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
954
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
955 Uses the well-known @command{telnet} program to connect to the host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
956 Whereas user name and host name are supplied in the file name, the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
957 user is queried for the password.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
958
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
959 @item rsh
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
960 @cindex hop method rsh
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
961 @cindex rsh hop method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
962
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
963 This uses @command{rsh} to connect to the host. You do not need to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
964 enter a password unless @command{rsh} explicitly asks for it.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
965
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
966 The variant @option{remsh} uses the @command{remsh} command. It
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
967 should be applied on machines where @command{remsh} is used instead of
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
968 @command{rsh}.
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
969
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
970 @item ssh
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
971 @cindex hop method ssh
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
972 @cindex ssh hop method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
973
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
974 This uses @command{ssh} to connect to the host. You might have to enter
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
975 a password or a pass phrase.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
976
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
977 @item su
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
978 @cindex hop method su
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
979 @cindex su hop method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
980
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
981 This method does not actually contact a different host, but it allows
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
982 you to become a different user on the host you're currently on. This
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
983 might be useful if you want to edit files as root, but the remote host
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
984 does not allow remote root logins. In this case you can use
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
985 @option{telnet}, @option{rsh} or @option{ssh} to connect to the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
986 remote host as a non-root user, then use an @option{su} hop to become
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
987 root. But @option{su} need not be the last hop in a sequence, you could
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
988 also use it somewhere in the middle, if the need arises.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
989
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
990 Even though you @emph{must} specify both user and host with an
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
991 @option{su} hop, the host name is ignored and only the user name is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
992 used.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
993
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
994 @item sudo
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
995 @cindex hop method sudo
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
996 @cindex sudo hop method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
997
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
998 This is similar to the @option{su} hop, except that it uses
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
999 @command{sudo} rather than @command{su} to become a different user.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1000
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1001 @end table
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1002
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1003 Some people might wish to use port forwarding with @command{ssh} or
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1004 maybe they have to use a nonstandard port. This can be accomplished
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1005 by putting a stanza in @file{~/.ssh/config} for the account which
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1006 specifies a different port number for a certain host name. But it can
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1007 also be accomplished within @tramp{}, by adding a multi-hop method.
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1008 For example:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1009
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1010 @lisp
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1011 (add-to-list
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1012 'tramp-multi-connection-function-alist
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1013 '("sshf" tramp-multi-connect-rlogin "ssh %h -l %u -p 4400%n"))
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1014 @end lisp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1015
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1016 Now you can use an @code{sshf} hop which connects to port 4400 instead of
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1017 the standard port.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1018
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1019
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1020 @node Default Method
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1021 @section Selecting a default method
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1022 @cindex default method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1023
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1024 @vindex tramp-default-method
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1025 When you select an appropriate transfer method for your typical usage
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1026 you should set the variable @code{tramp-default-method} to reflect that
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1027 choice. This variable controls which method will be used when a method
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1028 is not specified in the @tramp{} file name. For example:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1029
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1030 @lisp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1031 (setq tramp-default-method "scp")
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1032 @end lisp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1033
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1034 @vindex tramp-default-method-alist
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1035 You can also specify different methods for certain user/host
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1036 combinations, via the variable @code{tramp-default-method-alist}. For
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1037 example, the following two lines specify to use the @option{ssh}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1038 method for all user names matching @samp{john} and the @option{rsync}
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1039 method for all host names matching @samp{lily}. The third line
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1040 specifies to use the @option{su} method for the user @samp{root} on
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1041 the machine @samp{localhost}.
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1042
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1043 @lisp
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1044 (add-to-list 'tramp-default-method-alist '("" "john" "ssh"))
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1045 (add-to-list 'tramp-default-method-alist '("lily" "" "rsync"))
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1046 (add-to-list 'tramp-default-method-alist
47772
e2d9dd69445b Move @copying to standard place. Use
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47578
diff changeset
1047 '("\\`localhost\\'" "\\`root\\'" "su"))
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1048 @end lisp
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1049
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1050 @noindent
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1051 See the documentation for the variable
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1052 @code{tramp-default-method-alist} for more details.
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1053
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1054 External transfer methods are normally preferable to inline transfer
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1055 methods, giving better performance. They may not be useful if you use
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1056 many remote machines where you cannot log in without a password.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1057
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1058 @xref{Inline methods}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1059 @xref{External transfer methods}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1060 @xref{Multi-hop Methods}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1061
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1062 Another consideration with the selection of transfer methods is the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1063 environment you will use them in and, especially when used over the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1064 Internet, the security implications of your preferred method.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1065
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1066 The @command{rsh} and @command{telnet} methods send your password as
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1067 plain text as you log in to the remote machine, as well as transferring
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1068 the files in such a way that the content can easily be read from other
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1069 machines.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1070
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1071 If you need to connect to remote systems that are accessible from the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1072 Internet, you should give serious thought to using @command{ssh} based
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1073 methods to connect. These provide a much higher level of security,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1074 making it a non-trivial exercise for someone to obtain your password or
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1075 read the content of the files you are editing.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1076
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1077
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1078 @subsection Which method is the right one for me?
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1079 @cindex choosing the right method
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1080
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1081 Given all of the above, you are probably thinking that this is all fine
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1082 and good, but it's not helping you to choose a method! Right you are.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1083 As a developer, we don't want to boss our users around but give them
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1084 maximum freedom instead. However, the reality is that some users would
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1085 like to have some guidance, so here I'll try to give you this guidance
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1086 without bossing you around. You tell me whether it works @dots{}
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1087
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1088 My suggestion is to use an inline method. For large files, out-of-band
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1089 methods might be more efficient, but I guess that most people will want
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1090 to edit mostly small files.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1091
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1092 I guess that these days, most people can access a remote machine by
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1093 using @code{ssh}. So I suggest that you use the @code{ssh} method.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1094 So, type @kbd{C-x C-f /ssh:root@@otherhost:/etc/motd @key{RET}} to
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1095 edit the @file{/etc/motd} file on the other host.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1096
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1097 If you can't use @code{ssh} to log in to the remote host, then select a
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1098 method that uses a program that works. For instance, Windows users
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1099 might like the @code{plink} method which uses the PuTTY implementation
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1100 of @code{ssh}. Or you use Kerberos and thus like @code{krlogin}.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1101
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1102 For the special case of editing files on the local host as another
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1103 user, see the @code{su} or @code{sudo} method.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1104
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1105 People who edit large files may want to consider @code{scp} instead of
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1106 @code{ssh}, or @code{pscp} instead of @code{plink}. These out-of-band
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1107 methods are faster than inline methods for large files. Note, however,
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1108 that out-of-band methods suffer from some limitations. Please try
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1109 first whether you really get a noticeable speed advantage from using an
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1110 out-of-band method! Maybe even for large files, inline methods are
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1111 fast enough.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1112
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1113 The reason why I'm suggesting to use inline methods is that they work
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1114 even if the remote end is asking you for a password. Out-of-band
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1115 methods don't work in this situation. Also, multi-hop methods are
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1116 inherently inline.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1117
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1118
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1119 @node Customizing Methods
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1120 @section Using Non-Standard Methods
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1121 @cindex customizing methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1122 @cindex using non-standard methods
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1123 @cindex create your own methods
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1124
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1125 There is a variable @code{tramp-methods} which you can change if the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1126 predefined methods don't seem right.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1127
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1128 For the time being, I'll refer you to the Lisp documentation of that
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1129 variable, accessible with @kbd{C-h v tramp-methods @key{RET}}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1130
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1131
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1132 @node Customizing Completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1133 @section Selecting config files for user/host name completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1134 @cindex customizing completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1135 @cindex selecting config files
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1136 @vindex tramp-completion-function-alist
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1137
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1138 The variable @code{tramp-completion-function-alist} is intended to
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1139 customize which files are taken into account for user and host name
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1140 completion (@pxref{Filename completion}). For every method, it keeps
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1141 a set of configuration files, accompanied by a Lisp function able to
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1142 parse that file. Entries in @code{tramp-completion-function-alist}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1143 have the form (@var{method} @var{pair1} @var{pair2} ...).
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1144
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1145 Each @var{pair} is composed of (@var{function} @var{file}).
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1146 @var{function} is responsible to extract user names and host names
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1147 from @var{file} for completion. There are two functions which access
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1148 this variable:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1149
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1150 @defun tramp-get-completion-function method
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1151 This function returns the list of completion functions for @var{method}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1152
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1153 Example:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1154 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1155 (tramp-get-completion-function "rsh")
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1156
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1157 @result{} ((tramp-parse-rhosts "/etc/hosts.equiv")
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1158 (tramp-parse-rhosts "~/.rhosts"))
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1159 @end example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1160 @end defun
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1161
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1162 @defun tramp-set-completion-function method function-list
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1163 This function sets @var{function-list} as list of completion functions
52869
4c969f6bcb01 (Inline methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52401
diff changeset
1164 for @var{method}.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1165
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1166 Example:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1167 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1168 (tramp-set-completion-function "ssh"
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1169 '((tramp-parse-sconfig "/etc/ssh_config")
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1170 (tramp-parse-sconfig "~/.ssh/config")))
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1171
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1172 @result{} ((tramp-parse-sconfig "/etc/ssh_config")
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1173 (tramp-parse-sconfig "~/.ssh/config"))
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1174 @end example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1175 @end defun
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1176
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1177 The following predefined functions parsing configuration files exist:
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1178
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1179 @table @asis
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1180 @item @code{tramp-parse-rhosts}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1181 @findex tramp-parse-rhosts
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1182
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1183 This function parses files which are syntactical equivalent to
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1184 @file{~/.rhosts}. It returns both host names and user names, if
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1185 specified.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1186
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1187 @item @code{tramp-parse-shosts}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1188 @findex tramp-parse-shosts
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1189
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1190 This function parses files which are syntactical equivalent to
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1191 @file{~/.ssh/known_hosts}. Since there are no user names specified
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1192 in such files, it can return host names only.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1193
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1194 @item @code{tramp-parse-sconfig}
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1195 @findex tramp-parse-shosts
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1196
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
1197 This function returns the host nicknames defined by @code{Host} entries
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1198 in @file{~/.ssh/config} style files.
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1199
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1200 @item @code{tramp-parse-hosts}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1201 @findex tramp-parse-hosts
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1202
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1203 A function dedicated to @file{/etc/hosts} style files. It returns
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1204 host names only.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1205
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1206 @item @code{tramp-parse-passwd}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1207 @findex tramp-parse-passwd
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1208
47578
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1209 A function which parses @file{/etc/passwd} like files. Obviously, it
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1210 can return user names only.
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1211
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1212 @item @code{tramp-parse-netrc}
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1213 @findex tramp-parse-netrc
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1214
6e910ba94c42 Version 2.0.22 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47577
diff changeset
1215 Finally, a function which parses @file{~/.netrc} like files.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1216 @end table
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1217
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1218 If you want to keep your own data in a file, with your own structure,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1219 you might provide such a function as well. This function must meet
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1220 the following conventions:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1221
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1222 @defun my-tramp-parse file
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1223 @var{file} must be either a file name on your host, or @code{nil}. The
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1224 function must return a list of (@var{user} @var{host}), which are
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1225 taken as candidates for user and host name completion.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1226
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1227 Example:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1228 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1229 (my-tramp-parse "~/.my-tramp-hosts")
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1230
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1231 @result{} ((nil "toto") ("daniel" "melancholia"))
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1232 @end example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1233 @end defun
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1234
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1235
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1236 @node Remote Programs
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1237 @section How @tramp{} finds and uses programs on the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1238
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1239 @tramp{} depends on a number of programs on the remote host in order to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1240 function, including @command{ls}, @command{test}, @command{find} and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1241 @command{cat}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1242
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1243 In addition to these required tools, there are various tools that may be
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1244 required based on the connection method. See @ref{Inline methods} and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1245 @ref{External transfer methods} for details on these.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1246
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1247 Certain other tools, such as @command{perl} (or @command{perl5}) and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1248 @command{grep} will be used if they can be found. When they are
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1249 available, they are used to improve the performance and accuracy of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1250 remote file access.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1251
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1252 @vindex tramp-remote-path
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1253 When @tramp{} connects to the remote machine, it searches for the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1254 programs that it can use. The variable @var{tramp-remote-path} controls
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1255 the directories searched on the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1256
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1257 By default, this is set to a reasonable set of defaults for most
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1258 machines. It is possible, however, that your local (or remote ;) system
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1259 administrator has put the tools you want in some obscure local
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1260 directory.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1261
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1262 In this case, you can still use them with @tramp{}. You simply need to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1263 add code to your @file{.emacs} to add the directory to the remote path.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1264 This will then be searched by @tramp{} when you connect and the software
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1265 found.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1266
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1267 To add a directory to the remote search path, you could use code such
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1268 as:
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1269
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1270 @lisp
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1271 @i{;; We load @tramp{} to define the variable.}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1272 (require 'tramp)
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1273 @i{;; We have @command{perl} in "/usr/local/perl/bin"}
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1274 (add-to-list 'tramp-remote-path "/usr/local/perl/bin")
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1275 @end lisp
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1276
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1277
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1278 @node Remote shell setup
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1279 @comment node-name, next, previous, up
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1280 @section Remote shell setup hints
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1281 @cindex remote shell setup
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
1282 @cindex @file{.profile} file
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
1283 @cindex @file{.login} file
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1284 @cindex shell init files
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1285
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1286 As explained in the @ref{Overview} section, @tramp{} connects to the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1287 remote host and talks to the shell it finds there. Of course, when you
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1288 log in, the shell executes its init files. Suppose your init file
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1289 requires you to enter the birth date of your mother; clearly @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1290 does not know this and hence fails to log you in to that host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1291
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1292 There are different possible strategies for pursuing this problem. One
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1293 strategy is to enable @tramp{} to deal with all possible situations.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1294 This is a losing battle, since it is not possible to deal with
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1295 @emph{all} situations. The other strategy is to require you to set up
52871
f0730b222101 (External transfer methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52869
diff changeset
1296 the remote host such that it behaves like @tramp{} expects. This might
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1297 be inconvenient because you have to invest a lot of effort into shell
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1298 setup before you can begin to use @tramp{}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1299
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1300 The package, therefore, pursues a combined approach. It tries to figure
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1301 out some of the more common setups, and only requires you to avoid
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1302 really exotic stuff. For example, it looks through a list of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1303 directories to find some programs on the remote host. And also, it
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1304 knows that it is not obvious how to check whether a file exists, and
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1305 therefore it tries different possibilities. (On some hosts and shells,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1306 the command @code{test -e} does the trick, on some hosts the shell
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1307 builtin doesn't work but the program @code{/usr/bin/test -e} or
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1308 @code{/bin/test -e} works. And on still other hosts, @code{ls -d} is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1309 the right way to do this.)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1310
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1311 Below you find a discussion of a few things that @tramp{} does not deal
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1312 with, and that you therefore have to set up correctly.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1313
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1314 @table @asis
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1315 @item @var{shell-prompt-pattern}
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1316 @vindex shell-prompt-pattern
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1317
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1318 After logging in to the remote host, @tramp{} has to wait for the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1319 shell startup to finish before it can send commands to the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1320 shell. The strategy here is to wait for the shell prompt. In order to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1321 recognize the shell prompt, the variable @code{shell-prompt-pattern} has
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1322 to be set correctly to recognize the shell prompt on the remote host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1323
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1324 Note that @tramp{} requires the match for @code{shell-prompt-pattern}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1325 to be at the end of the buffer. Many people have something like the
46346
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
1326 following as the value for the variable: @code{"^[^>$][>$] *"}. Now
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1327 suppose your shell prompt is @code{a <b> c $ }. In this case,
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1328 @tramp{} recognizes the @code{>} character as the end of the prompt,
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1329 but it is not at the end of the buffer.
46346
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
1330
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1331 @item @var{tramp-shell-prompt-pattern}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1332 @vindex tramp-shell-prompt-pattern
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1333
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1334 This regular expression is used by @tramp{} in the same way as
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1335 @code{shell-prompt-pattern}, to match prompts from the remote shell.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1336 This second variable exists because the prompt from the remote shell
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1337 might be different from the prompt from a local shell --- after all,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1338 the whole point of @tramp{} is to log in to remote hosts as a
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1339 different user. The default value of
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1340 @code{tramp-shell-prompt-pattern} is the same as the default value of
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1341 @code{shell-prompt-pattern}, which is reported to work well in many
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1342 circumstances.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1343
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1344 @item @code{tset} and other questions
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1345 @cindex Unix command tset
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1346 @cindex tset Unix command
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1347
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1348 Some people invoke the @code{tset} program from their shell startup
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1349 scripts which asks the user about the terminal type of the shell.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1350 Maybe some shells ask other questions when they are started. @tramp{}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1351 does not know how to answer these questions. There are two approaches
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1352 for dealing with this problem. One approach is to take care that the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1353 shell does not ask any questions when invoked from @tramp{}. You can
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1354 do this by checking the @code{TERM} environment variable, it will be
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1355 set to @code{dumb} when connecting.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1356
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1357 @vindex tramp-terminal-type
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1358 The variable @code{tramp-terminal-type} can be used to change this value
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1359 to @code{dumb}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1360
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1361 The other approach is to teach @tramp{} about these questions. See
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1362 the variables @code{tramp-actions-before-shell} and
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1363 @code{tramp-multi-actions} (for multi-hop connections).
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1364
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1365
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1366 @item Environment variables named like users in @file{.profile}
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1367
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1368 If you have a user named frumple and set the variable @code{FRUMPLE} in
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1369 your shell environment, then this might cause trouble. Maybe rename
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1370 the variable to @code{FRUMPLE_DIR} or the like.
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1371
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1372 This weird effect was actually reported by a @tramp{} user!
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1373
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1374
51967
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1375 @item Non-Bourne commands in @file{.profile}
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1376
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1377 After logging in to the remote host, @tramp{} issues the command
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1378 @code{exec /bin/sh}. (Actually, the command is slightly different.)
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1379 When @code{/bin/sh} is executed, it reads some init files, such as
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1380 @file{~/.shrc} or @file{~/.profile}.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1381
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1382 Now, some people have a login shell which is not @code{/bin/sh} but a
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1383 Bourne-ish shell such as bash or ksh. Some of these people might put
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1384 their shell setup into the files @code{~/.shrc} or @code{~/.profile}.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1385 This way, it is possible for non-Bourne constructs to end up in those
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1386 files. Then, @code{exec /bin/sh} might cause the Bourne shell to barf
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1387 on those constructs.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1388
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1389 As an example, imagine somebody putting @code{export FOO=bar} into the
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1390 file @file{~/.profile}. The standard Bourne shell does not understand
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1391 this syntax and will emit a syntax error when it reaches this line.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1392
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1393 Another example is the tilde (@code{~}) character, say when adding
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1394 @file{~/bin} to @code{$PATH}. Many Bourne shells will not expand this
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1395 character, and since there is usually no directory whose name consists
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1396 of the single character tilde, strange things will happen.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1397
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1398 What can you do about this?
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1399
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1400 Well, one possibility is to make sure that everything in @file{~/.shrc}
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1401 and @file{~/.profile} on all remote hosts is Bourne-compatible. In the
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1402 above example, instead of @code{export FOO=bar}, you might use
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1403 @code{FOO=bar; export FOO} instead.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1404
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1405 The other possibility is to put your non-Bourne shell setup into some
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1406 other files. For example, bash reads the file @file{~/.bash_profile}
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1407 instead of @file{~/.profile}, if the former exists. So bash
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1408 aficionados just rename their @file{~/.profile} to
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1409 @file{~/.bash_profile} on all remote hosts, and Bob's your uncle.
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1410
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1411 The @tramp{} developers would like to circumvent this problem, so if you
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1412 have an idea about it, please tell us. However, we are afraid it is not
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1413 that simple: before saying @code{exec /bin/sh}, @tramp{} does not know
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1414 which kind of shell it might be talking to. It could be a Bourne-ish
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1415 shell like ksh or bash, or it could be a csh derivative like tcsh, or
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1416 it could be zsh, or even rc. If the shell is Bourne-ish already, then
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1417 it might be prudent to omit the @code{exec /bin/sh} step. But how to
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1418 find out if the shell is Bourne-ish?
2693b0669cc1 Tramp 2.0.36 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51604
diff changeset
1419
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1420 @end table
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1421
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1422
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1423 @node Auto-save and Backup
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1424 @section Auto-save and Backup configuration
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1425 @cindex auto-save
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1426 @cindex backup
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1427 @vindex backup-directory-alist
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1428
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1429 Explaining auto-save is still to do.
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1430
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1431 Normally, Emacs writes backup files to the same directory as the
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1432 original files, but this behavior can be changed via the variable
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1433 @code{backup-directory-alist}. In connection with @tramp{}, this can
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1434 have unexpected side effects. Suppose that you specify that all backups
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1435 should go to the directory @file{~/.emacs.d/backups/}, and then you edit
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1436 the file @file{/su:root@@localhost:/etc/secretfile}. The effect is that
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1437 the backup file will be owned by you and not by root, thus possibly
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1438 enabling others to see it even if they were not intended to see it.
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1439
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1440 When @code{backup-directory-alist} is nil (the default), such problems
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1441 do not occur.
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1442
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1443 If you wish to customize the variable, the workaround is to include
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1444 special settings for @tramp{} files. For example, the following statement
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1445 effectively `turns off' the effect of @code{backup-directory-alist} for
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1446 @tramp{} files:
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1447
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1448 @lisp
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1449 (require 'tramp)
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1450 (add-to-list 'backup-directory-alist
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1451 (cons tramp-file-name-regexp nil))
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1452 @end lisp
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1453
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1454
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1455 @node Windows setup hints
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1456 @section Issues with Cygwin ssh
46366
93ea423da06e Index entries.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46361
diff changeset
1457 @cindex Cygwin, issues
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1458
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1459 This section needs a lot of work! Please help.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1460
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1461 @cindex method sshx with Cygwin
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1462 @cindex sshx method with Cygwin
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1463 If you use the Cygwin installation of ssh (you have to explicitly select
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1464 it in the installer), then it should work out of the box to just select
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1465 @code{sshx} as the connection method. You can find information about
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1466 setting up Cygwin in their FAQ at @uref{http://cygwin.com/faq/}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1467
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1468 @cindex method scpx with Cygwin
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1469 @cindex scpx method with Cygwin
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1470 If you wish to use the @code{scpx} connection method, then you might
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1471 have the problem that Emacs calls @code{scp} with a Windows filename
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1472 such as @code{c:/foo}. The Cygwin version of @code{scp} does not know
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1473 about Windows filenames and interprets this as a remote filename on the
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1474 host @code{c}.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1475
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1476 One possible workaround is to write a wrapper script for @code{scp}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1477 which converts the Windows filename to a Cygwinized filename.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1478
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1479 I guess that another workaround is to run Emacs under Cygwin, or to run
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1480 a Cygwinized Emacs.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1481
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1482 @cindex Cygwin and ssh-agent
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1483 @cindex SSH_AUTH_SOCK and Emacs on Windows
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1484 If you want to use either @code{ssh} based method on Windows, then you
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1485 might encounter problems with @code{ssh-agent}. Using this program,
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1486 you can avoid typing the pass-phrase every time you log in (and the
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1487 @code{scpx} method more or less requires you to use @code{ssh-agent}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1488 because it does not allow you to type a password or pass-phrase).
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1489 However, if you start Emacs from a desktop shortcut, then the
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1490 environment variable @code{SSH_AUTH_SOCK} is not set and so Emacs and
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1491 thus @tramp{} and thus @code{ssh} and @code{scp} started from @tramp{}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1492 cannot communicate with @code{ssh-agent}. It works better to start
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1493 Emacs from the shell.
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1494
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1495 If anyone knows how to start @code{ssh-agent} under Windows in such a
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1496 way that desktop shortcuts can profit, please holler. I don't really
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1497 know anything at all about Windows@dots{}
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1498
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1499
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1500 @node Usage
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1501 @chapter Using @tramp{}
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1502 @cindex using @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1503
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1504 Once you have installed @tramp{} it will operate fairly transparently. You
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1505 will be able to access files on any remote machine that you can log in
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1506 to as though they were local.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1507
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1508 Files are specified to @tramp{} using a formalized syntax specifying the
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1509 details of the system to connect to. This is similar to the syntax used
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1510 by the @value{ftp-package-name} package.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1511
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1512 @cindex type-ahead
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1513 Something that might happen which surprises you is that Emacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1514 remembers all your keystrokes, so if you see a password prompt from
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1515 Emacs, say, and hit @kbd{@key{RET}} twice instead of once, then the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1516 second keystroke will be processed by Emacs after @tramp{} has done
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1517 its thing. Why, this type-ahead is normal behavior, you say. Right
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1518 you are, but be aware that opening a remote file might take quite a
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1519 while, maybe half a minute when a connection needs to be opened.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1520 Maybe after half a minute you have already forgotten that you hit that
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1521 key!
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1522
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1523 @menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1524 * Filename Syntax:: @tramp{} filename conventions.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1525 * Multi-hop filename syntax:: Multi-hop filename conventions.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1526 * Filename completion:: Filename completion.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1527 * Dired:: Dired.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1528 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1529
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1530
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1531 @node Filename Syntax
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1532 @section @tramp{} filename conventions
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1533 @cindex filename syntax
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1534 @cindex filename examples
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1535
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1536 To access the file @var{localname} on the remote machine @var{machine} you
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1537 would specify the filename
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1538 @file{@value{tramp-prefix}@var{machine}@value{tramp-postfix}@var{localname}}.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1539 This will connect to @var{machine} and transfer the file using the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1540 default method. @xref{Default Method}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1541
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1542 Some examples of @tramp{} filenames are shown below.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1543
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1544 @table @file
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1545 @item @value{tramp-prefix}melancholia@value{tramp-postfix}.emacs
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1546 Edit the file @file{.emacs} in your home directory on the machine
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1547 @code{melancholia}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1548
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1549 @item @value{tramp-prefix}melancholia.danann.net@value{tramp-postfix}.emacs
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1550 This edits the same file, using the fully qualified domain name of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1551 the machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1552
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1553 @item @value{tramp-prefix}melancholia@value{tramp-postfix}~/.emacs
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1554 This also edits the same file --- the @file{~} is expanded to your
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1555 home directory on the remote machine, just like it is locally.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1556
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1557 @item @value{tramp-prefix}melancholia@value{tramp-postfix}~daniel/.emacs
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1558 This edits the file @file{.emacs} in the home directory of the user
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1559 @code{daniel} on the machine @code{melancholia}. The @file{~<user>}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1560 construct is expanded to the home directory of that user on the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1561 machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1562
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1563 @item @value{tramp-prefix}melancholia@value{tramp-postfix}/etc/squid.conf
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1564 This edits the file @file{/etc/squid.conf} on the machine
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1565 @code{melancholia}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1566
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1567 @end table
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1568
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1569 Unless you specify a different name to use, @tramp{} will use the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1570 current local user name as the remote user name to log in with. If you
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1571 need to log in as a different user, you can specify the user name as
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1572 part of the filename.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1573
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1574 To log in to the remote machine as a specific user, you use the syntax
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1575 @file{@value{tramp-prefix}@var{user}@@@var{machine}@value{tramp-postfix}/@var{path/to.file}}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1576 That means that connecting to @code{melancholia} as @code{daniel} and
46348
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
1577 editing @file{.emacs} in your home directory you would specify
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1578 @file{@value{tramp-prefix}daniel@@melancholia@value{tramp-postfix}.emacs}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1579
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1580 It is also possible to specify other file transfer methods
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1581 (@pxref{Default Method}) as part of the filename.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1582 @ifset emacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1583 This is done by putting the method before the user and host name, as
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1584 in
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1585 @file{@value{tramp-prefix}@var{method}@value{tramp-postfix-single-hop}}
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1586 (Note the trailing colon).
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1587 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1588 @ifset xemacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1589 This is done by replacing the initial
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1590 @file{@value{tramp-prefix}} with
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1591 @file{@value{tramp-prefix}<method>@value{tramp-postfix-single-hop}}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1592 (Note the trailing slash!).
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1593 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1594 The user, machine and file specification remain the same.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1595
46348
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
1596 So, to connect to the machine @code{melancholia} as @code{daniel},
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1597 using the @option{ssh} method to transfer files, and edit @file{.emacs}
46348
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
1598 in my home directory I would specify the filename
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1599 @file{@value{tramp-prefix}ssh@value{tramp-postfix-single-hop}daniel@@melancholia@value{tramp-postfix}.emacs}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1600
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1601
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1602 @node Multi-hop filename syntax
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1603 @section Multi-hop filename conventions
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1604 @cindex filename syntax for multi-hop files
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1605 @cindex multi-hop filename syntax
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1606
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1607 The syntax of multi-hop file names is necessarily slightly different
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1608 than the syntax of other @tramp{} file names. Here's an example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1609 multi-hop file name, first in Emacs syntax and then in XEmacs syntax:
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1610
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1611 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1612 @value{tramp-prefix}multi@value{tramp-postfix-single-hop}rsh@value{tramp-postfix-multi-hop}out@@gate@value{tramp-postfix-single-hop}telnet@value{tramp-postfix-multi-hop}kai@@real.host@value{tramp-postfix}/path/to.file
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1613 @end example
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1614
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1615 This is quite a mouthful. So let's go through it step by step. The
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1616 file name consists of three parts.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1617 @ifset emacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1618 The parts are separated by colons
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1619 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1620 @ifset xemacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1621 The parts are separated by slashes and square brackets.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1622 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1623 The first part is @file{@value{tramp-prefix}multi}, the method
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1624 specification. The second part is
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1625 @file{rsh@value{tramp-postfix-multi-hop}out@@gate@value{tramp-postfix-single-hop}telnet@value{tramp-postfix-multi-hop}kai@@real.host}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1626 and specifies the hops. The final part is @file{/path/to.file} and
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1627 specifies the file name on the remote host.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1628
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1629 The first part and the final part should be clear. See @ref{Multi-hop
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1630 Methods}, for a list of alternatives for the method specification.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1631
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1632 The second part can be subdivided again into components, so-called
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1633 hops. In the above file name, there are two hops,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1634 @file{rsh@value{tramp-postfix-multi-hop}out@@gate} and
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1635 @file{telnet@value{tramp-postfix-multi-hop}kai@@real.host}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1636
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1637 Each hop can @emph{again} be subdivided into (three) components, the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1638 @dfn{hop method}, the @dfn{user name} and the @dfn{host name}. The
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1639 meaning of the second and third component should be clear, and the hop
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1640 method says what program to use to perform that hop.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1641
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1642 The first hop, @file{rsh@value{tramp-postfix-multi-hop}out@@gate},
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1643 says to use @command{rsh} to log in as user @code{out} to the host
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1644 @code{gate}. Starting at that host, the second hop,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1645 @file{telnet@value{tramp-postfix-multi-hop}kai@@real.host}, says to
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1646 use @command{telnet} to log in as user @code{kai} to host
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1647 @code{real.host}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1648
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1649 @xref{Multi-hop Methods}, for a list of possible hop method values.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1650 The variable @code{tramp-multi-connection-function-alist} contains the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1651 list of possible hop methods and information on how to execute them,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1652 should you want to add your own.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1653
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1654
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1655 @node Filename completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1656 @section Filename completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1657 @cindex filename completion
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1658
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1659 Filename completion works with @tramp{} for both completing methods,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1660 user names and machine names (except multi hop methods) as well as for
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1661 files on remote machines.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1662
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1663 If you, for example, type @kbd{C-x C-f @value{tramp-prefix}t
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1664 @key{TAB}}, @tramp{} might give you as result the choice for
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1665
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1666 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1667 @ifset emacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1668 @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop} tmp/
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1669 @value{tramp-prefix-single-hop}toto@value{tramp-postfix}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1670 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1671 @ifset xemacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1672 @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop} @value{tramp-prefix-single-hop}toto@value{tramp-postfix}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1673 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1674 @end example
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48974
diff changeset
1675
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1676 @samp{@value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1677 is a possible completion for the respective method,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1678 @ifset emacs
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1679 @samp{tmp/} stands for the directory @file{/tmp} on your local
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1680 machine,
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1681 @end ifset
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1682 and @samp{@value{tramp-prefix-single-hop}toto@value{tramp-postfix}}
53207
83d9437acbf3 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 52979
diff changeset
1683 might be a host @tramp{} has detected in your @file{~/.ssh/known_hosts}
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1684 file (given you're using default method @option{ssh}).
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1685
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1686 If you go on to type @kbd{e @key{TAB}}, the minibuffer is completed to
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1687 @samp{@value{tramp-prefix}telnet@value{tramp-postfix-single-hop}}.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1688 Next @kbd{@key{TAB}} brings you all machine names @tramp{} detects in
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1689 your @file{/etc/hosts} file, let's say
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1690
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1691 @example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1692 @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}127.0.0.1@value{tramp-postfix} @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}192.168.0.1@value{tramp-postfix}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1693 @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}localhost@value{tramp-postfix} @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}melancholia.danann.net@value{tramp-postfix}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1694 @value{tramp-prefix-single-hop}telnet@value{tramp-postfix-single-hop}melancholia@value{tramp-postfix}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1695 @end example
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1696
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1697 Now you can choose the desired machine, and you can continue to
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1698 complete file names on that machine.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1699
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1700 As filename completion needs to fetch the listing of files from the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1701 remote machine, this feature is sometimes fairly slow. As @tramp{}
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1702 does not yet cache the results of directory listing, there is no gain
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1703 in performance the second time you complete filenames.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1704
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1705 If the configuration files (@pxref{Customizing Completion}), which
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1706 @tramp{} uses for analysis of completion, offer user names, those user
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1707 names will be taken into account as well.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1708
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1709
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1710 @node Dired
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1711 @section Dired
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1712 @cindex dired
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1713
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1714 @tramp{} works transparently with dired, enabling you to use this powerful
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1715 file management tool to manage files on any machine you have access to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1716 over the Internet.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1717
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1718 If you need to browse a directory tree, Dired is a better choice, at
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1719 present, than filename completion. Dired has its own cache mechanism
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1720 and will only fetch the directory listing once.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1721
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1722
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1723 @node Bug Reports
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1724 @chapter Reporting Bugs and Problems
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1725 @cindex bug reports
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1726
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1727 Bugs and problems with @tramp{} are actively worked on by the development
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1728 team. Feature requests and suggestions are also more than welcome.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1729
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1730 The @tramp{} mailing list is a great place to get information on working
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1731 with @tramp{}, solving problems and general discussion and advice on topics
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1732 relating to the package.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1733
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1734 The mailing list is at @email{tramp-devel@@mail.freesoftware.fsf.org}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1735 Messages sent to this address go to all the subscribers. This is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1736 @emph{not} the address to send subscription requests to.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1737
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1738 For help on subscribing to the list, send mail to the administrative
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1739 address, @email{tramp-devel-request@@mail.freesoftware.fsf.org}, with the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1740 subject @samp{help}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1741
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1742 To report a bug in @tramp{}, you should execute @kbd{M-x tramp-bug}. This
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1743 will automatically generate a buffer with the details of your system and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1744 @tramp{} version.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1745
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1746 When submitting a bug report, please try to describe in excruciating
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1747 detail the steps required to reproduce the problem, the setup of the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1748 remote machine and any special conditions that exist.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1749
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1750 If you can identify a minimal test case that reproduces the problem,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1751 include that with your bug report. This will make it much easier for the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1752 development team to analyze and correct the problem.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1753
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1754 @node Frequently Asked Questions
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1755 @chapter Frequently Asked Questions
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1756 @cindex frequently asked questions
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1757 @cindex FAQ
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1758
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1759 @itemize @bullet
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1760 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1761 Where can I get the latest @tramp{}?
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1762
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1763 @tramp{} is available under the URL below.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1764
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1765 @noindent
50338
155b4b78aa3b * tramp.el: Version 2.0.31 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49996
diff changeset
1766 @uref{http://savannah.nongnu.org/download/tramp/}
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1767
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1768 @noindent
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1769 There is also a Savannah project page.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1770
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1771 @noindent
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1772 @uref{https://savannah.gnu.org/projects/tramp/}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1773
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1774 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1775 Which systems does it work on?
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1776
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1777 The package has been used successfully on Emacs 20 and Emacs 21, as well
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1778 as XEmacs 21. XEmacs 20 is more problematic, see the notes in
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1779 @file{tramp.el}. I don't think anybody has really tried it on Emacs 19.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1780
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1781 The package was intended to work on Unix, and it really expects a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1782 Unix-like system on the remote end, but some people seemed to have some
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1783 success getting it to work on NT Emacs.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1784
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1785 There is some informations on @tramp{} on NT at the following URL;
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1786 many thanks to Joe Stoy for providing the information:
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1787 @uref{ftp://ftp.comlab.ox.ac.uk/tmp/Joe.Stoy/}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1788
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1789 The above mostly contains patches to old ssh versions; Tom Roche has a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1790 Web page with instructions:
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1791 @uref{http://www4.ncsu.edu/~tlroche/plinkTramp.html}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1792
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1793 ??? Is the XEmacs info correct?
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1794
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1795 ??? Can somebody provide some information for getting it to work on NT
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1796 Emacs? I think there was some issue with @command{ssh}?
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1797
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1798
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1799 @item
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1800 I can't stop @value{ftp-package-name} starting with @value{emacs-name}
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1801
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1802 @ifset emacs
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1803 @value{ftp-package-name} is loaded from @tramp{} automatically if you
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1804 require a file by the ftp method. Unfortunately, there are some Lisp
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1805 packages which make @value{ftp-package-name} file name handlers active.
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1806 You can see it applying @kbd{C-h v file-name-handler-alist}:
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1807
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1808 @example
52869
4c969f6bcb01 (Inline methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52401
diff changeset
1809 file-name-handler-alist's value is
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1810 (("^/[^/:]*\\'" . ange-ftp-completion-hook-function)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1811 ("^/[^/:]*[^/:.]:" . ange-ftp-hook-function)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1812 ("^/[^/]*$" . tramp-completion-file-name-handler)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1813 ("\\`/[^/:]+:" . tramp-file-name-handler)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1814 ("\\`/:" . file-name-non-special))
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1815 @end example
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1816
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1817 Please try to find out which package is responsible for loading
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1818 @value{ftp-package-name}, and raise a bug report.
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1819
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1820 A workaround is to require @value{ftp-package-name} before @tramp{} in
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1821 your @file{~/.emacs}, because @tramp{} cleans up the entries in
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1822 @code{file-name-handler-alist}:
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1823
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1824 @lisp
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1825 ;; @value{ftp-package-name} temporarily required
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1826 (require 'ange-ftp)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1827 ;; @tramp{} cleans up @code{file-name-handler-alist}
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1828 (require 'tramp)
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1829 @end lisp
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1830 @end ifset
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1831
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1832 @ifset xemacs
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1833 Not all the older versions of @tramp{} supported @value{emacs-name}
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1834 correctly. The first thing to do is to make sure that you have the
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1835 latest version of @tramp{} installed.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1836
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1837 If you do, please try and find out exactly the conditions required for
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1838 the @value{ftp-package-name} handlers to fire. If you can, putting a
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1839 breakpoint on @code{efs-ftp-path} and sending in the stack trace along
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1840 with your bug report would make it easier for the developers to work out
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1841 what is going wrong.
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1842 @end ifset
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1843
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1844
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1845 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1846 File name completion does not work with @tramp{}
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1847
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1848 When you log in to the remote machine, do you see the output of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1849 @command{ls} in color? If so, this may be the cause of your problems.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1850
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1851 @command{ls} outputs @acronym{ANSI} escape sequences that your terminal
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1852 emulator interprets to set the colors. These escape sequences will
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1853 confuse @tramp{} however.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1854
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1855 In your @file{.bashrc}, @file{.profile} or equivalent on the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1856 machine you probably have an alias configured that adds the option
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1857 @option{--color=yes} or @option{--color=auto}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1858
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1859 You should remove that alias and ensure that a new login @emph{does not}
49610
ffda74ab6dc4 2003-02-05 Kai Gro?ohann <kai.grossjohann@uni-duisburg.de>
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49600
diff changeset
1860 display the output of @command{ls} in color. If you still cannot use
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1861 filename completion, report a bug to the @tramp{} developers.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1862
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1863
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1864 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1865 File name completion does not work in large directories
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1866
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1867 @tramp{} uses globbing for some operations. (Globbing means to use the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1868 shell to expand wildcards such as `*.c'.) This might create long
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
1869 command lines, especially in directories with many files. Some shells
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1870 choke on long command lines, or don't cope well with the globbing
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1871 itself.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1872
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1873 If you have a large directory on the remote end, you may wish to execute
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1874 a command like @samp{ls -d * ..?* > /dev/null} and see if it hangs.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1875 Note that you must first start the right shell, which might be
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1876 @command{/bin/sh}, @command{ksh} or @command{bash}, depending on which
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1877 of those supports tilde expansion.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1878
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1879
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1880 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1881 What kinds of systems does @tramp{} work on
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1882
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1883 @tramp{} really expects the remote system to be a Unix-like system. The
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1884 local system should preferably be Unix-like, as well, but @tramp{} might
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1885 work on NT with some tweaking.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1886
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1887
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1888 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1889 How can I get notified when @tramp{} file transfers are complete?
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1890
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1891 The following snippet can be put in your @file{~/.emacs} file. It makes
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1892 Emacs beep after reading from or writing to the remote host.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1893
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1894 @lisp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1895 (defadvice tramp-handle-write-region
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1896 (after tramp-write-beep-advice activate)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1897 " make tramp beep after writing a file."
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1898 (interactive)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1899 (beep))
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1900 (defadvice tramp-handle-do-copy-or-rename-file
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1901 (after tramp-copy-beep-advice activate)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1902 " make tramp beep after copying a file."
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1903 (interactive)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1904 (beep))
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1905 (defadvice tramp-handle-insert-file-contents
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1906 (after tramp-copy-beep-advice activate)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1907 " make tramp beep after copying a file."
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1908 (interactive)
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1909 (beep))
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1910 @end lisp
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1911
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1912
46361
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1913 @item
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1914 There's this @file{~/.sh_history} file on the remote host which keeps
a3acca116f2f Comply with Texinfo coding standards. Suggestions by Eli.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46348
diff changeset
1915 growing and growing. What's that?
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1916
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1917 Sometimes, @tramp{} starts @code{ksh} on the remote host for tilde
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1918 expansion. Maybe @code{ksh} saves the history by default. @tramp{}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1919 tries to turn off saving the history, but maybe you have to help. For
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1920 example, you could put this in your @file{.kshrc}:
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1921
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1922 @example
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1923 if [ -f $HOME/.sh_history ] ; then
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1924 /bin/rm $HOME/.sh_history
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1925 fi
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1926 if [ "$@{HISTFILE-unset@}" != "unset" ] ; then
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1927 unset HISTFILE
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1928 fi
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1929 if [ "$@{HISTSIZE-unset@}" != "unset" ] ; then
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1930 unset HISTSIZE
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1931 fi
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1932 @end example
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1933
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1934
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1935 @item @tramp{} doesn't transfer strings with more than 500 characters
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1936 correctly
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1937
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1938 On some few systems, the implementation of @code{process-send-string}
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1939 seems to be broken for longer strings. This case, you should
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1940 customize the variable @code{tramp-chunksize} to 500. For a
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1941 description how to determine whether this is necessary see the
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1942 documentation of @code{tramp-chunksize}.
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
1943
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1944 @end itemize
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1945
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1946
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1947 @c For the developer
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1948 @node Version Control
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1949 @chapter The inner workings of remote version control
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
1950 @cindex Version Control
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1951
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1952 Unlike @value{ftp-package-name}, @tramp{} has full shell access to the
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1953 remote machine. This makes it possible to provide version control for
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1954 files accessed under @tramp{}.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1955
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1956 The actual version control binaries must be installed on the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1957 machine, accessible in the directories specified in
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1958 @var{tramp-remote-path}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1959
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1960 This transparent integration with the version control systems is one of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1961 the most valuable features provided by @tramp{}, but it is far from perfect.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1962 Work is ongoing to improve the transparency of the system.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1963
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1964 @menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1965 * Version Controlled Files:: Determining if a file is under version control.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1966 * Remote Commands:: Executing the version control commands on the remote machine.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1967 * Changed workfiles:: Detecting if the working file has changed.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1968 * Checking out files:: Bringing the workfile out of the repository.
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
1969 * Miscellaneous Version Control:: Things related to Version Control that don't fit elsewhere.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1970 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1971
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1972
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1973 @node Version Controlled Files
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1974 @section Determining if a file is under version control
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1975
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1976 The VC package uses the existence of on-disk revision control master
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1977 files to determine if a given file is under revision control. These file
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1978 tests happen on the remote machine through the standard @tramp{} mechanisms.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1979
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1980
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1981 @node Remote Commands
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1982 @section Executing the version control commands on the remote machine
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1983
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1984 There are no hooks provided by VC to allow intercepting of the version
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1985 control command execution. The calls occur through the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1986 @code{call-process} mechanism, a function that is somewhat more
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1987 efficient than the @code{shell-command} function but that does not
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1988 provide hooks for remote execution of commands.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1989
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1990 To work around this, the functions @code{vc-do-command} and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1991 @code{vc-simple-command} have been advised to intercept requests for
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1992 operations on files accessed via @tramp{}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1993
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1994 In the case of a remote file, the @code{shell-command} interface is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1995 used, with some wrapper code, to provide the same functionality on the
52869
4c969f6bcb01 (Inline methods): Small grammar fix.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 52401
diff changeset
1996 remote machine as would be seen on the local machine.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1997
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1998
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
1999 @node Changed workfiles
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2000 @section Detecting if the working file has changed
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2001
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2002 As there is currently no way to get access to the mtime of a file on a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2003 remote machine in a portable way, the @code{vc-workfile-unchanged-p}
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2004 function is advised to call an @tramp{} specific function for remote files.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2005
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2006 The @code{tramp-vc-workfile-unchanged-p} function uses the functioning VC
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2007 diff functionality to determine if any changes have occurred between the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2008 workfile and the version control master.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2009
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2010 This requires that a shell command be executed remotely, a process that
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2011 is notably heavier-weight than the mtime comparison used for local
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2012 files. Unfortunately, unless a portable solution to the issue is found,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2013 this will remain the cost of remote version control.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2014
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2015
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2016 @node Checking out files
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2017 @section Bringing the workfile out of the repository
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2018
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2019 VC will, by default, check for remote files and refuse to act on them
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2020 when checking out files from the repository. To work around this
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2021 problem, the function @code{vc-checkout} knows about @tramp{} files and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2022 allows version control to occur.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2023
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2024
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2025 @node Miscellaneous Version Control
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2026 @section Things related to Version Control that don't fit elsewhere
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2027
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2028 Minor implementation details, &c.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2029
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2030 @menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2031 * Remote File Ownership:: How VC determines who owns a workfile.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2032 * Back-end Versions:: How VC determines what release your RCS is.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2033 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2034
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2035
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2036 @node Remote File Ownership
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2037 @subsection How VC determines who owns a workfile
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2038
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2039 Emacs provides the @code{user-full-name} function to return the login name
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2040 of the current user as well as mapping from arbitrary user id values
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2041 back to login names. The VC code uses this functionality to map from the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2042 uid of the owner of a workfile to the login name in some circumstances.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2043
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2044 This will not, for obvious reasons, work if the remote system has a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2045 different set of logins. As such, it is necessary to delegate to the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2046 remote machine the job of determining the login name associated with a
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2047 uid.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2048
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2049 Unfortunately, with the profusion of distributed management systems such
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2050 as @code{NIS}, @code{NIS+} and @code{NetInfo}, there is no simple,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2051 reliable and portable method for performing this mapping.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2052
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2053 Thankfully, the only place in the VC code that depends on the mapping of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2054 a uid to a login name is the @code{vc-file-owner} function. This returns
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2055 the login of the owner of the file as a string.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2056
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2057 This function has been advised to use the output of @command{ls} on the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2058 remote machine to determine the login name, delegating the problem of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2059 mapping the uid to the login to the remote system which should know more
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2060 about it than I do.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2061
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2062
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2063 @node Back-end Versions
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2064 @subsection How VC determines what release your RCS is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2065
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2066 VC needs to know what release your revision control binaries you are
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2067 running as not all features VC supports are available with older
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2068 versions of @command{rcs(1)}, @command{cvs(1)} or @command{sccs(1)}.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2069
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2070 The default implementation of VC determines this value the first time it
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2071 is needed and then stores the value globally to avoid the overhead of
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2072 executing a process and parsing its output each time the information is
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2073 needed.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2074
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2075 Unfortunately, life is not quite so easy when remote version control
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2076 comes into the picture. Each remote machine may have a different version
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2077 of the version control tools and, while this is painful, we need to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2078 ensure that unavailable features are not used remotely.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2079
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2080 To resolve this issue, @tramp{} currently takes the sledgehammer
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2081 approach of making the release values of the revision control tools
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2082 local to each @tramp{} buffer, forcing VC to determine these values
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2083 again each time a new file is visited.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2084
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2085 This has, quite obviously, some performance implications. Thankfully,
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2086 most of the common operations performed by VC do not actually require
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2087 that the remote version be known. This makes the problem far less
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2088 apparent.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2089
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2090 Eventually these values will be captured by @tramp{} on a system by
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2091 system basis and the results cached to improve performance.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2092
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2093
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2094 @node Files directories and localnames
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2095 @chapter How file names, directories and localnames are mangled and managed.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2096
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2097 @menu
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2098 * Localname deconstruction:: Breaking a localname into its components.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2099 @end menu
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2100
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2101
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2102 @node Localname deconstruction
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2103 @section Breaking a localname into its components.
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2104
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2105 @tramp{} file names are somewhat different, obviously, to ordinary file
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2106 names. As such, the lisp functions @code{file-name-directory} and
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2107 @code{file-name-nondirectory} are overridden within the @tramp{}
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2108 package.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2109
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2110 Their replacements are reasonably simplistic in their approach. They
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2111 dissect the filename, call the original handler on the localname and
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2112 then rebuild the @tramp{} file name with the result.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2113
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2114 This allows the platform specific hacks in the original handlers to take
49996
bda88bfc6c5e Version 2.0.30 released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 49610
diff changeset
2115 effect while preserving the @tramp{} file name information.
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2116
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2117
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2118 @node Issues
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2119 @chapter Debatable Issues and What Was Decided
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2120
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2121 @itemize @bullet
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2122 @item The uuencode method does not always work.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2123
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2124 Due to the design of @tramp{}, the encoding and decoding programs need to
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2125 read from stdin and write to stdout. On some systems, @code{uudecode -o
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2126 -} will read stdin and write the decoded file to stdout, on other
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2127 systems @code{uudecode -p} does the same thing. But some systems have
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2128 uudecode implementations which cannot do this at all---it is not
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2129 possible to call these uudecode implementations with suitable parameters
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2130 so that they write to stdout.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2131
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2132 Of course, this could be circumvented: the @code{begin foo 644} line
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2133 could be rewritten to put in some temporary file name, then
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2134 @code{uudecode} could be called, then the temp file could be printed and
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2135 deleted.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2136
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2137 But I have decided that this is too fragile to reliably work, so on some
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2138 systems you'll have to do without the uuencode methods.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2139
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2140 @item @tramp{} does not work on XEmacs 20.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2141
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2142 This is because it requires the macro @code{with-timeout} which does not
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2143 appear to exist in XEmacs 20. I'm somewhat reluctant to add an
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2144 emulation macro to @tramp{}, but if somebody who uses XEmacs 20 steps
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2145 forward and wishes to implement and test it, please contact me or the
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2146 mailing list.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2147
46348
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2148 @item The @tramp{} filename syntax differs between Emacs and XEmacs.
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2149
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2150 The Emacs maintainers wish to use a unified filename syntax for
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2151 Ange-FTP and @tramp{} so that users don't have to learn a new
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2152 syntax. It is sufficient to learn some extensions to the old syntax.
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2153
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2154 For the XEmacs maintainers, the problems caused from using a unified
48974
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
2155 filename syntax are greater than the gains. The XEmacs package system
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
2156 uses EFS for downloading new packages. So, obviously, EFS has to be
d29e4e3d4f5d (External transfer methods): New method `smb'. From
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 47772
diff changeset
2157 installed from the start. If the filenames were unified, @tramp{}
46348
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2158 would have to be installed from the start, too.
16e7539f3da5 Fix copyright years.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46346
diff changeset
2159
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2160 @end itemize
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2161
51604
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
2162 @node Concept Index
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
2163 @comment node-name, next, previous, up
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
2164 @unnumbered Concept Index
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
2165 @printindex cp
f57bfce0ddaf Version 2.0.35 of Tramp released.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50495
diff changeset
2166 @contents
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2167 @c End of tramp.texi - the TRAMP User Manual
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2168 @bye
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2169
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2170 @c TODO
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2171 @c
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2172 @c * Say something about the .login and .profile files of the remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2173 @c shells.
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2174 @c * Explain how tramp.el works in principle: open a shell on a remote
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2175 @c host and then send commands to it.
46346
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
2176 @c * Mention that bookmarks are a cool feature to go along with Tramp.
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
2177 @c * Make terminology "inline" vs "out-of-band" consistent.
49f06e689a20 * files.texi (Remote Files): Explain new unified file name synatx.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46010
diff changeset
2178 @c It seems that "external" is also used instead of "out-of-band".
45861
7b663a89ef2a *** empty log message ***
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
diff changeset
2179
47576
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
2180 @c * M. Albinus
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
2181 @c ** Use `filename' resp. `file name' consistently.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
2182 @c ** Use `host' resp. `machine' consistently.
b31c8ab7336a Sync with version 2.0.20. Lengthy ChangeLog follows:
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 46918
diff changeset
2183 @c ** Consistent small or capitalized words especially in menues.
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 51967
diff changeset
2184
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 51967
diff changeset
2185 @ignore
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 51967
diff changeset
2186 arch-tag: f96dd66e-6dd3-4c92-8d77-9c56205ba808
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 51967
diff changeset
2187 @end ignore