python 远程操作ubuntu

原创 2015年11月18日 14:47:40

这里我们用到了paramiko库,

paramiko依赖于PyCrypto库,咱们先安装这两个库

===安装PyCrypto:===
下载PyCrypto, 地址是[[https://www.dlitz.net/software/pycrypto/|https://www.dlitz.net/software/pycrypto/]]
==安装==
解压缩,然后在dos下进入解压缩的目录,运行
  C:\python\python.exe setup.py build
  C:\python\python.exe setup.py install
==安装测试==
运行python.exe,在提示符下输入:
  import  Crypto
如果没有出现错误提示,说明Crypto安装成功
===安装paramiko===
下载paramiko,地址是[[http://www.lag.net/paramiko/|http://www.lag.net/paramiko/]]
==安装==
解压缩,在dos下进 入解压缩的目录,运行
  C:\python\python.exe setup.py build
  C:\python\python.exe setup.py install
==测试paramiko==
运行python.exe,在提示符下输入:
  import  paramiko
如果没有出现错误提示,说明paramiko安装成功


现在安装成功了来看看使用吧

import paramiko

#建立连接
ssh = paramiko.SSHClient()
#缺失host_knows时的处理方法
ssh.set_missing_host_key_policy( paramiko.AutoAddPolicy() )
#连接远程服务服务器(ip, 端口, 用户, 密码, 连接超时)
ssh.connect( ip, port, username, password, timeout=5)

我们执行一个简单的命令测试一下

cmd = 'ls'

#返回参数为输入、输出、错误

stdin, stdout, stderr = ssh.exec_command( cmd )

#如我们把输出打印出来

for out in stdout.readlines():
            if self.serverPath in out:
                self.oState.runState = RunState.run
                break

#测试完成还有最后记得关闭连接

ssh.close()


接下来介绍它的文件传输

先看示例

#连接远程服务服务器

 t=paramiko.Transport(( ip, port ))
t.connect( username=username, password=password )
#通道
sftp=paramiko.SFTPClient.from_transport(t)

#创建目录path是全路径

sftp.mkdir( path )

#上传文件path1是本地路径path2是远程路径

sftp.put( path1, path2 )

#下载文件path1是远程路径path2是本地路径

sftp.get( path1, path2 )

#最后关闭连接

t.close()

使用python远程操作linux服务器

摘要 功能:实现同时对多台linux服务器通过ssh执行同一命令。 技术基础: python pexpect,部支持windows。 目录[-] 概述 主脚本 ssh ...
  • u010781856
  • u010781856
  • 2015年07月23日 10:35
  • 1774

在Ubuntu 12.04上安装GNOME实现XRDP远程桌面访问ubuntu

为了解决Windows远程桌面访问Ubuntu 12.04 之一 中提到的VNC远程桌面的缺点(见http://www.linuxidc.com/Linux/2012-07/64801.htm),我们...
  • tarim
  • tarim
  • 2013年10月19日 04:25
  • 3764

Linux远程连接图形界面的几种方法

1,利用Xmanager,linux启用XDMCP协议(可直接修改配置文件,也可以采用在Xshell中运行gdmconfig或gdmsetup,选择XDMCP选项卡,勾选启动XDMCP即可),Xbro...
  • jlds123
  • jlds123
  • 2013年09月04日 14:20
  • 51006

总结一下linux远程控制方法

Linux 远程登录 Linux一般作为服务器使用,而服务器一般放在机房,你不可能在机房操作你的Linux服务器。 这时我们就需要远程登录到Linux服务器来管理维护系统。 Linu...
  • kingmax54212008
  • kingmax54212008
  • 2017年01月04日 09:14
  • 3336

python操作hbase 远程连接

更多内容请访问我的个人博客 目的 用python操作hbase。 这里是在linux上搭建的是一个测试环境,所以hbase是单机版本安装,安装thrift是为了支持python操作hbase。 ...
  • TENLIU2099
  • TENLIU2099
  • 2017年10月19日 20:14
  • 746

初学python:Ubuntu安装一个可视编程IDE

Ubuntu 下python可视化变成环境spyder安装和代码小试     对于初学linux的很多同学来说,命令行运行程序不是很习惯,很多教程安装eclipse,个人也安装过,但是配置很繁琐,...
  • u011507206
  • u011507206
  • 2017年02月28日 22:11
  • 5902

Linux下查看/管理当前登录用户及用户操作历史记录

转载自:http://www.cnblogs.com/gaojun/archive/2013/10/24/3385885.html  一、查看及管理当前登录用户 1、使用w命令查看登录用户...
  • guiziwen
  • guiziwen
  • 2017年01月17日 15:05
  • 2267

Ubuntu下Python建立和连接数据库

root@ubuntu:~# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; ...
  • wuxiaobingandbob
  • wuxiaobingandbob
  • 2015年06月26日 09:23
  • 604

Python中SQLite支持数据库远程访问吗?

qlite应该是只是一个本地文件,API放在各个语言的开发包里了,它本身不具备C/S的网络功能。 见官方文档: “ If you have many client programs accessing...
  • mydriverc2
  • mydriverc2
  • 2016年03月24日 17:00
  • 1547

如何远程界面登陆Ubuntu

一般公司里都用服务器+git代码管理,git命令查看修改记录很费劲,特别是一次性提交很多修改时;gitk查看修改记录很好用,但是必须界面登陆服务器才可以。下面就记录一下如何远程界面登陆Ubuntu,一...
  • wszonline
  • wszonline
  • 2017年03月06日 17:28
  • 889
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python 远程操作ubuntu
举报原因:
原因补充:

(最多只允许输入30个字)