文件系统
已收录文章:17篇
-
从 IN_Q_OVERFLOW 这条证据入手,区分 inotify 事件队列溢出、watch 数量耗尽和应用消费过慢,再给出 max_queued_events、max_user_watches 的核对、修复与恢复流程。428 收藏
-
Linux 目录统计结果异常时,du 和 find 可能把挂载点、bind mount 或其他文件系统算进来。本文用 find -xdev、-mount、df、findmnt 组成核对路径,区分目录树大小与底层文件系统用量。416 收藏
-
把 os.DirFS 接到模板、压缩包或配置读取代码后,./config.yaml 这类看似正常的路径会被 io/fs.ValidPath 拒绝。本文用最小示例解释相对路径规则、filepath 与 path 的边界,以及迁移旧代码时如何保留用户输入语义。388 收藏
-
Python 的 contextlib.chdir 可以把临时工作目录封装进 with 代码块,退出时自动恢复原目录。本文用批处理脚本演示异常恢复、嵌套调用和并发场景下的边界,说明什么时候应该改用 Path 参数而不是切换进程级 cwd。351 收藏
-
Go 1.24 新增的 os.Root 可以把文件操作限制在指定目录内,减少路径拼接带来的越界风险。本文用一个导入任务目录演示 Open、Join、Mkdir 和遍历文件的安全边界,并用回归测试核对绝对路径、.. 路径和符号链接场景。340 收藏
-
部署前想确认两份配置目录到底差在哪里,可以用 Go 标准库做一个只读快照工具。本文从 io/fs 和 filepath.WalkDir 出发,完成隐藏文件过滤、相对路径排序、SHA-256 摘要和 JSON 差异报告,并验证退出状态与异常边界。339 收藏
-
Linux 临时目录里能创建文件却删除失败,通常要区分文件自身权限、父目录写入权限和 sticky bit 规则。本文用 /tmp 与专用工作目录说明 stat、namei、umask 和 tmpfiles.d 的检查顺序。331 收藏
-
Python 的 pathlib.Path.walk() 适合把目录遍历结果直接交给 Path API 继续处理。本文从最小筛选写法出发,说明 top_down 剪枝、follow_symlinks 的风险、文件类型核对和 Python 版本兼容边界。319 收藏
-
Linux 文件监控收到 IN_Q_OVERFLOW,不只是把 max_queued_events 调大就结束了。本文从队列溢出的含义、内核参数、消费者处理速度和恢复流程入手,给出可核对的排查命令与重建监控状态的方法。305 收藏
-
/run 或容器临时目录写满时,df -h 看到的 tmpfs 并不等于一块独立硬盘。本文用 findmnt、df -h、df -i 和 mount 参数核对 tmpfs 的挂载、容量、inode 与内存边界。273 收藏
-
Go 的 io/fs.ReadDir 会按文件名排序返回目录项,但底层 ReadDirFile、os.File.ReadDir 和错误场景的行为并不完全一样。本文从一次目录索引顺序错乱的排查开始,拆清排序、部分结果和测试边界。253 收藏
-
Go 的 io/fs.WalkDir 适合做跨目录扫描,但权限错误、符号链接和大目录中断都不能靠默认行为猜测。本文用一个可运行的扫描器说明 fs.ValidPath、fs.SkipDir、context.Context 与错误记录如何配合。236 收藏