[SOLVED] using kermit to transfer files with a 3-server system
Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
using kermit to transfer files with a 3-server system
Here's the system:
1 server running regular Ubuntu, 40km above the surface of the earth on a scientific balloon behind an iridium modem (RUDICS) connected to its serial port
1 server on the ground running Ubuntu server
1 intermediate server used for contacting the iridium system from the ground server
I'm not sure if all the above details are completely necessary but I included them for completeness. I would like to be able to log into the balloon server and transfer files in both directions.
The procedure for connecting is to telnet to the intermediate server and then to issue some modem commands to call the balloon. The balloon server is set with getty running on the serial port connected to the modem.
The way I have figured out to transfer files is to run kermit on the ground server and connect to the balloon server through the intermediate server, then run kermit on the balloon server, and set it as a file server with the server command.
However, there is some sort of timeout or something, and only a few kB of any file gets transferred before the connection is broken. After that it seems like the ground server is trying to get the file from the intermediate server (which has no useful files on it at all). The file transfer screen stays open and it keeps trying and trying to transfer, until I type ^C. I don't know if there is a way of detecting through a kermit command whether the connection is still open or if there is some sort of switch to make the transfer automatically stop once it has stalled.
I have been reading about No Kermit Server (NKS) protocol, which seems to be designed for a system like this where the connection is across a third server. Is this likely to do a better job of keeping the connection open and the file transfer going? How can it be implemented? Is there any kermit command to determine from the ground server whether the connection is actually still open? Is there any way of telling whether the connection goes all the way to the balloon server or whether it ends at the intermediate server? I actually just learned about kermit today so any and all advice would be much appreciated.
On a related note, is it possible to have the balloon server running getty on the serial port but still have the port accessible for reading and writing by, say, a python script (which could use the modem to dial down to the ground when it isn't in use)? It doesn't seem to work but I'm wondering if there is a way. Is there a way to temporarily stop getty, then restart it, or is this potentially hazardous? Keep in mind there will be no way to contact it if something goes wrong since it will be 40km above the earth.
Sorry for so many questions. Any help would be appreciated.
Unknown as to what you have. I was just posting an idea. Kermit is and used to be the old standard when connection was almost non-usable. Since it stops I made a guess as to speed being too slow. It was a wild guess. It has been decades since I used old kermit and zmodem. Like early 90's
I tend to telnet to remote things a lot. I log into one then go to another and such but the endpoints remain the same logical path. I send files tftp usually (not great on old connections). rcp or other copy may work too. ftp may be possible. Dunno really the state of the systems. Embedded are very limited. They tend to have tftp. Some tftp clients have file size and other limits and may need to adjust settings to help.
As I said, I have to log in to the balloon computer through the intermediate computer, so unless one of those programs allows that I won't be able to use it. So far, the only program I have found that will let me do anything close to what I want is kermit, and it would be fine if the connection didn't hang during transfers.
Is there anything else I can try or any kermit settings that will make it work better, given the method in which I am forced to connect the computers, as described above?
I have discovered that kermit has 3 settings: FAST, the default, CAUTIOUS, a little slower and more reliable, and ROBUST, which is the slowest and most reliable. When the speed setting is CAUTIOUS, the transfers work a whole lot more reliably. ROBUST is way too slow, but I could see how that type of reliability might be preferred. FAST apparently does not work for an iridium connection, so CAUTIOUS typed on the sending server is the way to go.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.