linux - ssh 连接产生了数百个 ssh-agent/bin/bash 实例

标签 linux ssh archlinux

我有一个在 VMWare VM 上运行的 Arch 服务器。我通过将 ssh 连接从端口 X 转发到服务器上的端口 22 的防火墙连接到它。昨天,我开始收到错误消息“Bash:Fork:资源暂时不可用”。我可以以 root 身份登录并毫无问题地管理事物,但似乎当我以我通常使用的用户身份 ssh 登录时,ssh session 现在产生了数百个 ssh-agent/bin/bash session 。反过来,这会耗尽系统上的所有线程和文件描述符(据我所知)并使其无法使用。到目前为止,我能找到的一点点信息告诉我,我必须有某种循环,但这直到昨天才发生,可能是在我运行更新时。在这一点上,我愿意接受建议。

最佳答案

你的一个 shell 初始化文件可能正在生成一个 shell,当读取 shell 初始化文件时,它会生成一个 shell,等等。

您提到了 ssh-agent/bin/bash。将 this 放入 .bashrc 中肯定会导致问题,因为这会指示 ssh-agent 生成 bash...

相反,使用类似的东西

if [[ -z "$SSH_AUTH_SOCK" ]]; then
  eval $(ssh-agent)
fi

.bashrc(或 .xinitrc .xsession 用于具有图形登录的系统)。

或者可能(未经测试):

if [[ -z "$SSH_AUTH_SOCK" ]]; then
  ssh-agent /bin/bash
fi

.bash_profile 中。

关于linux - ssh 连接产生了数百个 ssh-agent/bin/bash 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38643962/

相关文章:

linux - 我可以在 INSMOD 或 MODPROBE 期间将参数传递给驱动程序吗?

linux - 按时间排序访问日志

python 处理 SSH [许多客户端]

linux - 什么是deferwq

linux - 在 Linux 中,我如何知道是否收到了某个 TCP 数据包的 ACK?

python - 使用结构运行子进程时出现 EOFError

ssh - 无法ssh到服务器

c++ - 在 archlinux 上安装 boost devel

linux - Arch Linux 中的 VMware 工具安装

linux - linux 平台上的 JSON 服务器建议