¿Quiero iniciar varias sesiones de rsync a través de la pantalla en modo independiente? ¿Es posible? Necesito ejecutar el script rsync para cada archivo en la carpeta.
screen -t -d sshpass -p 123456 rsync5 rsync -avzP /home/vagrant/test_folder/ [email protected]:/home/user/test_folder/
pero regresaDebe estar conectado a un terminal..
Respuesta1
Entonces, si necesita iniciar varias sesiones de rsync, pruebe la siguiente solución:
#!/bin/bash
# paths for rsync in "/folder/folder/folder" format
export SRCDIR="$1"
export DESTDIR="$2"
# Number of threads for xargs
export THREADS="20"
cd $SRCDIR; find . ! -type d -print0 | xargs -0 -n1 -P$THREADS -I% rsync -az % 1.1.1.1:/$DESTDIR/%
Si usa autenticación de clave, puede usar ssh-agent para automatizar el ingreso de una frase de contraseña para su clave.
ssh-agent bash
ssh-add /home/username/.ssh/id_rsa
Enter passphrase for /home/username/.ssh/id_rsa:
Identity added: /home/username/.ssh/id_rsa (/home/username/.ssh/id_rsa)
Enlaces: