【外评】茶壶中的 Debian /tmpest
内容提要
Debian 13 (Trixie)将切换到使用基于RAM的/tmp,并自动清理/tmp和/var/tmp中的临时文件。许多Linux发行版已经进行了这个更改。经过长时间的讨论,Debian开发人员和贡献者做出了这个决定。一些用户对清理临时文件的默认行为表示担忧,但仍然实施了这个更改。喜欢保留磁盘上的/tmp的用户可以覆盖默认设置。这些更改不会影响以前的Debian版本。
延伸解读
变更背景与发行版差异
Debian 13 将 /tmp 改为 tmpfs 并自动清理临时文件,这一变化并非孤立。许多发行版如 Arch Linux、Fedora 已采用类似做法,而 RHEL、SLES 等仍保留磁盘上的 /tmp。Debian 此前一直使用磁盘存储,此次调整旨在与 systemd 上游默认值及其他发行版保持一致。用户需注意,不同发行版对 /tmp 的处理策略存在差异,迁移或跨平台工作时可能遇到行为不一致。
用户担忧与可覆盖性
讨论中,部分用户对自动清理临时文件表示担忧,例如 tmux 会话套接字被删除导致无法重连,或长期任务数据存放在 /var/tmp 中被清除。开发者强调默认设置可被覆盖:若希望 /tmp 保留在磁盘,可执行 systemctl mask tmp.mount;若想停止定期清理,可运行 touch /etc/tmpfiles.d/tmp.conf。这些选项为有特殊需求的用户提供了灵活性,但需自行配置。
对升级用户的影响
所有更改仅影响 Debian 13(Trixie)及之后版本,不会波及之前的稳定版或旧版本。用户只有在升级到 Trixie 时才会遇到这些新默认行为。升级前,建议检查依赖 /tmp 或 /var/tmp 的应用程序,尤其是那些将重要数据存放在这些目录中的场景,并提前规划覆盖设置或迁移数据,以避免升级后出现意外中断。
Q&A
Debian 13(Trixie)对/tmp的处理方式有什么变化?
Debian 13将切换到使用基于RAM的/tmp,并自动清理/tmp和/var/tmp中的临时文件。
为什么Debian决定将/tmp改为基于RAM的tmpfs?
Debian开发者Luca Boccassi认为是时候让默认设置与上游和其他Linux发行版保持一致,并计划定期清理临时文件。
用户如何覆盖Debian 13中/tmp的默认设置?
用户可以使用systemctl mask tmp.mount命令来覆盖/tmp的默认设置,保持其在磁盘上。
Debian 13的更改会影响之前的版本吗?
所有更改不会影响Trixie之前的Debian版本,用户在升级时才会遇到这些改动。
其他Linux发行版是否也采用了基于RAM的/tmp?
是的,许多Linux发行版如Arch Linux、Fedora和openSUSE等已经采用了基于RAM的/tmp。
用户对Debian 13中/tmp自动清理的反应如何?
一些用户对清理临时文件的默认行为表示担忧,但仍然实施了这个更改。