linux服务排查步骤

状日端配权资依

  1. 查服务状态:systemctl status 服务名

  2. 查详细日志:journalctl -u 服务名 -f 可接grep

    或者 tail -f /var/log/服务名/access.log

    access.log 访问日志 正常业务排查最常用,看用户请求

    error.log错误日志(实时)网站打不开、接口报错优先查这个。

  3. 查端口占用:ss -tlnp

    ss -tlnp | grep :80
    输出里 pid=xxxx 就是进程号
    或者用这个查lsof -i :80
    kill 2439 温柔终止(优先用,让程序正常退出)
    kill -9 2439 强制杀(进程卡死、温柔杀不掉时)

    场景 A:Nginx/sshd 这类服务占用端口
    不要直接 kill!优先用服务管理命令停止
    systemctl stop nginx

    杀完进程后再次执行
    ss -tlnp | grep :80
    验证端口是否释放

    firewall-cmd --list-all

    只看端口

    firewall-cmd --list-ports

    查询单个端口是否放行

    firewall-cmd --query-port=80/tcp

    关闭端口(取消放行)
    firewall-cmd --permanent --remove-port=80/tcp
    firewall-cmd --reload

    临时放行(重启服务器失效,测试用)
    firewall-cmd --add-port=80/tcp

    永久放行TCP 80端口(public区域,网页用)

    firewall-cmd --permanent --add-port=80/tcp

    重载!永久规则必须reload才生效,不中断现有连接

    firewall-cmd --reload

  4. 校验配置文件语法

    nginx -t
    -t:test,只测试配置语法,不加载、不重启

  5. 检查文件、运行用户权限

    ls -l /etc/nginx/nginx.conf

  6. 检查磁盘、内存资源是否耗尽

    内存内存资源检查
    free -h
    看内存占用 TOP 进程按大写m
    top
    ps -aux --sort=-%mem | head -10
    查看 OOM 日志
    dmesg | grep -i oom # 或者journalctl
    journalctl -k | grep -i oom 只取出内核日志
    先扩容 物理机:临时增加内存;云服务器升级配置
    临时加大内存 limit
    杀掉没必要的进程

    磁盘空间
    df -h
    inode 检查
    df -i
    定位哪个目录大

    查看根目录下各目录大小

    du -sh /*

    递归找大于1G的大文件

    find / -type f -size +1G 2>/dev/null

  7. 检查依赖服务是否正常启动

    systemctl status nginx

相关推荐
酸菜。1 小时前
dw_apb_uart总结
linux
倔强的石头1061 小时前
【Linux指南】动静态库系列(八):ELF 加载与进程地址空间:程序还没运行,为什么已经有地址
linux·运维
第十人i2 小时前
Linux 一键重装系统脚本:reinstall 工具详解
linux·服务器
jinyishu_3 小时前
Linux基础指令:从Shell原理到权限
linux
hi_ro_a4 小时前
基于正倒排索引的boost搜索引擎
linux·c++·搜索引擎·项目
GG-_-Bond4 小时前
9.1kv存储持久化模拟面试
linux·c语言·数据结构·c++
Dola_Zou4 小时前
Linux工控机核心算法防逆向与自动化加固方案
linux·自动化·软件加密
欧米欧5 小时前
解析Linux从umask位运算到粘滞位
linux
江屿风5 小时前
【Linux系统】【Linux进程终止等待详解与程序替换机制初体验】流食般投喂
linux·运维·笔记·系统架构·centos·unix