因为O_TMPFILE本来就创建未命名的临时普通文件。它的path参数指定一个目录,内核在该目录所在文件系统中建立未命名inode,并不是把这个目录路径直接当成一个新文件名。所以,调用成功后目录里没有多出可见名称,可以符合接口语义,不能只凭资源管理器或目录列表就认定创建失败。

适用前提是Linux环境确实使用O_TMPFILE,内核及底层文件系统支持它,且打开模式符合所需写访问条件。官方注明该标志自Linux 3.11提供,但不是所有文件系统因此都自动支持。先核实际接口、目录及真实返回,不能把其他临时文件库或memfd对象直接当成相同创建方式。
观察时将目录参数、返回描述符与后续是否命名分开。如果已经成功取得描述符,不能因为没有路径名就说没有对象;如果调用失败,则按实际错误核条件,不用“未命名”掩盖失败。它建立在指定目录的文件系统中,不能从看不见文件名就推断所有内容只在RAM,或已经自动成为独立持久备份。
内容的生命周期也有明确边界。若文件没有被赋予名字,最后一个文件描述符关闭时写入其中的内容会丢失;文档另说明在符合条件时可以通过相应链接方式给它命名,但这不是让用户往客户目录随意加链接。与O_EXCL组合时还会禁止所述命名方式,这与该标志在其他创建场景中的含义不同,不能照抄普通文件存在性规则。
风险停止点是唯一工作内容尚未正式保存时,不关闭最后引用、不重启或结束原程序来验证临时对象消失,也不通过创建大量文件试探支持。下一步让维护者核目录参数、描述符和实际保存设计,先保护原资料,再决定是否需在获准独立环境检查。通川区台式电脑用户可拨400-877-9605,电脑快修网提供信息展示与第三方维修对接,具体文件系统检查是否支持及安排当次核实,不承诺恢复已关闭的未命名内容。