ps -elf 静态查看
e:显示系统内所有进程信息
l:长格式显示进程信息
f:完整格式显示进程信息
F:内核分配给进程的标记
S:进程状态
PID:进程自己的pid号
PPID:该进程父进程的进程号
C:进程生命周期中使用的cpu的利用率
PRI:进程的优先级(数字越大优先级越低)
NI:谦让值,决定优先级的大小
ADDR:进程的内存地址
SZ:进程被换出,需要交换空间的大致大小
WCHAN:显示休眠进程的系统函数名
STIME:进程的启动时间
TTY:启动的终端
查看线程
pstree -up 80011(进程号)
动态查看进程信息
top
load average:0.00 0.01 0.05 1分钟 5分钟 15分钟
单位时间内系统能处理的任务数
第二行:进程信息
Tasks: 197 total, 1 running, 196 sleeping, 0 stopped, 0 zombie
total:当前系统的总进程数
running:运行中的进程
sleeping:休眠中的进程
stopped:终止的进程数
zombie:僵尸进程数
第三行:cpu信息
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
us:用户进程占用cpu的大小(管理员,程序用户,普通用户)
sy:内核进程占用cpu的大小
ni:优先级调度占用的cpu大小
id:空闲cpu的百分比
wa:磁盘读写性能
hi:一分钟cpu使用率
si:五分钟cpu使用率
st:十五分钟cpu使用率
先用top看id,然后ps -aux看%CPU
第四行:内存信息 free -h
第五行:交换分区信息(swap) free -h
数字键1:显示所有cpu的个数和cpu的工作状态
c键:按照cpu百分比大小进行排序
q键:退出
top -b -n 1
运行一次即刻退出,等同于ps -elf
五大负载和优化查看
cpu负载:了解系统是否过载,优化高cpu负载的进程
内存负载:监控内存的工具:free top
优化内存:释放一些不必要的内存占用,关闭不需要的服务,释放缓存
清缓存:echo 1 > /proc/sys/vm/drop_caches 平常不用,发版期再用
磁盘负载:监控I/O:iostat(面试会问)
网络负载:监控网络带宽:iftop
进程负载:top,看us
进程管理
pgrep:查找进程pid,结合kill命令一起使用
-a:显示进程名和pid
-c:仅显示匹配进程的数量,其他不显示
-f:匹配进程名和参数
kill:杀进程,传递信号给内核执行终止程序的命令
kill只是一个信号,传递信号,而不是自己杀
kill -9:表示进程被终止,需要立即退出。(慎用)
kill -15:表示进程需要被终止,请自行停止退出
jobs:列出后台进程的状态信息
-l:显示所有后台进程的pid号
-n:仅显示最近的后台进程
-r:仅显示正在运行的后台进程
-s:仅显示已停止的后台进程
在命令行的结尾加上&就是在后台运行
ctrl + z:放到后台并且停止运行
fg:把后台的程序调度到前台执行
创建定时任务
crontab
* * * * * 分 时 日 月 周
分:0-59
时:0-23
日:1-31
月:1-12
周:0-7 0和7都是周日
*:表示范围内的任意时间
,:表示是多个不连续的时间
-:表示连续的时间
*/:表示每多久执行一次
crontab -e:创建定时任务
打开后和vim编辑器一样的
先写时间再写目录(要写绝对路径)或命令
为指定用户创建定时任务:crontab -e -u 用户
查看定时任务:crontab -l
删除定时任务:crontab -e进去后dd一个一个删除
crontab -r是清空所有(不能用)