

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# `/home`（用户主目录）
<a name="filesystem-slash-home"></a>

 普通用户的主目录位于 `/home` 下，但软件应始终查找每个用户的 `$HOME` 环境变量，而不是依赖诸如 `/home/$USER` 之类的模式。

 默认情况下，AL2023 映像将 `/home` 放在 root 文件系统上，但软件不应依赖于此。将操作系统配置为 `/home` 是一个独立的文件系统是完全有效的，该文件系统可能在启动过程中稍后挂载，或者仅在用户通过系统身份验证后才挂载。

 root 用户的主目录不在 `/home` 中，而是在 [`/root`（root 用户主目录）](filesystem-slash-root.md) 中，以便在无法挂载 `/home` 文件系统时仍然可用。

**注意**  
 对于不需要写入访问 `/home` 的 `systemd` 服务，最佳实践是配置 `ProtectHome=read-only` 指令。使用此选项，`/home`、`/root` 和 `/run/user` 对该服务将变为只读。  
 同样，对于不需要任何访问 `/home` 的服务，最佳实践是配置 `ProtectHome=tmpfs` 指令，这将在沙盒中运行该服务，其中 `/home`、`/root` 和 `/run/user` 是空的只读 `tmpfs` 文件系统。  
 有关使用 `systemd` 限制服务对系统访问权限的更多信息，请参阅 `systemd.exec(5)` man 页面。