如果你指的是 Debian 里 readdir 相关的版本,需要先明确一点:
readdir不是 Debian 独有的程序,而是 glibc(GNU C 库)里的函数,所以“版本”取决于 glibc 的版本,而不是 Debian 单独维护的。
readdir 是什么?readdir 是 POSIX 标准接口#include <dirent.h>
常见相关函数:
readdirreaddir_r(已废弃)readdir64(大文件支持)| Debian 版本 | glibc 版本 | 说明 |
|---|---|---|
| Debian 7 (Wheezy) | 2.13 | 较老 |
| Debian 8 (Jessie) | 2.19 | |
| Debian 9 (Stretch) | 2.24 | |
| Debian 10 (Buster) | 2.28 | |
| Debian 11 (Bullseye) | 2.31 | |
| Debian 12 (Bookworm) | 2.36 | ✅ 当前稳定版 |
| Debian Sid (Unstable) | 2.37 / 2.38 | 滚动更新 |
readdir 所在 glibc 版本ldd --version
示例输出:
ldd (Debian GLIBC 2.36-9) 2.36
readdir 是否来自 glibcnm -D /lib/x86_64-linux-gnu/libc.so.6 | grep readdir
常见结果:
readdir
readdir64
getdents 系统调用readdir 封装可以把问题再具体一点,我可以直接给你定位到 Debian + glibc 版本 + 行为差异。