您如何在 VirtualBox 内的 Mac OSX 和 UbuntuServer 14.04 之间复制/粘贴

use*_*123 6 server virtualbox paste copy

我在尝试在 Mac OS X 上的 VirtualBox 内运行的 Ubuntu 服务器上设置 GitLab 时遇到问题。复制/粘贴不起作用。

我已经安装了来宾添加,并将主机密钥更改为 right-CMD(以前保留的位置)。我也开启了双向支持。

现在完成了上述工作,所以我真的被卡住了,需要从 GitLab 页面复制/粘贴代码来安装它。

有任何想法吗?

Vid*_*uth 2

既然你也问过如何用很酷的方式(ssh)来做这件事,我会介绍这一点,你唯一需要了解的是如何在你的 MAC 上获得 ssh,因为我从未接触过,也永远不会接触它。

1、准备工作:

打开virtualbox并通过菜单进入首选项,进入网络选项卡并单击仅主机网络下的小加号图标,这将添加一个名为 的适配器vboxnet0

在此输入图像描述 在此输入图像描述

完成后,输入虚拟机本身的首选项,然后切换到网络选项卡,单击端口转发,Adapter 1然后单击加号后输入您的凭据,如下图所示。

注意:如果您的虚拟机系统经过 NAT 且位于同一系统上,您可以直接从 Mac OS X 系统通过 SSH 连接到您的虚拟机系统;除非您希望运行 VM 的系统外部的系统能够访问该系统,否则不需要配置端口转发。(包括在评论中,因为我从来没有或永远不会拥有 MAC,我无法检查它,对于 Ubuntu 主机来说,它是绝对需要的)。

在此输入图像描述 在此输入图像描述 在此输入图像描述

之后,您转到Adapter 2选项卡并启用此适配器并将其设置为附加到名为 的仅主机适配器vboxnet0

在此输入图像描述

2. 登录:

正如我已经说过的,我从未触及过最大值,但我认为命令应该相同或接近相同,因此我将在这里放置 Ubuntu 主机上使用的命令,以便为您提供指导。要登录到您的虚拟机,您可以在--headless终端模式下启动它(我保留了Kali-Linuxin,但您应该将其替换为您的虚拟机名称):

vboxmanage startvm "Kali-Linux" --type headless
Run Code Online (Sandbox Code Playgroud)

现在稍等一下,即使没有显示任何窗口,您的虚拟机仍然需要启动,然后使用以下命令登录:

ssh -l <user-name> localhost -p 2222
Run Code Online (Sandbox Code Playgroud)

然后,系统将提示您输入虚拟机上的用户密码,登录后,现在您在终端中看到的行就是您在虚拟机中看到并键入的行。

要关闭,您有两种选择,我最喜欢第一种。

  1. 从虚拟机内部关闭

    shutdown -h 1
    logout
    
    Run Code Online (Sandbox Code Playgroud)
  2. 从终端关闭

    logout
    vboxmanage controlvm "Kali-Linux" poweroff
    
    Run Code Online (Sandbox Code Playgroud)


Tho*_*ard 0

无法像您想象的那样在 Mac 和 VirtualBox VM 之间直接使用共享剪贴板功能。

Ubuntu Server 默认不实现剪贴板功能(我不知道你是否可以)。这会禁止您以您想要实现的方式使用剪贴板。


实现此目的的唯一方法是使用分配给虚拟来宾的 IP,通过 SSH 从 Mac OS X 到 Ubuntu Server 来宾操作系统:

ssh user@x.x.x.x
Run Code Online (Sandbox Code Playgroud)

(其中x.x.x.x是分配给来宾虚拟机的 IP,整个命令是从 Mac OS X 的终端运行的)。

(您还可以使用 PuTTY 或类似的 SSH 客户端通过 SSH 连接到来宾 VM。)

然后,您可以从 Mac OS X 复制/粘贴到 Mac OS X 终端窗口文本中。您不能使用它进行文件传输,但您将能够复制/粘贴命令以运行等,并以这种方式执行它们。

请注意,如果您尝试让运行 VBox 的系统以外的系统访问该系统,则必须按照此处其他答案中的详细信息设置端口转发。如果 Mac OS X 运行 VirtualBox 和 VM,则无需执行 NAT 端口转发步骤。