您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > Linux系统第7章 进程管理
Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com基础内容介绍案例一及其相关内容案例二及其相关内容课程总结与操作实训课后习题进程管理第七章Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com本章教学目标:掌握进程管理的命令、cron的使用熟悉进程的启动方式了解进程定义、分类Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com难点:Linux进程管理重点:掌握如何使用进程管理命令及任务自动化操作。关键词:进程cronLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com7-1进程的基本概念1、进程的定义•是指一个具有独立功能的程序在一个数据集合上的一次运行活动。•即每个程序模块和它执行时所处理的数据组成了进程。Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com2、进程和程序的区别•进程是动态的,而程序是静态的•进程是有生命的,而程序是永久的•一个程序可以包含若干个进程•一个进程可以包含若干个程序(例:调用别的程序)Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com3、进程的基本状态及其转换(1)进程的基本状态•运行态(running):在CPU上运行•就绪态(ready):获得了CPU外的一切资源,可以随时被CPU调用•阻塞态(blocked):也叫等待态,正在等待某一事件的发生Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com(2)进程间的转换Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com4、进程的类型•交互进程:由shell启动,可以工作在前/后台•批处理进程:不需要与终端相关,提交在等待队列的作业•守护进程:shell/linux系统自动启动,工作在后台,用于监视特定服务Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com5、进程启动方法进程的启动是由于执行一个程序而启动的,在RedHatEnterpriseLinuxAS4.0系统中启动进程的方式有两种:(1)手工启动•前台:直接输入程序名(如:#vi)•后台:程序名后加&(如:#vi&)(2)调度启动•系统在指定时间运行指定的程序Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.comLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com给出案例1.利用VI手工启动两个进程在后台运行;2.用VI编辑一个文件,并转入到后台运行;3.把在后台运行中最前面的VI进程调入到前台运行;4.杀死中间的一个VI进程;5.一次性全部杀死所有的VI进程;案例一Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com7-2进程管理的常用命令1、ps•功能:静态显示系统进程信息•格式:ps[参数]•参数:-a//显示所有进程(不包括没有终端的进程)-u//显示用户名和启动时间-x//显示没有终端的进程-e//显示所有进程(不显示进程状态)与案例有关的内容分析Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com•实例:#ps//显示当前用户进程#ps–aux//显示所有进程信息Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com#ps–auxUSERPID%cpu%memvszrssttystatstarttimecommandroot10.00.31096476?s18:200:04init…………………..说明:以上输出的信息包括USER进程的启动用户PID进程号(进程的唯一标识)%CPU占CPU的百分比%MEM占用内存百分比VSZ占用的虚拟内存大小RSS占用的物理内存大小TTY进程的工作终端(?表示没有终端)STAT进程的状态:R:正在执行中S:静止状态T:暂停执行Time占用的cpu的时间Command运行的程序Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com2、top•功能:动态显示系统进程信息•格式:top•实例:#top(默认每5秒钟刷新一次)top的操作命令:•help//获取top的帮助•kPID//终止指定的进程•q//退出topLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com3、kill•功能:终止进程•格式:kill-9PID•实例:#kill-93#kill-9358//一次杀死3,5,8多个进程Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com4、killall•功能:终止指定程序名的所有进程•格式:killall-9程序名•实例:#killall-9vsftpd//杀死所有对应vsftpd程序的进程Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com5、作业的前后台操作(1)jobs•功能:查看后台作业•格式:jobs•实例:#jobsLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com(2)fg•功能:把后台的作业调入前台运行•格式:#fg[作业编号]•实例:#fg//队首的作业调入前台运行#fg2//将队列中的2号作业调入前台运行Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com(3)bg功能:恢复后台挂起的进程在后台运行格式:bg[作业编号]•ctrl+z将前台程序转入后台停止运行•ctrl+c将终止前台程序的运行实例:•#bg//将队首的作业调入后台运行•#bg3//将3号作业调入后台运行Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com6、pstree功能:显示系统中已经运行的服务进程/显示守护进程树#pstree#pstree|grepdhcpdLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com分组操作…………………………点评、操作演示:………………………………………..Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.comLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com案例二1.把当前时间改为2008年8月8日16点30分30秒;2.利用at设置一个任务自动化,在当天17:00钟,在根目录下自动创建一个abc目录,并进入到abc目录中,建立一个空的文件test,同时对该文件进行打包成test.tar;3.让该系统在每周的1、3、5下午17:30自动关闭该系统;4.在该系统在每月的16号自动启动smb服务;Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com7-3任务的自动化1、at(后台运行一次)•功能:安排系统在指定时间运行程序•格式:at[参数]时间•参数:-m//任务结束后会发送mail通知用户-f文件名//从指定文件中读取执行的命令-q[a-z]//指定使用的队列与案例有关的内容分析Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com•时间的表示方法:绝对表示方法:midnight//当天午夜moon//当天中午teatime//当天下午4点hh:mmmm/dd/yyLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com相对表示方法:now+nminutes//从现在起向后n分钟now+ndays//从现在起向后n天now+nhours//从现在起向后n小时now+nweeks//从现在起向后n周Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com•实例:#at21:003/11/2005cd/back/tar-cvftmp.tar/tmpinit0ctrl+d//结束作业Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com与at相关的还有atq显示队列中的作业信息命令和atrm删除队列作业的命令,如下例所示。//显示at等待队列的作业信息#atq12007-01-2523:00aroot22007-01-2500:00aroot//删除at等待队列中序号为1的作业[root@RHEL4/]#atrm1Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com2、cron•功能:安排作业让系统在指定时间周期运行•原理:cron进程,每隔一分钟,检查/var/spool/cron目录下用户提交的作业文件中有无任务需要运行•配置:Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com(1)建立crontab文件•#vi/root/root.cron•格式:分时日月星期要运行的程序•实例:01211*/sbin/shutdown–rnow•说明:数字表示具体时间;*表示任何时间;0-23/2表示每隔2小时,即:0:25,2:25,4:25;1,3,5:表示多种用“,”隔开。Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com(2)运行crontab命令•功能:生成用户的cron文件•格式:crontab[参数]文件名•参数:-u用户名//指定具体用户的cron文件-r//删除用户的crontab文件-l//显示用户的cron文件-e//编辑用户的crontab文件Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com•实例:#crontab/root/root.cron//建立当前标准格式用户crontab文件#crontab–r//删除当前用户的cron文件Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com配置案例:•要求:root用户在每周2,4,6早上3点启重系统•配置过程:#vi/root.cron(以root用户登录)03**2,4,6/sbin/shutdown-rnow#crontab/root.cronLinux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.comcrontab命令提交的调度任务存放在/var/spool/cron目录中,并且以提交的用户名称命名,等待crond进程来调度执行。Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com注意:(1)/etc/at.deny和/etc/at.allow文件用于控制用户运行at的任务可以通过/etc/at.deny和/etc/at.allow文件控制执行at命令的用户,at.deny存放禁止执行at命令用户名;at.allow存放允许at命令的用户名。//禁止user1用户执行at命令安排调度任务#vi/etc/at.deny//向文件中添加如下内容user1Linux进程管理主讲:施欢平QQ:382772472mail:shifoo924@163.com
本文标题:Linux系统第7章 进程管理
链接地址:https://www.777doc.com/doc-3373447 .html