如何从Mac -> Ubuntu VirtualBox使用SCP传输文件?

我有一台Mac(OS X)和一台运行Ubuntu的VirtualBox。
我想将一个500mb的文件从Mac传输到VirtualBox。我应该如何操作?(可能与/etc/hosts有关?)
6个回答

在Virtualbox设置中,将网络设置从NAT更改为桥接适配器。然后您的虚拟机将与主机机器在本地网络中。如果启用了DHCP,则它很可能会从调制解调器获取IP,然后scp到该机器。
您还需要在Ubuntu机器上安装ssh服务器:
sudo apt-get install openssh-server
那应该可以了: scp file host:/some/directory

1需要在主机上安装openssh-server是关键步骤!! - cdahms

用户端口转发 - 在运行虚拟机的情况下,进入VirtualBox设置/网络 - 点击端口转发 - 名称为"ssh",协议为TCP,主机端口=3022,虚拟机端口=22 然后,在主机上,
scp -P 3022 myFile localhost:

如果有密码问题,只需将Ubuntu虚拟机的用户名添加到命令中,例如:scp -P 3022 myFile user@localhost: - Cheetaiean

安装Guest Additions后,您将能够创建共享文件夹,以便从主机和客户操作系统访问。主机上的任何目录都可以用于此目的。需要通过以下方式在客户操作系统上挂载共享文件夹:
sudo mount -t vboxsf [-o OPTIONS] sharename mountpoint

另请参阅关于共享文件夹使用的this answer。要使共享文件夹在每次启动客户操作系统时可访问,您需要将挂载点添加到客户fstab中。
或者,您还可以通过使用network shares来访问主机上的目录。

在enedene的回答上添加:

在Oracle VM虚拟机中更改适配器设置为桥接适配器 在Virtualbox屏幕的左上角点击"Machine" 点击Machine>Settings>Network>

将"Attached to:"更改为"桥接适配器",然后点击"确定"

重置Virtualbox(点击Machine>Reset)

一旦启动,请在终端中运行ifconfig,并使用新的IP地址进行SCP操作


如果您安装了Virtualbox Guest Addons,您可以创建一个共享文件夹。然后在Ubuntu下使用vboxmount(作为root用户)来挂载共享文件夹。之后,可以正常地进行复制操作(cp)。
如果您确实需要使用scp,请告诉我。我会找到相关信息。

你能给我们更多关于如何使用vboxmount的细节吗? - Takkat
请查看共享文件夹以获取详细信息。 - Azizur Rahman