首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSH远程命令挂起

SSH远程命令挂起
EN

Stack Overflow用户
提问于 2010-12-18 02:50:08
回答 1查看 3.9K关注 0票数 0

有人知道为什么这个命令,

代码语言:javascript
复制
ssh -v user@address "exec ssh-agent bash"

...would坚持这个输出?

代码语言:javascript
复制
debug1: Sending command: exec ssh-agent bash

我正在尝试自动设置一组远程机器,这样它们就可以在没有密码的情况下互相SSH。已经对相关的私钥文件进行了scp。需要对每个实例运行ssh-add。但首先,我需要启动ssh特工。但是上面的命令挂着。在每个实例上手动启动代理并不是一个真正的选项。

在远程计算机上手动运行"ps ux“确认ssh-代理正在运行:

代码语言:javascript
复制
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
ubuntu     746  0.0  0.2   8844  1380 ?        S    02:45   0:00 sshd: ubuntu@notty
ubuntu     747  0.0  0.1   4532  1096 ?        Ss   02:45   0:00 bash
ubuntu     748  0.0  0.0   3360   204 ?        Ss   02:45   0:00 ssh-agent bash
ubuntu     779  0.0  0.2   8844  1376 ?        S    02:51   0:00 sshd: ubuntu@pts/0
ubuntu     781  5.3  0.8   8260  5244 pts/0    Ss   02:51   0:00 -bash
ubuntu     813  0.0  0.1   4284  1076 pts/0    R+   02:52   0:00 ps ux

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2010-12-18 03:11:47

你看到的是预期的行为。SSH正在等待bash完成执行。如果您省略了作为ssh-agent参数的"bash“,那么ssh-agent就会像您期望的那样进入后台。

所以,也许你是想跑:

代码语言:javascript
复制
ssh -v user@address "ssh-agent"

查看pstree输出可以更清楚地显示正在发生的事情。

代码语言:javascript
复制
 |-+= 09556 root /usr/libexec/launchproxy /usr/sbin/sshd -i
 | \-+= 09557 root /usr/sbin/sshd -i
 |   \-+- 09560 root /usr/sbin/sshd -i
 |     \-+= 09561 root bash
 |       \--= 09562 root ssh-agent bash
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4476337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档