系统监控及进程管理PPT课件_第1页
系统监控及进程管理PPT课件_第2页
系统监控及进程管理PPT课件_第3页
系统监控及进程管理PPT课件_第4页
系统监控及进程管理PPT课件_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第6章 系统运行监控,一个良好的系统,不仅要有较高的安全性,而且要有较高的稳定性,尤其是在商业或者合作环境下,无论是在关键应用程序上工作还是在Internet上进行电子商务,都希望系统一直处于稳健状态。做好系统监控和进程管理工作正是实现该目标的重要途径。优秀的系统管理员都会非常警惕地监控系统中的运行进程,包括CPU、内存、磁盘、网络和打印机这类资源的使用,诸如检测系统日志、网络流量、监控资源的使用这样的操作有助于发现异常并避免发展中的问题。,本章学习要点:,理解对系统运行进行监控的意义 使用系统监视器进行系统监视 使用命令行或图形工具监控文件系统 磁盘性能监控 系统的内存监控 系统的处理器和网

2、络监控 学会进行进程调度 掌握监视进程的常用命令,6.1 文件系统使用情况监控,确定文件系统使用情况 rootrhel5 # df 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/hda7 12088692 5027640 6446972 44% / none 110968 0 110968 0% /dev/shm /dev/sda1 32128 29626 2502 93% /mnt/usb 选择菜单“应用程序”|“系统工具”|“磁盘使用分析器”命令,打开“磁盘使用分析器”窗口 开放文件情况监控 :lsof命令,6.2 磁盘性能监控,使用iostat命令:iostat实用程序可以用

3、来收集设置或分区的统计信息 使用sar命令:sar也是sysstat命令的一部分,它用来产生与I/O、CPU和内存相关的报表,6.3 系统性能监控,top命令 :top命令用于监控系统的资源,包括内存、交换分区和CPU的使用率等 使用top监视特定用户 :按下“U”键,然后指定用户账号回车即可 终止执行中的进程 :方法是先按“K”键,此时top信息中会出现“PID to kill:”语句,然后输入要删除的PID(Process ID,进程标识符),按下Enter键 使用系统监视器,6.4 系统处理器情况监控,uptime是一个简单程序,显示当前时间、系统正常运行时间、登录的用户数和过去1分钟、

4、5分钟和15分钟内的平均CPU负荷 sysstat家族的另一个成员mpstat提供了关于系统中的每个处理器的统计信息。,6.5 内存使用情况监控,Linux系统存在两种类型的系统内存:物理与虚拟。要显示自由内存与已使用的内存数量,包括物理内存和虚拟(交换)内存,可使用free命令 要报告关于物理和虚拟内存的更详细的统计信息,可使用vmstat,它是procps程序包的一部分,6.6 网络子系统情况监控,网络子系统是最需要仔细监视的系统资源,可以使用 ifconfig用来快速地判断设备是否有IP地址,或者用来检索接口的MAC地址 要监视网络上的通信量,可使用tcpdump实用程序 如果喜欢用图形

5、化交互式应用程序查看程序包传输,可以尝试Wireshark,6.7 系统进程管理,捕获进程状态 :要查看系统中执行的进程时,ps(process status)是经常使用的命令 查看较详细的说明 查看其他用户的进程 查看后台执行的进程 将进程清单排序 搭配其他命令查询进程 删除进程 控制进程优先级,6.7.1 理解进程,进程在操作系统中执行特定的任务,它是一个随着程序执行过程不断变化的实体。进程与程序是有区别的:进程不等同于程序,它由程序产生;程序是一个静态的指令集合,不占用系统的运行资源,而进程是一个随时都可能发生变化的、动态的、使用系统运行资源的、正在执行着的程序。,进程的概念,进程(Pr

6、ocess) 是一个程序在其自身的虚拟地址空间中的一次执行活动。 之所以要创建进程,就是为了使多个程序可以并发的执行,从而提高系统的资源利用率和吞吐量。 进程的类型 交互进程:由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。 批处理进程:不与特定的终端相关联,提交到等待队列种顺序执行的进程。 守护进程:在Linux在启动时初始化,需要时运行于后台的进程。 进程的启动方式 手工启动 前台、后台 调度启动 Cron、at,6.7.2 启动进程,程序或者命令的执行实际上是通过进程实现的。通常情况下,程序或者命令是保存在硬盘上的,当在命令行中输入一个可执行程序的文件名或者命令并

7、按下Enter键后,Fedora内核就将该程序或者命令的相关代码加载到内存中开始执行;Fedora会为该程序或者命令创建一个或者多个相关的进程,通过进程完成特定的任务。 前台 后台,6.7.3 调度进程,在Linux系统中,允许多个进程并发执行。但是,通常情况下,系统中的资源总是有限的,如果系统中并发执行的进程数量过多,就会造成系统的整体性能下降,尤其是当系统中存在黑客进程或者病毒进程时,甚至可能会造成系统瘫痪。因而,有必要根据一定的策略 对系统中的进程进行调度,例如,将可疑的进程终止,将不紧急的进程挂起或者降低其优先级等。系统管理员或者普通用户都可以对进程进行调度,但是执行这种操作时要非常小

8、心,因为有些进程是与系统运行相关联的,不能对它们有错误的调度。,可以使用以下几种方法调度进程: 在系统监视器的进程选项卡中调度进程 在top命令的执行中使用交互命令调度 在命令行中直接执行各种命令调度,6.7.4 监视进程,当对进程进行调度时,需要了解系统中当前进程的具体状况,也就是说,要了解当前有哪些进程正在运行,哪些进程已经结束,有没有僵死的进程,哪些进程占用了过多的系统资源等。,查看系统中的进程,命令格式: ps 选项 可以确定有哪些进程正在执行和执行的状态,进程是否结束、进程有没有僵死,哪些进程占用了过多的系统资源等 常用选项 a:显示所有进程 e:在命令后显示环境变量 u:显示用户名

9、和启动时间等信息 x:显示没有控制终端的进程 f:显示进程树 w:宽行输出 -e:显示所有进程 -f:显示全部 操作举例 显示出当前用户在shell下所运行的进程 # ps 列出系统中正在运行的所有进程的详细信息 # ps -aux 显示系统进程树 # ps -auxf,改变进程优先级(1),命令格式:nice option command arg. 说明:以更改过的优先序来执行程序, 如果未指定程序, 则会印出目前的排程优先序, 内定的 adjustment 为 10, 范围为 -20 (最高优先序) 到 19 (最低优先序) 参数:-n adjustment, -adjustment, -

10、adjustment=adjustment 皆为将该原有优先序的增加 adjustment -help 显示求助讯息 -version 显示版本资讯 范例: 将 ls 的优先序加 1 并执行 : nice -n 1 ls 将 ls 的优先序加 10 并执行 : nice ls将 ls 的优先序加 10 并执行 注意 : 优先序 (priority) 为操作系统用来决定 CPU 分配的参数,Linux 使用回合制(round-robin)的演算法来做 CPU 排程,优先序越高,所可能获得的 CPU时间就越多。,改变进程优先级(2),命令格式:renice +/-n -p pid . -g pgr

11、p . -u user . 说明:重新指定一个或多个行程(Process)的优先序(一个或多个将根据所下的参数而定) 参数: -p pid 重新指定行程的 id 为 pid 的行程的优先序 -g pgrp 重新指定行程群组(process group)的 id 为 pgrp 的行程 (一个或多个) 的优先序 -u user 重新指定行程拥有者为 user 的行程的优先序 范例: 将行程 id 为 987 及 32 的行程与行程拥有者为 daemon 及 root 的优先序号码加 1 : renice +1 987 -u daemon root -p 32 注意 : 每一个行程(Process)

12、都有一个唯一的 (unique) id。,杀死系统中的进程(1),为什么要杀死进程 该进程占用了过多的CPU时间 该进程锁住了一个终端,使其他前台进程无法运行 运行时间过长,但没有预期效果 产生了过多到屏幕或磁盘文件的输出 无法正常退出 常用进程信号 HUP/SIGHUP/1: 从终端上发出的结束信号,发送给守护进程可使其重新读取配置文件 INT/SIGINT/2: 从键盘上发出的中断信号(ctrl+c) QUT/SIGQUT/3: 从键盘上发出的退出信号(ctrl+) KILL/SIGKILL/9: 结束接受信号的进程(强行杀死进程) TERM/SIGTERM/15:kill命令默认的终止信

13、号 STOP/SIGSTOP/19:从键盘来执行的信号(ctrl+d) 在系统中通过向进程发送进程信号实现对进程的控制。 向进程发送进程信号可以使用kill和killall等命令。,杀死系统中的进程(2),kill命令 功能:向指定PID的进程发送进程信号 格式:kill -signal 举例: 杀死PID为1621的进程 $ kill 1621 强行杀死PID为1621的进程 $ kill -9 1621 killall命令 功能:向指定进程名的进程发送进程信号 格式:killall -signal 举例: 杀死进程名为cat的所有进程 $ killall cat 强行杀死进程名为named

14、的进程 # killall -9 named 使xinetd守护进程重新读取其配置文件 # killall -1 xinetd,nohup命令 功能:使进程在退出登录后仍旧继续执行。 格式:$ nohup 结果:如果程序program有结果输出,输出结果将会被保存到当前目录下的一个文件名为 nohup.out的文件中,如果用户在当前目录没有写的权限, 则结果将会被保存到用户主目录下的nohup.out文件中。 举例: # nohup mcal top -n 10 使用者将不能利用交谈式指令来对行程下命令 : top -s 将更新显示二次的结果输入到名称为 top.log 的档案里 : top

15、-n 2 -b top.log,作业控制,作业控制 是指控制当前正在运行的进程的行为,也称为进程控制。 作业控制是Shell的一个特性,使用户能在多个独立进程间进行切换。 实施作业控制的常用命令和快捷键 cmd TCP端口, UDP端口 查看端口: “netstat -a -n”命令 关闭/开启端口 常用端口 。,at命令,列出在指定的时间和日期在计算机上运行的已计划命令或计划命令和程序。 格式 : at optionTIMECMD 示例: 定时关机 at 21:00 ShutDown S T30 三天后的下午 5 点锺执行 /bin/ls /tmp: at 5pm + 3 days /bin

16、/ls /tmp明天的 17:20 执行 /bin/date : at 17:20 tomorrow /bin/date 任何情况下,超级用户都可以使用这个命令。对于普通用户,是否可以使用,取决于/etc/at.allow 和 /etc/at.deny文件。,cron守护进程简介,功能 安排每小时、每天、每月或每周都要定期执行的进程任务。 cron的运行机制 cron进程搜索crontab文件并载入内存 (crontab文件即/etc/crontab文件和/var/spool/cron/目录下以用户名命名的文件)。 cron进程启动以后,它将首先检查是否有用户设置了crontab文件, 如果没

17、有就转入“休眠”状态,释放系统资源。 cron进程每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令。 命令执行结束后,任何输出都将作为邮件发送给crontab的所有者。,使用crontab命令安排自动运行的进程任务,功能:使用crontab命令装载cron进程所需要的crontab文件。 格式: 格式1:crontab -u user -l|-r|-e 格式2:crontab -u user filename 其中: -u user: 修改指定用户的crontab文件。如果不指定该选项,crontab将默认为是操作者本人的crontab。 -l:在标准输出上显示当前的cron

18、tab任务。 -r:删除当前的crontab任务。 -e:使用环境变量指定的编辑器编辑crontab文件。当结束编辑离开时,编辑后的文件将自动安装。 filename:是一个crontab文件的来源文件,crontab文件的来源文件,crontab文件的来源文件的格式 minute hour day-of-month month-of-year day-of-week username commands 其中: minute:一小时中的哪一分钟(059) hour:一天中的哪个小时(023) day-of-month:一月中的哪一天(131) month-of-year:一年中的哪一月(112

19、) day-of-week:一周中的哪一天(06) username:以指定的用户身份执行commands commands:执行的命令(可以是多行命令或者是脚本调用) 五个时间字段的语法说明 不能为空,可以使用统配符*表示任何时间。 可以指定多个值,它们之间用逗号间隔。例如:1,3,7。 可以指定时间段,用减号间隔。例如:0-6。 可以用/n表示步长。例如:8-18/2表示时间序列8,10,12,14,16,18。,Crontab示例,01 * * * * /some/script 在每个工作日、每一月、 每一天、每一小时的第一分钟 0,10,20,30,40,50 * * * * /som

20、e/script 每10分钟运行/some/script 01 1 1 * * /some/script 每月的第一天1:01分运行,01 * * * * /some/script 每天每小时的第1分钟 02 4 * * * /some/script 每天上午4:02 22 4 * * 0 /some/script 每周日上午4:22 42 4 1 * * /some/script 每月1号4:42,Red Hat 安排cron任务的方法,除了每个用户都可以安排自己的cron任务之外, Red Hat 还为超级用户提供了一种方便的自动安排进程任务的方法。 涉及的文件和目录 /etc/crontab # cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论