Linux Lab 是一套用于 Linux 内核学习、开发和测试的即时实验室,可以极速搭建和使用,功能强大,用法简单!本次发布的 Linux Lab Disk (Linux Lab to go) 进一步降低使用门槛。
以下为 Linux Lab Disk 使用效果图,具体请以实物为准。
![Linux Lab Logo]()
可以用它来高效地学习处理器架构、Linux 内核、嵌入式 Linux 系统、C 语言编程、Linux 汇编、Shell 编程等。
![Linux Lab Boot example]()
已经跃跃欲试了?!快来看看:
如果想学习 Linux 0.11 内核和 Linux X86 汇编语言,也可以访问另外两套 Lab,即 Linux 0.11 Lab 和 CS630 Qemu Lab。
本次发售的 Linux Lab Disk 内置了上述 3 套实验环境,免安装,上电开机后即可使用。
版本更新
Linux Lab 于 2 月初发布了 v0.6 正式版本,同步发布了 Cloud Lab v0.4。
经过近 2 个月的开发,本次发布 v0.7-rc1,主要是新增了 Linux Lab Disk,一款可开机即用的 Linux Lab U盘,同时修复了 Windows 和 macOS 的 webvnc 登陆衰退问题。本次同步发布 Cloud Lab v0.5 rc1。
Linux Lab Disk 进一步降低了 Linux Lab 的准入门槛:
- 完全做到免安装,上电开机即用,消除主机操作系统的兼容性和网络环境等的不确定性等因素
- Linux Lab Disk 同时允许在 Windows 和 Linux 下通过虚拟机直接启动
- 另外,还新增了透明压缩和内存编译等提升容量和寿命的特性,预计 128G 可以写入 150-200G 左右,64G 可以写入 80G-100G 左右,具体情况因写入数据类型而异
本次同步制作了 200 个高速固态版 Linux Lab Disk,128G 和 64G 各 100 个,来不及自己搭建 Linux Lab 的同学,可以上手体验了,购买入口在:泰晓科技自营店。
本次相比上一个版本,合计 61 笔变更:
// linux lab
$ git log --pretty=oneline v0.5..v0.6 | wc -l
9
// cloud lab
$ git log --pretty=oneline v0.3..v0.4 | wc -l
52
本次主要更新如下:
-
Linux Lab
-
Cloud Lab
-
完善 Lab 启动消息通知功能
-
新增桌面快捷方式对 Ubuntu 20.04 的支持
-
允许通过环境变量设置屏幕 Size
-
修复 Windows 和 macOS 系统上的 webvnc 连接异常
-
Lab 容器内新增音、视频播放支持
-
更新 Linux Lab 内的桌面快捷方式,新增公开课视频、在线中文手册等入口
Linux Lab Disk (Linux Lab to go) 相关资料如下:
环境准备
在非 Ubuntu 平台,请提前自行安装好 docker,可参考 Docker for Mac、Docker for Windows。
如果是老版本的 Windows,可以用 Docker Toolbox,建议通过 Virtualbox 或 Vmware 自行安装 Ubuntu 后使用。
国内的同学请务必使用国内的 Docker 镜像服务,否则无法正常下载镜像,推荐参考 阿里云镜像配置文档。
下面的链接是大家成功运行过 Linux Lab 的主机环境,欢迎参考,安装完以后也欢迎登记上来。
极速体验
该版本依赖最新的 Cloud Lab 和 docker 镜像:
$ git clone https://gitee.com/tinylab/cloud-lab.git
$ cd cloud-lab
$ tools/docker/pull linux-lab # 确保更新 docker 镜像
$ tools/docker/run linux-lab
已经下载过的,请更新到最新版本并重启 Linux Lab:
$ cd cloud-lab && git pull
$ pushd labs/linux-lab && git pull && popd
$ tools/docker/rerun linux-lab
进去以后,打开控制台,敲入如下命令即可启动一个虚拟开发板(自动下载预编译的版本):
$ make boot
一键编译和启动(自动下载源码、检出版本、打补丁、配置、编译):
$ make boot BUILD=kernel
默认使用的是 arm/vexpress-a9,如果要使用真实开发板,在购买并连接串口和网口到开发主机后,可以简单切换:
$ make BOARD=arm/ebf-imx6ull
$ make login
真实开发板与虚拟开发板用法有细微差异,其详细用法请参考:boards/arm/ebf-imx6ull/README.md。
关键特性
Linux Lab 具备如下特性:
-
支持 3 大操作系统(Windows、MacOS、Linux),可以轻松在这三大操作系统下使用。
-
支持 7+ 大处理器架构(X86、ARM、MIPS、PPC、CSKY,RISC-V, LOONGSON),其中 LOONGSON 和 CSKY 为国产处理器。
-
支持 17+ 款开发板(i386/pc, x86_64/pc, arm/versatilepb, arm/vexpress-a9, ppc/g3beige, mips/malta, aarch64/virt, aarch64/raspi3, riscv32/virt, riscv64/virt, csky/virt, loongson/ls1b, loongson/ls2k, loongson/ls232, loongson/ls3a7a, arm/ebf-imx6ull)。
-
支持 5 种登陆方式(docker, ssh, vnc,webssh, webvnc),可以本地访问,也可以远程访问。
-
集成了 5 大组件(Qemu、U-boot、Buildroot、Linux、Toolchain),都有预编译版本。
-
内置了 5 大平台,32 位和 64 位共 10 个 Hello World 汇编语言例程,见 examples/assembly。
-
可以学习处理器指令集、Qemu、Shell、汇编、C、Linux 内核、嵌入式 Linux。
-
支持 Debugging 和 Testing。
-
host & guest 双侧免 root 使用。
更多信息:
-
项目首页
-
项目社群
-
联系微信:tinylab
-
联系公号:泰晓科技
-
Linux Lab 用户交流群
-
Linux Lab 开发者
-
项目仓库
-
视频教程
-
在线演示
该项目开源,以 GPL 2.0 协议发布,欢迎所有高校、企业、个人用户使用或者参与开发。
欢迎通过微信号(tinylab)联系我们,联系后可以获邀进 Linux Lab 用户交流群 和 Linux Lab 开发者群,还将获赠 Linux Lab 安装文档和 Linux Lab 大会演讲幻灯片。