(Gelöst) ftp Konfiguration

Status
Für weitere Antworten geschlossen.

Ingo

New Member
Hej,
Bin Linux Neuling und brauche ein bisschen Unterstützung.
Ich nutze Suse 10 und möchte per Script eine Datei auf einen FTP Server hochladen.
Manuell klappt das ganz gut. Ich habe mir eine .netrc Datei mit URL, login und passwort erstellt kann mich mit ftp <SERVER> einloggen, und mit put die Datei hochladen.

Soweit, so gut. Aber das muss doch auch mit eienm Einzeiler zu erledigen sein. In den man pages ist die Option -u spezifiziert, aber ich schon so etliche Variationen getestet und es nicht zum Laufen gebracht. Habe leider keine Ahnung woran es liegt - ich bekomme auch keine Bildschirmausgebe. -d für debug zählt mir auch nur nochmal die übergebenen Parameter URL und Datei auf; aber nicht, warum es nicht läuft :(

Kann mir einer von Euch sagen, wie genau ich den Befehl formulieren muss?
Danke!

Gruß, Ingo
 

Runlevel5

Member
AW: ftp Konfiguration

Hallo Ingo!

Willkommen im Forum.

Ich kann dir leider im Moment nicht Helfen, kann dich aber beruhigen(nach der Lösung wird bereits gesucht:) )
 

Basti

New Member
AW: ftp Konfiguration

servus,

wie es mit einem einzelnen Befehl geht, kann ich dir auf Anhieb nicht sagen aber schau dir mal folgendes an:
unter /root eine Datei .netrc anlegen (wie du schon erwähnt hast)
Code:
machine FTP-SERVER
  login         USERNAME
  password      PASSWORT

macdef backup
  put $1 $2
  quit
dann unter /root/bin ne Datei die ftpupload oder so heißt:
Code:
#!/bin/sh

#Datum und Zeit
DATUMZEIT=$(/bin/date +'%y%m%d%H%M')

# Name der Backup-Datei
BACKUP_FILE="fullbackup$DATUMZEIT.tar.gz"

# temporaerer Speicherort des Backup-Archivs
BACKUP_TMP="/home/backup/"

# kompletter Pfad zum Backup
BACKUP=${BACKUP_TMP}${BACKUP_FILE}

# Verzeichnisse die gesichert werden sollen
BACKUP_DATA="/bin /boot /etc  /home/ftp /home/httpd /                                                                             home/psa /lib /lost+found /mnt /opt /root /sbin /srv /sys /tmp /usr /var"

# Hostname des Backup-Servers
BACKUP_SERVER="FTP-SERVER"

# alte UMASK sichern
UMASK=`umask`

umask 0077
tar --exclude=${BACKUP} -czf ${BACKUP} ${BACKUP_DATA} 2>/dev/null
echo "\$ backup ${BACKUP} ${BACKUP_FILE}" | pftp ${BACKUP_SERVER} >/dev/null
rm -f ${BACKUP}
umask ${UMASK}
DATUMZEIT1=$(/bin/date +'%e.%m.%y %H:%M')
echo "$DATUMZEIT1 - vollstaendiges Backup

Server: $BACKUP_SERVER
Dateiname: $BACKUP_FILE

$BACKUP_DATA" | mail -s "vollstaendiges Backup - $DATUMZEIT1" USER@HOST.TLD
Da kannst es eigentl. rauslesen (echo "\$ backup ${BACKUP} ${BACKUP_FILE}" | pftp ${BACKUP_SERVER} >/dev/null)!

Hoffe es hat dir geholfen!

Gruß Basit
 

Ingo

New Member
AW: ftp Konfiguration

Hi Basti!

Wow, Danke erst mal für die Mühe.
Ich werde es am Wochenende gleich mal probieren. Bin die Woche über leider nict dazu gekommen.

Und danke für das Kommentrieren des Skripts - kann aber sein dass ich trotzdem nochmal nachfragen muss. Will ja schliesslich was dabei lernen :)

Grüße,
Ingo
 

Ingo

New Member
AW: ftp Konfiguration

Cool,
habs hinbekommen - sogar als Einzeiler. Das mit echo und der Pipe funktioniert super!

echo "put /Path/LocalFile RemoteFile" | ftp Server

Gibt das eigentlich einen Unterschied zwischen ftp und pftp wie es im Skript oben verwendet wird?

Danke!

Gruss
Ingo
 

Basti

New Member
AW: ftp Konfiguration

hi,

das pftp ist halt auch n Konsolen FTP-Client! Ob es einen direkten Untschied gibt möchte ich bezweifeln, lasse mich aber gern von etwas anderem überzeugen :rolleyes:
 
Status
Für weitere Antworten geschlossen.
Oben