Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 将文件从Vagrant VM复制到主机失败。。。连接到主机127.0.0.1端口2222:连接被拒绝_Linux_Vagrant_Virtualbox - Fatal编程技术网

Linux 将文件从Vagrant VM复制到主机失败。。。连接到主机127.0.0.1端口2222:连接被拒绝

Linux 将文件从Vagrant VM复制到主机失败。。。连接到主机127.0.0.1端口2222:连接被拒绝,linux,vagrant,virtualbox,Linux,Vagrant,Virtualbox,我想将文件从“流浪者”计算机复制到我的主机,以便使用此命令 scp -P 2222 vagrant@127.0.0.1:/home/vagrant/pjsip-build/lib/armeabi-v7a/libyuv.so . 但是它给了我这个错误ssh:连接到主机127.0.0.1端口2222:连接被拒绝 如果我不提港口,就这么跑 scpvagrant@127.0.0.1:/home/vagrant/pjsip build/lib/armeabi-v7a/libyuv.so 它给我的错误是:

我想将文件从“流浪者”计算机复制到我的主机,以便使用此命令

scp -P 2222 vagrant@127.0.0.1:/home/vagrant/pjsip-build/lib/armeabi-v7a/libyuv.so .
但是它给了我这个错误ssh:连接到主机127.0.0.1端口2222:连接被拒绝

如果我不提港口,就这么跑

scpvagrant@127.0.0.1:/home/vagrant/pjsip build/lib/armeabi-v7a/libyuv.so

它给我的错误是:scp:home/vagrant/pjsip build/lib/armeabi-v7a/libyuv.so:没有这样的文件或目录

那么这里出了什么问题?如何将文件从来宾复制到主机

编辑: 我的ssh配置如下

Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile C:/Users/arfeen/.vagrant/machines/default/virtualbox/private_key
  IdentitiesOnly yes
  LogLevel FATAL
当我在港口上流浪时,这是什么

==> default: Preparing network interfaces based on configuration...

        default: Adapter 1: nat
    ==> default: Forwarding ports...
        default: 22 (guest) => 2222 (host) (adapter 1)s this 

第一个问题-2222上可能没有人收听。它不应该说端口22,因为P标志应该调用2222端口

**更正后-如果有阻塞,请检查iptables中的端口是否打开,并检查sshd是否正在侦听此端口:

netstat-l

第二,更好地使用src和dst:

scpvagrant@127.0.0.1:/home/vagrant/pjsip build/lib/armeabi-v7a/libyuv.so

(请注意。最后这意味着复制到本地文件夹)

并确保127.0.0.1处的机器具有路径:/home/vargant。。。。ect,并且用户vargant可以访问so文件


我也不明白你为什么要用127.0.0.1,因为这是你自己的地址。除非你用它来隐藏问题服务器的真实地址——或者你的本地卡被桥接,然后——你是否将机器上ssh的侦听端口更改为2222?

当你运行
vagrant up
时,它应该会给你一些指示(这是我自己的示例,端口会因你而异)

在本例中,它在主机上的端口2205上运行ssh端口,因此我需要运行
scp-p2205…

您还可以通过运行“vagrant ssh config”来查看此信息``

$ vagrant ssh-config
Host jenkins
  HostName 127.0.0.1
  User vagrant
  Port 2205
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/fhenri/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL

如果您的vagrant VM在您的主机上运行(也就是说,只涉及一台计算机),您可以通过将文件放入vagrant内的“同步文件夹”来传输文件

当vagrant提供虚拟机时,默认情况下,它将
/vagrant
文件夹链接到vagrant文件所在的任何文件夹。所谓链接,我是指虚拟机上的
/vagrant
文件夹包含与主机上的
Vagrantfile
文件夹相同的所有内容。将任何文件从任何一台计算机复制到该文件夹将使这些文件在两台计算机上都可用


通过编辑vagrant文件,您可以添加以这种方式同步的其他文件夹。您可以通过阅读关于以下主题的流浪汉文档了解更多信息:

是的,上面说端口222不是22,对不起,我的错误,我也在使用。tooI无法通过运行netstat-l看到端口2222,但有一个端口*:sshI认为ssh的侦听端口设置为2222,因为如果我运行vagrant ssh配置。我看到端口设置为2222主机名:127.0.0.1用户名:Vagrant端口:2222。你能用verbose模式运行
scp
吗。这个问题似乎离题了,因为它与编程或开发无关。请参见帮助中心中的。也许或者会是一个更好的提问的地方。
$ vagrant ssh-config
Host jenkins
  HostName 127.0.0.1
  User vagrant
  Port 2205
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/fhenri/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL