0
我有一个简单的请求。我想连接到一个已经存在的Google计算引擎实例,运行一个命令并关闭连接。连接到gce实例并运行命令
我已经使用伟大的示例代码here来创建和删除实例。
此外,我有一个启动脚本运行完美的作品。
现在我在阅读this article使用paramiko连接到我的实例。这可能是也可能不是最好的做法,所以如果我走错了路,请纠正我。
我有下面的示例代码:
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(
paramiko.AutoAddPolicy())
ssh.connect('35.***.***.**',username='user',password='pass')
stdin, stdout, stderr = ssh.exec_command("sudo su -")
stdin, stdout, stderr = ssh.exec_command("ls -l")
stdout.readlines()
现在 - 我不知道我应该使用哪一个用户名和密码。
当我运行此代码时,我没有根据需要获取根目录中的文件和目录列表,但是我获取了默认用户帐户的home
中的文件和目录列表 - 因此它正在连接。
我的目标是连接到一个gce实例,运行一个命令,就是这样!由于某种原因,它比我预想的要复杂。我在这里做错了什么?
你不是从shell这样做的原因吗?我对GCE并不熟悉,但是我知道,当你在新盒子上跳转时,根目录必须通过'cd ../../'来访问根文件来访问。 –
这应该以root身份运行命令:'sudo -S -i -u root -p''pwd' – hurturk
@DmitryPolonskiy我的回答是你的想法? –