“paramiko.ChannelException:管理禁止”在纸条中途遇到

2024-04-29 22:41:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Python来SSH主机,运行bash命令,然后以Python的方式将结果解析为几个数据结构,以便稍后显示。

我将Paramiko库用于SSH并在远程主机上执行命令,如下所示:

ssh = paramiko.SSHClient()
ssh.exec_command("command goes here")

我正以这种方式运行许多命令,似乎大多数命令都在工作(我在一个文件中循环,并在远程服务器上构建文件路径来运行这些命令)。然而,在执行过程中,我遇到了这个错误。

我想这和我打电话的数量有关,但我不确定。有什么想法吗?


Tags: 文件命令bashparamiko数据结构远程方式执行命令
2条回答

我相信我已经解决了这个问题:因为exec_command()是非阻塞的,所以我实际上是想在远程计算机上同时运行大量命令。这违反了政策,被阻止了。

我通过强迫脚本等待通过stdout.readlines()执行每个命令来解决这个问题。现在效果很好。

我有类似的问题,我发现有一个SSH服务器配置也需要修改。

任何有类似问题的人都可以首先在sshd配置中找到"#MaxSessions=10"(在我的例子中,就是/etc/sshd/sshd_config)。

MaxSessions=10修改为其他值可以解决问题。

相关问题 更多 >