Linux-系统管理12-进程和计划任务管理

                              目录

一、程序和进程的关系

1.程序

2.进程

二、静态查看进程统计信息 ps 命令

1.ps aux 命令

2.ps -elf 命令

3.直接使用 ps 命令

4.查看某个进程的详细信息

三、动态查看进程统计信息 top 命令

1.作用:

2.常用选项:

3.各选项的使用示例:

4.常用交互命令

5.解释:

四、查看进程信息

1.pgrep 命令

2.pstree 命令

五、进程的启动方式

1.手工启动:

2.调度启动


一、程序和进程的关系

1.程序

  • 保存在硬盘、光盘等介质中的可执行代码和数据
  • 静态保存的代码

2.进程

  • 在 CPU 及内存中运行的程序代码
  • 动态执行的代码
  • 父、子进程:每一个进程可以创建一个或多个进程

二、静态查看进程统计信息 ps 命令

1.ps aux 命令

(1)作用:
以简单列表的形式显示出进程信息

(2)选项释义:
a:显示当前终端下的所有进程信息,包括其他用户的进程
u:使用以用户为主的格式输出进程信息
x:显示当前用户在所有终端下的进程信息

(3)示例:

2.ps -elf 命令

(1)作用:
以长格式显示系统中的进程信息,并且包含更丰富的内容

(2)选项释义:
-e:显示系统内的所有进程信息
-l:使用长(long)格式显示进程信息
-f:使用完整的(full)格式显示进程信息

(3)示例:

3.直接使用 ps 命令

直接执行不带任何选项的 ps 命令时,将只显示当前用户会话中打开的进程

4.查看某个进程的详细信息

(1)ps aux|grep “进程名称”

(2)ps -elf|grep “进程名称”

三、动态查看进程统计信息 top 命令

1.作用:

top 命令将会在当前终端以全屏交互式的界面显示进程排名,及时跟踪包括 CPU、内存等系统资源占用情况,默认情况下三秒刷新一次,默认以 CPU 占用率排序。

2.常用选项:

d:指定刷新的间隔时间,单位秒
-b:以批量处理模式操作,一般与-n 同时使用
-n:指定循环显示的次数
-u:指定用户名
-p:指定进程号

3.各选项的使用示例:

(1)top -d 指定刷新的间隔时间

[root@linuxli ~]# top -d 5 【指定刷新间隔时间为 5 秒】

(2)top -b -n 以批量处理模式操作同时指定循环显示的次数

!注意:当 CPU 占用率过高时,不应再直接执行 top 命令查看,可以将信息存入一个文 件内查看,以免 CPU 占用率过高导致崩溃。操作如下

(3)top -u 指定用户名

(4)top -p 指定进程号

4.常用交互命令

P:根据 CPU 使用百分比大小进行排序(默认进入时即为此排序)
M:根据驻留内存大小进行排序
T:根据累积时间进行排序
k:终止一个进程
q:退出程序
r:重新安排一个进程的优先级别(-20~19)

5.解释:

top 
- 14:38:02                   【当前系统时间】
3:57                         【系统已经运行 3 小时 57 分钟】
2 users                      【当前登录 2 个用户】
load average:0.00,0.01,0.05  【系统平均负载:1 分钟的,5 分钟的,15 分钟的】
Tasks:110 total              【任务:110 个总进程】
2 running					 【2 个进程正在运行】
108 sleeping				 【108 个进程睡眠】
0 stoppd					 【0 个进程停止】
0 zombie 					 【0 个僵尸进程(冻结进程)】


Cpu(s): 
0.3 us 						【用户控件占用 CPU 百分比】
0.3 sy						【内核空间占用 CPU 百分比】
0.0 ni						【用户进程控件内改变过优先级的进程占用 CPU 百分比】
99.3 id			   		    【空闲 CPU 百分比】
0.0 wa						【等待输入输出的 CPU 时间百分比】
0.0 hi						【】
0.0 si						【】
Men: 997924k total 		    【物理内存总量 1012352k】
732792k free				【空闲 546536k 的物理内存】
105036k used				【使用了 465816k 的物理内存】
160096k buffe				【61064k 用作内核缓存】
Swap: 2097148 total		    【交换分区总量 2031608k】
2097148 free				【空闲的交换分区总量 2031608k】
0 used			   		    【没有使用交换分区】

PID:进程号
USER:进程所有者的用户名
PR:优先级
NI:nice 值。负值表示高优先级,正值表示低优先级 
VIRT:进程使用的虚拟内存总量,单位 kb 
RES:进程使用的、未被换出的物理内存大小,单位 kb 
SHR:共享内存大小,单位 kb
S:进程状态
%CPU:上次更新到现在的 CPU 时间占用百分比 
%MEM:进程使用的物理内存百分比 
TIME+:进程使用的 CPU 时间总计,单位 1/100 秒
COMMAND:命令

四、查看进程信息

1.pgrep 命令

(1)作用:

根据特定条件查询 PID 信息

(2)常用选项:

-l:显示进程名
-U:指定特定用户
-t:指定终端

(3)示例:

2.pstree 命令

(1)作用:
以树形结构列出进程信息

(2)常用选项:
-a:显示完整信息
-u:列出对应用户名
-p:列出对应 PID 号

(3)示例:

五、进程的启动方式

1.手工启动:

(1)前台启动:

用户输入命令,直接执行程序

(2)后台启动:
在命令行尾加入“&”符号

(3)示例:

(4)进程的前后台调度

Ctrl+Z 将当前进程挂起,即调入后台并停止执行
jobs 命令 查看处于后台的任务列表,加-l 同时显示 PID 号
fg 命令 将后台进程恢复到前台运行,可指定任务程序号
bg 命令 将后台暂停的进程调至后台运行

(5)终止进程的运行

Ctrl+C 中断正在执行的命令
kill、killall 命令
kill 用于终止指定 PID 号的进程
killall 用于终止指定名称的所有进程
-9 选项用于强制终止

(6)示例:

pkill 命令

作用:根据特定条件终止相应的进程

(1)常用选项:
-U:根据进程所属的用户名终止相应进程
-t:根据进程所在的终端终止相应进程

(2)示例:

2.调度启动

(1)使用 at 命令,设置一次性任务计划

服务脚本:/usr/sbin/atd

设置格式:
at [HH:MM] [yyyy-mm-dd] 设置当天的任务计划可不加日期

基本操作:
Ctrl+D 保存退出
atq 查询现有的一次性任务计划
atrm [任务序号] 删除第几项任务

示例

设置在今天的 18:40 自动执行:统计该时间点系统中由 root 用户运行的进程数量,并将该 数值保存到/tmp/ps.root 文件中

设置在 2018 年 12 月 10 日晚上 22:00 自动关机

设置七天后晚上 22:00 自动关机

设置明天晚上 22:00 重启 httpd 服务

(2)使用 crontab 命令,设置周期性计划任务

脚本名称:/usr/sbin/crond

主要配置文件:

  • 全局配置文件:/etc/crontab

  • 系统默认的设置:/etc/cron.*/

  • 用户定义的设置:/var/spool/cron/用户名

管理 cron 计划任务

编辑:crontab -e [-u 用户名]
查看:crontab -l [-u 用户名]
删除:crontab -r [-u 用户名]

注意:-u 选项只有 root 用户可用

(3)crontab 任务配置的格式

(4)时间数值的特殊表示方法

 * 表示该范围内的任意时间 “
 , 表示间隔的多个不连续时间点 “
 * 表示一个连续的时间范围 “
 / 指定间隔的时间频率 “

(5)示例:
每天早上 7:50 自动开启 sshd,22:50 关闭
每隔 5 天清空一次 FTP 服务器公告目录/var/ftp/pub
每周六 7:30 重启 httpd 服务
每周一、三、五的 17:30 打包备份/etc/httpd 目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

改名叫热炸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值