URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8471
[ Назад ]

Исходное сообщение
"Забор файлов по ftp"

Отправлено Shine , 09-Окт-09 14:01 
Здравствуй, сообщество!
Помогите, пожалуйста, со следующей проблемой:

Есть 2 сервера (1-SUSELinux, 2-FreeBSD), нужно написать скрипт, который по каналу связи (допустим, ftp)отправлял файлы из определенных папок на сервере FreeBSD в определённые папки на другом сервере. Делал выборку по расширению файла, которые необходимо забирать(xml), и забирал только при наличии "новых файлов" на 1-м сервере.

P.S. Перерыл гугл и много форумов


Содержание

Сообщения в этом обсуждении
"Забор файлов по ftp"
Отправлено Slavaz , 09-Окт-09 14:25 
>Есть 2 сервера (1-SUSELinux, 2-FreeBSD), нужно написать скрипт, который по каналу связи
>(допустим, ftp)отправлял файлы из определенных папок на сервере FreeBSD в определённые
>папки на другом сервере. Делал выборку по расширению файла, которые необходимо
>забирать(xml), и забирал только при наличии "новых файлов" на 1-м сервере.
>P.S. Перерыл гугл и много форумов

ftp критично?

man rsync


"Забор файлов по ftp"
Отправлено Shine , 09-Окт-09 14:32 
>ftp критично?
>
>man rsync

нет, не критично. Просто, по моему, проще)
Ман почитаю - спасибо!


"Забор файлов по ftp"
Отправлено Warhead Wardick , 09-Окт-09 19:48 
>нет, не критично. Просто, по моему, проще)

SSH + Key auth + scp - и всех то дел.


"Забор файлов по ftp"
Отправлено QuAzI , 10-Окт-09 14:22 
>>нет, не критично. Просто, по моему, проще)
>
>SSH + Key auth + scp - и всех то дел.

"Новые файлы" я так понимаю файлы которых раньше небыло, например имя у них генерится по времени создания. Например какой-то отчёт за день или типа того. Разве scp умеет грести файлы по маске или "только новые" ?
sftp может быть.

Было бы неплохо уточнить задачу.
1) Файлы нужно скопировать с одного ПК на другой или перенести (т.е. после копирования удалить)? Если просто копировать, то rsync поверх ssh - отличнейший вариант.
2) Что подхватывает файлы со стороны сервера-приёмщика. Они просто туда складируются или их например каждые 3 минуты пытается обработать какая-нибудь чудопрограмма - это нужно учитывать, чтобы не оказалось что прога пытается недокачанные файлы обработать.


"Забор файлов по ftp"
Отправлено Shine , 12-Окт-09 11:27 
>[оверквотинг удален]
>новые" ?
>sftp может быть.
>
>Было бы неплохо уточнить задачу.
>1) Файлы нужно скопировать с одного ПК на другой или перенести (т.е.
>после копирования удалить)? Если просто копировать, то rsync поверх ssh -
>отличнейший вариант.
>2) Что подхватывает файлы со стороны сервера-приёмщика. Они просто туда складируются или
>их например каждые 3 минуты пытается обработать какая-нибудь чудопрограмма - это
>нужно учитывать, чтобы не оказалось что прога пытается недокачанные файлы обработать.

1) Нужно копировать, т.к. из этого места забирают файлы еще несколько машин. Их настраивал не я и доступа у меня к ним нет. Однако, на моей машине (откуда необходимо пересылать файлы) rsync поднят, ssh стоит. Как их нужно настроить?
2) На приемщике - система просматривает определённые папки, берёт xml-файлы и загружает их в нужное место в зависимости от домена, прописанного в этих файлах. Это происходит, допустим, раз в 10 минут. файлы небольшие, поэтому копирование занимает довольно мало времени. если скопировать их, допустим, на 2-й минуте, к 5-й они зальются и на десятой их обработает система.


"Забор файлов по ftp"
Отправлено margarin , 14-Ноя-09 22:53 
Скрипт простецкий:
1. берем список файлов для обработки
2. сортируем, в зависимости от дальнейшего направления записываем имя файла в соответствующий список
3. пишем сценарий для ftp-клиена:
       open $HOST $PASS
       bin
       cd $DESTINATION_DIR
       put $filename
       ....
       bye
4. передаем сценарий ftp-клиенту( наподобии ftp -i -n < $SCENARIOFILE

Не повредит так же проверку размеров вставить, на  плохих каналах актуально...