进程和计划任务管理

一.linux系统上如何查看进程信息

1.静态

ps查看静态的进程信息

-a 显示当前终端上所有进程,包括其他用户的进程

-u 列出该进程所属用户

-x 显示详细信息

USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.7  0.3  19664 11904 ?        Rs   10:43   0:01 /lib/systemd/systemd --system --deserialize 118 splash

1.pid:进程的pid号,进程号,每个程序的进程号都是唯一的

2.STAT:进程的状态

S:休眠状态,运行完毕之后进入待机时间,需要被运行会立刻唤醒

R:进程在运行

T:该进程处于停止状态

D:不可中断的休眠状态

Z:僵尸进程,父进程已终止,子进程还在运行

I:表示进程处于空闲状态

s:表面该进程有子进程

+:进程在前台运行

l:子进程当中的线程

<:该进程执行的优先级更高

N:该进程执行的优先级较低

ps -elf

-e 显示系统内所有进程信息

-l 详细展示进程的信息

-f 完整的格式展示进程的信息

F S UID          PID    PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root           1       0  0  80   0 - 41980 ep_pol 15:14 ?        00:00:03 /sbin/init splash

PPID:显示该进程的父进程

c:进程生命周期中cpu的利用率

总结:ps -aux 更适用查看进程占用的系统资源情况

ps -elf 更适用查看系统中的详细信息

问题1:怎么查看一个进程在系统中的资源占用情况,以及占用cpu/内存过高,处理方法

第一步:ps -aux定位找到这个进程

第二步:ps -elf | grep id号查询他的详细信息

第三步:根据情况来进行处理

第四步:kill -9

问题2:僵尸进程该如何处理

僵尸进程占用系统的资源很小,完全可以忽略不记

僵尸进程无法用kill杀死,强制也不行

重启(处理办法)

2.动态

top动态查看进程信息

任务: 304 total,   1 running, 303 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3868.6 total,   1445.8 free,   1012.5 used,   1410.3 buff/cache
MiB Swap:   3898.0 total,   3898.0 free,      0.0 used.   2596.4 avail Mem 

load average 系统的平均载荷,单位时间系统处理的任务数

%cpu:系统cpu的使用情况

us:用户占用cpu的情况

sy:内核占用cpu

ni:优先级调度占用cpu的百分比

id:系统空闲cpu的百分比

wa:磁盘读写性能

hi:一分钟内系统进程占用cpu的百分比

si:5分钟内系统进程占用cpu的百分比

st:15分钟内系统进程占用cpu的百分比

top -b -n 1 运行一次就退出,相当于静态展示

二.系统五大负载指标

1.cpu

监控cpu的指标:top htop

2.内存

监控内存:free top 清理缓存:echo 1> /proc/sys/vm/drop-caches

3.磁盘负载

监控磁盘的读写:iostat

4.网络负载

监控网络带宽

5.进程负载

查看系统进程占用cpu,内存,磁盘,网络

三.命令

1.pgrep

根据进程的名称查看id号

选项

-a 显示进程的详细信息和pid号

-c 仅显示进程的数量

-f 匹配进程名

2.jobs

用于列出后台运行进程的信息

选项

-l 显示所有后台进程的pid号

-n 仅显示最近 的后台信息

-r 仅显示正在运行的后台进程

-s 仅显示已停止的后台进程

3.pstree

查看进程所属线程

选项

-u 显示线程的用户

-p 显示线程的pid号

四.定时任务

所有定时任务都是后台运行

1.时间表示

ctontap

* * * * *

分 时 日 月 周

分:0-59

时:0-23

日:1-31

月:1-12

周:0-7(0和7都可以表示星期天)

2.创建定时任务

crontab -e

选项

-u 指定用户,默认当前用户

-r 清空定时任务(千万不要用)

-l 查看定时任务

3.注意

在创建定时脚本的时候,一定要是绝对路径,且要给运行权限

相关推荐
Linux运维日记3 分钟前
k8s1.31版本最新版本集群使用容器镜像仓库Harbor
linux·docker·云原生·容器·kubernetes
嚯——哈哈10 分钟前
轻量云服务器:入门级云计算的最佳选择
运维·服务器·云计算
我是唐青枫12 分钟前
Linux dnf 包管理工具使用教程
linux·运维·服务器
嚯——哈哈36 分钟前
AWS云服务器:开启高效计算的新纪元
服务器·云计算·aws
嚯——哈哈37 分钟前
从入门到精通:解析如何使用亚马逊云服务器(AWS EC2)
运维·服务器·aws
编程修仙1 小时前
Collections工具类
linux·windows·python
芝麻团坚果1 小时前
对subprocess启动的子进程使用VSCode python debugger
linux·ide·python·subprocess·vscode debugger
Elastic 中国社区官方博客2 小时前
Elasticsearch 中的热点以及如何使用 AutoOps 解决它们
大数据·运维·elasticsearch·搜索引擎·全文检索
写点什么啦2 小时前
[debug]不同的window连接ubuntu的vscode后无法正常加载kernel
linux·vscode·ubuntu·debug
wellnw2 小时前
[ubuntu]编译共享内存读取出现read.c:(.text+0x1a): undefined reference to `shm_open‘问题解决方案
linux·ubuntu