本篇blog来分析和总结下树莓派系统文件以及他们的作用。使用的系统是Raspberry Pi OS with desktop
- System: 64-bit
- Kernel version: 6.1
- Debian version: 12 (bookworm)
先看一下顶级目录/root有如下的文件和文件夹
其中,
LICENCE.broadcom
: 这是 Broadcom 公司的许可证文件,包含了与 Broadcom 相关的许可信息。bcm2710-rpi-*.dtb
和bcm2711-rpi-*.dtb
: 这些是设备树二进制文件,它们描述了 Raspberry Pi 板上的硬件组件信息,如处理器、外设等。不同的文件对应于不同型号的 Raspberry Pi。cmdline.txt
: 这个文件包含了内核启动时的命令行参数,例如根文件系统的位置、启动选项等。config.txt
: 这是 Raspberry Pi 的配置文件,用于配置系统启动时的参数,如分辨率、内存分配等。fixup*.dat
: 这些是固件文件,包含了一些用于修复和初始化硬件的固件信息。initramfs*
: 这些文件是初始内存文件系统(Initial RAM Filesystem)的镜像,用于在启动过程中提供临时的文件系统。overlays/
: 这个目录包含了一系列的设备树覆盖文件,可以在不修改主设备树的情况下对硬件进行配置。start*.elf
: 这是 Raspberry Pi 启动加载器(bootloader)的主要组件之一,负责加载内核和启动树。System Volume Information/
: 这是一个 Windows 特定的隐藏系统目录,通常会出现在 FAT 文件系统中。bootcode.bin
: 这是 Raspberry Pi 启动加载器的一个关键组件,负责初始化硬件并加载start*.elf
文件。issue.txt
: 这是一个文本文件,包含了一些有关系统的信息。
总的来说,这些文件组成了树莓派系统的启动和配置环境,它们协同工作以确保系统能够正确启动并运行。
我们再来细致的看一下cmdline.txt
的内容。cmdline.txt
是树莓派操作系统中一个非常重要的配置文件,它包含了启动内核时传递给内核的参数。具体来说,cmdline.txt
文件包含了一个命令行参数字符串,这些参数会在树莓派启动时传递给 Linux 内核。这些参数可以控制内核的行为,例如设置根文件系统的位置、指定启动模式等。
在我使用的debian bookworm