Linux
已收录文章:84篇
-
Linux 服务出现连接超时,不要先盲目调大内核参数。本文用 ss 区分 LISTEN、SYN-RECV、TIME-WAIT 三类状态,再结合 somaxconn、tcp_max_syn_backlog 和应用 accept 速率定位监听队列瓶颈,给出可复查的调参与回滚步骤。321 收藏
-
服务突然退出且日志只有 Killed,不要先盯着应用异常。用内核日志确认 OOM 受害进程,再区分主机内存压力与 cgroup 上限,最后通过峰值、限额和回归压测闭环。316 收藏
-
Go 服务把日志写到固定文件后,文件会持续变大,直接删除又可能让进程继续写入已删除文件。本文从一个小型 Go 日志服务开始,配置 logrotate 的轮转、保留、压缩和 copytruncate,再用状态文件与实际文件大小验证配置是否真的生效。310 收藏
-
Linux 上 getent hosts、ping 和应用访问结果不一致时,先看 NSS 顺序,再核对 /etc/hosts、resolv.conf 和 DNS 响应。本文用一组可复现的命令区分本机静态解析、DNS 查询和应用实际使用的解析路径。307 收藏
-
Linux 文件监控收到 IN_Q_OVERFLOW,不只是把 max_queued_events 调大就结束了。本文从队列溢出的含义、内核参数、消费者处理速度和恢复流程入手,给出可核对的排查命令与重建监控状态的方法。305 收藏
-
单个服务文件句柄持续上涨时,不要只修改全局 limits.conf。用 prlimit 可以先查看并调整目标 PID 的 RLIMIT_NOFILE,再用服务管理器的 LimitNOFILE 和 /proc/PID/limits 做启动后验收,区分软上限、硬上限与实际打开数量。304 收藏
-
日志归档不应只是一条 tar 命令。本文给出一个 Bash 最小脚本:固定来源路径、按天生成压缩包和 SHA-256 清单、校验后清理过期归档,并说明失败时如何保留原日志。297 收藏
-
非 root 进程绑定 80 端口,不只取决于 setcap 是否出现,还要核对内核低端口范围、文件能力、解释器启动方式和实际进程能力。本文用一组可复现命令把判断链串起来。295 收藏
-
用 pidfd_open 获取稳定的进程引用,配合 poll 观察退出、waitid 回收状态,解决长驻监控器因 PID 复用误判进程身份的问题。293 收藏
-
Linux 的 load average 不只统计正在抢 CPU 的任务,也会计入等待 I/O 的不可中断任务。遇到负载高而 CPU 看似空闲时,先对齐 uptime、/proc/loadavg、vmstat 和进程状态,再确认具体等待点与磁盘或网络存储的时间关系,避免一上来扩容或杀进程。292 收藏
-
/run 或容器临时目录写满时,df -h 看到的 tmpfs 并不等于一块独立硬盘。本文用 findmnt、df -h、df -i 和 mount 参数核对 tmpfs 的挂载、容量、inode 与内存边界。273 收藏
-
不少 Linux 服务以专用用户运行,却仍能读写过多宿主机路径。本文围绕只读根、PrivateTmp、NoNewPrivileges 和 ReadWritePaths 收紧写入面,并给出上线前检查与回退方法。259 收藏