[Shell Script Suche] Mit NCFTP Daten übertragen

Muhviehstar

Lieutenant
Registriert
Juli 2003
Beiträge
789
Hallo,

ich habe von Linux keine Ahnung und suche nun ein Shellscript, mit dem man Daten via NCFTP übertragen kann. Dabei ist es eigentlich nur wichtig, dass die zu übertragen Dateien aus einer TXT ausgelesen werden sollen (1 Pfad / Zeile).
 
#!/bin/sh

USERNAME="user"
PASSWORD="passwd"
HOST="localhost"
INPUT_FILE="input.file"
OUTPUT_DIRECTORY="/output"

NCFTPPUT="`which ncftpput`"

while read line; do
$NCFTPPUT -R $HOST -u $USERNAME -p $PASSWORD $OUTPUT_DIRECTORY $line;
done < INPUT_FILE

So vllt?

MfG
 
Zuletzt bearbeitet:
-bash: test.sh: line 9: unexpected EOF while looking for matching `"'
-bash: test.sh: line 15: syntax error: unexpected end of file
 
#!/bin/sh

USERNAME="user"
PASSWORD="passwd"
HOST="localhost"
INPUT_FILE="input.file"
OUTPUT_DIRECTORY="/tmp/output"

NCFTPPUT=`which ncftpput`

while read line; do
$NCFTPPUT -R $HOST -u $USERNAME -p $PASSWORD $OUTPUT_DIRECTORY $line
done < $INPUT_FILE
 
which: no ncftpput in (*gaaaanz langer, komischer Pfad*)

Was heißt das?!
 
das heisst, dass kein ncftpput binary in den entsprechenden Verzeichnissen( z. B. "/usr/bin" oder "/bin") gefunden wird.

Bist Du sicher das Du ncftp installiert hast bzw. als rpm installiert hast(ich gehe mal davon aus, das Du eine Distribution mit rpm nutzt).

Was sagt ein "rpm -qa | grep ncftp"?
 
Mpf, ncftp ist natürlich nciht installiert.

Ich möchte es jetzt auch nicht mehr installieren, weil es unsicher sein soll. Ich bin jetzt also auf der Suche nach einem sichereren Übertragungsweg, sprich:

Mit Überprüfung
- ob der Server überhaupt da ist
- Verbindung 100% steht
- ob die Übertragung geklappt hat
- usw.

Ich wäre sehr dankbar, wenn mir da jemand helfen könnte. Es muss wirklich wasserdicht sein.
 
Sichere Dateiübertragung (verschlüsselte) ist beispieslweise per scp (secure copy) möglich.

Wenn du dann die md5 Checksummen der Datei(en) auf dem Quellrechner mit den Checksummen der Dateien auf dem Zielrechner (nach dem Kopieren) vergleichst, dann weißt du auch, ob die Daten fehlerlos übertragen wurden.
 
schau Dir mal rsync an, zum synchronisieren von Daten ganz brauchbar. Solange keine 100% Datenkonsistenz gefordert ist, sehr brauchbar.

Gibt dann mehrere Möglichkeiten das Ganze aufzubauen. Wenn Dir aber "scp" reicht als Lösung, nimm das, da es nicht so komplex ist.
 
Die Datenkonsistenz sollte aber 100% betragen. Es handelt sich um sehr wichtige Dokumente.
 
Dann wuerde ich die Daten nicht quer uebers Netz verschicken, und schon lange nicht mit einem Script, wenn da mal was schief laeuft.

MfG
 
hmmm...ja dann würd ich mal sagen, nimm rsync und sicher es noch regelmässig auf Band/CD/DVD.

Ich hatte bis jetzt noch gar keine Probleme mit rsync und synchronisiere damit recht viel, aber es gab auch schon mal Leute bei denen des nicht so gut geklappt hat.

An sich verwendet rsync "rolling checksums", das sind schwächere aber auch schnellere checksums.

Mit der Option "-c" kannst Du die stärkeren checksums aktivieren/nutzen, es wird aber sicher viel langsamer als mit den "rolling checksums".
Ich persönlich verzichte auf "-c", da ich noch keine schlechte Erfahrung gemacht habe, bis jetzt...;)

EDIT: Zusammenfassung: rsync ist kein Ersatz für ein richtiges Backup, aber ok zum synchronisieren.
 
Zuletzt bearbeitet:
AW: Re: [Shell Script Suche] Mit NCFTP Daten übertragen

marcelcedric schrieb:
Dann wuerde ich die Daten nicht quer uebers Netz verschicken, und schon lange nicht mit einem Script, wenn da mal was schief laeuft.

MfG

Die Daten sollen aber jede Nachtvon einem Intranet- auf einen Internetserver übertragen werden, da bleibt mir nichts anderes übrig.

Ich hab rsync jetzt schon installiert und habe schon getestet. Das ist optimal. Danke für den guten Tip! Jetzt nur noch ssh-auth automatisieren und nen cronjob einrichten und ich bin wohl soweit fertig damit :)

Für alle, die sich auch über rsync informieren möchten, kann ich diesen Link empfehlen: http://www.linuxnetmag.com/de/issue8/printm8rsync1.html
 
Zuletzt bearbeitet:
Zurück
Oben