日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

通過python 執行 nohup 不生效的解決

瀏覽:171日期:2022-07-29 17:09:07

通過paramiko模塊ssh登錄linux,然后用exec_command方法執行帶有nohup的shell命令不生效,python腳本如下:

import paramikoimport time ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh.connect(’192.168.1.2’, 22, ’root’, ’123456’)ssh.exec_command(’nohup ping localhost & n’)time.sleep(1)

腳本執行完之后ping進程并沒有繼續運行,這可能是因為exec_command執行完之后立刻關閉通道的原因,換用invoke_shell可以正常運行:

import paramikoimport time ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh.connect(’192.168.1.2’, 22, ’root’, ’123456’)chan = ssh.invoke_shell()chan.send(’nohup ping localhost & n’)time.sleep(1)

注意,命令最后的回車n和延時必不可少

補充知識:paramiko遠程服務器nohup阻塞問題

一、需求描述:

需要來回切換多臺服務器(腳本命令不太熟),就用了python的paramiko模塊進行遠程連接服務器,控制程序的停止和啟動。安裝:pip install paramiko

二、問題描述:

import paramiko # 創建SSH對象ssh = paramiko.SSHClient()# 允許連接不在know_hosts文件中的主機ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 連接服務器ssh.connect(hostname=’192.168.0.3’, port=22, username=’xxx’)# 執行命令stdin, stdout, stderr = ssh.exec_command(’cd ~/ ; nohup python3.6 run_test.py > nohup_test.log 2>&1 &’)# 獲取命令結果result = stdout.read()# 關閉連接ssh.close()

這樣連接服務器的時候確實可以執行,但是遇到會阻塞的任務時,就無法生效,找了很多方法,最后發現這個比較有效。

三、解決方法

import paramiko # 創建SSH對象ssh = paramiko.SSHClient()# 允許連接不在know_hosts文件中的主機ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 連接服務器ssh.connect(hostname=’192.168.0.3’, port=22, username=’xxx’, key=private_key)# 添加下面代碼transport = ssh.get_transport()channel = transport.open_session()# 執行命令 此方法沒有返回值channel.exec_command(’cd ~/ ; nohup python3.6 run_test.py > nohup_test.log 2>&1 &’) # 關閉連接ssh.close()

四、類的調用實現:

簡單測試,見下面代碼

# -*- coding: utf-8 -*-'''20190330''' import paramikoimport timefrom confs.log import logger # 自行導入logging模塊即可 class EasyConnectHandle(object): '''操作遠程服務器''' def __init__(self, connect_host_name:dict): '''初始化參數''' ''' 'test':{'ip':'192.168.0.189','user_name':'xxxx','pwd':'huhuhu' }, ''' self.connect_host = connect_host_name self.ssh = paramiko.SSHClient() self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 允許連接陌生服務器 self.ssh.connect(hostname=self.connect_host['ip'], port=22, username=self.connect_host['user_name'], password=self.connect_host['pwd'], timeout=10) # 初始化的時候連接到新的服務器 logger.info(f'登錄服務器---{self.connect_host[’ip’]}成功:') def __new__(cls, *args, **kwargs): '''單例模式''' if not hasattr(cls, ’_instance’): cls._instance = super(EasyConnectHandle, cls).__new__(cls) return cls._instance def exec(self, cmd=''): '''執行操作''' stdin, stdout, stderr = self.ssh.exec_command(cmd) return stdout.read().decode() def quit(self): '''斷開服務器''' self.ssh.close() logger.info(f'退出服務器---{self.connect_host[’ip’]}成功') if __name__ == ’__main__’: test_host = { 'test': {'ip': '192.168.0.111','user_name': 'xxxx','pwd': 'xxxx','jobs': [ { 'path': '/home/lemon', 'type': 'touch test_1.sh' }, { 'path': '/home/lemon', 'type': 'touch test_2.sh' }] } } for i in ['test']: easy_conn = EasyConnectHandle(test_host[i]) transport = easy_conn.ssh.get_transport() if len(test_host[i].get('jobs', [])) >= 1: for job in test_host[i]['jobs']:channel = transport.open_session()channel.exec_command(f'cd {job[’path’]};{job[’type’]}')logger.info(f'服務器---{easy_conn.connect_host[’ip’]}執行---cd {job[’path’]};{job[’type’]}---成功')time.sleep(2) else: logger.info(f'服務器---{easy_conn.connect_host[’ip’]}暫時沒有任務') easy_conn.quit()

以上這篇通過python 執行 nohup 不生效的解決就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩高清成人| 99在线精品免费视频九九视| 美女网站一区| 999国产精品999久久久久久| 精品欧美视频| 精精国产xxxx视频在线播放| 精品国产欧美日韩一区二区三区| 日本午夜精品久久久久| 久久精品国产福利| 国产精品1区在线| 丝瓜av网站精品一区二区| 亚洲一级大片| 午夜av一区| 欧美午夜不卡| 亚洲综合专区| 91亚洲精品视频在线观看| 国产精品成人一区二区网站软件| 久久福利在线| 国产一区2区| 国产字幕视频一区二区| 91久久久精品国产| 老牛国产精品一区的观看方式| 日韩超碰人人爽人人做人人添| 国产亚洲欧美日韩在线观看一区二区| 婷婷综合电影| 中文在线资源| caoporn视频在线| 精品国产麻豆| 女主播福利一区| 免费成人在线观看| 在线一区二区三区视频| 日韩毛片网站| 黑人精品一区| 一区在线视频观看| 欧美特黄a级高清免费大片a级| 亚洲一区二区三区无吗| 欧美专区一区| 激情婷婷久久| 亚洲青青久久| 国产精品xxx在线观看| 日韩成人高清| 日韩精品一二区| 美女国产一区| 国产一区二区三区四区五区 | 亚洲免费中文| 久久精品二区亚洲w码| 福利精品在线| 国产精品免费看| 精品国产a一区二区三区v免费| 亚洲日本网址| 日本不卡视频在线| 久久久水蜜桃av免费网站| 国产精品视区| 日韩不卡手机在线v区| sm捆绑调教国产免费网站在线观看 | 免费一区二区视频| 国产伦理一区| 亚洲视频电影在线| 免费日韩一区二区三区| 亚洲福利一区| 精品视频在线观看网站| 午夜电影亚洲| 国产精品资源| 四虎精品永久免费| 日韩精品dvd| 欧美精品一卡| 风间由美中文字幕在线看视频国产欧美| 日韩成人精品一区| 免费国产自久久久久三四区久久 | 国产精品一在线观看| 亚洲成人精品| 国产精品亚洲产品| 日韩一区网站| 99视频精品全国免费| 久久亚洲欧洲| 日韩视频久久| 老牛影视精品| 国产一区2区| 91精品国产自产精品男人的天堂| 午夜日韩在线| 亚洲va中文在线播放免费| 四虎国产精品免费久久| 亚洲a一区二区三区| 久久精品国产精品亚洲毛片| 亚洲精品免费观看| 中文字幕一区二区精品区| 久久精品国产99久久| 久久伊人国产| 精品福利久久久| 欧美久久亚洲| 在线成人直播| 蜜桃视频欧美| 久久久一本精品| 久久蜜桃资源一区二区老牛| 国产精品videossex久久发布 | 在线成人动漫av| 91一区二区三区四区| 日韩黄色在线观看| 日韩二区在线观看| 中文字幕亚洲精品乱码| 亚洲性色视频| 黄色免费成人| 久久精品123| 久久91视频| 国产美女精品视频免费播放软件| 日韩精品一二三| 日韩不卡在线观看日韩不卡视频 | 国产日韩在线观看视频| 中文一区二区| 蜜乳av另类精品一区二区| 欧美.日韩.国产.一区.二区 | 日韩精品免费一区二区三区| 精品视频91| 亚洲一级少妇| 久久久久久夜| 国产aa精品| 国产在线不卡| 欧美成人精品| 日本一区二区三区视频在线看| 综合一区av| 婷婷亚洲精品| 国产成人精品福利| 成人福利视频| 国产黄大片在线观看| 国产91一区| 国产综合亚洲精品一区二| 欧美日韩激情| 91精品国产自产在线丝袜啪| 国产日韩一区| 美女在线视频一区| 精品久久91| 国产v综合v| 日韩在线播放一区二区| 亚洲人成精品久久久| 欧美亚洲tv| 久久国产中文字幕| 久久亚洲色图| 国产一区二区三区视频在线| 欧美好骚综合网| 亚洲网站视频| 国产亚洲一区| 国产精品成人a在线观看| 99久久亚洲精品蜜臀| 日本欧美一区二区| 国产精品伦一区二区| 免费成人在线观看| 久久亚洲国产精品尤物| 97精品中文字幕| 一本综合精品| 国产精品chinese| 国内自拍视频一区二区三区| 亚洲少妇自拍| 国产精品欧美三级在线观看| 精品五月天堂| 香蕉精品视频在线观看| 日韩综合小视频| 国产精品字幕| 免播放器亚洲| 国产精品777777在线播放 | 久久国产99| av免费不卡国产观看| 在线综合亚洲| 国产成人调教视频在线观看| 最新日韩av| 欧美精品不卡| 日韩一区二区三区在线看| 9999国产精品| 亚洲久久视频| 国产综合婷婷| 国产精品网在线观看| 日韩欧美精品| 久久先锋影音| 色乱码一区二区三区网站| 欧美久久一区二区三区| 日韩三区免费| 欧美日本二区| 亚洲网址在线观看| 国产精品成人一区二区不卡| 国产精品网址| 视频一区中文字幕精品| 中文字幕在线视频久| 国产乱码精品一区二区亚洲| 激情六月综合| 国产精品115| 日韩和欧美一区二区| 成人久久一区| 亚洲色图国产| 亚洲欧美日韩在线观看a三区| 精品欧美视频| 国产丝袜一区| 国产视频一区三区| av日韩中文| 久久久久久夜| 国产精品一页| 9999国产精品| 精品伊人久久| 日本国产欧美| 日韩动漫一区| 日韩中文字幕麻豆| 久久免费国产|