PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Python
[问题] 请问paramiko如何切换使用者
楼主:
phoenixcx
(曼秀雷敦)
2018-08-03 15:38:37
小弟是使用python3
目前有两个环境 一个是用root登入,另外是只能用一般使用者登入
如何用root登入后切换一般使用者
或是一般使用者登入切换成root?
感谢
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=ip,port=22,username='root',password=pw,timeout=5)
stdin, stdout, stderr = ssh.exec_command('su - james')
stdin, stdout, stderr = ssh.exec_command('whoami')
print(stdout.readlines())
ssh.close()
目前这样写会卡死无回应
作者:
s860134
(s860134)
2018-08-03 19:34:00
使用 interactive shellexec command 属于 ssh 原生功能 行为上和一般 shell 还是有差
作者:
kenduest
(小州)
2018-08-03 19:42:00
你可以想一下,手动 ssh
[email protected]
"su -l games"一定也是处于卡住的状态,因为后续进入 shell 的login 互动 shell 了,所以变成后续 shell 没有返回exec_command 是执行某个命令要等返回才有结果所以改成一次跑完结束返回就好. su - james -c whoami若你要能够 ssh 登入,后续互动模式执行命令用 Pexpect 搭配 pxssh 来处理应该比较方便
作者:
s860134
(s860134)
2018-08-03 21:22:00
shell = ssh.invoke_shell()之后只要使用 shell.send shell.recv 就可以满足你要的任何功能惹顺便提一下 exec_command 下的 env 没执行过/etc/profile 所以尤其是 PATH 会跟你常用的不大一样相对 invoke_shell 下面的 env 会正常一点
楼主:
phoenixcx
(曼秀雷敦)
2018-08-04 22:16:00
感谢各位大大 礼拜一试一下
继续阅读
Re: [问题] 新手编辑器疑问
Marsden
[问题] Python Selenium爬虫问题
incessantgas
[问题] pandas爬虫问题
unknown
[问题] py打包成exe 解压缩功能失败
kevin77766
[问题] 关于 selenium headless 关掉重启问题
x9060000456
Re: [问题] 自学PYTHON 对书中范例有疑问 已解答
liquidbox
[问题] 自学PYTHON 对书中范例有疑问 已解答
ipodnapin
[问题] 解析类似html的Dataset
unimaybe
[问题] 请教有无跟 vpython 功能类似的模组
star07
Re: [问题] 新手请教一些音乐相关问题
sma1033
Links
booklink
Contact Us: admin [ a t ] ucptt.com