2009-07-29 4 views
1

Ich fange an, ein (hoch entwickeltes) FTP-Verteilungsskript zu schreiben, aber ich dachte: das kann nicht sein! Ich erfinde das Rad neu! Zuverlässige Verteilung von Dateien an entfernte Server unter kontrollierten Bedingungen von einem zentralen Ort aus ist so alt wie eine Aufgabe für Computer, verdammt!FTP-Verteilungsskript

Bitte jemand mir Recht zu beweisen.

Google Suche zu diesem Thema ist so durch Linux-Welt über-Verwendung des Wortes "Verteilung" gebrochen.

Auch Ich weiß alles über rsync und rdist. Hier bin ich auf FTP angewiesen, also bitte nicht vorschlagen.

Nur um zu zeigen, was ich rede, hier der Kopf meines (leer) Skript ist:

# 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

Wenn Sie SSH-Zugriff auf die Server haben, würde ich versuchen, rsync zu verwenden, die für diese Aufgabe viel geeigneter ist. – OneOfOne

+2

ok, also was ist dein problem schon wieder? – ghostdog74

Antwort

2

Sie finden hilfreich könnte lftp sein. Es ist standardmäßig in vielen Distributionen installiert und bietet ziemlich anspruchsvolle Funktionen.

+0

Ich würde auch lftp über ncftp empfehlen - beide sind sehr nett, aber lftp neigt dazu, auf Linux weiter verbreitet zu sein. (z. B. ist es in Ubuntu Main statt Universe.) – alberge

+0

lftp sieht in der Tat köstlich aus, danke! Ich hoffe nur, dass es auf meinen Unix-Servern verfügbar ist. Ich muss diesen Montag überprüfen. – ExpertNoob1

0

Wenn ich diese Aufgabe hätte, würde ich Expect verwenden, AFAIK ist auf den meisten Unixen verfügbar, die auf Linux vorinstalliert sind.