第十章Linux进程管理本章内容•进程的概念•查看系统中的进程•控制系统中的进程•自动安排进程任务•了解守护进程在系统中每位用户能运行多个程序,每个程序又可能分成数个进程运行。有些进程会占用大量的系统资源,造成系统负载过重。因此如何做好进程的管理与监督中,是一项重要的工作。作为一个好的管理者,必须掌握系统中最消耗CPU资源的进程,以维持系统的整体性能,因而随时查看系统的状态也是管理员一项重要工作管理运行中的进程进程的类型可以将运行在Linux系统中的进程分为三种不同的类型:交互进程:由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。批处理进程:不与特定的终端相关联,提交到等待队列种顺序执行的进程。守护进程:在Linux在启动时初始化,需要时运行于后台的进程。进程的启动方式手工启动前台启动:是手工启动一个进程的最常用的方式。一般地,用户键入一个命令“ls-l”,这就已经启动了一个进程,而且是一个前台的进程。后台启动:直接从后台手工启动一个进程用得比较少一些,除非是该进程甚为耗时,且用户也不急着需要结果的时候。ls–R/list&调度启动调度启动方式是事先进行设置,根据用户要求让系统自行启动查看系统中的进程ps命令top命令功能:ps命令是用来显示系统瞬间的进程信息,它可以显示出在用户输入ps命令时系统的进程及进程的相关信息。格式:ps[选项][root@hostpp]$ps显示本账号的进程[root@hostpp]$ps–aux查看系统和每位用户全部进程由于ps–aux会列出系统中正在运行的所有进程,因此不易找到特定的进程。若搭配grep命令,则可事半功倍[root@hostpp]$ps–aux|greppp查找pp的进程ps命令Ps命令使用说明常用参数a:显示所有进程u:显示较详细的信息x:显示所有包含其它使用者的进程。使用范例psps–aups-auxps–aux|moreps–aux|grephttpdps–aux/tmp/ps.logTop命令监视系统资源使用情况每5秒钟刷新一次,动态显示按下U键:输入用户名查看用户进程按下K键:输入PID删除进程进程类型交互进程由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。批处理进程不与特定的终端相关联,提交到等待队列中顺序执行的进程。守护进程(Daemon)在Linux在启动时初始化,需要时运行于后台的进程。控制系统中的进程kill命令和killall命令nice和renice命令nohup命令top命令进程的挂起和恢复在X窗口下管理进程kill命令和killall命令kill命令不但能杀死进程,同时也会杀死该进程的所有子进程。kill命令的格式是:kill–signalPID为什么要杀死进程该进程占用了过多的CPU时间该进程缩住了一个终端,使其他前台进程无法运行运行时间过长,但没有预期效果产生了过多到屏幕或磁盘文件的输出无法正常退出用户也可以用killall命令来杀死进程在killall命令后面指定的是要杀死的进程的命令名称,而不是PID范例kill–9927参数-9:强制杀死nice指定程序的运行优先级格式:nice–ncommand[root@hostroot]#nice--5myprogram&在后台以-5的优先级运行myprogram其中n是为进程运行指定的优先级,n的数值越大,进程的优先级越低.n可以取负值让运行级提高。nice命令renice改变一个正在运行的进程的优先级格式:renice–npid是被指定的进程[root@hostroot]#renice--5777将正在运行的PID为777的进程优先级改为-5renice命令有时用户运行的程序可能要花很长时间,如果将它在前台工作,就可能会无法继续处理其他事情,最好的方法就是将它放在后台运行,甚至还可能希望在退出系统时,程序还可以继续运行。后台运行程序[root@hostroot]#cp–r/usr/*test&将/usr目录下的所有子目录及文件复制到/root/test目录下的工作放到后台运行[root@hostroot]#fg放到前台并显示执行过程按下Ctrl+z键挂起该运行程序[root@hostroot]#bg再将执行过程放到后台[root@hostroot]#jobs查看被挂起的进程在后台运行程序的&、bg命令进程的挂起和恢复进程的中止(挂起)和终止挂起(Ctrl+Z)终止(Ctrl+C)进程的恢复恢复到前台继续运行(fg)恢复到后台继续运行(bg)查看被挂起的进程(jobs)自动安排进程任务自动启动进程的几个命令at安排作业在某一时刻执行一次batch安排作业在系统负载不重时执行一次系统负载大于1.5不运行。cron安排周期性运行的作业at和batchat命令用来指定在某一时刻执行命令,at命令的格式是:at[选项]时间at的配置文件作用:限制哪些用户可以使用at命令/etc/at.allow/etc/at.denybatch命令的用法和at类似,只是用户可以不必指定时间,batch会在系统负载小于1.5的时候运行命令。应用程序cronCron进程搜索crontab文件并载入内存(crontab文件即/etc/crontab文件和/var/spool/cron/目录下以用户名命名的文件)cron进程启动以后,它将首先检查是否有用户设置了crontab文件,如果没有就转入“休眠”状态,释放系统资源cron进程每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令。命令执行结束后,任何输出都将作为邮件发送给crontab的所有者crontab命令的作用及格式作用:用于生成cron进程所需要的crontab文件crontab的命令格式crontab[-uuser]filecrontab[-uuser]{-l|-r|-e}-l该选项将使在标准输出上显示当前的crontab-r删除当前的crontab-e使用编辑器编辑当前的crontab文件。当结束编辑离开时,编辑后的文件将自动安装MinuteHourDayMonthDayofWeekCommand字段所代表的意义可用范围Minute每小时的第几分钟运行该程序0~59Hour每一天的第几小时运行该程序0~23Day每个月的第几天运行该程序1~31Month每一年的第几个月运行该程序1~12DayofWeek每一周的第几天运行该程序0~6Command指定要运行的程序输入要执行的命令及参数Crontab文件格式204***program指定每天的4点20分执行program命令5039**program指定每月的9日3点50分执行program命令1089*program或108sep*program指定每年的9月8日0点1分执行program命令范例计划任务创建方法(2种)如果需要在每周2、4、6凌晨3点使系统进入维护状态,重新启动系统,设该文件名为/root/reboot.cron:1.创建一个crontab#echo“0003**2,4,6shutdown–r+10”/root/reboot.cron2.使用crontab命令安装/root/reboot.cron文件#crontab/root/reboot.cron安装计划任务创建方法2[root@hostroot]#corntab–e创建root用户的corn文件5514***ls/rootcorn内容[pp@hostpp]$crontab–e创建pp用户的corn文件3018***ll/home/ppcorn内容[root@hostroot]#crontab–r删除root的cron守护进程Linux系统在启动时就启动很多进程(例如:init进程、等待用户登录的进程login、等待FTP客户连接的vsftpd等),这些进程向本地和网络用户提供了Linux的系统功能接口,直接面向应用程序和用户。将这些进程称为守护进程(daemon)。按照服务类型可以分为如下两类:系统守护进程:如atd、cron、lpd、syslogd、login等。网络守护进程:如sshd、httpd、sendmail、xinetd等。CentOS常见的守护进程硬件管理守护进程系统管理守护进程文件服务守护进程数据库管理守护进程网络设备守护进程网络服务守护进程硬件管理守护进程apmd高级电源管理。传统的电源管理标准,对于笔记本电脑比较有用acpid常笔记本电脑需要启动电源进行管理alsasoundAlsa声卡驱动守护程序。cups是通用UNIX打印守护进程,为Linux提供第三代打印功能。gpm守护进程为文本模式下的Linux程序irqbalance多个系统处理器环境下的系统中断请求进行负载平衡的守护程序kudzu硬件自动检测程序,会自动检测硬件是否发生变动pcmcia主要用于支持笔记本电脑接口守护进程。smartd监控硬盘是否出现故障mdmonitorRAID相关设备的守护程序。系统管理守护进程atdat和batch命令守护进程,用户用at命令调度的任务anacron一个自动化运行任务守护进程crondcron周期地运行用户调度任务cpuspeed监测系统空闲百分比psacct该守护进程包括几个工具用来监控进程活动的工具syslog让系统引导时启动syslog和klogd系统日志守候进程的脚本。xfsXWindow字型服务器守护进程,为本地和远程X提供字型集。yum-updateRPM操作系统自动升级和软件包管理守护进程。iiim中文输入法服务器守护进程。文件服务守护进程amd自动安装NFS守护进程。autofs自动安装管理进程automount,与NFS相关,依赖于NIS服务器。netdump远程网络备份服务器守护进程。diskdump服务器磁盘备份守护进程。portmap用来支持RPC连接,RPC被用于NFS以及NIS等服务。nfs网络文件系统守护进程。nfslock守护进程提供了NFS文件锁定功能。rsyncremotesync远程数据备份守护进程。数据库管理守护进程bootparamd引导参数服务器,为LAN上的无盘工作站提供引导所需的相关信息。ldapldap目录访问协议服务器守护进程。mysqld一个快速高效可靠的轻型SQL数据库引擎守护进程。ypbind为NIS(网络信息系统)客户机激活ypbind服务进程。ypservNIS主服务器守护进程。网络设备及服务守护进程bluetooch蓝牙服务器守护进程。pppoeADSL连接守护进程。irda红外端口守护进程。snmpd本地简单网络管理守护进程network激活/关闭启动时的各个网络接口守护进程。iptablesiptables防火墙守护进程。proftpdftp服务器的守护程序。smbSamba文件共享/打印服务守护进程。xinetd支持多种网络服务的超级服务器守护进程。…………本章小结•掌握各种进程命令的使用:•ps、kill、nice、renice、killall•掌握任务计划的配置:•at、cron、crontabe•认识基本守护进程:本章结束谢谢观看~_~