aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKai Großjohann2002-10-06 19:36:40 +0000
committerKai Großjohann2002-10-06 19:36:40 +0000
commitf08d9f0e187b4a902234dfab9c4baa7f9b9aaa7f (patch)
treeb703e462937265b9f2db36d2c05fe121669fa971
parent487f4fb7953113c719bc953c059d3725bdc76c45 (diff)
downloademacs-f08d9f0e187b4a902234dfab9c4baa7f9b9aaa7f.tar.gz
emacs-f08d9f0e187b4a902234dfab9c4baa7f9b9aaa7f.zip
Move @copying to standard place. Use
@insertcopying.
-rw-r--r--man/ChangeLog5
-rw-r--r--man/tramp.texi353
2 files changed, 122 insertions, 236 deletions
diff --git a/man/ChangeLog b/man/ChangeLog
index 9df01b2106d..892d9f07824 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,8 @@
12002-10-06 Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
2
3 * tramp.texi: Move @copying to standard place. Use
4 @insertcopying.
5
12002-10-02 Karl Berry <karl@gnu.org> 62002-10-02 Karl Berry <karl@gnu.org>
2 7
3 * (ada-mode.texi autotype.texi calc.texi cc-mode.texi cl.texi 8 * (ada-mode.texi autotype.texi calc.texi cc-mode.texi cl.texi
diff --git a/man/tramp.texi b/man/tramp.texi
index f2566590411..45bbcc5c825 100644
--- a/man/tramp.texi
+++ b/man/tramp.texi
@@ -12,7 +12,7 @@
12@c Makefile, so you should edit the top-level Makefile to change 12@c Makefile, so you should edit the top-level Makefile to change
13@c the version number. 13@c the version number.
14@macro trampver{} 14@macro trampver{}
152.0.22 152.0.25
16@end macro 16@end macro
17 17
18@c Entries for @command{install-info} to use 18@c Entries for @command{install-info} to use
@@ -63,6 +63,30 @@
63@value{tramp-prefix}@value{method}@value{user}@@@value{host}@value{tramp-postfix}@value{path} 63@value{tramp-prefix}@value{method}@value{user}@@@value{host}@value{tramp-postfix}@value{path}
64@end macro 64@end macro
65 65
66@copying
67Copyright @copyright{} 1999, 2000, 2001, 2002 Free Software
68Foundation, Inc.
69
70@quotation
71Permission is granted to copy, distribute and/or modify this document
72under the terms of the GNU Free Documentation License, Version 1.1 or
73any later version published by the Free Software Foundation; with no
74Invariant Sections, with the Front-Cover texts being ``A GNU
75Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
76license is included in the section entitled ``GNU Free Documentation
77License'' in the Emacs manual.
78
79(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
80this GNU Manual, like GNU software. Copies published by the Free
81Software Foundation raise funds for GNU development.''
82
83This document is part of a collection distributed under the GNU Free
84Documentation License. If you want to distribute this document
85separately from the collection, you can do so by adding a copy of the
86license to the document, as described in section 6 of the license.
87@end quotation
88@end copying
89
66@tex 90@tex
67 91
68@titlepage 92@titlepage
@@ -70,7 +94,9 @@
70 94
71@author by Daniel Pittman 95@author by Daniel Pittman
72@author based on documentation by Kai Gro@ss{}johann 96@author based on documentation by Kai Gro@ss{}johann
97
73@page 98@page
99@insertcopying
74 100
75@end titlepage 101@end titlepage
76@page 102@page
@@ -114,11 +140,12 @@ There is a mailing list for @tramp{}, available at
114@uref{http://www.mail-archive.com/emacs-rcp@@ls6.cs.uni-dortmund.de/} as 140@uref{http://www.mail-archive.com/emacs-rcp@@ls6.cs.uni-dortmund.de/} as
115well as the usual Savannah archives. 141well as the usual Savannah archives.
116 142
143@insertcopying
144
117@end ifnottex 145@end ifnottex
118 146
119@menu 147@menu
120* Overview:: What @tramp{} can and cannot do. 148* Overview:: What @tramp{} can and cannot do.
121* Copying:: The license for this documentation.
122 149
123For the end user: 150For the end user:
124* Obtaining @tramp{}:: How to obtain @tramp{}. 151* Obtaining @tramp{}:: How to obtain @tramp{}.
@@ -336,36 +363,6 @@ I hope this has provided you with a basic overview of what happens
336behind the scenes when you open a file with @tramp{}. 363behind the scenes when you open a file with @tramp{}.
337 364
338 365
339@c Copying permissions, et al
340@node Copying
341@chapter Copying.
342@cindex copying
343
344@copying
345Copyright @copyright{} 1999, 2000, 2001, 2002 Free Software
346Foundation, Inc.
347
348@quotation
349Permission is granted to copy, distribute and/or modify this document
350under the terms of the GNU Free Documentation License, Version 1.1 or
351any later version published by the Free Software Foundation; with no
352Invariant Sections, with the Front-Cover texts being ``A GNU
353Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
354license is included in the section entitled ``GNU Free Documentation
355License'' in the Emacs manual.
356
357(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
358this GNU Manual, like GNU software. Copies published by the Free
359Software Foundation raise funds for GNU development.''
360
361This document is part of a collection distributed under the GNU Free
362Documentation License. If you want to distribute this document
363separately from the collection, you can do so by adding a copy of the
364license to the document, as described in section 6 of the license.
365@end quotation
366@end copying
367
368
369@c For the end user 366@c For the end user
370@node Obtaining @tramp{} 367@node Obtaining @tramp{}
371@chapter Obtaining @tramp{}. 368@chapter Obtaining @tramp{}.
@@ -661,57 +658,46 @@ features of Emacs to decode and encode the files or it may require
661access to external commands to perform that task. 658access to external commands to perform that task.
662 659
663@cindex uuencode 660@cindex uuencode
664@tramp{} supports the use of @command{uuencode} to transfer files.
665This is @emph{not} recommended. The @command{uuencode} and
666@command{uudecode} commands are not well standardized and may not
667function correctly or at all on some machines, notably AIX and IRIX.
668These systems do not work with @command{uuencode} at all. (But do see
669the note about AIX in the documentation for @var{tramp-methods}.)
670
671@cindex mimencode 661@cindex mimencode
672@cindex base-64 encoding 662@cindex base-64 encoding
673In summary, if possible use the @command{mimencode} methods to transfer 663@tramp{} checks the availability and usability of commands like
674the data base64 encoded. This has the advantage of using a built-in 664@command{mimencode} (part of the @command{metamail} package) or
675command in every modern Emacs, improving performance. 665@command{uuencode} on the remote host. The first reliable command
666will be used. The search path can be customized, see @ref{Remote
667Programs}.
676 668
677@table @asis 669If both commands are'nt available on the remote host, @tramp{}
678@item @option{rm} --- @command{rsh} with @command{mimencode} 670transfers a small piece of Perl code to the remote host, and tries to
679@cindex method rm 671apply it for encoding and decoding.
680@cindex rm method
681@cindex method using rsh (rm)
682 672
683Connect to the remote host with @command{rsh} and use base64 encoding to
684transfer files between the machines.
685 673
686This requires the @command{mimencode} command that is part of the 674@table @asis
687@command{metamail} packages. This may not be installed on all remote 675@item @option{rsh}
688machines. 676@cindex method rsh
677@cindex rsh method
689 678
679Connect to the remote host with @command{rsh}. Due to the unsecure
680connection it is recommended for very local host topology only.
690 681
691@item @option{sm} --- @command{ssh} with @command{mimencode}
692@cindex method sm
693@cindex sm method
694@cindex method using ssh (sm)
695@cindex ssh (with sm method)
696@cindex mimencode (with sm method)
697@cindex base-64 encoding (with sm method)
698 682
699Connect to the remote host with @command{ssh} and use base64 encoding to 683@item @option{ssh}
700transfer files between the machines. 684@cindex method ssh
685@cindex ssh method
701 686
702This is identical to the previous option except that the @command{ssh} 687Connect to the remote host with @command{ssh}. This is identical to
703package is used, making the connection more secure. 688the previous option except that the @command{ssh} package is used,
689making the connection more secure.
704 690
705There are also two variants, @option{sm1} and @option{sm2}, that call 691There are also two variants, @option{ssh1} and @option{ssh2}, that
706@samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can 692call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can
707explicitly select whether you want to use the SSH protocol version 1 693explicitly select whether you want to use the SSH protocol version 1
708or 2 to connect to the remote host. (You can also specify in 694or 2 to connect to the remote host. (You can also specify in
709@file{~/.ssh/config}, the SSH configuration file, which protocol 695@file{~/.ssh/config}, the SSH configuration file, which protocol
710should be used, and use the regular @option{sm} method.) 696should be used, and use the regular @option{ssh} method.)
711 697
712There are also two variants, @option{sm-ssh1} and @option{sm-ssh2} 698Two other variants, @option{ssh1_old} and @option{ssh2_old}, use the
713that use the @command{ssh1} and @command{ssh2} commands explicitly. If 699@command{ssh1} and @command{ssh2} commands explicitly. If you don't
714you don't know what these are, you do not need these options. 700know what these are, you do not need these options.
715 701
716All the methods based on @command{ssh} have an additional kludgy 702All the methods based on @command{ssh} have an additional kludgy
717feature: you can specify a host name which looks like @file{host#42} 703feature: you can specify a host name which looks like @file{host#42}
@@ -720,131 +706,42 @@ means to connect to the given host but to also pass @code{-p 42} as
720arguments to the @command{ssh} command. 706arguments to the @command{ssh} command.
721 707
722 708
723@item @option{tm} --- @command{telnet} with @command{mimencode} 709@item @option{telnet}
724@cindex method tm 710@cindex method telnet
725@cindex tm method 711@cindex telnet method
726@cindex method using telnet (tm)
727@cindex telnet (with tm method)
728@cindex mimencode (with tm method)
729@cindex base-64 encoding (with tm method)
730 712
731Connect to the remote host with @command{telnet} and use base64 encoding 713Connect to the remote host with @command{telnet}. This is as unsecure
732to transfer files between the machines. 714as the @option{rsh} method.
733 715
734This requires the @command{mimencode} command that is part of the
735@command{metamail} packages.
736 716
737 717@item @option{su}
738@item @option{ru} --- @command{rsh} with @command{uuencode}
739@cindex method ru
740@cindex ru method
741@cindex method using rsh
742@cindex rsh (with ru method)
743@cindex uuencode (with ru method)
744
745Connect to the remote host with @command{rsh} and use the
746@command{uuencode} and @command{uudecode} commands to transfer files
747between the machines.
748
749
750@item @option{su} --- @command{ssh} with @command{uuencode}
751@cindex method su 718@cindex method su
752@cindex su method 719@cindex su method
753@cindex method using ssh (su)
754@cindex ssh (with su method)
755@cindex uuencode (with su method)
756
757Connect to the remote host with @command{ssh} and use the
758@command{uuencode} and @command{uudecode} commands to transfer files
759between the machines.
760 720
761As with the @command{ssh} and base64 option (@option{sm}) above, this 721This method does not connect to a remote host at all, rather it uses
762provides the @option{su1} and @option{su2} methods to explicitly 722the @command{su} program to allow you to edit files as another user.
763select an SSH protocol version, and the @option{su-ssh1} and
764@option{su-ssh2} variants to call specific SSH binaries.
765 723
766Note that this method does not invoke the @command{su} program, see
767below for methods which use that.
768 724
769This supports the @samp{-p} kludge. 725@item @option{sudo}
726@cindex method sudo
727@cindex sudo method
770 728
771 729This is similar to the @option{su} method, but it uses @command{sudo}
772@item @option{tu} --- @command{telnet} with @command{uuencode}
773@cindex tu method
774@cindex method tu
775@cindex method using telnet (tu)
776@cindex telnet (with tu method)
777@cindex uuencode (with tu method)
778
779Connect to the remote host with @command{telnet} and use the
780@command{uuencode} and @command{uudecode} commands to transfer files
781between the machines.
782
783
784@item @option{sum} --- @command{su} with @command{mimencode}
785@cindex method sum
786@cindex sum method
787@cindex method using su (sum)
788@cindex su (with sum method)
789@cindex mimencode (with sum method)
790@cindex base-64 encoding (with sum method)
791
792This method does not connect to a remote host at all, rather it uses the
793@command{su} program to allow you to edit files as another user. Uses
794base64 encoding to transfer the file contents.
795
796
797@item @option{suu} --- @command{su} with @command{uuencode}
798@cindex method suu
799@cindex suu method
800@cindex method using su (suu)
801@cindex su (with suu method)
802@cindex uuencode (with suu method)
803
804Like @option{sum}, this uses the @command{su} program to allow you to
805edit files on the local host as another user. Uses @command{uuencode}
806and @command{uudecode} to transfer the file contents.
807
808
809@item @option{sudm} --- @command{sudo} with @command{mimencode}
810@cindex method sudm
811@cindex sudm method
812@cindex method using sudo (sudm)
813@cindex sudo (with sudm method)
814@cindex mimencode (with sudm method)
815@cindex base-64 encoding (with sudm method)
816
817This is similar to the @option{sum} method, but it uses @command{sudo}
818rather than @command{su} to become a different user. 730rather than @command{su} to become a different user.
819 731
820Note that @command{sudo} must be configured to allow you to start a 732Note that @command{sudo} must be configured to allow you to start a
821shell as the user. It would be nice if it was sufficient if 733shell as the user. It would be nice if it was sufficient if
822@command{ls} and @command{mimencode} were allowed, but that is not easy 734@command{ls} and @command{mimencode} were allowed, but that is not
823to implement, so I haven't got around to it, yet. 735easy to implement, so I haven't got around to it, yet.
824 736
825 737
826@item @option{sudu} --- @command{sudo} with @command{uuencode} 738@item @option{sshx}
827@cindex method sudu 739@cindex method sshx
828@cindex sudu method 740@cindex sshx method
829@cindex method using sudo (sudu) 741@cindex Cygwin (with sshx method)
830@cindex sudo (with sudu method)
831@cindex uuencode (with sudu method)
832 742
833This is similar to the @option{suu} method, but it uses @command{sudo} 743As you expect, this is similar to @option{ssh}, only a little
834rather than @command{su} to become a different user. 744different. Whereas @option{ssh} opens a normal interactive shell on
835
836
837@item @option{smx} --- @command{ssh} with @command{mimencode}
838@cindex method smx
839@cindex smx method
840@cindex method using ssh (smx)
841@cindex ssh (with smx method)
842@cindex mimencode (with smx method)
843@cindex base-64 encoding (with smx method)
844@cindex Cygwin (with smx method)
845
846As you expect, this is similar to @option{sm}, only a little
847different. Whereas @option{sm} opens a normal interactive shell on
848the remote host, this option uses @samp{ssh -t -t @var{host} -l 745the remote host, this option uses @samp{ssh -t -t @var{host} -l
849@var{user} /bin/sh} to open a connection. This is useful for users 746@var{user} /bin/sh} to open a connection. This is useful for users
850where the normal login shell is set up to ask them a number of 747where the normal login shell is set up to ask them a number of
@@ -869,24 +766,18 @@ require the doubled @samp{-t} option.
869This supports the @samp{-p} kludge. 766This supports the @samp{-p} kludge.
870 767
871 768
872@item @option{km} --- @command{krlogin} with @command{mimencode} 769@item @option{krlogin}
873@cindex method km 770@cindex method krlogin
874@cindex km method 771@cindex km krlogin
875@cindex krlogin (with km method) 772@cindex Kerberos (with krlogin method)
876@cindex Kerberos (with km method)
877@cindex mimencode (with km method)
878@cindex base-64 encoding (with km method)
879 773
880This method is also similar to @option{sm}. It only uses the 774This method is also similar to @option{ssh}. It only uses the
881@command{krlogin -x} command to log in to the remote host. 775@command{krlogin -x} command to log in to the remote host.
882 776
883 777
884@item @option{plinku} --- @command{plink} with @command{uuencode} 778@item @option{plink}
885@cindex method plinku 779@cindex method plink
886@cindex plinku method 780@cindex plink method
887@cindex method using plink (plinku)
888@cindex plink (with plinku method)
889@cindex uuencode (with plinku method)
890 781
891This method is mostly interesting for Windows users using the PuTTY 782This method is mostly interesting for Windows users using the PuTTY
892implementation of SSH. It uses @samp{plink -ssh} to log in to the 783implementation of SSH. It uses @samp{plink -ssh} to log in to the
@@ -898,16 +789,6 @@ line to accept the SSH key? Maybe this can be made automatic?
898CCC: Does @command{plink} support the @samp{-p} option? Tramp 789CCC: Does @command{plink} support the @samp{-p} option? Tramp
899will support that, anyway. 790will support that, anyway.
900 791
901@item @option{plinkm} --- @command{plink} with @command{mimencode}
902@cindex method plinkm
903@cindex plinkm method
904@cindex method using plink (plinkm)
905@cindex plink (with plinkm method)
906@cindex mimencode (with plinkm method)
907@cindex base-64 encoding (with plinkm method)
908
909Like @option{plinku}, but uses base64 encoding instead of uu encoding.
910
911@end table 792@end table
912 793
913 794
@@ -971,6 +852,17 @@ The cost of the cryptographic handshake at the start of an @command{scp}
971session can begin to absorb the advantage that the lack of encoding and 852session can begin to absorb the advantage that the lack of encoding and
972decoding presents. 853decoding presents.
973 854
855There are also two variants, @option{scp1} and @option{scp2}, that
856call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can
857explicitly select whether you want to use the SSH protocol version 1
858or 2 to connect to the remote host. (You can also specify in
859@file{~/.ssh/config}, the SSH configuration file, which protocol
860should be used, and use the regular @option{ssh} method.)
861
862Two other variants, @option{scp1_old} and @option{scp2_old}, use the
863@command{ssh1} and @command{ssh2} commands explicitly. If you don't
864know what these are, you do not need these options.
865
974All the @command{ssh} based methods support the kludgy @samp{-p} 866All the @command{ssh} based methods support the kludgy @samp{-p}
975feature where you can specify a port number to connect to in the host 867feature where you can specify a port number to connect to in the host
976name. For example, the host name @file{host#42} tells Tramp to 868name. For example, the host name @file{host#42} tells Tramp to
@@ -1064,6 +956,16 @@ provided by the program is not very useful in our context. @tramp{}
1064opens just one connection to the remote host and then keeps it open, 956opens just one connection to the remote host and then keeps it open,
1065anyway. 957anyway.
1066 958
959
960@ifset emacs
961@item @option{ftp}
962@cindex method ftp
963@cindex ftp method
964
965This is not a natural @tramp{} method. Instead of, it forwards all
966requests to @value{ftp-package-name}.
967@end ifset
968
1067@end table 969@end table
1068 970
1069@node Multi-hop Methods 971@node Multi-hop Methods
@@ -1079,36 +981,15 @@ Of course, the target host may also require a bastion host. The format
1079of multi-hop filenames is slightly different than the format of normal 981of multi-hop filenames is slightly different than the format of normal
1080@tramp{} methods. 982@tramp{} methods.
1081 983
1082A multi-hop file name specifies a method, a number of hops, and a path
1083name on the remote system. The method specifies how the file is
1084transferred through the inline connection. The following two multi-hop
1085methods are available:
1086
1087@table @asis
1088@item @option{multi} --- base64 encoding with @command{mimencode}
1089@cindex method multi 984@cindex method multi
1090@cindex multi method 985@cindex multi method
1091@cindex mimencode (with multi method) 986A multi-hop file name specifies a method, a number of hops, and a path
1092@cindex base-64 encoding (with multi method) 987name on the remote system. The method name is always
1093 988@option{multi}.
1094The file is transferred through the connection in base64 encoding. Uses
1095the @command{mimencode} program for doing encoding and decoding, but
1096uses an Emacs internal implementation on the local host if available.
1097
1098@item @option{multiu} --- use commands @command{uuencode} and @command{uudecode}
1099@cindex method multiu
1100@cindex multiu method
1101@cindex uuencode (with multiu method)
1102
1103The file is transferred through the connection in `uu' encoding. Uses
1104the @command{uuencode} and @command{uudecode} programs for encoding and
1105decoding, but uses a Lisp implementation for decoding on the local host
1106if available.
1107
1108@end table
1109 989
1110Each hop consists of a @dfn{hop method} specification, a user name and a 990Each hop consists of a @dfn{hop method} specification, a user name and
1111host name. The following hop methods are (currently) available: 991a host name. The hop method can be an inline method only. The
992following hop methods are (currently) available:
1112 993
1113@table @option 994@table @option
1114@item telnet 995@item telnet
@@ -1146,7 +1027,7 @@ remote host as a non-root user, then use an @option{su} hop to become
1146root. But @option{su} need not be the last hop in a sequence, you could 1027root. But @option{su} need not be the last hop in a sequence, you could
1147also use it somewhere in the middle, if the need arises. 1028also use it somewhere in the middle, if the need arises.
1148 1029
1149Even though you @emph{must} specify both user and host with a 1030Even though you @emph{must} specify both user and host with an
1150@option{su} hop, the host name is ignored and only the user name is 1031@option{su} hop, the host name is ignored and only the user name is
1151used. 1032used.
1152 1033
@@ -1163,8 +1044,8 @@ Some people might wish to use port forwarding with @command{ssh} or
1163maybe they have to use a nonstandard port. This can be accomplished 1044maybe they have to use a nonstandard port. This can be accomplished
1164by putting a stanza in @file{~/.ssh/config} for the account which 1045by putting a stanza in @file{~/.ssh/config} for the account which
1165specifies a different port number for a certain host name. But it can 1046specifies a different port number for a certain host name. But it can
1166also be accomplished within Tramp, by adding a multi-hop method. For 1047also be accomplished within @tramp{}, by adding a multi-hop method.
1167example: 1048For example:
1168 1049
1169@lisp 1050@lisp
1170(add-to-list 1051(add-to-list
@@ -1193,17 +1074,17 @@ is not specified in the @tramp{} file path. For example:
1193@vindex tramp-default-method-alist 1074@vindex tramp-default-method-alist
1194You can also specify different methods for certain user/host 1075You can also specify different methods for certain user/host
1195combinations, via the variable @var{tramp-default-method-alist}. For 1076combinations, via the variable @var{tramp-default-method-alist}. For
1196example, the following two lines specify to use the @option{sm} 1077example, the following two lines specify to use the @option{ssh}
1197method for all user names matching @samp{john} and the @option{rsync} 1078method for all user names matching @samp{john} and the @option{rsync}
1198method for all host names matching @samp{lily}. The third line 1079method for all host names matching @samp{lily}. The third line
1199specifies to use the @option{sum} method for the user @samp{root} on 1080specifies to use the @option{su} method for the user @samp{root} on
1200the machine @samp{localhost}. 1081the machine @samp{localhost}.
1201 1082
1202@lisp 1083@lisp
1203(add-to-list 'tramp-default-method-alist '("" "john" "sm")) 1084(add-to-list 'tramp-default-method-alist '("" "john" "ssh"))
1204(add-to-list 'tramp-default-method-alist '("lily" "" "rsync")) 1085(add-to-list 'tramp-default-method-alist '("lily" "" "rsync"))
1205(add-to-list 'tramp-default-method-alist 1086(add-to-list 'tramp-default-method-alist
1206 '("\\`root\\'" "\\`localhost\\'" "sum")) 1087 '("\\`localhost\\'" "\\`root\\'" "su"))
1207@end lisp 1088@end lisp
1208 1089
1209@noindent 1090@noindent