如何启用和使用SSH X11在VAGRANT实例上转发

时间:2020-02-23 14:44:32  来源:igfitidea点击:

本教程将教我们如何配置X11转发以在Vagrant管理的虚拟机实例上使用。
这是建立Vagrant和VirtualBox的虚拟实验室的系列教程。
我们还在Vagrant上有以下教程:

关于如何在VirtualBox上扩展VDI和VMDK硬盘的步骤教程

使用带有Vagrant的现有虚拟机的步骤教程

当我们希望在没有GUI的虚拟机上启动应用程序/实用程序时,X11转发是至关重要的。
运行的Vagrant实例将使用X11与主机的显示系统通话。

在启用X11在VAGRANTFILE上转发之前,请先确保在VAGRANT实例上有必需的软件包,该程序将启用"X11"到工作。
所需的实用程序是"XAUTH":此程序通常用于从一台机器中提取授权记录。
如果它不存在在VAGRANT实例上安装它,则在另一个(使用远程登录或者授予其他用户访问时的情况时,如此)。

对于基于Debian的系统:Ubuntu/Debian/Linux Mint,Kali Linux 等,Do

sudo apt-get install xauth

对于CentOS 7及以下,Fedora 21及以下运行

yum install xorg-x11-xauth

对于Fedora 22和23,运行

dnf install xorg-x11-xauth

一旦我们安装了XAUTH,如果它不存在,请停止VAGRANT实例

vagrant halt

打开vagrantfile.

vim Vagrantfile

或者

nano Vagrantfile

现在编辑Vagrant文件并在vagrant.vm名称之后添加以下行

config.ssh.forward_agent = true
config.ssh.forward_x11 = true

保存更改并启动Vagrant实例

vagrant up

现在通过运行命令vagrant ssh来对vagrant实例进行ssh

vagrant ssh

我们将收到消息`"/home/vagrant /。
Xauthority"不存在"。
自从我们第一次运行它,这也可以。
"XAUTH"程序将为我们创建.xauthority文件。

在运行的Vagrant实例上进行测试,以检查是否确实x11转发正在工作。
在Vagrant虚拟机的终端上运行以下任何命令。
如果我们看到窗口弹出窗口,那么它就会正常工作。

xeyes
xclock

使用Xeyes和Xclock在CentOS 7上和下面安装它

yum install xorg-x11-apps.x86_64

对于Fedora 21,20及以下,使用

yum install xorg-x11-apps

对于Fedora 22和Fedora 23

dnf install xorg-x11-apps