在执行Homestead环境中执行ssh-add ~/.ssh/id_rsa将SSH Key添加到虚拟机时提示No such file or directory
1. 运行环境
Windows11+Homestead
1). 当前使用的 Laravel 版本?
未涉及
//: <> (使用 php artisan --version
命令查看)
2). 当前使用的 php/php-fpm 版本?
PHP 版本:未涉及
php-fpm 版本:未涉及
3). 当前系统
Windows11
//: <> (期待数值 Windows 10 / Ubuntu 20.4 / CentOS 8 )
4). 业务环境
Homestead
//: <> (期待信息 开发环境
或 生产环境
)
//: <> (是否使用负载均衡?请提供相关信息)
5). 相关软件版本
2. 问题描述?
在执行Homestead环境根目录下执行eval “$(ssh-agent -s)” 后再执行 ssh-add ~/.ssh/id_rsa 将SSH Key添加到虚拟机时提示No such file or directory。
Windows环境下能在C:\users**.ssh文件夹下看到id_rsa和id_rsa.pub文件,在Homestead环境下 ~/.ssh 文件夹中能看到id_rsa.pub和authorized_keys文件。
代码如下:
vagrant@homestead:$ eval “$(ssh-agent -s)”$ ssh-add ~/.ssh/id_rsa
add ~/.ssh/id_rsaAgent pid 2839
vagrant@homestead:
/home/vagrant/.ssh/id_rsa: No such file or directory
//: <> (代码问题的话,请提供一份最短的,可复现问题的代码。或者相关代码)
3. 您期望得到的结果?
将SSH Key添加到虚拟机。
同样的问题,但是homestead环境下没有.ssh文件是怎么回事呢
我以为解决了,但还是存在问题。在homestead虚拟机中生成的ssh keys,在Windows环境下是看不到的。我有检查了homestead.yaml文件中的映射链接,但是对了的。不知道哪儿出问题了,是否是window11系统的问题呢?
在虚拟机中执行一下 ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
没找到原因,只能先手动把密钥拷贝到代码目录,然后复制过去,改权限
参考命令,请根据实际情况调整 cp ~/code/id_rsa ~/.ssh/id_rsa
chmod 0600 ~/.ssh/id_rsa
~/.ssh/id_rsa
,这个生成步骤教程里面写清楚了。~/.ssh/id_rsa
复制到Homestead
里面去。