🍓 第三章 Raspberry Pi OS 基本使用
📄 一句话概括

树莓派跑的操作系统是 Linux——它不是一家公司的产品,而是「一个开源内核 + 一群人拼出来的工具集(发行版)」;跟它打交道有两条路:看得见的桌面环境(用鼠标点)和看不见的终端机(用键盘敲),而终端才是它的老家;这一节还顺手拆掉本章最大的一个坑——桌面底下已经从 X11 换成了 Wayland。

📝 本节和前面几节的关系

上一章把机器点亮、接上网,任务算完成了——但「系统叫什么、由什么组成、怎么跟它说话」,还没人正经讲过。 1-5 里那张「四块背景知识」地图的第一块就是 Linux,当时只给了三句话(一切皆文件、sudo、没有回收站);本节把这块展开成完整的一节。 本节也是后面几节的总纲:3-2 用桌面、3-5 敲命令,都是本节讲的两条路各走一遍。

一、Linux 到底是什么:分三层看,就不乱了

新手最容易卡在「Linux 到底是什么」——因为它同时指三样东西。分开看就清楚了:

层 名字 是什么 打个比方
第一层 内核(Kernel) 真正管硬件的那个程序:分配内存、调度 CPU、读写磁盘、管网络 发动机
第二层 发行版(Distribution) 内核 + 一堆命令行工具 + 软件仓库 + 安装程序,打包成一个「能装能用的系统」 一整辆车
第三层 桌面环境(Desktop Environment) 给人看的图形外壳:窗口、菜单、图标、任务栏 车里的内饰和仪表盘

所以「Linux」严格说只是第一层。 你手上这台树莓派装的第二层,叫 Raspberry Pi OS——它属于 Debian 这一支(Debian 是最老牌的发行版之一,稳定、包多)。

「发行版」这个词要记住,因为后面所有命令都跟它有关:Ubuntu、Debian、Fedora、树莓派官方系统——内核都是同一个,区别在第二层怎么搭配。就像同一款发动机,装在不同的车里。

与 Windows 的根本差异(一句话对照):

Windows Linux
谁做的 一家公司,闭源 全球开发者协作,开源
怎么装软件 官网下载安装包 从一个「仓库」里按名字装(apt,3-5 详讲)
盘符 C 盘、D 盘 没有盘符,一棵树(下面第四节)
花的钱 要买授权 免费

树莓派为什么选 Linux? 三条理由:免费开源(教育项目要控制成本)、可以裁剪(只留需要的部分,小机器也跑得动)、命令行友好(一台没有显示器的小电脑,靠命令行管起来最省事)。

二、终端机:从「一台机器」到「一个窗口」

「终端机」这个词听起来很旧,因为它真的很旧:

历史上,终端机(Terminal)是一台只有屏幕和键盘、自己不会计算的设备——它用一根线接到远处的大型机上,你在这边敲,大型机在那边算,结果再送回来给你看。它是一扇窗,不是一台电脑。

现在,大型机换成了你面前的树莓派,「终端机」变成了屏幕上的一个窗口——但原理没变:这个窗口自己不算东西,它只是把你敲的字送给系统,再把系统的话显示给你。

📝 这个窗口里跑的是什么

窗口里跑的程序叫 shell(外壳),树莓派上默认是 bash。你敲一行、它执行一行——所以命令行又叫「交互式」使用。 后面 3-5 会专门练这个。

为什么服务器和树莓派离不开终端机? 四个理由,都能在你身上验证:

  1. 轻——一条命令只占几 KB 内存,图形界面要几百 MB;
  2. 快——改一个配置只要一行,点鼠标要点五层菜单;
  3. 能写脚本——把十行命令存成一个文件,一次跑完(这叫自动化,服务器课 9.5 讲的批量运维就是它);
  4. 能远程——SSH 传的就是这行命令(回扣 2-3 的无头模式:你从电脑上敲的每一行,都是通过 SSH 送进树莓派的终端)。

关键认识:「图形界面」和「命令行」不是新旧关系,是两条并列的路。 Windows 也有命令行(PowerShell),Linux 也有图形界面。哪个顺手用哪个,但两样都得会——因为出错时,能救你的通常是命令行。

三、桌面环境是什么:不只是「一张壁纸」

很多人以为「桌面」就是开机看到的那片背景图。不是。桌面环境是一整套软件的组合:

零件 干什么 在树莓派桌面上你看到的样子
合成器 / 窗口管理器 决定窗口怎么摆、怎么叠、怎么动画 拖动窗口、最小化、切换
面板(任务栏) 放菜单按钮、快捷图标、时钟、状态图标 屏幕上方那条
主菜单 分类列出装好的软件 点左上角树莓派图标出来
文件管理器 用鼠标看文件、复制、移动 桌面上的「文件夹」图标
一堆小应用 设置、截图、压缩、音量…… 菜单里各项

树莓派桌面的来历:它最早基于 LXDE(一个以「省资源」出名的桌面环境),后来被树莓派基金会改造成自己的风格,起名叫 PIXEL(后来统一叫 Raspberry Pi Desktop)。今天它底下的合成器已经换成了 Wayland 时代的 labwc——这就是下一节要讲的。

Linux 的桌面是可以换的:同一台机器,你可以装 Xfce、KDE 等别的桌面(Debian 有现成的整套包)。这不是必须做的事,但你应该知道这件事存在——它是 Linux 与 Windows 一个气质上的差别:系统是拼出来的,所以你也能改装。

四、X11 与 Wayland:本章最大的「老教程坑」

桌面只是你看到的样子;真正决定「画面怎么画到屏幕上」的,是底下另一层东西——显示协议。 这一层最近换代了,绝大多数中文教程还停在旧的一边,所以这段比正文更值钱。

X11(X Window System) Wayland
年纪 1984 年,40 多岁 后起之秀
思路 应用直接和显示服务器打交道,权限宽松、灵活 应用只跟合成器打交道,权限收紧、更安全
效果 老、兼容性最好 更省资源、缩放更清楚、画面更顺
现在 仍在,但树莓派已不再主动开发 当前默认

具体现状(本节写作时核实):

echo $XDG_SESSION_TYPE

输出 wayland 或 x11——这一个词决定了你该看哪一类教程。

五、Linux 的文件系统:一棵树,不是一堆盘

打开 Windows 的「此电脑」,你看到 C 盘、D 盘、U 盘——每块盘一个字母。Linux 完全不同:

/                     ← 根目录,一切的起点(只有一个)
├── home/
│   └── 你的用户名/    ← 你的家目录,写作 ~(桌面、文档、下载都在这里)
├── etc/              ← 全系统的配置文件
├── boot/             ← 启动相关(改这里要小心)
├── dev/              ← 设备文件(硬盘、串口,在 Linux 里也是「文件」)
├── usr/              ← 装好的软件、命令
├── var/              ← 经常变的数据(日志、缓存、数据库)
└── tmp/              ← 临时文件,重启可能清空

关键点:不是「盘挂在树上」,而是「盘被挂到树的某个位置」——插一个 U 盘,它不是多出一个 E 盘,而是被挂载(mount)到某个目录(桌面上会自动弹出图标)。

对照表(这张表能省你半小时困惑):

Windows Linux
盘的表示 C:\ D:\ 一棵树,根是 /
路径分隔符 反斜杠 \ 正斜杠 /
大小写 不敏感(File 和 file 一样) 敏感(File 和 file 是两个文件!)
你的地盘 C:\Users\你的名字 /home/你的名字(~)
隐藏文件 属性里设 文件名以 . 开头就是隐藏(如 .bashrc)

再复述一遍 1-5 那条铁律:Linux 里没有回收站(图形界面里的「废纸篓」只对从桌面删的东西有效,命令行 rm 删掉是直接没了)。这条在 3-5 会再钉一次。

六、动手 Demo:让这台机器「自我介绍」

前提:树莓派开着,能进终端(桌面按 Ctrl + Alt + T,或走 SSH)。

第一步:你是谁?(内核与架构)

uname -a

参考输出(版本号会不同,看结构):

Linux pi-lab 6.12.25+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.25-1+rpt1 aarch64 GNU/Linux

怎么读:Linux = 内核;pi-lab = 主机名(2-4 设的);后面那串 = 内核版本;aarch64 = 64 位(2-3 体检时用过同一条线索)。

第二步:装的是哪个发行版?

cat /etc/os-release

参考输出:

PRETTY_NAME="Raspberry Pi OS (64-bit)"
VERSION_CODENAME=trixie

怎么读:PRETTY_NAME 是人看的名字;trixie 是这一代 Debian 的代号——它是判断「该看新教程还是老教程」的开关(Bookworm 是上一代)。

第三步:桌面走的是哪条路?

echo $XDG_SESSION_TYPE

输出 wayland = 当前默认路线;x11 = 老路线。记住这个结果,以后遇到「某个软件在这儿不好使」时,先回来看它。

第四步:看看那棵树

ls /

参考输出:

bin  boot  dev  etc  home  lib  lost+found  media  mnt
opt  proc  root  run  sbin  srv  sys  tmp  usr  var

怎么读:这里就是第五节那张图。注意没有 C: D:——这就是「一棵树」。

第五步:找到你自己的地盘

pwd
ls ~

参考输出:

/home/pi
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

怎么读:pwd = 我现在在哪;~ 就是家目录。桌面上看到的那堆文件夹,就是这里的这些——图形界面和命令行看的是同一个地方。

第六步:空间够不够

df -h /

看到什么算成功:/ 那一行的 Size 应该接近你 SD 卡的容量(如 32G 卡显示约 29G)——这说明 2-3 讲过的「首次开机自动扩容」生效了。

看到什么说明不对:

现象 原因
df 显示只有 2~3G 扩容没成功,重跑 sudo raspi-config → Advanced → Expand Filesystem
echo $XDG_SESSION_TYPE 输出空 你在 SSH 里跑(SSH 没有图形会话,属正常);回桌面终端再试

七、30 秒实验

亲眼看一次「桌面上点出来的东西,和命令行是同一个世界」。

  1. 在桌面(或文件管理器)上新建一个文件夹,随便起个名字,比如 test01;
  2. 打开终端,敲:
ls ~/Desktop

你会看到 test01 就躺在里面。

  1. 反过来,在终端敲:
mkdir ~/Desktop/from-terminal

回到桌面看一眼——新文件夹已经在屏幕上了。

这 30 秒你收获的是:图形界面和命令行不是两套系统,是同一套系统的两个遥控器。 以后教程里出现「在终端执行……」时,你就知道它操作的正是你鼠标能点到的那些文件。

八、常见误区

自测三问 1. 「内核」「发行版」「桌面环境」分别是什么?树莓派装的那个系统叫什么、基于哪一支?(内核=管硬件的核心程序;发行版=内核+工具+仓库的整体;桌面环境=图形外壳。**Raspberry Pi OS,基于 Debian**) 2. 终端机和桌面环境是「新旧」关系吗?服务器和树莓派为什么离不开终端?(**不是,是并列的两条路**;终端**轻、快、可脚本化、能远程**) 3. 怎么知道自己这台用的是 Wayland 还是 X11?想切回去从哪儿改?(`echo $XDG_SESSION_TYPE`;**`sudo raspi-config` → 6 Advanced Options → A7 Wayland**)

相关笔记