2009-07-29 6 views
1

Я начинаю писать (сложный) скрипт FTP-распространения, но я думал: этого не может быть! Я изобретаю колесо! Надежно распространять файлы на удаленные серверы в контролируемых условиях из центра, как и старые задачи, как компьютеры, черт побери!FTP-скрипт распространения

Пожалуйста, кто-нибудь докажет, что я прав.

Поиск Google по этому вопросу настолько нарушен в мире Linux, что используется слово «распространение».

Также, Я знаю все о rsync и rdist. Здесь я ограничен FTP, поэтому, пожалуйста, не предлагайте их.

Просто, чтобы показать, что я говорю, вот заголовок моей (пустой) сценария:

# Example usage: FTPdist.ksh --simulate -l /tmp/Script.sh -r $BIBSH_DIR -d dune,camel -p dgft4sG55 -e expNoob -o itg:itg -c 555 
# 
# usage: FTPdist.ksh <-l local_file1[,lf2,..]> <-r remote_path> <-d remote_srv1[,remote_srv2,..]> [-t trace_file]\ 
#    <-p FTP_passwd> [-u FTP_login] [-e ext] [-n] [-o owner[:group]] [-c mode] [-g] [-q] [-v [verbosity_level]] 
# or: FTPdist.ksh <-f instructions_file> [-n] [-t trace_file] <-p FTP_passwd> [-u FTP_login] [-e ext] 
#    [-o owner[:group]] [-c mode] [-g] [-q] [-v [verbosity_level]] 
# 
# By default, FTP_login is "root". 
# -n: do a simulation run to see if any FTP/login/rights problems exist. 
# 
# Distribute <local_file> to all <remote_srvs> using FTP. Target location on remote servers: <remote_path>. 
# If a file already exists on remote server, rename it first with date extension + .[ext]. 
# By default, ownership is preserved. If -o option is provided, ownership will be given to argument. 
# This script is meant to connect as root . If you're not using root FTP login, make sure you have 
# enough privileges on remote servers/files (do a simulation first with -n). 
# If -c option is used, a chmod is performed on the remote file. 
+0

Если у вас есть ssh-доступ к серверам, я бы попытался использовать rsync, который гораздо более подходит для этой задачи. – OneOfOne

+2

ОК, так что ваша проблема снова? – ghostdog74

ответ

2

Вы можете найти lftp быть полезным. Он установлен по умолчанию во многих дистрибутивах и предлагает довольно сложные функции.

+0

Я бы также рекомендовал lftp над ncftp - оба очень приятные, но lftp имеет тенденцию быть более распространенными в Linux. (например, это в Ubuntu Main, а не в Universe.) – alberge

+0

lftp выглядит восхитительно, спасибо! Я только надеюсь, что он будет доступен на моих серверах Unix-серверов. Мне нужно будет проверить этот понедельник. – ExpertNoob1

0

Если бы мне была задана эта задача, я бы использовал Expect, AFAIK доступен на большинстве unixes, предварительно разобранных на linux.

Смежные вопросы