Ok, gracias por el dato. Comparto un script para copiar por FTP o SSH el backup. Se copia luego de las líneas que envié anteriormente.
Programas necesarios: NCFTP TAR MAIL SCP ########################################### ################# Script #################### ########################################### METHOD="ftp" METHOD="ssh" # Servidor FTP SERVER="170.220.1.88" #### # Directorio a realizar backup B_DIRECTORY="/var/www/backup/" #### # Usuario del FTP USER_NAME="usuario" #### # Clave del FTP SECRET="clave" #### # Directorio remoto del FTP R_DIRECTORY="/backup/posgresql" #### # E-Mail ADMIN_EMAIL="m...@gmail.com" #### # Puerto FTP FTP_PORT=21 #### # Puerto SSH SSH_PORT=22 #### # Ubicacion de las aplicaciones de comandos NCFTPPUT="/usr/bin/ncftpput" TAR="/bin/tar" MAIL="/usr/bin/mail" SCP="/usr/bin/scp" ######################################### # Programa ######################################### FILE="backup.$(date +"%y-%m-%d").tar.gz" OUTDIR="/home//backup" FILE_TO_GO="$OUTDIR/$FILE" EMAIL_FILE="$OUTDIR/email.txt" $TAR -zcf $FILE_TO_GO $B_DIRECTORY if [ $METHOD = "ftp" ] then $NCFTPPUT -m -z -u "$USER_NAME" -p "$SECRET" -P "$FTP_PORT" "$SERVER" "$R_DIRECTORY" "$FILE_TO_GO" EXIT_V="$?" case $EXIT_V in 0) O="Success.";; 1) O="Could not connect to remote host.";; 2) O="Could not connect to remote host - timed out.";; 3) O="Transfer failed.";; 4) O="Transfer failed - timed out.";; 5) O="Directory change failed.";; 6) O="Directory change failed - timed out.";; 7) O="Malformed URL.";; 8) O="Usage error.";; 9) O="Error in login configuration file.";; 10) O="Library initialization failed.";; 11) O="Session initialization failed.";; esac else $SCP "$FILE_TO_GO" "$USER_NAME"@"$SERVER":/"$R_DIRECTORY" EXIT_V="$?" case $EXIT_V in 0) O="Success";; 1) O="Error";; esac fi touch $EMAIL_FILE echo "Backup result = $O" >> $EMAIL_FILE echo "Date $(date)" >> $EMAIL_FILE $MAIL -s "$(hostname) Backup" $ADMIN_EMAIL < $EMAIL_FILE rm -f $FILE_TO_GO rm -f $EMAIL_FILE ############################################ #############Fin script ######################## ############################################ 2012/1/25 Lazaro Rubén García Martinez <lgarc...@vnz.uci.cu> > No es necesario que reinicies el servicio.**** > > ** ** > > Saludos.**** > > ** ** > > *De:* pgsql-es-ayuda-ow...@postgresql.org [mailto: > pgsql-es-ayuda-ow...@postgresql.org] *En nombre de *Benjamín Garzón > *Enviado el:* miércoles, 25 de enero de 2012 09:25:AM > *Para:* Martín Marqués > *CC:* pgsql-es-ayuda > *Asunto:* [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Backup automático > Postgresql 8.4**** > > ** ** > > Estimados, muchas gracias por la ayuda!!!**** > > ** ** > > Les comento que lo solucione al tema del bkp con este script: **** > > ** ** > > ** ** > > *Reemplazar lo marcado en rojo con los datos que correspondan!!!***** > > ** ** > > # Hace Backup de producción, poniendo como nombre la fecha del día que se > ejecuta > export FECHA=`date +%Y%m%d` > export NAME=${FECHA}.dmp > export DIR=/opt/backup > cd $DIR > > ${NAME} > # chmod 777 ${NAME} > export PGPASSWORD=<em>password_db_user</em> > vacuumdb -U <em>db_user</em> -h localhost -d <em>database_name</em> -f -z > -v > pg_dump -U<em> db_user</em> -h localhost -F c -b -v -f > ${NAME}<em>database_name</em> > return_code=$? > if [ $return_code -ne 0 ] > then > echo 'Error en el backup. Compruebe: usuario y permisos' > else > gzip -f *.dmp > echo 'Backup realizado correctamente. Archivo' ${DIR}/${NAME}.gz > fi > echo ${FECHA} ' Reiniciando la base de datos'**** > > > *No se si es necesario reiniciar el posgres, pero en el ejemplo esta asi** > *** > > /etc/init.d/postgresql-8.4 stop > /etc/init.d/postgresql-8.4 start **** > > ** ** > > Saludos y nuevamente gracias a todos!!!**** > > ** ** > > ** ** > > 2012/1/24 Martín Marqués <martin.marq...@gmail.com>**** > > Primero, responde a la lista por favor. > > Puede que estes tratando de conectarte con el usuario root a la base > de datos? No es una buena idea. > > Suponiendo que es asi como lo hacen y eso no se discute, el comando > pg_dump, ¿lo ejecuta root? > > El día 24 de enero de 2012 12:26, Benjamín Garzón > <benjagar...@gmail.com> escribió:**** > > > Martìn, muchas gracias por la pronta respuesta. > > Te cuento que acabo de probar con la opción que mencionas. > > > > Hice esto: > > > > Cree el archivo .pgpass en /root > > > > Pegué esto adentro > > > > echo "192.168.0.13:5432:base_test:usuario_test:clave_test" >> ~/.pgpass > > # echo"IP_SERVIDOR:PUERTO:DATABASE:USERNAME:PASSWORD >> ~/.pgpass > > > > Después, cree un bkp.shy le di permisos de ejecución: > > > > pg_dump -i -h 192.168.0.13 -p 5432 -U usuario_test -F c -b -v -f > > "/root/mibase.backup" base_test > > > > Pero me sigue pidiendo el password. > > > > > > Al ejemplo lo saque de : > > > > > http://www.damianculotta.com.ar/2008/08/26/automatizar-backups-de-postgresql/ > > > > Se te ocurre que puede estar fallando? Muchas gracias!!! > > > > > > 2012/1/24 Martín Marqués <martin.marq...@gmail.com> > >> > >> Pone la contraseña en el archivo .pgpass y ya no te la va a pedir mas. > >> > >> Sino, tendrias que usar algo como expect o pasar la passwd en el > >> comando de pg_dump. > >> > >> Yo prefiero lo primero: usar el .pgpass > >> > >> El día 24 de enero de 2012 11:57, Benjamín Garzón > >> <benjagar...@gmail.com> escribió: > >> > Estimados, buen día. Estoy intentando hacer un script .sh para hacer > >> > backups automáticos de una base que tengo en postgresql y no he > llegado > >> > a > >> > buen rumbo, alguien tiene algún ejemplo? > >> > El problema es que me pide el password de la base y no > acepta vía script > >> > el envió del password. > >> > Les agradezco si me pueden dar una mano. > >> > Muchas gracias! > >> > > >> > -- > >> > Benjamín Garzón > >> > >> > >> > >> -- > >> Martín Marqués > >> select 'martin.marques' || '@' || 'gmail.com' > >> DBA, Programador, Administrador > > > > > > > > > > -- > > Benjamín Garzón > > > > -- > Martín Marqués > select 'martin.marques' || '@' || 'gmail.com' > DBA, Programador, Administrador**** > > > > **** > > ** ** > > -- > Benjamín Garzón**** > -- Benjamín Garzón