On 2022-03-08 13:59, karlggest wrote:
Hola.
O luns, 7 de marzo de 2022 21:28:53 CET Carlos E. R. escribiu:
On 2022-03-07 20:19, Ignacio de Juan wrote:
El 7/3/22 a las 19:27, Carlos E. R. escribió:
On 2022-03-07 15:59, Ignacio de Juan wrote:
Hola buenas tardes, estoy intentando hacer una copia de seguridad con "rsync" a un disco duro externo usb 3.0 de dos teras de capacidad. para ello utilizo el siguiente script
Si no tienes mucha experiencia en el uso del terminal, tienes kup y kbackup para estas cosas. Funcionan igual, son fáciles como el mecanismo de un chupete, etc.
Si lo que quieres es aprender algo del terminal, bien:
#!/bin/bash # creamos una variable que contine la fecha y hora de ejecución fecha=`date | awk '{print $1 "_" $2 "_" $3 "_" $4 "_" $6}'`
# ejecutamos la sincronización y guardamos el resultado en un fichero utilizando la variable de antes # para que sea distinto cada vez /usr/bin/rsync -auvh --stats --delete-excluded /home/nacho/abuelos /run/media/nacho/My Passport/Seguridad
Como ves, el que hizo el script te dice "utilizando la variable de antes para que sea distinto cada vez", pero realmente en la línea "que hace las cosas" no se utiliza la variable.
Sin embargo, en mi opinión usar rsync con esa variable no tiene sentido. Rsync copia los ficheros nuevos o que hayan sido modificados desde la última vez. Así que yo borraría eso de fecha...
Yo lo usaría con --link-dest=backup_anterior, pero eso se vuelve más complicado el script. Es posible que el autor lo haga así en su ordenador pero lo haya simplificado para Ignacio, y no haya borrado la linea de creación de la variable.
Si lo que quieres es tener carpetas con la fecha de cada copiado, supongo que podrías hacer algo como
mkdir /run/media/nacho/My\ Passport/Seguridad/$fecha
Antes de la copia y después de lo de fecha=...
Yo la fecha la creo en formato iso (date --iso), no necesito usar awk para eso.
No veo que el script use la variable "fecha" que has creado.
Pues bien, yo se poco de esto, el script me lo paso mi hermano que sabe un poco mas, tampoco se para que, lo hace, funciona y para mi es suficiente, a lo mejor si quito lo de la variable sigue funcionando.....
y esta es la respuesta que obtengo
nacho@localhost:~/perl> perl copia2
¿Que pinta aquí el perl? El script que has puesto arriba es de bash.
Tampoco lo se, la cuestion es que si en una ventana de Konsole tecleo solamente "copia2" no hace nada, pero si lo hago "perl copia2" hace lo que quiero que haga.....
Yo lo uso con "tareas progamadas" y si en la orden del programa no pongo "perl" no funciona......
Pff... No le has dado permiso de ejecución al script.
O dicho de otra forma, puedes ejecutarlo poniendo sh (bash) en lugar de perl. Lo suyo con las cosas que funcionan es darles permisos de ejecución y ponerlos en un lugar adecuado.
Correcto :-) Yo a veces no le doy permiso de ejecución al script para no activarlo accidentalmente al ver el directorio con un manejador de ficheros como mc. -- Cheers / Saludos, Carlos E. R. (from 15.3 x86_64 at Telcontar)