[Précédent (date)] [Suivant (date)] [Précédent (sujet)] [Suivant (sujet)] [Index par date] [Index par sujet]
Re: FTP en auto
- To:
- Subject: Re: FTP en auto
- From: "Gilles J. Seguin" <>
- Date: Fri, 08 Aug 2003 11:41:15 -0400
-
Newsgroups: qc.comp.os.linux.aide
Nicolas Couture wrote:
>
> On Wed, 2003-08-06 at 06:02, Patrick Van Hoof wrote:
> > Bonjour,
> >
> > Je désire utiliser une tâche que je vais mettre dans le cron pour faire les
> > jobs suivants.
> >
> > Sauvegarde de fichiers des bases MYSQL dans un répertoire temporaire
> > Sauvegarde du répertoire HOME dans un répertoire temporaire
> > Envoi en ftp de ces fichiers sur un autre serveur
> >
> > Le tout automatique bien sûr
> >
> > Pour créer les fichiers temporaires, aucun problème.
> > J'ai créé un /var/mybackup et je compresse tout cela avec tar
> >
> > Le problème vient du transfert FTP, j'ai créé un petit fichier avec les
> > commandes suivantes.
> >
> > ftp -n xxx.xxx.xxx.xxx << end
> > us login password
> > bin
> > put /tmp/mybackup/mysql1.tar.gz
> > bye
> >
> > Soit je recois un "acces denied" même d'ailleurs si pour mon test j'ai aussi
> > essayé un fichier dans un des répertoires du home, et sinon je recois un
> > bad command" ???
> Tu peux aussi utiliser expect ( http://expect.nist.gov ) pour
> automatiser un transfer ftp.
#!/usr/bin/expect --
# connect to ftp site
if { [llength $argv] == 0} {
puts "usage: eftp \[ftp.crc.ca | ftp.muug.mb.ca]"
exit 1
}
spawn ftp $argv
expect {
"Name (" {
expect "):"
send "ftp\n"
expect "Password:"
send "[email protected]\n"
expect {
"530 Login incorrect." {
expect "ftp> "
send "bye\n"
expect "221 Goodbye."
} "230 Guest login" {
expect "ftp> "
if { $args == "ftp.crc.ca" } {
send "cd
/systems/linux/redhat/ftp.redhat.com/linux/rawhide/i386/RedHat/RPMS\n"
} elseif { $args == "ftp.muug.mb.ca" } {
send "cd /pub/mirrors/linux/redhat/rawhide/i386/RedHat/RPMS"
}
# send "reget python-2.2-6.i386.rpm\n"
expect "ftp> "
interact
}
}
} "ftp: " {
expect "ftp> "
send "bye\n"
expect "221 Goodbye."
}
}