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'表示全局替换,即一行中出现的所有匹配项都会被替换。

相关推荐
2401_858936886 分钟前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
Roc.Chang18 分钟前
Ubuntu 下 VLC 无法启动(Segmentation fault)终极解决方案
linux·ubuntu·vlc·媒体播放
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂1 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
wVelpro2 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
程序员老舅2 小时前
C++高并发精髓:无锁队列深度解析
linux·c++·内存管理·c/c++·原子操作·无锁队列
雨中风华2 小时前
Linux, macOS系统实现远程目录访问(等同于windows平台xFsRedir软件的目录重定向)
linux·windows·macos
Yeats_Liao3 小时前
评估体系构建:基于自动化指标与人工打分的双重验证
运维·人工智能·深度学习·算法·机器学习·自动化
爱吃生蚝的于勒3 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森3 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix