You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Launchd在开机或登录时启动ssh-agent?

解决ssh-agent plist开机/登录启动及日志排查问题

问题背景

系统路径/System/Library/LaunchAgents/com.openssh.ssh-agent.plist存在默认plist文件,但尝试让其开机/登录启动失败,已尝试复制到用户目录、添加RunAtLoad配置等操作均无效,且无法查看启动失败日志。


1. 如何让plist在开机/登录时启动

系统目录下的plist由系统管控,不建议修改,正确做法是使用用户级plist:

  • 步骤1:复制并修改用户级plist
    将系统plist复制到~/Library/LaunchAgents/目录(若该目录不存在则创建),然后编辑该文件,添加以下配置项:

    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <dict>
        <key>SuccessfulExit</key>
        <false/>
    </dict>
    

    说明:

    • RunAtLoad:设为true确保用户登录时自动启动该服务
    • KeepAlive:配置为仅在服务非成功退出时重启,避免ssh-agent意外退出后无法恢复
  • 步骤2:加载并启用plist
    打开终端执行以下命令,完成plist的加载与开机启动配置:

    # 先卸载已加载的同名服务(避免冲突)
    launchctl unload ~/Library/LaunchAgents/com.openssh.ssh-agent.plist 2>/dev/null
    # 加载用户级plist
    launchctl load ~/Library/LaunchAgents/com.openssh.ssh-agent.plist
    

    用户级~/Library/LaunchAgents目录下的plist会在每次用户登录时自动加载,无需额外配置开机启动。


2. 查看plist启动失败的日志

使用macOS自带的log命令过滤相关日志:

  • 查看ssh-agent及launchd关联日志
    # 查看最近1小时的相关日志,包含调试信息
    log show --predicate 'process == "ssh-agent" OR label == "com.openssh.ssh-agent"' --info --debug --last 1h
    
  • 精准过滤启动失败日志
    若要定位启动失败原因,可缩小时间范围并筛选错误信息:
    log show --predicate 'label == "com.openssh.ssh-agent" AND (message contains "failed" OR message contains "error")' --error --last 30m
    

原始plist内容

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.openssh.ssh-agent</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/ssh-agent</string>
        <string>-l</string>
    </array>
    <key>Sockets</key>
    <dict>
        <key>Listeners</key>
        <dict>
            <key>SecureSocketWithKey</key>
            <string>SSH_AUTH_SOCK</string>
        </dict>
    </dict>
    <key>EnableTransactions</key>
    <true/>
</dict>
</plist>

内容的提问来源于stack exchange,提问作者devoutsalsa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 03:42:35