单元 11 — 调查和管理进程 红帽RHCE中文课件.ppt
文本预览下载声明
单元 11 — 调查和管理进程 目标 学习了本单元后,你应该能够 : ● 解释什么是进程 ● 描述如何管理进程 ● 使用作业控制工具 什么是进程 ? ● 进程是被载入内存的一个指令集合 ● 进程 ID(Process ID,PID)号码用来标记各个进程 ● UID、GID、 和 SELinux 语境决定对文件系统的存取和访问 ● 通常从执行进程的用户处继承 列举进程 ● 使用 ps 来查看进程信息 ● 默认显示当前终端中的进程 ● -a 选项包括所有终端中的进程 ● -x 选项包括不连接终端的进程 ● -u 选项显示进程所有者的信息 ● -f 选项显示进程的父进程 ● -o 属性,…选项显示定制的信息 : ● pid、comm、%cpu、%mem、state、tty、euser、ruser 搜索进程 ● 最灵活 :ps 选项 | 其它命令 ps axo comm,tty | grep ttySO ● 按预定义的模式 :pgrep $ pgrep –U root $ pgrep –G student ● 按确切的程序名称 :pidof $ pidof bash 信号 ● 最基本的进程间通讯方式 ● 直接发送给进程,不需要用户界面 ● 程序给每个信号关联动作 ● 发送信号可以使用名称或号码 ● 信号 15,TERM(默认) - 整洁终止 ● 信号 9,KILL – 立即终止 ● 信号 1, HUP – 重读配置文件 ● man 7 signal 显示了完整列表 给进程发送信号 ● 按 PID :kill [信号] pid … ● 按名称 :killall [信号] comm … ● 按模式 :pkill [-信号] 模式 调度优先性 ● 调度优先性决定对 CPU 的使用 ● 优先性受进程的“好心”值(nice value)影响 ● 这个值的范围是 -20 到 19,默认为 0 ● 值越小说明对 CPU 的使用越优先 ● 使用 ps –o comm,nice 命令可以查看 改变调度优先性 ● nice 值可以被改变 …… ● 在启动进程时 : $ nice –n 5 命令 ● 在启动后 : $ renice 5 PID ● 只有根用户才能降低 nice 值(提高优先性) 交互式进程管理工具 ● 命令行 :top ● 图形化界面 :gnome-system-monitor ● 能力 ● 显示实时进程信息 ● 允许排序、中止运行、和重设 nice 值 作业控制 ● 在后台(背景)运行进程 ● 在命令行后添加一个和号():firefox ● 暂时停止某个运行程序 ● 使用Ctrl-z 或发送信号 17(STOP) ● 管理后台作业或暂停的作业 ● 列举作业号码和名称 :jobs ● 在后台恢复运行 :bg [%作业号码] ● 在前台恢复运行 :fg [%作业号码] ● 发送信号 :kill –[信号] [%作业号码] 调度进程来稍后执行 ● 一次性作业使用 at,重复性作业使用 crontab ● 没有被重导向的输出会被邮寄给用户 ● 更用户能够修改其它用户的作业 Crontab 文件格式 ● 项目包含五个用空格分隔的字段,然后是要执行的命令 ● 每行一个项目,行的长度没有限制 ● 字段是 :分钟、小时、时期、月份、星期 ● 注释行以 # 开头 ● 详情参见 man 5 crontab 的说明书页 聚集命令 ● 有两种聚集命令的方法 : ● 复合式 :date;who | wc –l ● 命令会一个接一个地运行 ● 子 shell :(date; who | wc -l) /tmp/trace ● 所有的输出都被发送给单个 STDOUT 和 STDERR 退出状态 ● 进程使用退出状态来报告成功或失败 ● 0 代表成功,1 – 255 代表失败 ● $? 变量保存最近的命令退出状态 ● exit [num] :终止,并把状态设置为 num ● 例如 : $ ping –c1 –W1 station999 /dev/null $ echo $? 2 条件性的执行操作符 ● 根据退出状态而定,命令可以有条件地运行 ● 代表条件性的 AND T
显示全部