把 Linux 装进内存里:piCore 想让树莓派回到“够用就好”的初心

一份 README 里,藏着另一种操作系统世界观
如果你今天已经习惯了几个 G 甚至几十个 G 起步的 Linux 发行版,再去看 piCore 的说明文档,第一反应多半会是:这也太“克制”了。它是 Tiny Core Linux 面向 Raspberry Pi 的移植版本,核心思路非常直接——不是替你做一个包罗万象的系统,而是给你一套极小、极轻、可自己拼装的工具箱。
这套东西最有意思的地方,不在于“能跑在树莓派上”——毕竟这些年能跑上树莓派的系统实在太多了——而在于它对“系统应该怎样存在”给出了一个几乎反主流的答案。piCore 默认把整个系统装进内存运行,启动完成之后,SD 卡基本退出舞台,系统也不主动把改动写回去。重启之后,又是一台干干净净的机器,像什么都没发生过。
这听起来有点像实验室里的“洁癖型 Linux”,但它并不是为了炫技。2014 年那个时间点,树莓派仍是许多人接触 Linux、硬件编程和低成本 DIY 服务器的入口设备。树莓派性能有限,SD 卡的寿命和稳定性也远称不上豪华。piCore 这种设计,恰好绕开了最脆弱的那一环:频繁写卡。你可以把它理解成一种非常工程师气质的节制——既然硬件资源宝贵,那就尽量把每一次写入都当成需要思考的动作。
不是“安装系统”,而是“搭系统”
piCore 官方很坦率:它不是传统意义上的发行版,更像一个让你自己构建系统的平台。这个表述看似低调,其实很重要。今天很多用户装 Linux,期待的是开箱即用:浏览器、桌面、驱动、办公软件一条龙安排好。但 piCore 几乎反着来,它默认给你的,是最小可运行环境,剩下的应用通过扩展仓库按需下载。
这套机制对老派 Linux 玩家会很有吸引力,因为它保留了那种“我到底需要什么,就只装什么”的纯粹感。对于树莓派来说,这种思路尤其合拍。很多树莓派项目本来就不是“通用个人电脑”,而是一个专用设备:媒体播放器、小型网关、传感器节点、课堂实验机、轻量 SSH 终端,甚至只是一个用于学习 shell 和网络基础的练手板子。用一个庞杂的系统去做这些事,多少有点像开着卡车送一杯咖啡。
不过,piCore 也不是没有门槛。它的默认“Cloud Mode”意味着:系统更像一张白纸,应用从网络仓库拉取;文件系统在内存里,扩展只读挂载;重启以后改动默认消失。对新手来说,这可能不是自由,而是一点轻微的惊吓。辛辛苦苦改了配置,结果一重启没了,那种感觉像刚把房间打扫干净,转头发现这是样板间,不是自己家。
但站在系统设计的角度,这种“默认不保存”反而很高级。它把稳定性和可恢复性放在第一位。设备只要能启动,就总能回到一个已知、干净、可预测的状态。对于无人值守设备、教学环境和某些工业场景,这种特性比花哨更值钱。很多时候,最怕的不是系统功能少,而是系统在你没察觉的时候慢慢变脏、变乱、变不可控。
为树莓派量身定做的轻量哲学
piCore 文档里有不少细节,读起来会让人感受到它确实是为 Raspberry Pi 这种设备认真考虑过的。比如启动介质上的第一个分区采用 VFAT,用来放基础系统和树莓派的启动文件;系统运行后不再挂载这个分区,也不写入。再比如,如果你需要更持久化的使用方式,可以额外建立 ext4 分区,把下载的扩展和备份放进去,进入所谓的 Mounted Mode。
这其实解释了一个很多新用户容易忽视的现实:树莓派生态虽然热闹,但“热闹”不等于“每个系统都真正适合这个小板子”。不少桌面发行版移植到 ARM 后能用归能用,体验却未必精致,尤其在早期树莓派那点可怜的内存和处理器面前,系统一旦臃肿,用户很快就会陷入卡顿、写卡慢、系统损坏、反复重刷的循环。piCore 则反其道而行之,它不试图把树莓派伪装成一台完整 PC,而是承认它就是一台资源极其有限、但足够灵活的小机器。
文档里连 swap 的处理都带着一种“把每一滴资源都榨明白”的味道:默认提供压缩的内存交换区,按可用内存比例自动分配;如果你需要更多,也可以自己建 swap 分区。今天看这段说明,多少有点时代感,但也很真实。那是一个开发者还会认真计算几百 MB 是否够用的年代。而这种精打细算,恰恰是很多现代软件早已失去的美德。
从产业角度看,这种轻量系统并不只是给极客怀旧用。它对应的是另一个很现实的市场:边缘计算、低功耗设备、定制终端和教育硬件。很多设备根本不需要完整桌面,也不需要一堆后台服务,它们需要的是可重复部署、快速恢复、低存储占用和尽可能少的故障点。piCore 这样的系统,虽然看起来小众,却始终有自己稳定的生存空间。
小众,不等于没价值
说到底,piCore 最打动人的,不是“它有多强”,而是“它知道自己不要什么”。这在今天的软件世界里挺罕见。我们见过太多产品不断加功能、堆界面、扩服务,最后把自己做成一头笨重的巨兽。piCore 则像一辆骨架分明的小车,风吹得进来,雨也可能飘进来,但发动起来就是利落。
当然,它不适合所有人。如果你想把树莓派当成普通桌面电脑来用,想要图形界面、浏览器、多媒体、各种开箱即用体验,那基于 Debian 的 Raspberry Pi OS 仍然更友好。piCore 更像是为“明确知道自己要什么”的用户准备的:他们愿意手动分区,愿意研究 boot code,愿意接受系统默认不保存改动,换来的是更高的可控性和更低的资源消耗。
这里也引出一个有意思的问题:在今天这个软件越来越“云端化”、设备越来越“封闭化”的时代,像 piCore 这样的系统究竟是在逆潮流,还是在提前回答未来的一部分需求?我倾向于后者。因为边缘设备、容器化部署、不可变基础镜像、只读系统、快速回滚,这些如今在云计算和设备管理领域被反复强调的概念,本质上和 piCore 这种思路其实很近。它只不过更早、更极客、更朴素地把这套逻辑做到了树莓派上。
从这个角度看,piCore 不只是一款迷你 Linux,它更像一种提醒:不是所有计算设备都需要变得越来越重。有些机器,生来就是为了专注地完成一件事;有些系统,最好的状态就是干净、简单、可预期。树莓派之所以迷人,也正因为它总在提醒人们,计算机不一定非得是复杂的,技术也可以重新变得具体、可触摸,甚至带点手工感。
一块小板子,仍然是学习 Linux 的好入口
piCore 文档最后推荐用户去读《Into the Core》,也建议去社区论坛寻求支持。这两个动作很有代表性:它说明这个系统不是靠商业化包装取胜,而是靠社区、文档和一群愿意交流经验的人维持生命力。这样的项目通常不会成为新闻头条,但常常活得很久。
对很多人来说,树莓派的意义从来不只是“拿来做个项目”,而是它提供了一种低成本理解计算机本质的机会。你会碰到分区、文件系统、启动参数、SSH、备份、swap、挂载模式这些平时在消费电子设备里被隐藏起来的概念。piCore 把这些问题几乎原样摆在你面前,有点不近人情,但非常适合学习。它不会把一切都替你做好,也因此保留了系统层面的真实触感。
如果说主流发行版像自动挡汽车,piCore 更像手动挡。上手没那么轻松,甚至偶尔会熄火,但你更容易理解机器是怎么运转的。对于教育场景来说,这种体验很珍贵。尤其是在今天,很多年轻人接触“计算机”其实先接触的是 App,而不是操作系统本身。像 piCore 这样的项目,多少在帮人保留那条通往底层世界的小路。
一份 2014 年的 README,放到今天读,当然带着时代气息。但它背后的问题一点没过时:我们究竟需要怎样的软件?是越来越全能,还是足够克制?是替用户把一切包办,还是留出理解和掌控系统的空间?piCore 给出的答案不一定大众,却异常鲜明。对于树莓派这样一块以“动手”和“创造”为精神内核的小板子来说,这个答案甚至有点迷人。