我必须编写一个脚本来从远程主机获取信息,这样的内核版本,df -h,正常运行时间等等。那么如何使用函数在远程端执行,或者还有其他方法来执行它。示例代码如下,感谢有人可以帮助我。
def GetKernel():
krnl=platform.release()
print(krnl)
def SSHserver(server):
sshProcess = subprocess.Popen(["ssh", server, GetKernel()],
shell=False,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
sshProcess.stdin.write(MountPointChecker())
print(sshProcess)
SSHserver('192.168.10.123')
答案 0 :(得分:0)
您可以使用 Fabric 。
在Debian 8中安装结构包:
apt install fabric
创建名为 fabfile.py 的文件,内容如下:
#!/usb/bin/env python2
# File fabfile.py
from fabric.api import run
def host_type():
run('uname -s')
def host_kernel():
run('uname -r')
def host_kernel_release_name_df():
run('uname -r')
run('lsb_release -ds')
run('hostname')
run('df -TPh')
现在在远程服务器中执行:
fab -H user@server1,user@server2 host_kernel_release_name_df
您可以运行多个def:
fab -H user@server1,user@server2 host_type host_kernel
Fabric网站:http://www.fabfile.org/
Python中的其他SSH命令: https://wiki.python.org/moin/SecureShell