gpt4 book ai didi

ssh - 警告 : Identity file/home/user/. ssh/id_rsa 不可访问:没有这样的文件或目录

转载 作者:行者123 更新时间:2023-12-02 13:46:57 25 4
gpt4 key购买 nike

我正在使用 Deployer用于将我的代码部署到多个服务器。今天我在开始部署后收到此错误:

[Deployer\Exception\RuntimeException (-1)]                                                        
The command "if hash command 2>/dev/null; then echo 'true'; fi" failed.
Exit Code: -1 (Unknown error)
Host Name: staging
================
Warning: Identity file /home/user/.ssh/id_rsa not accessible: No such file or directory.
Permission denied (publickey).

首先,我认为这可能与此服务器配置有关,因为我将完整安装移至另一个托管服务提供商。我试图触发部署到我在过去几天部署得很好的服务器,但后来得到了同样的错误。这很快将我的怀疑从服务器转移到了本地。

由于我在 docker 中运行 PHP(Deployer 是用 PHP 编写的),我认为这可能与我的 ssh-agent 没有从我的主机操作系统正确转发到 docker 有关系。我通过直接从我的操作系统(如果有帮助的话,Ubuntu)使用全新的 PHP 安装来验证这一点。日志中不断弹出相同的警告。

使用 ssh 登录时命令一切似乎没问题。我仍然不知道这里发生了什么。有任何想法吗?

PS:我还在 Deployer 的 GIT 存储库中创建了一个问题: https://github.com/deployphp/deployer/issues/1507

最佳答案

我对你所说的图书馆没有经验,但问题从这里开始:

Warning: Identity file /home/user/.ssh/id_rsa not accessible: No such file or directory.  

所以让我们专注于此。我能想到的潜在事情:
  • 用户名真的是user ?它说该文件位于:/home/user .验证那确实是正确的路径。例如,只是 ls文件。如果它不存在,你会得到一个错误:

    $ ls/home/user/.ssh/id_rsa

  • 那将抛出 No such file or directory如果它不存在。
  • 如果 1. 不是问题,那么这很可能是用户问题,即 Docker 容器中用户的权限错误。如果这是问题,那么在 Docker 容器内,更改 id_rsa 上的权限在你需要这样做之前:
    $ chmod 600 /home/user/.ssh/id_rsa
    Now do stuff with the key...

  • 除非 key 只能由试图运行 ssh 代理的用户读写访问,否则许多 SSH 代理将无法工作。在这种情况下,即 Docker 容器内的用户。

    关于ssh - 警告 : Identity file/home/user/. ssh/id_rsa 不可访问:没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48325848/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com