linux技术文章
-
启动脚本不必总等到整个 udev 队列清空。本文说明 udevadm settle 的 --exit-if-exists 如何以设备文件作为提前结束条件,并给出超时、返回码和迁移检查方法。197 收藏 -
用 GNU tar 配合 zstd 归档时,--sparse 负责保留稀疏文件的空洞,解包阶段用 -p 控制权限位是否受 umask 限制。本文给出创建、恢复和复查命令。196 收藏 -
Podman rootless 容器启动失败,优先核对 /etc/subuid、/etc/subgid 是否给当前用户分配范围,再区分存储目录、网络与镜像权限问题。本文用一条排查链解释这些配置之间的边界。193 收藏 -
用 nftables 命名集合承载动态封禁地址,让规则只负责引用集合;本文给出创建、增删、临时超时、状态检查和持久化配置的完整方法。193 收藏 -
网卡丢包不能只看 ping。本文用 ethtool -S、ethtool -g 和 ip -s link 对照驱动统计、收发 ring 与内核计数,判断丢包发生在哪一层,并给出安全复测顺序。192 收藏 -
Linux 服务可以把系统目录设为只读,再用 ReadWritePaths 只放行应用数据目录。本文给出最小 unit 配置、验证命令、回滚路径和容易误判的权限边界。191 收藏 -
本文用 veritysetup 演示 Linux dm-verity 的数据区、哈希区与可信 root hash 关系,说明如何先校验再创建只读映射,并梳理根文件系统启动、损坏处理和完整性边界。190 收藏 -
用 btop 的内存排序、过滤、暂停和详情面板定位 Linux 内存占用异常进程,再用 ps 与 /proc 做第二次确认,避免只凭一帧数据误判。190 收藏 -
rsync --delete 会删除目标端多出来的文件,但源路径边界、通配符和试运行步骤一旦弄错,就可能把误差放大成批量删除。本文从误删现场出发,讲清目录语义、--dry-run 核对和恢复检查。189 收藏 -
eBPF 验证器不仅检查指令数量,还会沿分支模拟寄存器、栈、指针类型和标量范围。宽范围循环、路径相关指针和无法合并的状态会迅速放大验证复杂度。本文从状态空间解释原因并给出排查与收敛方法。189 收藏 -
用 findmnt --verify 在重启前检查 fstab 的语法、设备路径和挂载选项,区分配置可解析、设备可见与真正挂载成功这三个验收层次。188 收藏 -
Linux 服务手工启动正常,交给服务管理器重启却提示找不到命令或配置,通常不是程序突然坏了,而是启动环境与登录 Shell 不同。本文用一个 worker 服务复盘 PATH、EnvironmentFile、工作目录和 journal 日志之间的排查顺序。187 收藏 -
Linux 上把 ulimit -n 调大后,当前终端生效不代表服务单元也生效。本文沿着 shell、RLIMIT_NOFILE、服务单元 LimitNOFILE 和进程继承链排查,给出可复核的配置与回滚方法。187 收藏 -
systemd 的 EnvironmentFile 中,反斜杠续行会删除换行;需要保留真实换行时,应使用可跨行的引号值,并在服务进程中核对最终环境。186 收藏 -
服务 unit 里写了 LimitNOFILE,进程却仍然拿到旧限制,通常不是参数拼错,而是改错了 unit 层级、管理器没有重新读取,或服务仍在使用旧 PID。本文用服务管理器命令、配置校验和 /proc//limits 做一套可回滚的验收流程。 185 收藏