进程管理类
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
d结尾的.service进程就是守护进程
ps查看当前系统进程状态
ps:process status进程状态
ps aux | grep xxx:查看系统中所有进程
ps -ef | grep xxx:可以查看子父进程之间的关系
选项:
a:列出带有终端的所有用户的进程
x:列出当前用户的所有进程,包括没有终端的进程
u:面向用户友好的显示风格、
-e:列出所有进程
-u:列出某个用户关联的所有进程
-f:显示完整格式的进程列表
功能说明:
1.ps aux显示信息说明
USER:该进程是由哪个用户产生的;
PID:进程的ID号;
%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源;
%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
VSZ:该进程占用虚拟内存的大小,单位KB;
RSS:该进程占用实际物理内存的大小,单位KB;
TTY:该进程是在哪个终端中运行的。对于centOS来说,tty1是图形化终端,tty2-tty6是本地的字符界面终端。pts/0-255代表虚拟机终端。(?表示没有使用到终端)
STAT:进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示、<:表示当前进程拥有很高的优先级、N:表示当前进程拥有很低的优先级
START:该进程的启动时间
TIME:该进程占用CPU的运算时间,注意不是系统时间
COMMAND:产生此进程的命令名
2.ps -ef显示信息说明:
UID:用户ID;
PID:进程ID;
PPID:父进程ID;
C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高;
STIME:进程启动的时间;
TTY:完整的终端名称;
TIME:CPU时间;
CMD:启动进程所用的命令和参数;
经验技巧:
如果想查看进程的CPU占用率和内存占用率,可以使用aux;
如果想查看进程的父进程ID可以使用ef;
kill终止进程
kill【选项】进程号:通过进程号杀死进程
killall 【进程名称】:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用(谨慎使用)
选项:
-9:表示强迫进程立即停止
pstree查看进程树
pstree【选项】
选项:
-p:显示进程的PID
-u:显示进程的所属用户
top实时监控系统进程状态
top【选项】
选项:
-d秒数:指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令;
-i:是top不显示闲置或僵死进程;
-p:通过指定监控进程ID来仅仅监控某个进程的状态;
操作说明:
P:以CPU使用率排序,默认就是此项;
M:以内存的使用率排序;
N:以PID排序;
netstat显示网络状态和端口占用信息
netstat -anp | grep 进程号:查看该进程网络信息
netstat -nlp | grep 端口号:查看网络端口号占用情况
选项:
-a:显示所有正在监听(listen)和未监听的套接字(socket)
-n:拒绝显示别名,能显示数字的全部转化成数字
-l:仅列出在监听的服务状态
-p:表示显示哪个进程在调用
crontab系统定时任务
crontab服务管理
重新启动crond服务:systemctl restart crond
crontab定时任务设置
crontab【选项】
选项:
-e:编辑crontab定时任务
-l:查询crontab任务
-r:删除当前用户所有的crontab任务
参数说明:
1.进入crontab编辑界面。会打开vim编辑你的工作。
*****执行的任务
第一个*:一个小时当中的第几分钟(范围:0-59);
第二个*:一天当中的第几个小时(范围:0-23);
第三个*:一个月当中的第几天(范围:1-31);disig
第四个*:一年当中的第几个月(范围:1-12);
第五个*:一周当中的星期几(范围:0-7(0和7都代表星期日));
2.特殊符号:
*:代表任何时间。比如第一个*代表一个小时中每分钟都执行一次的意思。
,:代表不连续的意思。比如0 8,12,16***命令,就代表在每天8点0分,12点0分,16点0分都执行一次命令。
-:代表连续的时间范围。比如0 5 **1-6命令,代表在周一到周六的凌晨5点0分执行命令。
*/n:代表每隔多久执行一次。比如*/10****命令,代表每隔10分钟就执行一遍命令。