I'm lookign for a way to create backups from several databases and send result files to server in Debian Linux 6 (Sqeeze) from crontab job There are databases named database1 .. database4 Backup from every db shoudl created and sent using ftp
I tried script below, but send.sh script does not finis automatically: it must terminated by keyboard. How to fix ? How to make script shorter?
Crontab script:
#!/bin/sh
PGUSER=postgres
PGPASSWORD=mymass
export PGUSER PGPASSWORD
backupdir=/root/mybackups
backupdate=$(date +%u)
baas=database1
export baas backupdate
fail=${backupdir}/${baas}${backupdate}.backup
pg_dump -U postgres ${baas} -f ${fail}
./saada.sh
baas=database2
export baas backupdate
fail=${backupdir}/${baas}${backupdate}.backup
pg_dump -U postgres ${baas} -f ${fail}
./saada.sh
baas=database3
export baas backupdate
fail=${backupdir}/${baas}${backupdate}.backup
pg_dump -U postgres ${baas} -f ${fail}
./saada.sh
baas=database4
export baas backupdate
fail=${backupdir}/${baas}${backupdate}.backup
pg_dump -U postgres ${baas} -f ${fail}
./saada.sh
sending which does not exit saada.sh is
#!/bin/sh
/usr/bin/ftp -inp <<EOF
open mybackupsite.com
user backupuser pass
bin
lcd /root/eeva-backups
delete "${baas}*.backup"
put "${baas}${backupdate}.backup"
bye
#reset PGUSER and PGPASSWORD
#PGUSER=""
#PGPASSWORD=""
#export PGUSER PGPASSWORD
#End
#exit 0
EOF