SliTaz Man Pages

Community Doc Forum Pro Shop Bugs Hg Cook

rx.

Section: Misc. Reference Manual Pages ()
Updated: MOPS 1.0
Index Return to Main Contents

НАЗВАНИЕ

rx, rb, rz - Получение файлов по протоколам XMODEM, YMODEM, ZMODEM.

СИНТАКСИС

rz [- +8abeOpqRtTuUvy]
rb [- +abqRtuUvy]
rx [- abceqRtuUv] file
[-][v]rzCOMMAND

ОПИСАНИЕ

В этой программе используются протоколы с коррекцией ошибок для получения файлов через последовательный порт от различных программ, работающих под управлением PC-DOS, CP/M, <FONT SIZE="-1">Unix, и других операционных систем. Программа может быть запущена из приглашения shell или автоматически, как результат команды "sz file ..." отданной вызывающей программе.

Rz может быть запущена из cu(1), но немногие версии cu(1) могут работать с rz. Для таких случаев подойдут Unix-версии Professional-YAM.

Rz (Receive ZMODEM) принимает файлы по пакетному протоколу ZMODEM. Пути и имена файлов предоставляются передающей программой. Необходимые каталоги (если возможно) создаются автоматически. Как правило, команда rz; автоматически дается передающей программой, однако некоторые некорректные реализации протокола ZMODEM могут потребовать запуска rz старым добрым способом.

Rb получает файл(ы) по протоколу YMODEM, принимая и стандартные 128-байтные, и 1024-байтные секторы (опция -k YAM sb). Смогут ли 1024-байтные блоки увеличить скорость передачи без потери данных или даже краха системы, предоставляется решить пользователю.

Если принимается информация о файле True YMODEM (True YMODEM - торговая марка Omen Technology), то длина файла определяет количество записанных байт. Кроме того, правильно выставляются дата изменения файла и атрибуты файла.

Если информация о файле True YMODEM не принимается, то слэши в пути файла меняются на знаки подчеркивания, а все конечные точки убираются. Это соглашение полезно для файлов, полученных из системы CP/M. Все имена файлов, если только они не содержали символов в нижнем регистре, переводятся в нижний регистр.

Rx принимает один файл file по протоколу XMODEM или XMODEM-1k. Смогут ли 1024-байтные блоки увеличить скорость передачи без потери данных или даже краха системы, предоставляется решить пользователю. Пользователь должен указать имя файла как для передающей, так и для принимающей программ. В конец принимаемого файла может быть дописано до 1023 байт мусора.

Rz может быть запущена как rzCOMMAND (с возможным ведущим - так, как это формирует login(1)). Содержимое каждого принимаемого файла rz будет перенапрявляться через канал в ``COMMAND filename'', где файл - имя переданного файла.

Передача файла считается успешной, если COMMAND при выходе возвращает код 0. Ненулевой код прерывает передачу.

Типичный пример использования этой формы - rzrmail, вызывающий rmail(1) для обработки почты пользователя имя, которого передается в качестве имени файла. Например, передача файла "caf" из системы PC-DOS rzrmail на системе Unix приведет к тому что файл DOS "caf" будет отправлен почтой пользователю "caf".

На некоторых системах Unix каталог пользователя должен содержать ссылку на COMMAND, так как если переменная SHELL=rsh, то абсолютные пути к файлам будут запрещены. Если rz был запущен с ведущим ``v'', то будет выводиться подробная информация (см. опцию v) Нижеприведённая запись будет работать на системах Unix SYS III/V: rzrmail::5:1::/bin:/usr/local/rzrmail

  Если переменная окружения SHELL содержитrsh, rbash или rksh (restricted shell), то rz не будет изменять существующие файлы и удалит любой файл, полученный с ошибкой.

Если rz запущена со стандартным потоком ввода и стандартным потоком ошибок, переназначенными в разные места, то значение Verbose будет установлено в 2, что приведет к выводу прогресса приема кадров в стандартный поток ошибок. Это можно отключить с помощью опции q.

ОПЦИИ


 

-+, --append
Добавить принимаемые данные в конец файла (только ZMODEM, ASCII).
-a, --ascii
Преобразовать файлы в формат Unix обрезая символы возврата каретки и все, что следует за первым символом Ctrl-Z (конец файла CP/M).
-b, --binary
Двоичная передача (без преобразований) файла.
-B NUMBER, --bufsize NUMBER
Буферизовать число NUMBER байт перед записью на диск. По умолчанию значение равно 32768, что достаточно для большинства случаев. Если машина слишком медленна, если плохой дисковый интерфейс, или есть другие подобные проблемы с аппаратным обеспечением, то можно увеличить размер буфера. -1 или auto создает буфер, достаточный для всего файла. Надо быть осторожным с этой опцией - если буфер слишком большой, машина может заняться подкачкой недостающей памяти, что, как правило, еще хуже.
-c, --with-crc
Только XMODEM. Использовать 16-битные CRC (в обычном режиме используется однобайтная контрольная сумма).
-C, --allow-remote-commands
Разрешить удалённое выполнение комманд (небезопасно). Эта опция позволяет передатчику запустить произвольньную команду через system () или execl (). В ограниченном (restricted) режиме данная опция игнорируется.
-D, --null
Выводить данные файла в /dev/null; используется для проверок.
--delay-startup N
Ждать N секунд перед тем как начать что-либо делать.
-e, --escape
Дать указание передающей программе экранировать все управляющие символы; в обычном режиме экранируются XON, XOFF, DLE, CR-@-CR и Ctrl-X.
-E, --rename
Переименовать принимаемый файл, если файл с таким именем уже существует. Имя нового файла формируется путем добавления точки и числа (0..999).
-h, --help
Показать помощь.
-m N, --min-bps N
Остановить прием, если BPS (Bytes Per Second - байт в секунду) упадет ниже N на определенное время (см. опцию --min-bps-time).
-M N, --min-bps-time
Использовать совместно с --min-bpsЗначение по умолчанию равно 120 (секундам).
-O,--disable-timeouts
Выключить отслеживание времени ожидания. При этом, если передающая программа ничего не посылает, lrz будет ждать бесконечно. Эта опция незначительно повышает производительность и снижает загрузку системы (за счет уменьшения примерно на 50 процентов количества системных вызовов).
--o-sync
Открывать файлы в режиме синхронной записи. Эта опция может пригодиться, если есть проблемы из-за потерянных прерываний при записи буферов на диск демоном update (или bdflush или как там называется этот демон какой-либо другой системе). Эта опция игнорируется, если система не поддерживает O_SYNC, о чем выдается соответствующее предупреждение.
-p, --protect
(ZMODEM) Защита файлов - если файл назначения существует, то он не принимается.
-q, --quiet
Предотвратить вывод подробной информации.
-r, --resume
Попытка lrz возобновить прерванную передачу файла.
-R, --restricted
Войти в ограниченный режим. Если эта опция указана дважды, то lrz не будет создавать каталогов или файлов с ведущей точкой. Для получения более подробной информации можно посмотреть раздел БЕЗОПАСНОСТЬ
-s HH:MM, --stop-at HH:MM
Остановить приём в HH часов, MM минут. Если вместо HH:MM, указать +N, то приём будет остановлен через N секунд.
-S, --timesync
Запросить у передающей программы timesync пакет. В ответ на этот запрос высылается системное время. Если разница между системным временем машин составляет более 60 секунд, lrz сообщит об этом. Если эта опция указана дважды, то lrz попробует установить системное время в соответствии с временем передающей машины (что возможно только в случае, если lrz был запущен root-ом). Эта опция несовместима с другими реализациями ZMODEM протокола. Не использовать эту опцию, если нет уверенности в том, что вы делаете.
--syslog[=off]
Включить/выключить ведение системного журнала. Значение по умолчанию устанавливается во время настройки перед компиляцией. Если поддержка системного журнала не была включена в программу при компиляции, то эта опция игнорируется.
-t TIM, --timeout TIM
Изменить время ожидания на TIM десятых долей секунды. Если обработка времени ожидания была выключена опцией -O, то эта опция игнорируется.
--tcp-client ADDRESS:PORT
Работать как TCP/IP клиент: соединиться с указанным портом. За более подробной информацией обращаться к опции --tcp-server.
--tcp-server
Действовать как сервер: открыть сокет, вывести указания, ждать соединения. Обычно эта опция не используется, так как lrzsz - единственная программа, понимающая, что нужно делать для уcтановления соединения. Можно указать эту опцию, если по какой-либо причине необходимо воспользоваться протоколом ZMODEM, но нельзя использовать опцию --tcp программы lsz (возможно потому, что telnet не позволяет запустить локальную программу с переназначенным на удаленную сторону стандартным потоком ввода/вывода). Если воспользоваться этой опцией, то необходимо запустить lsz с опцией --tcp-client ADDRESS:PORT. lrz при запуске выведет адрес и порт. Использовать эту опцию несколько рискованно с точки зрения безопасности - кто-либо еще может подсоединиться к используемому порту. Для получения более подробной информации можно посмотреть раздел БЕЗОПАСНОСТЬ.
-U, --unrestrict
Выключить ограниченный режим (это сделать невозможно, если работать под restricted shell).
--version
Вывести номер версии.
-v, --verbose
Выводить список имен файлов в стандартный поток ошибок. Чем больше v указать, тем больше информации будет выводится.
-wN, --windowsize N
Установить размер окна в N.
-X, --xmodem
Использовать протокол XMODEM.
-y, --overwrite
Перезаписать существующие с тем же именем файлы.
--ymodem
Использовать протокол YMODEM.
-Z, --zmodem
Использовать протокол ZMODEM.

БЕЗОПАСНОСТЬ

Вопреки оригинальному протоколу ZMODEM, lrz по умолчанию использует
ограниченный режим. В этом режиме lrz не воспринимает абсолютные пути к файлам и ссылки на вышестоящие каталоги, не изменяет существующие файлы и удаляет файлы, принятые с ошибками. Удаленное выполнение команд запрещено.


 Для включения этого режима необходимо установить переменную окружения ZMODEM_RESTRICTED или указать опцию R. Кроме того, каталоги и невидимые файлы создаваться не будут.

Ограниченный режим может быть выключен опцией U, если только работа не производится из restricted shell.

Использование опций --tcp-client или --tcp-server
влечет за собой некоторый риск с точки зрения безопасности, так как кто-либо может подсоединиться к порту и забрать данные.

ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ

lrz использует следующие переменные окружения:

SHELL
lrz распознаёт restricted shell, если эта переменная содержит rsh или rksh
ZMODEM_RESTRICTED
Если эта переменная отсутствует, то lrz будет работать в ограниченном

ПРИМЕРЫ

(команда Pro-YAM)


Команда Pro-YAM: sz *.h *.c
(Эта команда автоматически запустит rz на системе, с которой установлено соединение.)

ВЕРСИЯ ДЛЯ VMS

Версия VMS не устанавливает время файла.
Стандартный ввод/вывод VMS C и RMS могут взаимодействовать, изменяя
содержимое файла.
Версия для VMS не поддерживает запуск в форме rzCOMMAND. Текущая
версия для VMS не поддерживает XMODEM, XMODEM-1k, или YMODEM. Стандартный ввод/вывод VMS C и RMS могут взаимодействовать, изменяя содержимое файла.

В соответствие с документацией к VMS, процедуры буферизованного ввода, использованные в VMS версии rz приводят к задержке до одной секунды на каждую передачу. Эта задержка может быть заметна на коротких файлах. Можно избавиться от этого эффекта ценой несколько большей загрузки процессора. Для этого нужно убрать строку "#define BUFREAD" из файла rz.c .

Версия для VMS в некоторых случаях при ошибках вызывает генерирование DCL произвольных off the wall сообщений об ошибках. Это вызвано несовместимостью функции VMS "exit" со стандартом Unux/MSDOS.

ВОЗМОЖНОСТИ ZMODEM

Rz поддерживает следующие входящие запросы ZMODEM: binary (-b), ASCII (-a), protect (-p), clobber (-y), append (-+). По умолчанию используется protect (-p) и binary (-b).

Index

НАЗВАНИЕ
СИНТАКСИС
ОПИСАНИЕ
ОПЦИИ
БЕЗОПАСНОСТЬ
ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ
ПРИМЕРЫ
ВЕРСИЯ ДЛЯ VMS
ВОЗМОЖНОСТИ ZMODEM