跳转至

实验0:VLAB 使用教程

本节目标

完成 VLAB 虚拟机创建,掌握浏览器/SSH/VS Code 三种登录方式,并能进行基本文件传输。

补充资料

更多功能可参考 VLAB 官方文档

课程附录

如果你已经能够登录 VLAB,但还不熟悉 Linux 终端、GitMakefile,可以继续阅读实验准备补充:工具与开发基础

预计用时

从创建虚拟机到完成一次网页登录,预计 10~20 分钟。若需要继续配置 SSH 密钥、VS Code 远程连接或等待云端资源分配,时间可能略有波动。

1 虚拟机创建

  1. 访问https://vlab.ustc.edu.cn,点击虚拟机管理,使用你的学号和密码登录系统。
  2. 点击新虚拟机按钮:

  3. 镜像选择vlab01-ubuntu-desktop-mate-24.04.tar.zst(lxc),点击创建

    image-20260302213919464

  4. 稍等一会儿刷新页面看到如下界面则创建成功!此处点击开机完成虚拟机的启动。

2 虚拟机使用

这里推荐三种登录方式(更多登录方式详见官方文档):浏览器直接登录、SSH 命令行登录以及 VS Code 连接 VLAB。

2.1 浏览器直接登录

该方式非常简单,点击开机以后会出现如下界面,点击网页SSH登录按钮即可。

如果你需要使用图形化桌面,请点击网页桌面登录按钮。

PS:值得一提的是,网页SSH登录提供文件拖动上传和下载功能,具体使用方法如下:

首先需要在虚拟机内安装 lrzsz 软件包:

sudo apt install lrzsz

安装后从本地拖动文件到浏览器窗口中即可上传。如需下载文件,使用 sz 命令。例如下载 yrcamp.jpg 文件:

sz yrcamp.jpg

输入命令后,浏览器窗口中会出现一个对话框显示文件名与文件大小,点击 Download 即可。

2.2 SSH 命令行登录

这里主要介绍 Windows 环境下的 SSH 登录。若你使用的是 macOS,请优先阅读 macOS 使用说明;其他系统平台也可参考:https://vlab.ustc.edu.cn/docs/login/ssh/

2.2.1 SSH 安装

在安装时, Windows 10 用户在 设置 -> 应用 -> 应用和功能 -> 可选功能 -> 添加功能 中搜索 OpenSSH; Windows 11 用户在 设置 -> 系统 -> 可选功能 -> 查看功能 中搜索 OpenSSH,进行安装。

2.2.2 SSH 连接

  1. 参考教程生成公私钥对,并将下载的私钥文件放在任意文件夹中。(约定俗成,一般放在%UserProfile%\.ssh目录下)。
  2. 参考这个链接设置私钥文件的访问权限。
  3. 使用快捷键Windows+R打开运行窗口,输入cmd,然后单击确定即可打开命令行。

    image-20260302221334042

  4. 在打开的命令行中输入命令:

    ssh -i 你的私钥路径 ubuntu@vlab.ustc.edu.cn
    

    对于本教程使用的镜像,登录用户名为ubuntu。

    按下回车键执行命令即可成功登录。

2.3 本地 VS Code 连接

2.3.1 安装 SSH 插件

打开 VS Code,在侧边栏选择扩展管理(图标如下图),安装 SSH 插件:

img

安装后重启 VS Code,可以在侧边栏看到远程资源管理器图标:

image-20260302222102051

2.3.2 进行 SSH 配置

  1. 点击侧边栏的远程资源管理器,在打开的页面右上角选择远程(隧道/SSH),然后点击SSH旁边的齿轮按钮:

    image-20260302222259166

  2. 在 VS Code 顶部中间会出现选择框,选择第一个路径(带有你电脑用户名的路径):

    image-20260302222526547

  3. 在打开的文件中添加如下内容:

    Host vlab
        HostName vlab.ustc.edu.cn
        User ubuntu
        IdentityFile 你的私钥路径
    
  4. 此时我们再打开远程资源管理器,即可发现名为vlab的条目,点击该条目右侧的箭头,即可成功连接。

    image-20260302223009249

下一步建议

连接上 VLAB 后,建议先阅读附录中的 Linux 基础教程;等到开始编译内核时,再配合 Makefile 基础教程 一起看会更顺手。完成 实验0:内核编译运行与 GDB 调试 后,建议继续阅读 实验0:希冀平台与课程仓库接入;如需补充 Git 命令,再参考附录 Git 提交、分支与合并