IOError: [Errno 2] No existe tal archivo - Paramiko put ()

Estoy cargando un archivo a través de SFTP usandoParamiko consftp.put(localFile, remoteFile). Hago el directorio necesario primero si es necesario con

    makeCommand = 'mkdir -p "' + remotePath + '"'
    ssh.exec_command(makeCommand)

esto funcionaba a veces, pero ocasionalmente recibía el siguiente error:

    sftp.put(localFile, remoteFile)
    File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 565, in put
    File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 245, in open
    File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 635, in _request
    File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 682, in _read_response
    File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 708, in _convert_status
    IOError: [Errno 2] No such file 

a pesar del hecho de que el archivo local definitivamente existe (ylocalFile es la ruta correcta hacia ella) y se crea la ruta remota. Hay discusiónaquí yaquí en un problema similar, pero ninguno de los puntos planteados allí me han ayudado. Mi servidor soporta eldf -hi mando. ¿Alguien tiene algún consejo sobre esta o una posible solución?

EDITAR

Después de las sugerencias a continuación, he intentado cambiar el directorio de trabajo consftp.chdir(remoteDirectory) pero esta llamada produjo el mismo error que el anterior. Así que parece que esto no es sólo un problema de carga. ¿Algunas ideas?

Respuestas a la pregunta(3)

Su respuesta a la pregunta