apfs 本身不为每个用户创建独立加密卷,而是通过容器与宗卷结构、用户目录权限、filevault 全卷加密及 secure enclave 密钥隔离四层协同实现多用户数据隔离与按需解密。

APFS 本身不直接为每个用户创建独立加密卷,但 macOS 借助 APFS 的容器与宗卷能力,配合系统级机制,在多用户环境下自然实现数据隔离和按需加密。关键不在“为每个用户配一个加密卷”,而在于利用 APFS 容器结构 + 用户容器目录 + FileVault + 权限沙盒四层协同。
每个用户拥有独立的 APFS 宗卷容器
macOS Catalina 及之后版本将系统与数据分离:启动卷(如 Macintosh HD)是只读系统宗卷,而用户数据实际存放在同属一个 APFS 容器下的另一个宗卷(如 Macintosh HD - Data)。这个 Data 宗卷是可写的,且对所有本地用户共享同一底层存储空间,但每个用户的主目录(/Users/用户名)被严格限制访问权限:
- 默认情况下,其他用户无法进入你的
~/Documents、~/Desktop等目录,即使在同一台机器上登录也看不到内容 - 文件权限由 Unix 层(drwx------)和 TCC(透明应用权限控制)双重保障,非授权进程即使以普通用户身份运行也无法读取他人主目录
- APFS 容器的空间是共享的,但宗卷逻辑隔离确保系统不会混淆不同用户的文件归属
FileVault 加密的是整个启动宗卷组,而非单个用户
启用 FileVault 后,加密作用于整个 APFS 容器(含 System、Data、Preboot、Recovery 等所有宗卷),不是按用户划分密钥。但解密过程与登录强绑定:
- 每个设置了密码的本地账户,其登录凭证都会派生出一把专属密钥,用于解锁 Data 宗卷中属于该用户的那一部分加密元数据
- 用户 A 登录时,系统仅用 A 的密钥解密 A 的主目录路径及其中文件;用户 B 登录时则使用 B 的密钥,互不干扰
- 即使管理员能查看所有用户列表,也无法绕过权限系统直接访问他人已挂载的用户目录内容
需要真正隔离?可手动创建独立加密 APFS 宗卷
若需更高层级的物理隔离(例如给临时访客或敏感项目单独配一个完全独立的加密空间),可用磁盘工具创建额外 APFS(加密) 宗卷:
- 打开“磁盘工具” → “文件” → “新建映像” → “空白映像” → 格式选“APFS(加密)”
- 设置唯一名称(如
ProjectX-Confidential)、大小、密码,并勾选“记住密码在钥匙串中”(可选) - 该 .dmg 或 .sparseimage 映像挂载后表现为一个独立卷,每次访问都需输入密码,与任何用户账户无关
- 可将其权限设为仅当前用户可读写(
chmod 700 /Volumes/ProjectX-Confidential),进一步收紧访问面
补充:M 系列芯片强化了多用户加密边界
Apple 芯片 Mac 将 FileVault 密钥封装交由 Secure Enclave 管理,每个用户登录密码生成的密钥都在硬件安全模块内完成运算和存储:
- 即便攻击者获得 root 权限,也无法从内存或磁盘提取明文密钥
- 切换用户时,前一用户的加密上下文会自动清除,避免残留解密状态
- 恢复模式下无法绕过用户密码直接挂载 Data 宗卷——Secure Enclave 不提供跨用户解密服务











