3.2.1. Доступ к ресурсам архивов FTP

Файловые архивы - это библиотеки, содержащие различную информацию - от программ до картинок, музыки, фильмов и просто текстовых файлов. Доступ к этим архивам осуществляется специальной программой FTP (File Transfer Programm), которая обращается к специальному серверу, управляющему файловым архивом на удаленной машине. Из названия программы уже понятно, что вся информация хранится в виде файлов, которые организованы в директории. Вообще говоря, FTP-архив - это часть файловой системы, которая доступна для удаленного пользователя FTP-сервера. Важным свойством многих FTP-архивов является возможность так называемого анонимного доступа. Рассмотрим доступ к FTP-архиву на примере робота decwr1.dec.com.

Для того, чтобы получить доступ к архиву следует отправить сообщение по адресу:

	mail ftpmail@decwr1.dec.com

Поле Subject можно оставить пустым, а в теле сообщения следует ввести команды. Для доступа к архиву oak.oakland.edu и получения его оглавления следует отправить следующее сообщение:

	mail ftpmail@decwr1.dec.com
        Subject:
        connect oak.oakland.edu anonymous user@domail.net
        ls
        quit

По команде connect робот попытается установить анонимное соединение с FTP-сервером oak.oakland.edu. В качестве пароля (четвертый аргумент команды connect) следует указать свой почтовый адрес. По команде ls будет получен список файлов корневой директории сервера, а по команде quit робот прервет работу с сервером и вернет результаты пользователю. Важным моментом, ради которого собственно и осуществляется доступ к FTP-серверу, является запрос на передачу файлов. Предавать можно как текстовые, так и двоичные файлы. Для управления типом запрашиваемого файла существует две команды - ascii и binary. Для того, чтобы получить ASCII-файл, следует послать сообщение типа:

	mail ftpmail@decwr1.dec.com
        Subject:
        connect oak.oakland.edu anonymous user@domail.net
        ascii
        get README
        quit

Команда get позволяет заказать файл README. Для получения двоичного файла следует послать сообщение типа:

	mail ftpmail@decwr1.dec.com
        Subject:
        connect oak.oakland.edu anonymous user@domail.net
        cd windows/mosaic
        binary
        get mosaic.zip
        quit

В приведенном выше примере используется команда cd, которая позволяет переходить по дереву файловой системы от одной директории к другой. При запросе двоичных файлов надо быть уверенным в том, что почтовая программа способна извлечь данные из почтового сообщения (пакет BML позволяет это сделать), или иметь на машине программу uudecode. В случае приема закодированного двоичного файла в тексте сообщения должен быть блок типа:

	begin 600 kuku.zip
        &4$%53`H*
        `
        end

Этот блок следует выделить в отдельный файл и обработать программой uudecode.

Пользователи BITNET имеют роботов, которые позволяют использовать более широкие возможности FTP-сервиса. Одним из таких роботов является робот bitftp@pucc.princeton.edu. Этот робот позволяет пользоваться всем набором команд FTP. В течении одной сессии можно открывать и закрывать FTP-соединения с разными ftp серверами, заказывать кодировку двоичных файлов, отличную от uuencode, получать подсказку о своем месте в файловой системы сервера и т.п. В принципе, робот bitftp@pucc.princenton.edu доступен не только пользователям BITNET, но администраторы робота не рекомендуют пользователям других сетей пользоваться данным роботом. Однако для другого робота - BITFTP@vm.gmd.de, таких оговорок нет. Важным достоинством BITNET-роботов является возможность получения списка FTP-архивов. И последнее замечание по поводу доступа к FTP по e-mail: если в теле сообщения указать только слово "help", то робот расскажет о своих возможностях. Ниже приведен пример ответа ftpmail.

	From ftpmail@doc.ic.ac.uk Thu Mar 16 02:03 EET 1995
	Received: from puffin.doc.ic.ac.uk by apollo.polyn.kiae.su with SMTP
		(1.38.193.4/16.2) id AA02419; Thu, 16 Mar 1995 02:02:56 +0200
	Return-Path: <ftpmail@doc.ic.ac.uk>
	Received: from doc.ic.ac.uk by puffin.doc.ic.ac.uk
	        id <14782-0@puffin.doc.ic.ac.uk>; Wed, 15 Mar 1995        19:22:26 +0000
	To: paul@apollo.polyn.kiae.su
	Subject: <FTP EMAIL> response
	Date: Wed, 15 Mar 1995 19:22:26 +0000
	From: Email-FTP Gateway Account <ftpmail@doc.ic.ac.uk>
	Message-Id: <"puffin.doc.790:15.02.95.19.22.34"@doc.ic.ac.uk>
	Status: RO
	<FTP EMAIL> response
	ftpmail has received the following job from you:
	      reply-to paul@apollo.polyn.kiae.su
	      open oak.oakland.edu anonymous paul@apollo.polyn.kiae.su
	      ls
	      cd pub
	      get README
	ftpmail has queued your job as: 995331.14774
	Your priority is 9 (0 = highest, 9 = lowest)
	Requests to src.doc.ic.ac.uk will be done before other jobs.
	There are 2057 jobs ahead of this one in the queue.
	5 ftpmail handlers available.
	To remove send a message to ftpmail@src.doc.ic.ac.uk containing just:
	delete 995331.14774
	Your original input was>>
	>Return-Path: <paul@apollo.polyn.kiae.su>
	>Received: from doc.ic.ac.uk by puffin.doc.ic.ac.uk with SMTP (PP)
	>          id <13192-1@puffin.doc.ic.ac.uk>; Wed, 15 Mar 1995 18:52:46 +0000
	>Received: from apollo.polyn.kiae.su by frigate.doc.ic.ac.uk with SMTP (PP)
	>          id <23071-0@frigate.doc.ic.ac.uk>; Wed, 15 Mar 1995 18:42:06 +0000
	>Received: by apollo.polyn.kiae.su (1.38.193.4/16.2) id AA02362;
	>          Wed, 15 Mar 1995 21:42:40 +0200
	>From: Pavel Khramtsov <paul@apollo.polyn.kiae.su>
	>Subject:
	>To: ftpmail@doc.ic.ac.uk
	>Date: Wed, 15 Mar 95 21:42:40 EET
	>Mailer: Elm [revision: 70.85]
	>Message-ID: <"frigate.do.244:15.02.95.18.52.41"@doc.ic.ac.uk>
	>
	>connect oak.oakland.edu anonymous paul@apollo.polyn.kiae.su
	>ls
	>cd pub
	>get README
	>quit
	>
	<<End of your input

Сервер уведомил о получении запроса на передачу файла "README".

Назад | Содержание | Вперед