-
Linux statx 返回的时间字段由秒和纳秒组成,挂载 ID 也需要通过请求掩码和返回掩码确认。本文用一个最小 C 示例说明如何读取 tv_nsec 与 stx_mnt_id,并处理内核或文件系统不提供字段的边界。
-
说明 Linux mount --make-private 与 --make-rprivate 的区别,展示如何查看传播属性、选择修改范围,并处理 mount namespace、slave 与 unbindable 的边界。
-
Linux 终端里的 ulimit -n 调高后,服务仍可能因为启动链不同而报 too many open files。本文从 /proc/PID/limits 入手,区分 shell、systemd、容器、单进程 RLIMIT_NOFILE 与系统级 file-max,给出可复查的修复路径。
-
Linux systemd 服务失败重启时,应组合使用 Restart=on-failure、RestartSec、StartLimitIntervalSec 和 StartLimitBurst,并用退出码区分可恢复故障与不可恢复配置错误。本文给出 unit 配置和 systemctl、journalctl 复查方法。
-
Ansible playbook 的 --check 负责模拟而不落地变更,--diff 用于展示支持模块的前后差异;两者组合时再用 --limit 限制单台主机,适合上线前审阅配置。本文说明预览命令、输出判断和 check mode 的边界。
-
/run 或容器临时目录写满时,df -h 看到的 tmpfs 并不等于一块独立硬盘。本文用 findmnt、df -h、df -i 和 mount 参数核对 tmpfs 的挂载、容量、inode 与内存边界。
-
目录被移动后,inotify 的旧 watch 描述符并没有变成新的永久路径身份。本文从事件对象边界、wd 映射、目录树重扫和队列溢出四个方面说明如何恢复可靠监听。
-
Bash 启用 set -euo pipefail 后,grep 无匹配和管道中间命令失败不应混为一谈。本文用条件上下文、PIPESTATUS 和审计日志,给出保留严格模式的处理方案。
-
lsns 可以按目标 PID 列出进程关联的 Linux namespace;本文用 --task、--output、--type 和 /proc/
/ns 对照确认 namespace 类型与编号,并说明默认输出、PID namespace 和权限可见性的边界。
-
Linux systemd-analyze dot 会输出 Graphviz dot 格式的 unit 依赖关系。本文从导出 SVG、按 pattern 筛选、区分 ordering 与 requirement 依赖,到选择 critical-chain 和 blame 的边界,说明怎样把依赖图用于 systemd 排查。
-
本文用 iostat -x 的吞吐、请求大小、await、aqu-sz 与 %util 建立双轴读取方法,说明如何区分高效传输、排队等待和轻载空闲,并给出 RAID、LVM、云盘与 NVMe 场景下的判断边界。
-
Linux pidfd 把进程管理从容易过期的 PID 数值提升为文件描述符引用。本文说明 pidfd_open、pidfd_send_signal、poll/epoll、waitid 与 close 如何协作,减少 PID 重用造成的误杀风险。
-
systemd.service 通过 [Unit] 中的 StartLimitIntervalSec 与 StartLimitBurst 限制短时间重复启动,本文结合 Restart 和 RestartSec 说明配置位置、计数边界、failed 状态及 reset-failed 的恢复方式。
-
journalctl 的 vacuum-size、vacuum-time 只处理归档日志,因此 disk-usage 仍可能包含活动文件。本文用 rotate、目录状态和 journald.conf 配置,定位清理后空间没有降到预期的原因。
-
Linux memory PSI 中 some 表示至少一个任务因内存资源停顿,full 表示所有非空闲任务同时停顿。本文结合 avg10、avg60、avg300 和 total,说明如何判断近期事件、持续趋势与压力毛刺。