-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Buenas a todos
Estoy haciendo un script para que sincronice dos directorios (un nas de un edificio con otro nas en otro edificio), antes tenia puesto el rsync. Pero se agotaba el tiempo de espera y daba muchos fallos ( la conexión entre nas'es no es muy buena). Así que decidí copiar archivo por archivo ( hago otros backups correctamente de esta forma pero este me da problemas (Por los subdirectorios)) y que enviara correo. Así en caso de fallos se en que punto se quedo y puedo retomarlo. Lo que ocurre es que listo los directorios y los comparo con diff. Pero me he encontrado con muchos subdirectorios y con el modificador -r del diff no me funciona como yo espero. Una alternativa "chunga" seria que me creara un diff por cada subdirectorio, pero no se si el día de mañana habrá nuevos directorios. Así que recurro a la lista a ver si alguien puede ayudarme: ##### #!/bin/bash # guardo el listado de los directorios en ficheros. Navision=`ls -lRth /root/SERVIDORES.54/NAVISION > /tmp/Navision.dir` Navisionbak=`ls -lRth /root/SERVIDORES.61/NAVISION > /tmp/Navisionbak.dir` # Comparo con diff y paso al fichero lo que hay que copiar diff -r /tmp/Navision.dir /tmp/Navisionbak.dir |grep "<" >/tmp/Navision.txt # Limpio el listado para dejar solo el nombre a fin de copiarlo Navisionlimpio=`cat /tmp/Navision.txt | awk {'print $6'} > /tmp/Navisionlimpio.txt` # comparo con diff usando una lista ( lee linea por linea) # Por cada linea del fichero, guarda la hora inicio, guarda el tiempo de ejecucion del comando # copia la cinta correspondiente guardando un log que luego envio por correo y guarda la hora de finalizacion # Navision for fichero in $(cat /tmp/Navisionlimpio.txt) do tiempo=`date > /tmp/Navision.log` /usr/bin/time -p -o /tmp/timeNavision.log echo /root/SERVIDORES.54/NAVISION/$fichero /root/SERVIDORES.61/NAVISION/$fichero > /tmp/Navisioncopias.log tiempo1=`date > /tmp/tiempo1Navision.log` /usr/local/nagios/libexec/correo_entreNASES.pl jmrami...@cosmantenimiento.com done # EOF ##### Todo va bien, menos la parte del "diff -r" Pruebas: srvbacula:~# ls -lRth /root/SERVIDORES.54/NAVISION > /tmp/Navision.dir srvbacula:~# ls -lRth /root/SERVIDORES.61/NAVISION > /tmp/Navisionbak.dir srvbacula:~# diff -r /tmp/Navision.dir /tmp/Navisionbak.dir |grep "<" >/tmp/Navision.txt srvbacula:~# tail -n 10 /tmp/Navision.txt < /root/SERVIDORES.54/NAVISION/Licencias Navision: < -rwxrwxrwx 1 cos root 19K mar 16 2010 PROD_HASTA_ENE_2012.flf < -rwxrwxrwx 1 cos root 24K ene 7 2010 COS_2010_01_07.flf < -rwxrwxrwx 1 cos root 12K ene 7 2010 COS_2010_01_07.txt < /root/SERVIDORES.54/NAVISION/Plantillas: < -rwxrwxrwx 1 cos root 20K may 19 2010 4.DOC < -rwxrwxrwx 1 cos root 20K may 19 2010 3.DOC < -rwxrwxrwx 1 cos root 40K may 11 2010 2.XLS < -rwxrwxrwx 1 cos root 1,5M may 11 2010 1.DOC < -rwxrwxrwx 1 cos root 1,2M may 10 2010 1.PDF Como veis no da la ruta completa, por eso no me va el script. Ejemplo: cp /root/SERVIDORES.54/NAVISION/$fichero /root/SERVIDORES.61/NAVISION/$fichero Pero $fichero es: $fichero=4.DOC En lugar de: $fichero=Plantillas/4.DOC NOTA: por ahora estoy con echo en lugar de cp, para no romper nada. Gracias por leerme hasta aquí y espero haberme explicado correctamente. No soy programado, como se puede ver XD. Lo mismo hay otra forma mejor de hacer lo que quiero, sin usar el rsync. Un saludo - -- "Si los tontos volaran, el cielo se oscurecería" No me envié correos en formatos propietarios http://www.gnu.org/philosophy/no-word-attachments.es.html -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJOz4crAAoJEOWNzQnqy+fzx9MIANlppvSZl78WkV3WP2Tsr+6a eVTo4vYsboaLEN5kf3E7N/T0GKDDnSjTI6G76WPy7bmI+xrLf5dMtiTEyNGpA3+Z MkM5+foDMQNrZT7ll/CiSHfJtxgLaM36yfG+dB7yQbv0kn7BtEzLNqgc7dVSGnMN Df+miqF1d3xuN4/qVUf3gC+bHlCDiWXyInNRvcLe4kwboc+i8YzW55toCExHh+bt jHijvI4fjxAEtKvMBb+R2Bo3bEVphAc7bVyF8ttWSM+kkcGTsvIti7oZWZjx5se1 5igPbyoTDqRdGOXmjpFx9c/xiwdC4/aR3E8pNe1tUKNuL6ufhP3fzMkNAMS3wDs= =sET6 -----END PGP SIGNATURE----- -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/blu0-smtp244290cf97a7c88da326b0fb1...@phx.gbl