linux技术文章
-
Linux bind 挂载排障时,不要只看默认树形输出。本文用 findmnt 固定 SOURCE、TARGET、FSTYPE 和 OPTIONS 列,再按目标路径和子挂载查询,帮助你准确对应源目录与挂载目标。207 收藏 -
journalctl 可以把服务单元和启动周期作为两个筛选维度。本文用 --unit、--boot 和 --list-boots 组合查询,说明当前启动、历史启动、日志字段与空结果排查边界。356 收藏 -
ip route get 可用 mark 模拟带标记条件下的策略选路。本文说明规则匹配、只读对照查询与 dev、via、src 等输出字段,并区分选路结果、真实打标和连通性。320 收藏 -
ss 通过 -p 显示使用 socket 的进程,配合 -l、-n 和 sport 过滤器可以快速定位监听端口。本文解释 users 输出中的程序名、PID、文件描述符,以及权限不足和网络命名空间导致的关联缺失。327 收藏 -
systemd-cgtop 按 cgroup 实时观察服务的 CPU、内存、任务数和磁盘 I/O。本文说明按资源排序、缩小层级、解释 accounting 空白与多核 CPU 百分比,并用 batch 模式导出有限次采样。380 收藏 -
systemd-cgls 怎样按服务单元查看 cgroup 树?本文用 --unit、--full、--no-pager 展开服务层级,并说明 --all、-k、-M 的排查边界。449 收藏 -
journalctl 只输出指定字段时,应把 -o json 与 --output-fields=字段列表分开使用。本文用一个逐行 JSON 日志小工具说明字段白名单、服务过滤、固定元数据和字段缺失的处理边界。360 收藏 -
journalctl 可通过启动列表取得 boot ID,并用 -b 固定查询指定启动。本文说明相对偏移、消息时间范围、脚本输入与历史日志留存边界,避免把编号或空结果误判。415 收藏 -
systemd 的 RestartForceExitStatus 可以把指定退出码、退出状态名或信号名纳入强制重启判断。本文用一个退出码 42 的服务单元说明配置写法、主进程范围、oneshot 边界与排查路径。199 收藏 -
systemd RuntimeDirectory 可以统一管理服务运行目录。本文用测试单元说明相对路径、账户权限和应用接入,并区分停止清理、重启保留与持久化边界。367 收藏 -
用 systemd 的 StateDirectory 声明服务状态目录,结合 STATE_DIRECTORY、服务用户、目录权限和 ProtectSystem=strict,建立可观察且跨重启保留的状态文件边界。399 收藏 -
Bash 管道默认只返回最后一个命令的状态,容易掩盖中间失败。本文说明如何启用 pipefail,让失败状态传到管道外层,并用 PIPESTATUS 区分各段命令,同时处理 set -e 和预期失败的边界。290 收藏 -
Linux 定时任务不只是表达式选择:本文从日志、服务依赖、错过执行、失败处理和任务重叠几个边界比较 cron 与 systemd timer,并给出两套最小配置。192 收藏 -
Linux 出现内存不足时,OOM killer 会在内核日志中留下被选进程线索。本文从 journalctl 和 dmesg 入手,说明怎样提取 pid、进程名、命令行与 cgroup 归属,并区分节点级内存压力和容器局部超限,避免只重启服务却没有解决根因。131 收藏 -
Linux perf stat 适合先用 cycles、instructions、分支和缓存指标建立 CPU 性能基线。本文说明怎样选择第一组事件、理解 IPC 与 cache-misses、识别事件不可用和计数器复用,并用重复测量把指标连接到下一步排查动作。110 收藏