Hay un par de diferentes maneras de abordar el problema:
- programas de línea de comandos Wrap
- utilizar una biblioteca de Python que proporciona capacidades de SSH (por ejemplo - Paramiko o Twisted Conch)
Cada enfoque tiene sus propias peculiaridades. Tendrá que configurar las claves SSH para habilitar inicios de sesión sin contraseña si está envolviendo comandos del sistema como "ssh", "scp" o "rsync". Puede insertar una contraseña en un script utilizando Paramiko o alguna otra biblioteca, pero puede encontrar frustrante la falta de documentación, especialmente si no está familiarizado con los conceptos básicos de la conexión SSH (por ejemplo, intercambios de claves, agentes, etc.). Probablemente no hace falta decir que las claves SSH son casi siempre una mejor idea que las contraseñas para este tipo de cosas.
NOTA: es difícil de superar rsync si planea transferir archivos a través de SSH, especialmente si la alternativa es simple viejo scp.
He utilizado Paramiko con miras a reemplazar las llamadas al sistema, pero me encontré de regreso a los comandos envueltos debido a su facilidad de uso y familiaridad inmediata. Usted puede ser diferente. Le di la vuelta a Conch hace algún tiempo pero no me atraía.
Si opta por la ruta de la llamada al sistema, Python ofrece una serie de opciones como os.system o los comandos/subprocesos de los módulos. Iré con el módulo de subproceso si uso la versión 2.4+.
encontrado algo similar, u puede tener una mirada http://stackoverflow.com/questions/11009308/copying-logs-in-python-using-the-command-line-function – JJ84