Ubuntu系列弹性云服务器如何安装图形化界面?
操作场景
为了提供纯净的弹性云服务器系统给客户,Ubuntu系列弹性云服务器默认未安装图形化界面,如果您需要使用图形化界面,请参见本节内容进行安装。
对于GPU加速型弹性云服务器,在安装图形化界面后,还需要配置X Server、x11vnc和lightdm,配置后可以实现:
- 系统启动后,自动启动图形系统和VNC server。
- 通过VNC远程登录云服务器后,应用程序能够正常调用GPU。
您可以参考如下流程进行Ubuntu系列弹性云服务器图形化界面的安装:
- 安装图形化界面
- (可选)配置X Server、x11vnc和lightdm:仅GPU加速型弹性云服务器涉及该操作。
- (可选)GPU加速型弹性云服务器结果验证:仅GPU加速型弹性云服务器涉及该操作。
约束与限制
- 本文档适用于Ubuntu 16.04、18.04以及20.04操作系统的云服务器。
- 弹性云服务器需绑定弹性公网IP或者配置内网镜像源。
- 弹性云服务器安装图形化界面前,请确保云服务器内存不小于2GB,否则可能出现图像化界面安装失败,或安装后无法启动的问题。
- GPU加速型弹性云服务器需要安装正确的GPU驱动,详细内容,请参考GPU驱动概述。
安装图形化界面
- 登录弹性云服务器,运行如下命令安装图形化界面。
- 执行以下命令,编辑/root/.profile文件。
单击“i”,进入编辑模式,修改末尾行“mesg n || true”为“tty -s && mesg n || true”,修改后该文件内容如下:
# ~/.profile: executed by Bourne-compatible login shells. if [ "$BASH" ]; then if [ -f ~/.bashrc ]; then . ~/.bashrc fi fi tty -s && mesg n || true
- 单击“Esc”退出编辑模式。
- 执行以下命令,保存并退出文件。
- (Ubuntu 20.04操作系统必选)添加子账号。
安装图形化桌面后,Ubuntu 20.04操作系统禁止root登录,因此需要在安装完成后添加子账号用于登录图像化桌面。
以添加user01用户为例,执行以下命令。
adduser user01
根据提示设置新用户的密码
Adding user `user01' ... Adding new group `user01' (1001) ... Adding new user `user01' (1001) with group `user01' ... Creating home directory `/home/user01' ... Copying files from `/etc/skel' ... New password: Retype new password: passwd: password updated successfully
设置user01的其他信息,该信息均为可选,如果不设置可以 按回车键跳过,最后系统将提示您确认输入的信息是否正确无误。
正确输入"Y"。
Changing the user information for user01 Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] Y
- 执行reboot命令,重启服务器。
- 通过控制台提供的VNC登录方式连接服务器,使用root账号或5中添加的子账号登录图形化界面。
- Ubuntu 20.04操作系统需使用添加的子账号登录图像化桌面。
- 对于GPU加速型弹性云服务器弹性云服务器,还需要继续配置X Server、x11vnc和lightdm。
(可选)配置X Server、x11vnc和lightdm
对于GPU加速型弹性云服务器,在安装图形化界面时,需要配置X Server、x11vnc和lightdm。
- 远程登录弹性云服务器。
- 执行以下命令,查询GPU的BusID。
图1 GPU的BusID
- 执行以下命令,生成X Server配置。
- 在生成的“/etc/X11/xorg.conf”文件的“Section "Device"”中配置GPU的BusID。
- 执行以下命令,编辑“/etc/X11/xorg.conf”文件。
- 单击“i”,进入编辑模式。
- 在“Section "Device"”中增加GPU的BusID。
图2 增加GPU的BusID
步骤2中查询的BusID为十六进制,需要转换为十进制后增加到“/etc/X11/xorg.conf”文件的“Section "Device"”中。
- 例如,“00.0d.0”是十六进制,需转换后填入配置中的值为“PCI:00:13:0。”
- 单击“Esc”退出编辑模式。
- 执行以下命令,保存并退出文件。
- 执行以下命令,安装x11vnc。
- 执行以下命令,安装ligthdm。
- 在弹出的界面,设置默认显示管理器为“lightdm”。
图3 设置默认显示管理器
- 执行以下命令,设置系统默认启动图形化界面。
- (可选)配置x11vnc开机自启动。
- 执行以下命令,添加文件“/lib/systemd/system/myservice.service”。
- 单击“i”,进入编辑模式。
- 增加如下内容。
[Unit] Description=My Service After=network.target lightdm.service [Service] Type=oneshot ExecStart=/usr/bin/x11vnc -forever -loop -noxdamage -repeat -rfbport 5902 -shared -bg -auth guess -o /var/log/vnc.log [Install] WantedBy=multi-user.target Alias=myservice.service
- 单击“Esc”退出编辑模式。
- 执行以下命令,保存并退出文件。
- 执行以下命令,加载配置文件。
systemctl enable myservice.service
- 执行reboot命令,重启服务器。
(可选)GPU加速型弹性云服务器结果验证
对于GPU加速型弹性云服务器,在安装完图形化界面后,可通过如下操作验证驱动是否正常工作。
- 登录管理控制台。
- 为弹性云服务器配置安全组。
- 单击弹性云服务器名称,查看弹性云服务器详情,在弹性云服务器详情页面,选择“安全组”。
- 在“安全组”界面,单击“更改安全组规则”,进入安全组详情界面。
- 在安全组详情界面,单击“添加规则”,弹出添加规则窗口。
- 根据界面提示配置安全组规则。
允许TCP 5902端口的入方向访问,该端口号根据步骤9.c中的“rfbport”参数决定。
- 通过VNC客户端访登录弹性云服务器。
本文以TightVNC为例进行介绍。
图4 TightVNC客户端
- 页面空白处右键单击,在菜单中选择“Open in Terminal”。
- 在终端执行以下命令,若如所示正常识别显卡信息,表示驱动工作正常。
图5 显卡信息
如果GPU加速型弹性云服务器安装的是GRID驱动,则需要配置License才能正常使用GPU渲染能力,详细操作,请参考手动安装GPU加速型ECS的GRID驱动。