12 个版本
0.3.4 | 2021 年 8 月 29 日 |
---|---|
0.3.3 | 2019 年 12 月 9 日 |
0.3.2 | 2019 年 10 月 7 日 |
0.3.0 | 2019 年 2 月 17 日 |
0.1.1 | 2017 年 8 月 1 日 |
#485 在 文件系统
52,083 每月下载量
在 15 个 Crates 中使用 (6 直接使用)
21KB
338 行
(略微)更快的 Linux 临时文件
在 "最近" 的 Linux (~2014+) 中,文件系统支持一种新的无名称、可持久化的临时文件。
优秀的 tempfile
Crates 支持两种类型的临时文件
- 无名称临时文件,安全且快速,但永远不会写入真正的文件系统。
- 命名临时文件,存在一些理论上的安全风险和性能问题,但如果你需要将数据高效地写入真正的文件系统,则必须使用。
然而,它并没有公开无名称(安全、快速)、可持久化(方便)的文件。这个 Crates 就是这样做的。
在非现代 Linux 上,这个 Crates 将回退到直接使用 tempfile
的 NamedTemporaryFile
。
"最近" 的 Linux
Linux 3.11 中增加了对 O_TMPFILE
的支持:
- Linux 3.11: ext2, ext3, ext4, UDF, Minix, shmem。
- Linux 3.15: xfs
- Linux 3.16: btrfs, f2fs
- Linux 4.9: ubifs
一些发行版,包括发布日期、生命周期结束日期和内核版本
- Ubuntu 12.04 (2012 年 4 月 - 2017 年 4 月): 3.2
- Debian Wheezy (2013 年 5 月 - 2018 年 5 月): 3.2
- Ubuntu 14.04.0 (2014 年 4 月 - 2019 年 4 月): 3.13
- RHEL 7 (2014 年 6 月 - 2024 年 6 月): 3.10
- Debian Jessie (2015 年 4 月 - 2020 年 4 月): 3.16
- OpenSUSE Leap 42.1 (2015 年 11 月 - 2017 年 5 月): 4.1
- Ubuntu 14.04.5 (2016 年 8 月 - 2019 年 4 月): 4.4
- Debian Stretch (2017 年 6 月 - ): 4.9
也就是说,截至 2017 年,除了 CentOS/RHEL 以外,所有最新版本以及之前的版本看起来都非常有希望。
上游集成
在 一个 pull-request 中讨论了另一种实现方法,将此推入 NamedTemporaryFile
。这是结果。
依赖项
~2–10MB
~113K SLoC