Lesson 5.0.0 "Introduction to File Transfer, FTP" will provide basic information about the file transfer method known as FTP. This lesson will explain how FTP works and will list additional sources of information. The next assignment focuses on the steps for conducting file transfer via FTP.
FTP stands for "file transfer protocol." FTP is a software program that permits copies of files to be made and transferred between two different computers, anywhere in the world. ASCII (text files) or binary (image, sound, and program files) may be transferred via FTP. If your computer or the computer where you have your account has FTP software, it can get files from other computers that have FTP software. There are two types of FTP: anonymous FTP for publicly available files and FTP between hosts where the user has access privileges.
The FTP protocol is designed to allow transferring data between hosts that use dissimilar file systems. Therefore, although the protocol provides a lot of flexibility for transferring data, it does not attempt to preserve file attributes that are specific to a particular file system (for example, the protection mode or modification times of a file). Additionally, the FTP protocol makes few assumptions about the overall structure of a file system and does not provide or allow such things as recursively copying subdirectories.
The ftp command provides subcommands for tasks such as listing remote directories, changing the current local and remote directory, transferring multiple files in a single request, creating and removing directories, and escaping to the local shell to perform shell commands. The ftp command also provides for security by sending passwords to the remote host and permits automatic login, file transfer, and logoff.
If you execute ftp and do not specify a hostname, ftp immediately displays the ftp> prompt and waits for an ftp subcommand. To connect to a remote host, you then execute the open subcommand. When the ftp command connects to the remote host, ftp then prompts for the username and password before displaying the ftp> prompt again. FTP fails if no password is defined at the remote host for the specified username.
If you do specify the name of a remote host, ftp immediately tries to establish a connection to the specified host. If ftp connects successfully, ftp prompts you for a username and password. Once ftp completes the login process, ftp then displays the ftp> prompt and waits for a subcommand.
5.0.2 NAMES OF SOME OF THE FTP COMMANDS
Aborting a File Transfer
To abort a file transfer, use the Interrupt key sequence (often [Ctrl-c]). Sending and receiving transfers are immediately halted.
When using FTP with your Unix account, files that you transfer in (get) will be saved on "raider". To view a listing of files use "ls -l" or "ls -al" (to include listing of files starting with a "." dot).
Some Internet sites (organizations, institutions, or others that make their computers accessible on the Internet) also make files available to the public through "anonymous FTP". Host computers that permit anonymous FTP contain archives of files that can be transferred to your Unix account. These archives are sometimes called FTP Sites. There are hundreds of such FTP Sites and typical file types available through anonymous FTP include:
Anonymous FTP sites that provided files for public access via FTP are often referred to as host computers. Such hosts usually require a "logon" and "password" (much like when logging on to your Unix account). A host that permits anonymous FTP will let anyone logon with the set of conventions known as "anonymous FTP".
In anonymous FTP, when the host computer asks for a logon the response is "anonymous" and the password is your own Internet e-mail address. For example:
LOGON> anonymous
PASSWORD> yourLoginName@raider.grcc.cc.mi.us
Responding "anonymous" to the logon prompt tells the host that you are not on its list of registered users. Responding to the password prompt with your Internet e-mail address merely serves as a convention that allows system administrators to track who is accessing the public area of their sites. (Often the password response you make will not appear on the screen to keep the password confidential.)
NOTE: If you use the Windows WS_FTP client all you need to do is check the Anonymous Login box and WS_FTP will fill in the login name, anonymous, and password, guest. Guest seems to work on most "anonymous FTP" sites.
5.0.5 THE ARRANGEMENT OF FILES IN HOST COMPUTERS
Files at FTP sites on host computers are usually arranged in "directories" and "subdirectories", similar to the DOS filing system.
To transfer a file via FTP, it is necessary to first move into the directory on the host computer where the desired file is stored. Once connected to the host computer the command
For instance, you might be looking for Paul Jones' article "What is the Internet", and might learn from a bibliography of sources that it is available by FTP at nysernet.org in the subdirectory path pub/resources/guides.
After connecting to the host, you move through the various directories and subdirectories until you reach the "guides" subdirectory. You would then "get" (copy) the file "whatis.internet" to your Unix computer account on "raider". If you use the Windows WS_FTP, the <- represents the get button and the file will be placed on your home computer or A: drive in the Open Lab. Once your FTP session is ended, you can then go to your filelist and view the ftp'd file. Remember: FTP allows you to see directories and subdirectories. However, you can see the contents of a ASCII (text) file while you are at the host computer by using the "get" command (you must be using the "raider" FTP client and not the Windows WS_FTP client to use the "get" command). For example:
get filename | more
or
get filename -
Many host computers provide "README" files or file directories to aid you in locating files on their system or inform you of updates about that site or directory. It is always wise to get any relevant README files before attempting to FTP files from a host, both to make it easier to find files and to learn how files are arranged and labeled at that particular host.
Some hosts also provide other information in the README files. Examples include commands, as different host computers may use slightly different commands, or online help in identifying specific commands used to locate files in a particular FTP site.
5.0.6 SENDING FILES TO OTHER COMPUTERS VIA FTP
In addition to using FTP to make copies of files and transfer them from a host computer to your Unix account (on "raider") or computer, one can use FTP to copy files from your Unix account to another computer that is running FTP. In this case, you must logon the other computer as a registered user--"putting" files cannot usually be done via anonymous FTP. The Windows WS_FTP client uses the "->" for "putting" files on "raider" in your Unix account.