龙空技术网

8Linux系统管理之Linux系统进程和计划任务管理

IT医生 132

前言:

今天各位老铁们对“计划任务启动后进程不关闭吗”大约比较关切,朋友们都想要知道一些“计划任务启动后进程不关闭吗”的相关知识。那么小编在网络上收集了一些对于“计划任务启动后进程不关闭吗””的相关文章,希望我们能喜欢,看官们快快来学习一下吧!

进程和计划任务管理

一 查看和控制进程

·程序和进程的关系

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

进程:在CPU及内存中运行的程序代码、是动态执行的代码

父、子进程:每个进程可以创建一个或多个进程

·查看进程信息

1 ps命令

用途:查看静态的进程统计信息

格式:ps [选项]

选项:

a:显示当前终端下的所有进程信息,包括其他用户的进程

x:显示当前用户在所有终端下的进程信息

u:显示进程的执行者

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

-l:使用长格式显示进程信息

-f:使用完成的格式显示进程信息

常用以下组合

显示所有系统进程信息

长格式显示所有系统进程信息

其中

USER:启动给进程的用户

PID:该进程在系统中的数字ID号,在当前系统中是唯一的

%CPU:CPU占用百分比

%MEM:内存占用百分比

VSZ:占用swap空间的大小

RSS:占用常驻内存(物理内存)的大小

TTY:表明进程在哪个终端运行;“?”表示位置或不需要终端

STAT:显示进程的当前状态:S休眠、R运行、Z僵死、<高优先级、N低优先级、S仪进程、+前台进程、

START:启动该进程的时间

TIME:该进程占用的CPU时间

COMMAND:启动该进程的命令名称

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

2 top命令

用途:查看动态的进程排名信息

格式:top

动态的查看所有进程的状态信息

其中

Tasks(系统任务信息): total(总进程数)、running(正在运行的进程数)、sleeping(休眠的进程数)、stopped(终止的进程数)、zombe(僵死无响应的进程数)

CPU(cpu占用信息):us用户占用、sy内核占用、ni优先级度占用、id空闲CPU、wa I/O等待占用、hi硬件终端占用、si软件终端占用、st虚拟化占用

Mem(内存占用信息):total总内存空间、used已用内存、free空闲内存、buffers缓存空间

Swap(交换空间占用):total总内存空间、used已用交换空间、free空闲交换空间、cached缓存空间

Top界面是全屏显示,因此还有以下操作

P键根据CPU占用情况对进程列表进行排序

M键根据内存占用情况进行排序

N键根据启动时间进行排序

h键可以获得top程序的在线帮助信息

q键可以正常退出top程序

使用空格键可以强制更新进程状态显示

3 pgrep命令

用途:根据特定条件查询进程PID信息

格式:pgrep –lu “字符”或用户名

选项:

-l:输出进程名

-U:指定用户

查询进程名包含“log”的进程及其PID

查询用户root在tty1终端上运行的进程及PID号

4 pstree命令

用途:输出系统中各进程的树形结构

格式:pstree –aup

选项:

-a:显示完整信息

-u:列出对应用户名

-p:列出对应PID号

查看当前系统的进程树

查看root用户打开的进程树

·控制进程

进程的启动方式

1手工启动

手工前台启动:用户输入命令,直接执行程序;要等待进程结束才能继续吓一跳命令

手工后台启动:在命令行尾加入“&”符号;无需等待,适用于耗时较长的进程

拷贝一个大文件时可以使用后台启动;或提示进程号

2调度启动

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

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

稍后详解

改变进程的运行方式

1挂起当前的进程

Ctrl+Z 组合键:将当前进程挂起,即调入后台并停止执行

2查看后台进程

jobs命令:查看处于后台的任务列表;加-l 显示进程号

3恢复后台停止的进程到前台运行

fg命令:将处于后台的进程恢复到前台运行,需指定任务序号

4恢复后台停止的进程到后台继续运行

bg命令:恢复后台停止的进程到后台继续运行,需指定任务序号

终止进程

1中断正在执行的命令

Ctrl+C组合键

2终止指定PID号的进程

先用pgrep查询指定进程的PID号

kill用于终止指定PID号的进程

-9 选项用于强制终止;若该进程已经无法响应终止信号,则可以结合“-9”选项强行杀死进程;强制终止进程时可能会导致程序运行的部分数据丢失,不要轻易使用“-9”选项

3终止指定名称的所有进程

killall用于终止指定名称的所有进程

4根据特定条件终止相应的进程

pkill命令

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

常用命令选项:

-U:根据进程所属的用户名终止相应进程

-t:根据进程所在的终端终止相应进程

二 计划任务

·at命令

一次性计划任务,确保atd服务在运行

使用at命令设置的任务只在指定时间点执行一次,若只指定时间则表示当天的该时间,若只指定日期则表示该日期的当前时间

可以在at交互环境中输入多条命令,最后按Ctrl+D组合键提交

服务脚本名称:/etc/init.d/atd

设置格式:at [HH:MM] [yyyy-mm-dd]

1当天的指定时间执行某任务

若只指定时间则表示当天的该时间

自动关机

2指定的日期执行某任务

3查看计划的任务

只能查看未执行的

4删除计划任务

删除第三条计划任务

·crontab命令

按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作,属于周期性计划任务

启用周期性任务有一个前提条件,即对应的系统服务crond必须已经运行

服务脚本名称:/etc/init.d/crond

主要设置文件

全局配置文件,位于文件:/etc/crontab

系统默认的设置,位于目录:/etc/cron.*/

用户定义的设置,位于文件:/var/spool/cron/用户名

管理cron计划任务

root用户可以管理指定用户的计划任务普通用户只能管理自己的计划任务

用户只需执行“crontab -e”命令后会自动调用文本编辑器(默认为vi)并打开“/var/spool/cron/用户名”文件,无需手动指定文件位置

编辑计划任务:crontab -e [-u 用户名]

查看计划任务:crontab -l [-u 用户名]

删除计划任务:crontab -r [-u 用户名]

crontab任务配置的格式:时间周期设置 任务内容设置

时间周期包括五个字段:分钟 小时 日期 月份 星期

其中

例如

周一到周五每天17:00关机

时间数值的特殊表示方法

* 表示该范围内的任意时间如“3, 4, 6, 8”

, 表示间隔的多个不连续时间点;

- 表示一个连续的时间范围;如“1-4”表示整数1,2,3,4

/ 指定间隔的时间频率;如在日期字段中的“*/3”表示每隔3天

应用示例

0 17 * * 1-5 周一到周五每天17:00

30 8 * * 1,3,5 每周一、三、五的8点30分

0 8-18/2 * * * 8点到18点之间每隔2小时

0 * */3 * * 每隔3天

示例1(root用户):

每天早上7:50自动开启sshd服务,22点50时关闭

每隔5天清空一次FTP服务器公共目录/var/ftp/pub

每周六的7:30时,重新启动httpd服务

每周一、三、五的17:30时,打包备份/etc/httpd目录

示例2(jerry用户)

每周日晚上23:55时将“/etc/passwd”文件的内容复制到宿主目录中,保存为pwd.txt文件

示例3:

root用户查看自己的计划任务列表

查看并删除jerry用户设置的计划任务

标签: #计划任务启动后进程不关闭吗