- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Vagrant 的新手,我遇到了以下问题。我使用的是 Windows 8.1。
我做了以下操作:
首先,我通过以下语句将其从 github 下载到我的主机的文件夹中:
然后我执行了:
Vagrant 起来
下载了包含 guest 虚拟机的 Vagrant Box
现在当我执行 vagrant up 命令时,我收到此消息:
C:\Users\Andrea\Documents\workspaces\Real-Time\ud381>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'udacity/ud381' is up to date...
==> default: There was a problem while downloading the metadata for your box
==> default: to check for updates. This is not an error, since it is usually due
==> default: to temporary network problems. This is just a warning. The problem
==> default: encountered was:
==> default:
==> default: Failed connect to atlas.hashicorp.com:443; No error
==> default:
==> default: If you want to check for box updates, verify your network connectio
n
==> default: is valid and try again.
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 5000 => 5000 (adapter 1)
default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
default: /vagrant => C:/Users/Andrea/Documents/workspaces/Real-Time/ud381
==> default: Machine already provisioned. Run `vagrant provision` or use the `--
provision`
==> default: flag to force provisioning. Provisioners marked to run always will
still run.
我认为这是正确的,但我对此并不绝对确定,因为我似乎有一些警告消息,但它说:默认:机器启动并准备就绪!所以我认为它是好的(可以吗?)
然后我尝试通过 SSH 执行 vagrant ssh 语句来连接到它,但收到此错误消息:
C:\Users\Andrea\Documents\workspaces\Real-Time\ud381>vagrant ssh
`ssh` executable not found in any directories in the %PATH% variable. Is an
SSH client installed? Try installing Cygwin, MinGW or Git, all of which
contain an SSH client. Or use your favorite SSH client with the following
authentication information shown below:
Host: 127.0.0.1
Port: 2222
Username: vagrant
Private key: C:/Users/Andrea/Documents/workspaces/Real-Time/ud381/.vagrant/machi
nes/default/virtualbox/private_key
在 Google 上搜索,我发现要使用此语句,我需要将 git 路径放入 PATH 环境变量中。我检查并设置了它,事实上在 PATH 变量中我有这两个值:
C:\HashiCorp\Vagrant\bin;C:\Program Files\Git\bin
第一个是 vagrant 路径,第二个是 Git 路径。
所以这不是问题。在线搜索我还发现了这个 StacOverflow 讨论:
`ssh` executable not found in any directories in the %PATH%
针对此类问题发送到此链接:https://gist.github.com/haf/2843680
在此链接中,它展示了如何将ssh.rb文件修改到此文件夹C:\vagrant\vagrant\embedded\lib\ruby\gems\1.9.1\gems\vagrant-1.0.3\lib\vagrant\ssh.rb
问题是我没有这个文件夹,而是这样的:
C:\HashiCorp\Vagrant\embedded\lib\ruby\gems\2.0.0\gems\
并且此文件夹不包含 *vagrant-1.0.3\lib\vagrant* 子文件夹(包含 ssh.rb 文件),但包含 3 个目录分别命名为 rake-0.9.6、rdoc-4.0.0 和 test-unit-2.0.0.0,不包含 >ssh.rb 文件。
搜索此文件,我在这些文件夹中发现了 2 个不同的版本:
C:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.7.4\plugins\kernel_v1\config
和
C:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.7.4\plugins\kernel_v2\config
我认为也许与教程的差异可能取决于它引用了一个非常旧的 Vagrant 版本(已有 4 年历史),并且我已经安装了 1.7.4 版本 Vagrant 。
那么如何通过 SSH 连接到 Vagrant 处理的虚拟机?
最佳答案
错误信息
C:\Users\Andrea\Documents\workspaces\Real-Time\ud381>vagrant ssh `ssh`
executable not found in any directories in the %PATH% variable. Is an
SSH client installed?
指出您当前使用的 cli(当您在 Windows 下工作时可能是 cmd 或 powershell)找不到已安装的 ssh 客户端。这意味着您的 cli 无法找到可以通过 ssh 连接到另一台服务器(在本例中为 vagrantbox)的程序。
这是一个非常常见的场景,因为 Windows 没有附带开箱即用的 ssh 客户端(与 ubuntu 或 osx 不同)。
据我所知,没有任何 ssh 程序/命令可以轻松安装并放入 PATH 中,以便它可以与 cmd 一起使用。
在这种情况下,您可能想要做的是安装具有这些功能的不同 cli。这里有几个选项,它们也在错误消息中说明:
Try installing Cygwin, MinGW or Git, all of which
contain an SSH client
我建议您使用 Git Bash,自从您使用 git 以来,您可能已经在系统上安装了它。
因此,要执行vagrant ssh
,您的第一步将是通过执行程序本身来启动 Git Bash(它随 git 一起提供,在我的系统上可以在以下位置找到:C:\Program Files\Git\git-bash.exe
)或右键单击 Windows 资源管理器中的目录列表并选择 Git Bash here
(这仅在您选中某个框时才有效Git 安装后)。
它将打开一个新的 cli,它可以使用类似 linux 的命令。您现在应该能够进入 vagrant 目录并执行 vagrant ssh
。
您在问题中链接到的解决方案似乎不再有效,因为与 git 通信的 ssh 客户端的路径似乎已更改。
关于vagrant - 我无法连接到 Vagrant 处理的虚拟机 : `ssh` executable not found in any directories in the %PATH%,,但我有它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33412239/
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
我错误地设置了 ssh key 的密码。 但是每次使用 key 时都要输入密码很烦人。 我想删除我的 key 的密码: $ ssh-keygen -p -f 但是,我担心 key 会被更改。 由于我
你好!我在连接到远程主机时遇到问题。我忘记了 ssh 密码,但我有 SSH key 的指纹。是否可以仅使用指纹进行连接? 最佳答案 不会。机器的指纹仅用于验证您正在连接您认为正在连接的机器。它是用于避
我有一个 Ubuntu 服务器 example.com 并且我已经通过 ssh 进入了它。但只有在我通过 ssh 进入它之后,我才意识到我打算执行 ssh -L 8000:localhost:9000
通过终端,我可以多次 SSH 连接到服务器: (客户端--->网关--->服务器1---->服务器2---) 但是现在要通过Java的JSch库来实现,怎么办呢?首先尝试了端口转发,但在终端上我没有这
在创建一个新的仓库(本地 + 远程)之后,我正在尝试推送提交。但是我遇到了 SSH key 的问题 在我的 ~/.ssh/config 中,我有一个 gitlab 条目定义为 Host MyRepoJ
我发现 ssh 和 ssh-keygen 有一种奇怪的行为:它们根本没有反应。 Cygwin 以管理员权限启动并正常运行。主机 192.168.1.1 已启动,我可以远程桌面到它: 当我尝试时: $
为什么eval语句返回 Illegal variable name $ eval "$(ssh-agent -s)" Illegal variable name. 最佳答案 请尝试$ eval "ss
我正在尝试通过以下命令从我的本地主机连接到远程主机。但是远程主机中有一个设置,我们登录后不久它会提示输入徽章 ID、密码和登录原因,因为它在 profile 中是这样编码的文件在 remote-hos
有时,我被迫在不稳定的互联网连接上使用 ssh。 ping some.doma.in PING some.doma.in (x.x.x.x): 56 data bytes Request timeou
This thread is a response to the titled question : Why ssh-agent doesn't forward my SSH certificate
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
因此,我在10.10.10.x子网中有一堆机器,基本上所有这些机器都以相同的方式配置。我将这些与我的10.10.11.x子网中的计算机区分开,后者具有不同的用途。 我希望能够输入“ssh 10.x”以
我不想在 vagrant box 上创建新的 SSH key 对,而是想重新使用主机上的 key 对,使用 agent forwarding 。我尝试过设置 config.ssh.forward_ag
我有一台服务器,可以通过ssh通过pubkey身份验证通过ssh访问: ssh "Host" -l "my identity" 这很好。但是,我无法在一个命令中使用我的私钥进行端口重定向和标识(这是我
创建一对 key 并通过 ssh-copy-id 将公钥发送到服务器后,我仍然无法在没有密码的情况下登录 ssh -v user@host 的输出 debug1:在/home/pumba/.ssh/k
我被困在 Permission denied (publickey) hell 中,试图将公钥复制到远程服务器,以便 Jenkins 可以在构建期间同步文件。 运行: sudo ssh-copy-id
我正在尝试通过我大学的代理服务器ssh到我们实验室的服务器之一。我们的目标是使用paramiko使其自动化,但我试图首先了解终端机级别中正在发生的事情。 我试过了 ssh -o ProxyComman
我在说明问题上有问题,我想通过SSH切换到我的Cisco交换机,但是我遇到了一些麻烦 我写了两个脚本, 有了这个我没有任何问题,我可以通过运行脚本并输入用户名和密码来更改默认网关: from Exsc
每个人 我目前正在使用一个集群,并且会经常使用“ssh”连接到它。有时我需要打开多个终端。因此,每次需要连接时,我都必须输入“ssh username@cluster.com”,然后输入“密码”(我在
我是一名优秀的程序员,十分优秀!