linux常用命令小结,排查问题效率高10倍
作者:nil
top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
top命令有一些参数
top -h top usage: top [-a | -d | -e | -c <mode>] [-F | -f] [-h] [-i <interval>] [-l <samples>] [-ncols <columns>] [-o <key>] [-O <secondaryKey>] keys: pid (default), command, cpu, cpu_me, cpu_others, csw, time, threads, ports, mregion, mem, rprvt, purg, vsize, vprvt, kprvt, kshrd, pgrp, ppid, state, uid, wq, faults, cow, user, msgsent, msgrecv, sysbsd, sysmach, pageins, boosts, instrs, cycles [-R | -r] [-S] [-s <delay>] [-n <nprocs>] [-stats <key(s)>] [-pid <processid>] [-user <username>] [-U <username>] [-u]
top命令结果说明
- uptime:系统的运行时间和平均负载。
- tasks:当前运行的进程和线程数目。
- CPU:总体 CPU 使用率和各个核心的使用情况。
- 内存(Memory):总体内存使用情况、可用内存和缓存。
进程信息:
- PID:进程的标识符。
- USER:运行进程的用户名。
- PR(优先级):进程的优先级。
- NI(Nice值):进程的优先级调整值。
- VIRT(虚拟内存):进程使用的虚拟内存大小。
- RES(常驻内存):进程实际使用的物理内存大小。
- SHR(共享内存):进程共享的内存大小。
- %CPU:进程占用 CPU 的使用率。
- %MEM:进程占用内存的使用率。
- TIME+:进程的累计 CPU 时间。
lsof
lsof(list open files)是一个查看进程打开的文件的工具。
在 linux 系统中,一切皆文件。通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以 lsof 命令不仅可以查看进程打开的文件、目录,还可以查看进程监听的端口等 socket 相关的信息
lsof -h
查看命令详情
常用选项 -a 指示其它选项之间为与的关系
-c <进程名> 输出指定进程所打开的文件
-d <文件描述符> 列出占用该文件号的进程
+d <目录> 输出目录及目录下被打开的文件和目录(不递归)
+D <目录> 递归输出及目录下被打开的文件和目录
-i <条件> 输出符合条件与网络相关的文件
-n 不解析主机名
-p <进程号> 输出指定 PID 的进程所打开的文件
-P 不解析端口号
-t 只输出 PID
-u 输出指定用户打开的文件
-U 输出打开的 UNIX domain socket 文件
-h 显示帮助信息
-v 显示版本信息
ps
ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
最常用命令:ps -ef | grep 进程关键字
消耗内存前10排序的进程:ps aux | sort -k4nr |head -n 10
消耗CPU前10排序的进程:ps aux | sort -k3nr |head -n 10
用ps aux
命令会展示下面这些列:
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
sort -k3nr
表示按照第3
列递减排序
head -n 10
表示展示前10条
IO
每隔1s查询一次 共查询10次:iostat 1 10
路由信息
查看主机路由信息:netstat -rn
du
du (英文全拼:disk usage)命令用于显示目录或文件的大小。
常用参数:
- h:以K,M,G为单位,提高信息的可读性
- d:后面加一个数字,表示递归显示层次。一般用法:
du -d 1 -h
这个命令最常用的是当磁盘不够用需要删除某些文件的时候,可以通过这个命令查看那个目录或者文件比较大,从而删除。
到此这篇关于linux常用命令小结,排查问题效率高10倍的文章就介绍到这了,更多相关linux命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!