12 | | === SSH |
13 | | |
14 | | ==== Tips for working on a remote system |
15 | | |
16 | | ===== Handling sessions and disconnections |
17 | | |
18 | | To avoid losing your place if disconnected, use something like tmux. This will allow you to have multiple tabs, or windows, with a single ssh connection. In addition, you'll be able to reconnect to this set-up if your connection drops. |
19 | | |
20 | | Warning: On the consoles, when your reservation ends, all of your processes will be killed, including tmux sessions. |
21 | | |
22 | | ===== File management |
23 | | To move files between your machine and the consoles, the simplest method is something like SCP. |
24 | | For a graphical client, one example is !FileZilla, over scp or sftp. |
25 | | |
26 | | To move files to a node, this is normally a two step process. Local -> Console, Console -> node. |
27 | | |
28 | | By using a !ProxyJump directive in your local machine's `~/.ssh/config` file, you can do this in "1" step, but this is an advanced method. When accessing the node, your ssh client with automatically proxy the connection via the console. |
29 | | |
30 | | An example file is: |
31 | | {{{ |
32 | | Host node1.cosmos-lab.org |
33 | | User root |
34 | | ProxyJump console.cosmos-lab.org |
35 | | }}} |
36 | | |
37 | | |
38 | | For development on nodes, we recommend using git, and having both your local machine and the console or node pull from the repo. |