Multipass中文文档-设置图形界面

总目录

1. 概览

2. 教程

3. 使用指引

    3.1 安装Multipass - 基于Linux / 基于macOS / 基于Windows

    3.2 管理实例 - 创建实例 / 修改实例 / 使用实例 / 使用实例命令别名 / 与实例共享数据 / 移除实例

    3.3 管理Multipass - 设置驱动 / 使用Multipass服务授权代理 / 远程使用Multipass / 提高挂载性能 / 使用Packer打包Multipass镜像 / 设置图像界面 👈 / 使用不同的macOS终端 / 配置Multipass外部储存位置

    3.4 问题排查 - 连接日志 / 网络问题处理


如何如何设置图形界面

有很多种方式可以查看到图形桌面. 在这篇文档, 我们描述了2中方式: RDP(Remote Display Protocol<远程显示协议>)和普通X11 forwarding. 其他方法有VNC或在X11 forwarding上运行Mir shell(如此所述).

内容:


使用RDP

Multipass使用的镜像是没有安装图形桌面的. 因此, 需要安装桌面环境(我们使用ubuntu-desktop, 但是其他可用选项如Ubuntu风味一样多), 使用RDP服务器(我们在此使用xrdp, 但是仍然也有其他选项例如freerdp). 为此, 我们首先需要登录Multipass实例:

$ multipass shell headbanging-squid

并且, 一旦进入实例,

$ sudo apt update
$ sudo apt install ubuntu-desktop xrdp

然后, 我们需要账号密码登陆. 一种可能方法是给默认ubuntu用户设置密码.

$ sudo passwd ubuntu

我们会被要求输入并再次输入密码. 这样我们就在服务器上完成了.

然后我们用logout命令退出实例上的Ubuntu shell, 接着找到主机IP地址连接:

$ multipass list
Name				State	IPv4			Image
headbanging-squid	Running	10.40.93.209	Ubuntu

之后, 我们可以使用IP地址10.49.93.209在实例上连接到RDP服务器.

ℹ️如果实例的IP地址没有在multipass list的输出中显示, 它可以在实例中直接被获取, 使用命令ip addr就可以了.


Linux

在Linux中, 有例如Remmina的应用可以可视化桌面(确保你的主机安装了remmina以及其包remmina-plugin-rdp).

运行下面命令直接启动客户端:

$ remmina -c rdp://10.49.93.209

系统会要求上面设置的账户名(ubuntu)和密码, 然后实例中的Ubuntu桌面就会显示.
在这里插入图片描述


macOS

在macOS上连接, 我们可以使用Mac App Store里的"Microsoft Remote Desktop"(微软远程桌面).


Windows

在Windows上, 我们可以使用"Remote Desktop Connection"(远程桌面连接)应用连接到RDP服务器. 之后, 我们输入虚拟机的地址, 设置XOrg进程, 输入在之前步骤创建好的账户名和密码. 然后我们就完成了…一个图形桌面!


使用X11 forwarding

有一种可能的场景是, 我们只需要Multipass启动一个应用去看看窗口, 并不需要一个完整的桌面. 结果是这个设置比RDP方法要简单, 因为我们不需要Multipass实例部署完整的桌面. 取而代之, 我们可以借助主机图形能力并使用X11连接实例应用.


Linux

Linux和MacOS默认运行X和实例, 所以主机不需要其他额外的软件. 我们通过使用X forwarding的授权, 可以比Windows上更加安全一点. 然而, 我们可以穿透(forward through)ssh以避免与xauth啥的纠缠. 不幸的是, multipass shell不允许用户给ssh传递额外参数, 所以我们无法使用shell穿透Multipass. 我们会让主机用户通过ssh登录到Multipass实例, 通过复制公钥的方式, 在~/.ssh/id_rsa.pub文件到实例已授权的密钥, 在~/.ssh/authorized_keys文件中. 我们可以使用下面命令做到(使用你的案例名替换案例中的案例名):

$ multipass exec rocking-squirrel -- bash -c "echo `cat ~/.ssh/id_rsa.pub` >> ~/.ssh/authorized_keys"

如果文件~/.ssh/id_rsa.pub不存在, 那就意味着需要创建SSH密钥. 使用ssh-keygen创建密钥然后试试复制代码.

然后, 使用multipass info rocking-squirrel检查一下实例IP地址. 最后, 我们可以使用X forwarding登录到实例

# 使用上面获得的IP地址替换 `xx.xx.xx.xx`
$ ssh -X ubuntu@xx.xx.xx.xx

然后测试一下在实例中运行一些程序:

$ sudo apt install x11-apps
$ xlogo &

在这里插入图片描述

一个带有X logo的小窗口会显示出来. 完成!


macOS

MacOS上的步骤与Linux几乎一致, 但是我现在手上没有Mac用以测试. 欢迎贡献
在这里插入图片描述


Windows

Windows完全不理解X, 因此我们需要安装X服务器. 这里我们使用VcXsrv. 其他选项可以用Xming(然而, 最新版本需要付费, 但是老旧版本仍然可以从他们的网站SourceForge site免费下载)或在Cygwin中安装X服务器.

第一步是安装VcXsrv并在开始菜单新建的词条"XLaunch"运行X服务器. 一些选项会被显示. 第第一个窗口, 我们应当选择"Multiple windows"并设置显示数量; 让他保持-1是一个比较安全的选择. “Next"按钮会带我们到"Client Startup"窗口, 在这我们应当选择"Start noclinet”. “Next"会显示"Extra Settings”, 然后我们应当激活"Disable access control"选项. 按下"Next"会让我们选择保存设置, 最后我们可以启动X服务器. 任务栏会出现一个图标: 我们就完成了X服务器.

我们需要主机IP地址去配置客户端(即Multipass实例), IP地址可以从console命令ipconfig获取. 然后启动实例, 在主机IP上设置DISPLAY环境变量到服务器显示.

# 使用上面获取到的IP地址替换 `xx.xx.xx.xx`
$ export DISPLAY=xx.xx.xx.xx:0.0

我们完成了, 然后我们可以在Windows部分使用xlogo测试forwarding.

在这里插入图片描述


原文链接

How to set up a graphical interface

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值