Quiero sincronizar Server1y Server2los registros de LogServer.
Para Server1:
rsync -avz -e 'ssh -p 2188' user@server1:/usr/local/servers/logs/* /usr/local/logs/
Este funciona, pero para Server2:
rsync -avz -e 'ssh -p 2188' user@server2:/usr/local/servers/logs/* /usr/local/logs/
Falla:
shell-init: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory
rsync: getcwd(): No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at util.c(992) [sender=3.0.6]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [receiver=3.0.6]
Ambos Server1y Server2está alojado en Amazon con la misma versión de rsync.
Estoy bastante seguro de que cada directorio en el comando existe. ¿Como puedó resolver esté problema?
ACTUALIZACIÓN: Lo he intentado ssh -p 2188 user@server2 pwdy no funciona:
shell-init: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: no such file or directory
Captura de pantalla


ls -R /usr/local/serversfunciona sin ningún error?Respuestas:
Tuve exactamente el mismo problema, y mi solución fue algo en lo que nunca había pensado. En mi caso
rsyncfuncionó bien todo el tiempo hasta que se detuvo durante algunas pruebas después de los cambios en uno de mis scripts. El culpable fue que mi usuario de UNIX actualmente conectado estaba en una carpeta inexistente que ya había sido eliminada por un script.El
getcwd(): No such file or directory (2)mensaje de error estaba relacionado$PWD, no con el origen ni con el destino.Simplemente cambie la carpeta a una existente (p. Ej.
cd ~) Y vuelva a ejecutar el script. No olvides alterar losrsynccaminos si aún no son absolutos.fuente