The Kermit Project
Now hosted by
New York City USA • firstname.lastname@example.org
Frank da Cruz
18 November 2022
Most recent update: Wed Dec 21 16:10:37 2022
set host /server * 3000and then on (say) your desktop computer you can tell its copy of C-Kermit to:
set host testing.xyz.com 3000The '
*' is a Kermit-specific notation meaning "wait for an incoming connection" and "3000" is the TCP port number — just pick any number that is not normally in use, usually anything above 2000 will do. Now you have a connection on which you can send files from your desktop to the server on testing.xyz.com, and also fetch files from the server. The connection is secured by SSL if both Kermit partners were built with SSL support, the appropriate certificates are installed, and the negotiations are successful; otherwise it is clear-text connection.
This arrangement is particularly handy when you have two or more computers on your desktop and you need to move files between them. As an example, suppose you have an old Linux computer and you just bought a new one to replace it. How would move all your years of of work from the old computer to the new one? Especially if the new computer doesn't have any form of removeable media. Set up the connection as just described, start the server on the new computer and the client on the old one. Then at the client:
cd ~userid # CD to your home directory on the old computer remote cd ~userid # Also on the new computer send /recursive /dotfiles /nobackup * # Send your entire directory tree
*' at the end of the "send" command is a filename-matching wildcard notation that means "all files".
What if your old computer is Windows and your new computer is Linux? Exactly the same procedure except your Windows computer probably doesn't have dotfiles or backup files (but you can still include those switches just in case). But — you might ask — won't the text files that arrive on my new Linux computer be in Windows format? Nope. Kermit knows all about that; it automatically detects whether each file is binary or text, and if text it converts its record format appropriately (CRLF line terminators to LF in this case).
|Server||Client||Connection||Download cps||Upload cps|
|*||The Windows-Windows example is two separate Windows machines on the same desk. This prompted a Windows Defender warning on the server end (see screenshot); clicking "Allow access" sufficed to let the operation operation proceed.|
As you can see the main benefit of this technique is for inter-desktop transfers. The Internet is much slower, and also your ISP prioritizes traffic coming in over traffic going out, so uploads from your desktop to the Internet are especially slow. On the other hand, in my case the inter-desktop transfer rate is about 12MB/sec in each direction so you could transfer a gigabyte in about 83 seconds and a terabyte in about a day without the need of secondary storage devices.
C-Kermit 10.0 / The Kermit Project / Page created: 18 November 2022