嵌入式系统根文件系统搭建与优化指南
1. 文件所有权和权限
为了保障安全和系统稳定性,关注目标设备上文件的所有权和权限至关重要。通常,应限制敏感资源仅由 root 用户访问,尽可能使用非 root 用户运行程序,以减少外部攻击时攻击者可获取的系统资源。例如, /dev/mem 设备节点可访问系统内存,若其对所有用户可读可写,会导致严重的安全问题。因此, /dev/mem 应归 root 用户和 root 组所有,权限设置为 600,即仅所有者有读写权限。
在暂存目录中创建的文件通常归当前用户所有,但安装到设备上时,它们应属于特定的所有者和组,大多为 root 用户。可以使用以下命令更改所有权:
$ cd ~/rootfs
$ sudo chown -R root:root *
不过,运行 chown 命令需要 root 权限,之后修改暂存目录中的文件也需要 root 身份,这可能导致开发时一直以 root 用户登录,不利于系统安全。
2. 根文件系统所需程序
接下来是向根文件系统中添加必要的程序、支持库、配置文件和数据文件。以下介绍几种关键程序:
- init 程序 :init 是系统启动时运行的第一个程序,是根文件系统的重要组成部分。这里使用 BusyBox 提供的简单 init 程序。
- Shell :用于运行脚本和提供命令行交互。常见的嵌入式系统 Sh
超级会员免费看
订阅专栏 解锁全文
470

被折叠的 条评论
为什么被折叠?



