python 切换root 执行命令的方法


Posted in Python onJanuary 19, 2019

如下,以创建系统用户举例,

配置文件配置普通用户信息,登入后切换root用户,创建一个指定名字和密码的系统用户:

def create_user(root_pwd,username,password):
  import paramiko
  result = []
  ssh = paramiko.SSHClient()
  #把要连接的机器添加到known_hosts文件中
  ssh.load_system_host_keys()
  ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  ssh.connect(
       hostname = settings.HOST,
       port = settings.PORT,
       username = settings.USERNAME,
       password = settings.PASSWORD,
       timeout = 60,
     )
  sc = ssh.invoke_shell()
 
  def exe_cmd(cmd,t=0.1):
    sc.send(cmd)
    sc.send("\n")
    time.sleep(t)
    resp = sc.recv(9999).decode("utf8")
    #print "cmd='%s',echo='%s'\n"%(cmd,resp)
    return resp
  
  #切换root账号
  resp = exe_cmd("su root",t=1)
  if resp.endswith(u"密码:"):
    resp = exe_cmd(root_pwd)
  
  #创建用户
  cmd_create_user = "useradd {username} -d /home/{username}".format(
    username = username,
  )
  exe_cmd(cmd_create_user)
 
  #修改密码
  cmd_change_user_pwd = """echo "{password}" | passwd --stdin {username}""".format(
    username = username,
    password = password,
  )
  exe_cmd(cmd_change_user_pwd)

以上这篇python 切换root 执行命令的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 Python
Python实现Logger打印功能的方法详解
Sep 01 Python
Django使用HttpResponse返回图片并显示的方法
May 22 Python
python如何创建TCP服务端和客户端
Aug 26 Python
python实现DEM数据的阴影生成的方法
Jul 23 Python
简单易懂Pytorch实战实例VGG深度网络
Aug 27 Python
python中struct模块之字节型数据的处理方法
Aug 27 Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 Python
Python matplotlib 绘制双Y轴曲线图的示例代码
Jun 12 Python
基于django2.2连oracle11g解决版本冲突的问题
Jul 02 Python
python 贪心算法的实现
Sep 18 Python
Django扫码抽奖平台的配置过程详解
Jan 14 Python
在Python 不同级目录之间模块的调用方法
Jan 19 #Python
python导入模块交叉引用的方法
Jan 19 #Python
python添加模块搜索路径和包的导入方法
Jan 19 #Python
python引用(import)某个模块提示没找到对应模块的解决方法
Jan 19 #Python
解决Python 命令行执行脚本时,提示导入的包找不到的问题
Jan 19 #Python
在pycharm 中添加运行参数的操作方法
Jan 19 #Python
解决项目pycharm能运行,在终端却无法运行的问题
Jan 19 #Python
You might like
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
PHP目录函数实现创建、读取目录教程实例
2011/01/13 PHP
php中如何防止表单的重复提交
2013/08/02 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
2019/12/12 PHP
当前流行的JavaScript代码风格指南
2014/09/10 Javascript
node.js中的fs.rename方法使用说明
2014/12/16 Javascript
浅谈轻量级js模板引擎simplite
2015/02/13 Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
2015/10/01 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
2016/04/11 Javascript
多种jQuery绑定事件的实现方式
2016/06/13 Javascript
js选项卡的制作方法
2017/01/23 Javascript
Bootstrap框架建立树形菜单(Tree)的实例代码
2017/10/30 Javascript
Vue $mount实战之实现消息弹窗组件
2019/04/22 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
[01:37]DOTA2超级联赛专访ChuaN 传奇般的电竞之路
2013/06/19 DOTA
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
2017/07/27 Python
python实现旋转和水平翻转的方法
2018/10/25 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
python如何实现数据的线性拟合
2019/07/19 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
python框架flask入门之路由及简单实现方法
2020/06/07 Python
完美解决keras 读取多个hdf5文件进行训练的问题
2020/07/01 Python
Matplotlib中%matplotlib inline如何使用
2020/07/28 Python
船餐厅和泰晤士河餐饮游轮:Bateaux London
2018/03/19 全球购物
介绍下static、final、abstract区别
2015/01/30 面试题
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
小区门卫管理制度
2014/01/29 职场文书
副科竞争上岗演讲稿
2014/05/12 职场文书
机电一体化应届生求职信
2014/08/09 职场文书
教师党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
预备党员介绍人意见
2015/06/01 职场文书
pytorch MSELoss计算平均的实现方法
2021/05/12 Python
Python答题卡识别并给出分数的实现代码
2021/06/22 Python
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技