Linux排查问题常用命令

  1. 查看运行内存使用情况命令:

    • free -g(单位GB)
    • free -m(单位MB)
  2. 查看磁盘空间使用情况命令:

    • df -h
  3. lsof命令:

    • 诊断网络问题和分析系统资源利用情况非常有用
bash 复制代码
 - `lsof -n`:查看已经删除的文件,空间没有释放
   - `lsof -n | grep deleted`:查

看已经删除的文件,空间没有释放,可以kill掉对应进程的PID

  1. 查看磁盘IO常用命令格式:

    • iostat [参数] [时间] [次数]
    • 参数说明:
      • -c:显示CPU使用情况
      • -d:显示磁盘使用情况
      • -k:以K为单位显示
      • -m:以M为单位显示
      • -N:显示磁盘阵列(LVM)信息
      • -n:显示NFS使用情况
      • -p:可以报告出每块磁盘的每个分区的使用情况
      • -t:显示终端和CPU的信息
      • -x:显示详细信息
      • 其他参数可根据需要自行添加
  2. 显示当前系统网络连接和网络监听情况命令:

    • netstat -tulnp
  3. 显示当前系统上运行的进程命令:

bash 复制代码
   - ps aux
  1. 通过journalctl命令查看系统日志

  2. 查看指定服务的状态命令:
    - systemctl status <service>

  3. 查看当前开放的网络连接,检查是否有异常连接:

    • ss -tulwn
    • ss命令用于查看套接字统计信息,可帮助排查网络连接问题
  4. MySQL筛选语言查询表空间使用情况的示例语句

bash 复制代码
SELECT 
    a.tablespace_name AS '表空间名',
    b.total AS '表空间大小',
    a.free AS '表空间剩余大小',
    (b.total - a.free) AS '表空间使用大小',
    b.total / (1024 * 1024 * 1024) AS '表空间大小(G)',
    a.free / (1024 * 1024 * 1024) AS '表空间剩余大小(G)',
    (b.total - a.free) / (1024 * 1024 * 1024) AS '表空间使用大小(G)',
    ROUND(((b.total - a.free) / b.total) * 100, 4) AS '使用率 %'
FROM (
    SELECT tablespace_name, SUM(file_size) AS free
    FROM information_schema.FILES
    WHERE TABLESPACE_NAME IS NOT NULL
    GROUP BY tablespace_name
) a
JOIN (
    SELECT tablespace_name, SUM(file_size) AS total
    FROM information_schema.FILES
    WHERE TABLESPACE_NAME IS NOT NULL
    GROUP BY tablespace_name
) b ON a.tablespace_name = b.tablespace_name;
  1. find命令的常见用法,包括按时间、用户、组、大小、权限等条件搜索文件的示例
bash 复制代码
#按修改时间搜索:
find / -mtime -1:#搜索在过去24小时内修改的文件
find / -mmin -30:#搜索在过去30分钟内修改的文件
#按用户和组搜索:
find / -user username:搜索属于指定用户的所有文件
find / -group groupname:搜索属于指定组的所有文件
#组合条件搜索:
find / -name "*.log" -mtime -7:#搜索在过去7天内修改过的所有.log文件
find / -size +1M -size -5M:#搜索大小在1MB到5MB之间的文件
#忽略某些目录:
find / -path /path/to/exclude -prune -o -name "*.txt" -print:#搜索所有.txt文件
#按权限搜索:
find / -perm 644:搜索权限精确匹配644的文件
find / -perm 

/u=r:搜索用户可读的文件

  1. crontab是用于在Linux系统上定时执行任务的命令。通过排查定时任务,可以查看潜在的攻击任务。在安全事件响应中,是常见的步骤之一。以下是一些 crontab 命令的常见用法:
    . 编辑当前用户的 crontab:
bash 复制代码
crontab -e
此命令会打开当前用户的 crontab 文件,您可以在其中编辑定时任务。
. 列出当前用户的 crontab:
crontab -l
此命令会列出当前用户的 crontab 中的定时任务。
 删除当前用户的 crontab:
crontab -r

命令会删除当前用户的 crontab 中的所有定时任务。

  1. grep命令及应用示例,可结合awk和sed等命令用于文本搜索和替换操作
    grep命令一般和awk 和sed等命令结合使用。用来分析日志中的安全响应事件,如对账号和密码的暴力破解。
bash 复制代码
grep 'Failed' /var/log/secure #从日志中获取登录失败的信息
awk -F ':' '{print $1}' /etc/passwd
该命令使用awk命令,指定以冒号作为字段分隔符(-F ':'参数),并打印/etc/passwd文件中每行的第一列,通常用于获取用户账号信息。
sed 's/old/new/g' file.txt
该命令使用sed命令,将file.txt文件中所有出现的"old"字符串替换为"new"。

其中's'表示替换操作,'g'表示全局替换,即一行中出现的所有匹配项都会被替换。

相关推荐
用户03284722207016 小时前
如何搭建本地yum源(上)
运维
A小辣椒2 天前
TShark:Wireshark CLI 功能
linux
A小辣椒2 天前
TShark:基础知识
linux
AlfredZhao2 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao3 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334663 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪3 天前
linux 拷贝文件或目录到指定的位置
linux
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠4 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质4 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务