Skip to content

生活与技术并行的实验室

让最小 Linux 脱离 QEMU:GRUB 引导与磁盘镜像制作

前几篇我们的最小 Linux 一直靠 QEMU 的 `-kernel` 和 `-initrd` 参数"喂"给虚拟机——QEMU 充当保姆,把内核和文件系统直接放进内存。这种方式快速方便,但系统完全依赖 QEMU:换个虚拟机就跑不起来,关机所有数据丢失,连引导过程都被跳过了。

阅读全文

从 QEMU 到 VMware:磁盘镜像迁移实战

上一篇让最小 Linux 脱离了 QEMU 的保姆模式,做了一块包含 GRUB、内核和根文件系统的自引导磁盘。这篇把同一块磁盘搬到 VMware Workstation 里——看起来只是格式转换,实际上踩了好几个坑:磁盘格式、控制器驱动、终端设备、内核日志刷屏。每个都值得单独说说。

阅读全文

BusyBox 静态编译:用 2.4 MB 撑起一个 Linux

上一篇编译了一个 14 MB 的 defconfig 内核。但内核本身只是一个"管理者"——管理 CPU、内存、设备,提供系统调用接口。它不包含任何用户能直接使用的东西:没有 shell、没有 `ls`、没有 `cat`。这些全部存在于根文件系统(rootfs)里。

阅读全文

为 QEMU 编译一个干净的 Linux 内核

上一篇 [WSL 里全量编译 Linux 内核](./wsl-kernel-build-guide) 用的是 `allmodconfig`——把所有模块全打开,验证工具链完整性。这次目标不同:编译一个能在 QEMU 里跑起来的精简内核,为后面的 BusyBox rootfs 和最小系统做准备。

阅读全文

QEMU 最小系统实战:内核 + BusyBox 从零启动 Linux

前两篇准备好了两个核心组件:14 MB 的 defconfig 内核和 2.4 MB 的静态 BusyBox。这篇把它们组装起来,在 QEMU 里启动一个完整的最小 Linux 系统——从创建 rootfs、写 init 脚本、打包 initramfs,到 QEMU 启动和调试。

阅读全文

WSL 里全量编译 Linux 内核:从踩坑到跑通

上一篇 [公司内网安装 WSL2](../engineering/wsl-install-guide) 把环境搭好了。接下来的目标是编译一次 Linux 内核——后面要做单片机的内核裁剪,先在 PC 上把全量编译跑通,确认工具链和环境没问题,后续裁剪时心里才有底。

阅读全文

公司内网环境下安装 WSL2 的正确姿势

事情的起因是想编译 Linux 内核——后续打算做单片机的内核裁剪,先在 PC 上跑通全量编译作为基础。虚拟机太重,双系统切换麻烦,WSL2 是最合适的选择——原生 Linux 内核跑在轻量虚拟机里,文件系统性能够用,还能和 Windows 侧无缝共享文件。

阅读全文

给 Copilot Chat 加上深度思考:LanguageModelThinkingPart 实战接入

VSCode Copilot Chat 从 2025 年下半年开始支持一个低调但实用的功能:**Thinking Block**。当你选择一个支持 extended thinking 的模型(如 Claude Sonnet/Opus Thinking),模型的思考过程会以一个可折叠的 "Thinking..." 块实时流式显示在聊天窗口中,思考完成后自动折叠,再展示正式回答。

阅读全文

VSCode Copilot 如何接入本地模型:Language Model Chat Provider 机制解析

GitHub Copilot Chat 的模型选择器下拉菜单里,你通常只能看到 GitHub 官方提供的模型(GPT-4o、Claude Sonnet 等)。但如果你装了某些第三方扩展,下拉菜单里会突然多出 Ollama、LM Studio 甚至自建 API 后面的模型。这背后的机制是 VSCode 的 **Language Model Chat Provider API**——一个允许任何扩展向…

阅读全文

从零开始构建 VSCode 扩展:一份面向实战的开发指南

VSCode 扩展是 JavaScript/TypeScript 程序,运行在 VSCode 宿主进程提供的沙箱环境中,通过 `vscode` 命名空间的 API 与编辑器交互。听起来简单,但当你真正开始写的时候,会发现 VSCode 扩展开发有一套相当独特的约定和心智模型——和写普通 Node.js 应用的感觉完全不同。

阅读全文

Cursor Copilot Bridge:把 Cursor 的 40+ 模型塞进 GitHub Copilot Chat

Cursor 和 GitHub Copilot 是目前最流行的两个 AI 编程助手,但它们各有各的生态围墙。Cursor 有丰富的模型选择(Claude Opus/Sonnet、GPT-4o、Gemini Pro 等 40+ 模型)和强大的 Agent 能力,但只能在 Cursor IDE 中使用。GitHub Copilot Chat 有更好的 VSCode 原生集成和社区生态,但模型选择受限于…

阅读全文

Cursor CLI 绿色便携版:从零构建一个免安装 AI 工具包

把 Cursor 的 AI Agent 能力做成一个 U 盘级别的便携工具——解压即用、用完即删、不污染宿主系统。这个需求来自一个真实场景:需要在不同用户的 Windows 机器上快速启动 AI 助手协助排查问题,而这些机器上不可能预装 Cursor IDE。

阅读全文

Cursor CLI 配置指南:MCP、Skills、Rules 和实用技巧

Cursor CLI(`agent` 命令)是 Cursor IDE 的终端版本,提供完整的 AI Agent 能力但不需要 GUI。它支持的配置项比大多数人以为的要多——MCP Server、Skills、Rules、项目指令文件都可以在 CLI 环境下使用。本文整理了经过实际验证的 CLI 配置方法,包括哪些 IDE 功能在 CLI 下可用、哪些不可用,以及各种隐藏参数。

阅读全文

Fedora 上更新手动安装的 DEB 应用

上一篇 [Fedora 上安装 DEB 包的完整指南](./fedora-install-deb) 讲了如何在 Fedora aarch64 上通过手动解压 DEB 包来安装应用。本篇记录后续问题:**怎么更新**。

阅读全文

打通 OpenClaw + Cursor 的图片分析链路

Cursor Agent CLI 天然支持多模态——Read 工具可以直接"看"本地图片文件。但 OpenClaw 作为中间层,收到的是 OpenAI 格式的消息,图片可能是 URL、base64、本地路径等各种形态。需要在消息到达 Cursor 之前,统一把图片转成本地文件。

阅读全文

让 Claw 看懂 WPS 协作里的图片

[上一篇](./openclaw-cursor-image-pipeline.md)打通了 URL 和本地图片的分析链路——proxy 下载图片到本地,Cursor Agent 用 Read 工具看。但 WPS 协作的图片既不是 URL 也不是本地文件,而是一个 `storage_key` 编码标识,需要额外的鉴权步骤。

阅读全文

Fedora 上安装 DEB 包的完整指南

Fedora 用的是 RPM 包管理系统,和 DEB(Debian/Ubuntu)不兼容。但有些软件只提供 DEB 包——特别是在 aarch64 架构上,不少厂商只发了 arm64 DEB 而没有 arm64 RPM(比如 WPS Office、WPS 协作)。

阅读全文

从 Hexo 到 VitePress:一次完整的博客迁移实录

迁移一个博客框架听起来不难——换个构建工具、调一下模板就完事了。但当博客里有加密文章、Git 子模块管理的私有内容、GitHub Pages 自动部署和自定义主题时,这件事就变成了一个涉及构建链、加密方案、CI 流程和前端架构的系统工程。

阅读全文

GitHub Pages 部署后 404 排查实录

博客推送新架构(将 `source/_posts` 改为私有 Git 子模块)后,GitHub Actions 显示 build ✅ deploy ✅,GitHub Pages Settings 也显示 "Your site is live",但访问站点始终返回 **404 File not found**。

阅读全文

Hosted by GitHub Pages