icarus.uic.edu
you can do so with the following command:
$ slogin user@icarus.uic.edu
Password:
Last login: Sun Jan 27 18:21:42 2008 from xxx-xxx-xxx-xxx.
[06:21pm] icarus:~$
i.e. your username followed by @ and followed by the
remote machine name (or ip).
At this point you can work on the terminal infront of you, but all the
commands are executed at icarus.uic.edu and the output of
these commands is presented in your screens. Use the rest of the tutorial
to exploit the power that you have under Unix. Don't forget to terminate
your session with exit or simply ^D.
[Command line] [Contents]
Every now and then a necessity arises to execute just a single command on
a remote computer. This can be done with the ssh command. The
syntax is simple and similar to slogin but now the command
that you want to execute remotely must also be stated after the
user@machine part. Assume for example
that you want to ask icarus.uic.edu about the current
time in Chicago. All you need to do is give the following command:
$ ssh user@icarus.uic.edu date
Password:
Sun Jan 27 18:44:01 CST 2008
$
or even compute the time difference between orion.di.uoa.gr
which is located in Athens, Greece, and icarus.uic.edu which
is located in Chicago:
[06:47pm] icarus:~$ ssh user@orion.di.uoa.gr date; date
Password:
Mon Jan 28 02:47:31 EET 2008
Sun Jan 27 18:47:31 CST 2008
[06:47pm] icarus:~$
Note that the first command is executed remotely, while the latter one is
executed locally at
icarus.
ssh as slogin
An important option of ssh is that one can call it without
specifying a given command to be executed on the remote host. In this case
ssh behaves like slogin and one can open a
session on the remote machine.
$ ssh user@icarus.uic.edu
Password:
Last login: Sun Jan 27 19:15:12 2008 from xxx-xxx-xxx-xxx.
[07:15pm] icarus:~$
I guess this property as well as the fact
that ssh has fewer characters from slogin (and
hence it is faster to type it) is the
reason that slogin is not implemented actually in practice;
i.e. whenever you call slogin you actually call
ssh. At the moment you can verify that with the following
strange command:
$ slogin user@icarus.uic.edu date
Did you manage to login?
Using a different port
On some machines as an extra precautionary measure ssh is
supported on a different port from the default one (22). You can specify
the desired port with the option -p followed by the number
of the port. For example, if you want to connect at
icarus, you can
do so with the command:
$ ssh -p 22 user@icarus.uic.edu
[Command line] [Contents]
sftp is the secure way of running ftp; i.e. is
the secure way to transfer many files between two computers. You can
activate a secure ftp session with the command:
$ sftp user@icarus.uic.edu
Connecting to icarus.uic.edu...
Password:
sftp>
You can terminate a session at any time by giving bye or
exit at the prompt:
sftp> bye
$
The interface is very intuitive. You can upload (put) to the
remote host a file named local_file with a command of the form:
sftp> put local_file
Similarly you can download (get) the remote_file
with a command of the form:
sftp> get remote_file
Commands pwd, cd, and ls are
executed on the remote host, while lpwd, lcd,
and lls are their equivalent commands at the local
host (hence the l that precedes the names of the commands).
[Command line] [Contents]
scp is typically used to copy one file between two computers.
The idea is that a session between the two computers is active as long as
there is a transmission of one (or more) files between the two computers
(contrary to sftp where you can have idle time while the
session is active). Note that you have to specify the path where the file
is going to be saved at the remote computer (possibly with a different name).
For example, the following command copies file1 from the current
directory at local host to file2 under the directory
~/dir1/ at the remote host remote_host:
$ scp file1 user@remote_host:~/dir1/file2
If you didn't want to save the file at the remote host with a different name
you could have used simply the path where you wanted it to be saved, i.e.:
$ scp file1 user@remote_host:~/dir1/
[Command line] [Contents]
Apart from Windows, all other Operating Systems (that I know) have
built-in all the above commands, and hence you can access them by a terminal.
You can download a recent release of the above programs
from OpenSSH and fill in the gap of
Windows. In this section I will give some links for graphical frontends of
the above commands for the most popular Operating Systems:
[Contents]
This is the webpage
where you can download tools for Windows.
PuTTY
is
the suggested application for having ssh under Windows, and
you can download it here.
Note that under the section Binaries there are two versions; the
one on the first block is the latest
release (but might be unstable), and the one on the second block which is
a bit older but considered to be more stable. Choose whichever you like. I
never had a serious problem with the unstable version.
PuTTY is a superb program and it turns out that you don't
need the rest of the files in that webpage.
The other thing that you need is a way to transfer files back and forth
between different computers. The suggested method is
WinSCP which
you can
download here. I suggest
the standalone application, since it is the smallest one, does
NOT require installation, and works flawlessly!
[Graphical interface]
[Contents]
Have a look at gFTP which
is a graphical sftp client.
If the program is not installed on your
system, you can install it (as root) with the command:
% apt-get install gftp
However, I don't think you can run
gFTP in
Plan 9 mainly
because it seems
that it lacks even a simple
sftp client. On the other hand, Plan 9 supports
ssh as it was described above on
Command line.
With MINIX things are
much worse, since it
seems that not
even ssh is supported.
[Graphical interface]
[Contents]
gFTP which was suggested
above can be installed in MacOS with
MacPorts. First you
have to install
MacPorts and
then install gFTP with the command (root shell):
% port install gftp
However, with much less hassle you can install two other very good
programs; Cyberduck and
Fugu.
Cyberduck has a download link on the upper-right corner of
the page, while nightly builds can be found here. Fugu on
the other hand can be retrieved from
here.
Both of them can be used for sftp.
[Graphical interface]
[Contents]
Back to Terminal's homepage
Back to Dimitri's homepage
Last Update: Monday, January 28, 2008.