ssh-agent 是如何自动启动的?

J.C*_*ski 5 login openbox session crunchbang ssh-agent

我目前正在使用Openbox运行Crunchbang Linux,一旦我登录,我就会有一个进程正在运行,但我一生都无法弄清楚为什么它会自动启动。ssh-agent

这是ssh-agent进程及其父进程:

$ ps -ef | grep 2085
jonyamo   2085  1759  0 10:50 ?        00:00:00 /usr/bin/openbox --startup /usr/lib/openbox/openbox-autostart OPENBOX
jonyamo   2469  2085  0 10:50 ?        00:00:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session x-session-manager
Run Code Online (Sandbox Code Playgroud)

我似乎很清楚它是通过/usr/lib/openbox/openbox-autostart. 因此,研究该文件,我发现有三个地方它会查找进程自动启动:/etc/xdg/openbox/autostart$HOME/.config/openbox/autostart,和/usr/lib/openbox/openbox-xdg-autostart

  1. /etc/xdg/openbox/autostart 是空的,所以不是这样。

  2. $HOME/.config/openbox/autostart 包含这个潜在的罪魁祸首:

    eval $(gnome-keyring-daemon -s --components=pkcs11,secrets,gpg) &

    但是,我完全禁用了它并且ssh-agent仍然自动启动。

  3. /usr/lib/openbox/openbox-xdg-autostart是一个启动 xdg 自动启动 .desktop 文件的脚本/etc/xdg/autostart/。但是,显然这只是开始以下过程:


   $ /usr/lib/openbox/openbox-xdg-autostart --list | grep "\[\*\]"
   [*] Print Queue Applet
   [*] PulseAudio Sound System
   [*] Network
Run Code Online (Sandbox Code Playgroud)

也许我遗漏了一些完全显而易见的东西,但我非常感谢任何人能够帮助我解释这个谜团。

小智 10

编辑/etc/X11/Xsession.options(在我的机器上,Ubuntu 12.04.2 LTS)并注释掉use-ssh-agent


小智 3

它通常由 X11 显示管理器启动。我不知道现在 XDM 的流行替代品,所以我会让其他人插话。

  • 不是一个非常详细的答案,但它引导我到了正确的地方。Crunchbang 使用 SLiM 作为 DM,它在登录时获取 `/etc/X11/Xsession.d` 中的所有文件,其中包含启动 `ssh-agent` 的脚本。 (2认同)