zoukankan      html  css  js  c++  java
  • python连接服务器上传文件,后台执行命令

    上传文件

    import os

    import paramiko
    import logging

    from django.core.cache import cache

    from YunTai import settings


    def upload_files(connectIp): ssh = paramiko.Transport((connectIp, 22)) try: password = cache.get('backup_server_password') if not password: return False ssh.connect(username="root", password=password) sftp = paramiko.SFTPClient.from_transport(ssh) localfile = os.path.join(settings.BASE_DIR, 'media/authFile/dr_server') print(localfile) sftp.put(localfile, "/root/dr_server") except Exception as e: return False print("上传") ssh.close() return True

    后台执行命令
    def handle_server(connectIp):
    cmd = '''
    cd /root/dr;
    mkdir old;
    killall dr_server;
    ls;
    ls;
    cd ..;
    cd -;
    mv -f dr_server old;
    mv ../dr_server .;
    chmod 777 dr_server;
    ./dr_start.sh;
    '''

    try:
    server_data = cache.get('server_data')
    if not server_data:
    return False
    connectIp = server_data.get('server_ip')
    password = server_data.get('password')
    cache.delete('server_data')
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(connectIp, 22, 'root', password, timeout=60)
    stdin, stdout, stderr = client.exec_command('nohup /root/dr/handle_server/update_server.sh > /dev/null 2>&1 &')
    client.close()
    return True
    except Exception as e:
    print(e)
    logger.error(e)
    return False
  • 相关阅读:
    vs2010 项目生成成功,发布失败
    net导出到excel数字变为科学技术法
    vba 2-6位随机大小写字母
    vba 延时
    foxmail错误信息:501 请登录exmail.qq.com修改密码
    电脑开机出现C:WindowsSystem32driversfs_rec.sys
    向txt中插入一行数据
    定时关机
    ASCII码
    C# 事件与继承
  • 原文地址:https://www.cnblogs.com/majianyu/p/10559081.html
Copyright © 2011-2022 走看看