Общение

         

Пакет NCSA Telnet. Глава 5 Передача файлов


/////
/////



5.1 Обзор

Данная глава описывает процедуры переноса файлов между Вашим персональным компьютером и каким-либо хостом в сети, включая две встроенные функции программы NCSA Telnet: FTP и rcp. Также предоставляется описание и справочная информация, касающиеся требований к имени файлов, спецификации пути и переноса файлов в фоновом режиме.

5.2 Терминология

В данной главе используются следующие понятия:

ASCII файл, текстовый файл. Пользователи могут читать ascii или текстовый файл, а также редактировать его с помощью стандартных редакторов на персональном компьютере или на хосте. Если Вы указываете текстовые файлы, то при их пересылке могут быть изменены символы конца строки, бинарные, графические файлы или файлы снимков.

Пользователь не может просто прочесть бинарный, графический файл или снимок. При передаче файлы такого типа не меняются ни в чем (в отличие от текстовых).

клиент/сервер

Клиентом называется система, которая требует обслуживания, тогда как сервер - это система, сама предоставляющая "сервис" другим. Вопреки очевидному, клиентом будет не всегда Ваш

персональный компьютер. Если Вы используете NCSA Telnet для связи с хостом, то Ваш компьютер является telnet клиентом. Если Вы запросили передачу файлов с Вашего персонального компьютера, то эта передача фактически инициируется на хосте, превращая его

в FTP клиент, а Ваш компьютер - в FTP сервер. Таким образом, персональный компьютер становится telnet клиентом и FTP сервером одновременно.

передача файла

При передаче файла по сети переписывается его содержимое, и получающаяся копия помещается на диск другого компьютера.

5.3 Указания по переносу файлов

Спецификация полного пути: соглашения по ведущим слешам

Если Вы не указали полного пути в FTP или rcp, то программа NCSA Telnet будет осуществлять пересылку файлов в каталоге, используемом по умолчанию. Если Вы хотите указать какой-либо иной каталог, наберите его полное имя согласно документации по DOS.

Полное имя может содержать имя драйвера с двоеточием.
Например,

D:\myfiles\graphics\image.dat

или

D:/myfiles/graphics/image.dat

Вместо обратных слешей (\) Вы можете использовать прямые (/), поскольку программа NCSA Telnet автоматически преобразует все прямые слеши в пути для UNIX в обратные слеши, чтобы обеспечить совместимость с PC-DOS. Поскольку обратные слеши в оболочке UNIX играют особую роль и для их ввода приходится пользоваться специальным форматом, то здесь удобнее будет использовать прямые слеши.

Замечание. rcp является специальной функцией системы Berkeley UNIX.

Одновременная активность

Как для FTP, так и для rcp передача файлов может осуществляться одновременно с работой telnet-сессий. Поэтому во время переноса файла Вы можете пользоваться другими услугами программы NCSA Telnet, такими как работа с telnet-сессией, переход от сессии к сессии, создание новых сессий и смена их параметров. Однако когда осуществляется процесс передачи файлов, не следует заводить еще один такой же. В то время как один FTP запрос будет обрабатываться, другой FTP запрос будет игнорироваться. Более того, если Вы пытаетесь запустить процесс пересылки rcp в то время как другой такой же процесс уже исполняется, оба процесса могут дать сбой.

Замечание. Не выходите из программы NCSA Telnet, пока осуществляется передача файлов, поскольку это может привести к сбоям на хосте.

Правила, касающиеся имен файлов, посылаемых на персональный компьютер:

Если Вы используете FTP или rcp для передачи файлов с Вашего персонального компьютера или на него, придерживайтесь следующих правил, касающихся имен файлов:



  • Корректное имя файла содержит не более восьми символов, за которыми следуют необязательная точка и трехсимвольное расширение.
  • Заглавные и строчные символы одинаковы для имени файла на диске персонального компьютера

  • В имени файла, передаваемого с персонального компьютера, все символы преобразуются в строчные

  • Если в имени файла более восьми символов, оно урезается до нужного размера

  • Если в имени файла присутствует точка, то следующие за ней три символа рассматриваются как расширение, а все следующие за ними урезаются



  • Имя файла не должно содержать специальных символов. Если все же это произойдет, то файл может быть потерян или станет нечитаемым. Примеры таких специальных символов: *, $, #, -, а также управляющие символы.


Сообщения о переносе файлов

FTP сервер создает специальную информацию, чтобы позволить Вам отслеживать доступ к жесткому диску персонального компьютера. Вы можете увидеть ее, нажав клавиши ALT-Z (показать сообщения консоли), описанные в главе 2 "Введение в механизм управления сессиями". В нижеприведенном списке приводится информация, предоставляемая FTP сервером.


  • сообщения, создаваемые при инициализации соединения, указывающие IP адрес или имя чужой машины, инициирующей соединение

  • имя регистрирующегося пользователя, если Вы используете команду USER

  • имена файлов, передаваемых с или на диск персонального компьютера

  • сообщения о закрытии соединения


5.4 Перенос файлов с помощью FTP

FTP сервер в программе NCSA Telnet соответствует минимальным требованиям к стандартному FTP серверу, подобному 4.2 BSD UNIX. NCSA FTP имеет следующие свойства:


  • посылка потока данных в текстовом (ASCII) или бинарном формате (IMAGE)

  • смена, создание или удаление каталога

  • распечатка текущего каталога

  • просмотр файлов в текущем каталоге (с привлечением символов *, &)

  • посылка и получение нескольких файлов одной командой (с символами *, &)

  • удаление файла


Инсталляция FTP

Хост должен поддерживать FTP режим переноса файлов. Если Вы не знаете, может ли он это делать, свяжитесь с администратором системы.

В программе NCSA Telnet должен быть разблокирован режим переноса файлов. Это делается либо с помощью меню Parameters либо коррекцией файла конфигурации. Если же такой режим отключен, но Вы пытаетесь запустить FTP, то Вы получите сообщение от хоста, что данный компьютер не отвечает на запрос. Убедитесь, что режим пересылки файлов разблокирован, если Вы получили такое сообщение.

Использование FTP на главном компьютере

Когда FTP инициируется хостом, то его команды могут меняться в зависимости от программного обеспечения этого хоста.


Чтобы получить полную документацию по FTP и его командам, Вам придется обратиться к документации для этого компьютера. Работая с UNIX системами, Вы также можете обратиться к интерактивной справочной информации, воспользовавшись командой 'man ftp'.

В большинстве систем команда FTP вводится в ответ на приглашение и с указанием имени или IP адреса интересующей машины. Например, если Ваш персональный компьютер называется mymachine и Ваш IP адрес 192.17.20.22, то Вы можете ввести

% ftp mymachine

или

% ftp 192.17.20.22

При этом Вы получите ответ, подобный следующему:

Connected to 192.17.20.22.

220 PC Resident FTP server, ready

Name (192.17.20.22:timk):

В настоящее время большинство FTP клиентов предлагает Вам ввести Ваше регистрационное имя и пароль. Это потребуется, если Ваша программа NCSA Telnet сконфигурирована для паролей. В противном случае Вам нужно всего лишь нажать RETURN, чтобы получить приглашение к работе. Если же Вы так и не получили запроса на ввод регистрационного имени и пароля, то предполагается, что Вы зарегистрированы автоматически и сразу можете начинать работу с FTP.

Использование FTP с помощью альтернативных методов

Наиболее часто процедура FTP запускается сокращенной командой ALT-F. Если Вы нажимаете ALT-F, то программа NCSA Telnet автоматически посылает команду ftp, описанную выше, добавляя к ней IP адрес Вашего персонального компьютера. Предполагается, что именно этим способом Вы чаще всего будете пользоваться при переносе файлов. Для простоты Вы можете полагать, что ALT-F является макросом для клавиатуры, для которого заранее определена ftp команда и Ваш IP адрес.

Другим доступным Вам макросом является ALT-I, которая посылает хосту Ваш IP адрес. Так при наборе какой-либо сетевой команды, к примеру той же FTP, Вы можете мгновенно ввести и свой сетевой IP адрес, нажав ATL-I. Приведенная ниже последовательность операций имеет тот же результат, что и нажатие ALT-F

ftp

(пробел)

(ALT-I)

(RETURN)

Из двух приведенных методов (ALT-F и ALT-I) используйте тот, который Вам более всего подходит.


Хост-компьютер, с которым Вы работаете, может принимать или не принимать описанные выше команды, так что Вы можете попробовать различные комбинации с тем, чтобы найти наиболее удобную для Вас. Помощь в этом Вам может оказать администратор системы.

Использование команд FTP

В большинстве программ FTP по завершении регистрации и про верки пароля Вам дается приглашение на ввод конкретных команд. Эти команды описаны в документации к хост-компьютеру. Однако большинство реализаций FTP придерживаются общего набора команд, поскольку они воспроизводят FTP версии Berkeley UNIX. В таблице 5.1 приведен список команд, общих для большинства реализаций.

Таблица 5.1 Общие команды FTP

Команда Описание
ascii установить режим переноса файлов ASCII

(используется по умолчанию)
binary установить режим переноса файлов binary (image)
cd путь установить новый каталог, используемый по умолчанию на Вашем персональном компьютере
dir показать имена файлов из каталога, используемого по

умолчанию на Вашем персональном компьютере
get имя_файла взять указанный файл с Вашего персонального

компьютера и поместить его на хост
help показать список команд для FTP
put имя_файла переслать указанный файл с хоста на Ваш

персональный компьютер
pwd показать имя каталога, используемого на Вашем

персональном компьютере по умолчанию
quit завершить выполнение FTP
remotehelp показать список команд, обслуживаемых FTP сервером
ascii, binary

По умолчанию FTP передает файлы в формате ASCII. Если Вы передаете графические файлы или файлы с бинарными данными, то перед тем как дать команду put или get, следует установить режим binary. Делается это подачей команды binary. Чтобы после пересылки бинарного файла вновь установить режим ASCII, введите команду ascii. Наприведен пример сообщений FTP во время передачи ASCII файла. На показывает сообщения при передаче binary файла.

каталог по умолчанию

Если Вы не указали в команде полное имя файла, то NCSA Telnet передаст этот файл в каталог по умолчанию.


Как показано в

Вы можете воспользоваться командами FTP для

определения текущего каталога (pwd) или его смены (cd).

Команда смены каталога, набираемая как cd, позволит Вам сменить не только сам каталог, используемый по умолчанию, но и диск, на котором он расположен. При этом следуйте в точности обозначениям, принятым для DOS, а также заменяйте обратные слеши на прямые, например

ftp>cd D:/files

Команда pwd также дает информацию об используемом диске. Так, после выполнения предыдущей команды cd команда pwd будет возвращать

D:\FILES

передача файлов на Ваш персональный компьютер

Даже если Вы инициировали передачу файлов со своего персонального компьютера, фактически необходимые для этого операции осуществляются со стороны хоста. Поэтому результаты выполнения команд пересылки интуитивно будут происходить в обратном направлении. Чтобы передать файл с хоста на Ваш персональный компьютер, Вам следует воспользоваться командой put.

Формат этой команды выглядит как

put filename.txt

На рисунке 5.1 показан пример использования команды put для пересылки реального файла, имеющего имя temp2.

Рисунок 5.1 Перенос на персональный компьютер ASCII файла

newton_45% ftp -n 192.17.20.124
Connected to 192.17.20.124.
220 PC Resident FTP server, ready
ftp> put temp2
200 This space intentionally left banl < >
150 Opening connection
226 Transfer complete
262145 bytes sent in 32.61 seconds (7.8 Kbytes/s)
ftp> quit
221 Goodbye
newton_46%
передача файлов на хост

Запрос на посылку файл
а с Вашего персонального компьютера на хост называется get.

get filename.txt

На рисунке 5.2 показан пример использования команды get и бинарным файлом, называемым bridge.pic. Заметим, что этот файл находится в каталоге с именем ibmg, так что следует воспользоваться командой cd. Если по завершении этой операции Вам понадобится передать текстовый файл, воспользуйтесь FTP командой ascii.

Рисунок 5.2 Получение бинарного файла с персонального

компьютера

newton_41% ftp -n 192.17.20.124
Connected to 192.17.20.124.
220 PC Resident FTP server, ready
ftp> bin
200 Type set to I, binary mode
ftp> cd /ibmg
250 Chdir okay
ftp> get bridge.pic
200 This space intentionally left blank < >
150 Opening connection
226 Transfer complete
262144 bytes received in 9.22 seconds (28 Kbytes/s)
ftp>
ftp> quit
221 Goodbye
newton_42%
<


Индикатор состояния FTP

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

не переданных байт (в случае команды get). Эти числа обновляются каждые две секунды, позволяя Вам отслеживать процесс передачи файла. По завершении команды имя файла исчезает и хост, как правило, печатает подтверждающее сообщение, как было показано на рисунках и

mput, mget

На многих хостах Вы можете с помощью одной такой команды передавать друг за другом по несколько файлов, указав их с помощью специальных символов (на персональном компьютере в указываемом имени символ ? означает подстановку одиночного сим вола, * - подстановку нескольких символов). Например, чтобы передать файлы teln.2 и teln.3, Вы можете ввести mget teln.*

(или mput teln.*).

Перенос файлов с помощью rcp

Крайне нежелательно устанавливать в файле конфигурации config.tel параметр rcp=yes и пользоваться UNIX командой rcp, поскольку эта функция не имеет защиты от несанкционированного доступа на Ваш персональный компьютер со стороны других пользователей сети Internet.

[]

[]


Содержание раздела