-
Linux 使用 rsync 同步目录时,默认 quick check 会根据文件大小和修改时间筛选需要更新的文件,-a 则包含递归、权限、时间等基础属性保留。本文给出本地与 SSH 远程同步写法,并说明目录尾斜杠、--dry-run、--checksum、属主权限和传输安全边界。
-
用 Linux ss 固定 TCP 连接采样口径,再通过 state 过滤器观察 listening、syn-recv、established、time-wait 和 close-wait 等状态变化;结合 -o、-i 与端口表达式,把状态聚集缩小到具体服务和连接方向。
-
Linux 的 Cached 高不等于内存快用完。本文从 /proc/meminfo 的 MemFree、Cached、SReclaimable、AnonPages 和 SwapFree 入手,说明怎样用 MemAvailable 判断真实余量,并避免重复相加重叠字段。
-
查看 Linux 进程所属 network namespace,先读 /proc/PID/ns/net 的标识,再用 lsns、ip netns identify 和 nsenter 分别补充清单、命名和网络视角。本文把只读判断、权限边界与进入命名空间的风险分开说明。
-
用一次异步 I/O 的视角解释 Linux io_uring 的提交队列与完成队列,区分 SQE、CQE、user_data 和 res,并说明提交顺序与完成顺序不能混用的原因。
-
用 journalctl 的 --unit、--since 和 --until 按服务与时间窗口过滤 systemd 日志,再结合启动周期、优先级和关键字查询,解释多条件组合、权限与空结果排查边界。
-
Linux systemd 的 ExecStartPre 可以在主进程启动前检查配置文件。本文用 test -s 说明硬失败闸门,比较 ExecStartPre、ExecCondition 与忽略失败的区别,并整理 unit 重载、解析结果和日志排查方法。
-
Linux cgroup v2 的 cpu.stat 可以读取 cgroup 内进程及其后代的累计 CPU 时间。本文从 PID 定位 cgroup,读取 usage_usec,并用两次采样估算 CPU 使用率,同时说明组级统计与单进程统计的边界。
-
Linux cgroup v2 的 memory.swap.max 用来限制一个非根 cgroup 的交换空间。本文区分 memory.max 与交换上限,演示设置、读取和排查 memory.swap.current、memory.swap.peak、memory.swap.events 的方法。
-
写入 systemd.timer 前,使用 systemd-analyze calendar 解析、归一化 OnCalendar 表达式,并查看后续触发时间,避免把能解析误认为已部署成功。
-
本文用 Linux find 讲清 -size 的单位与边界、-mtime 和 -mmin 的时间窗口,以及 -newermt、-print0 在组合查询中的用法,帮助你安全筛选日志、备份和数据文件。
-
从 memory.current 建立基线,解释 cgroups v2 的 memory.high、memory.max、memory.events 和 memory.stat 如何配合处理内存压力与 OOM。
-
区分systemd系统管理器、用户管理器和应用进程的环境文件读取权限,说明单文件最小权限修复、受控配置对照、回退记录及秘密传递边界。
-
journalctl --since 用于指定日志起点,配合 --until 可以筛选固定日期、自然日或最近一段时间;本文说明时间边界、服务过滤、时区和常见空结果问题。
-
用 systemd-mount 临时创建 .mount 或 .automount 单元,说明块设备、tmpfs、自动挂载、设备绑定、状态查询与卸载命令,帮助 Linux 运维在不改 /etc/fstab 的前提下完成一次性挂载。