Страница 1 из 1

Backup по FTP из скрипта.

Добавлено: 08 окт 2004, 17:00
Hermit
Нужно заливать бэкапы по ftp из скрипта, который по крону стартует. Надоело уже ходить и руками их собирать по сервакам...
Подскажите в какую сторону копать..

Добавлено: 08 окт 2004, 17:48
Llama
Hermit, если только сливать - то wget, если заливать - то делаем маленький файлик, который скармливаем на STDIN ftp

Добавлено: 08 окт 2004, 18:03
Hermit
Llama, про cat something | ftp была идея, только как-то кривовато выглядит...

Добавлено: 08 окт 2004, 18:04
Llama
тогда cat somathing |telnet hostname 21
вполне unixway

Добавлено: 08 окт 2004, 18:22
Hermit
Llama, тогда кто откроет ftp-data? это что-то совсем много писать ))

Добавлено: 08 окт 2004, 18:31
Llama
Hermit, ну зачем тебе ftpdata ;) И без него все может работать, не обязательно загонять сервер в PASV. Я не понімаю, чем не устраивает cat file |ftp, но в любом случае слепить то, что тебе надо на perl недолго.

Добавлено: 08 окт 2004, 19:34
invox
Hermit
посмотри в сторону lftp. Чудененько умеет выполнять работу ftp-клиента

Добавлено: 22 окт 2004, 01:25
Hermit
Ответ нашелся в Advanced Bash scripting guide:
#!/bin/bash
# upload.sh
# Передача пары файлов (Filename.lsm, Filename.tar.gz)
# на Sunsite (ibiblio.org).
E_ARGERROR=65
if [ -z "$1" ]
then
echo "Порядок использования: `basename $0` filename"
exit $E_ARGERROR
fi
Filename=`basename $1` # Отсечь имя файла от пути к нему.
Server="ibiblio.org"
Directory="/incoming/Linux"
# Вообще, эти строки должны бы не "зашиваться" жестко в сценарий,
# а приниматься в виде аргумента из командной строки.
Password="your.e-mail.address" # Измените на свой.
ftp -n $Server <<End-Of-Session
# Ключ -n запрещает автоматическую регистрацию (auto-logon)
user anonymous "$Password"
binary
bell # "Звякнуть" после передачи каждого файла
cd $Directory
put "$Filename.lsm"
put "$Filename.tar.gz"
bye
End-Of-Session
exit 0