当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux系统多进程查看及调配管理方法

Unix/Linux
mysql+httpd+gd+php+zend
automake 小回顾
unix黑客精神的最好诠释
www
sun t3存储的设置
RPM简明中文手册
Linux爱好者入门教程 序章 (持续更新)
第一章 Linux基础知识 (飘心)
linux下进程与线程
浅谈如何学习linux
第二章 Linux安装
硬件安装指南
Windows 2000 的桌面不見了的解決方法
部分的ADSL路由器默认帐号密码
如何设定安全log服务器呢?
iptables 规则速查
网友学习 Linux 的七点忠告
sniffer的含义及原理
Linux编程白皮书 第二章 内存管理
Linux编程白皮书 第二章 内存管理 2.1.1 请求调页 --2.1.5 访问控制

Unix/Linux 中的 Linux系统多进程查看及调配管理方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 79 ::
收藏到网摘: n/a

  本节中要介绍的不只是进程查看方面的内容,由于Linux是个多用户系统,有时候也要了解其他用户现在在干什么,所以在本节中还将接触多用户方面的内容。同时Linux是一个多进程系统,经常需要对这些进程进行一些调配和管理;而要进行管理,首先就要知道现在的进程情况:究竟有哪些进程?进程情况如何?等等。所以需要进程查看方面的工作。

  who命令
  该命令主要用于查看当前在线上的用户情况。这个命令非常有用。如果用户想和其他用户建立即时通讯,比如使用talk命令,那么首先要确定的就是该用户确实在线上,不然talk进程就无法建立起来。又如,系统管理员希望监视每个登录的用户此时此刻的所作所为,也要使用who命令。

  who命令的常用语法格式如下:

  who [imqsuwHT] [--count] [--idle] [--heading] [--help] [--message] [--mesg] [--version] [--writable] [file] [am i]

  所有的选项都是可选的,也就是说可以单独使用who命令。

  不使用任何选项时,who命令将显示以下三项内容:

  login name:登录用户名;

  terminal line:使用终端设备;

  login time:登录到系统的时间。

  如果给出的是两个非选项参数,那么who命令将只显示运行who程序的用户名、登录终端和登录时间。通常这两个参数是“am i”,即该命令格式为:“who am i”。

  下面对who命令的常用参数进行说明。

  -m 和“who am i”的作用一样,显示运行该程序的用户名。
  -q,--count 只显示用户的登录帐号和登录用户的数量,该选项优先级高于其他任何选项。

  -s 忽略。主要是用于和其他版本的who命令兼容。

  -i,-u,--idle 在登录时间后面显示该用户最后一次对系统进行操作至今的时间,也就是常说的“发呆”时间。

  -H,--heading 显示一行列标题。常用的标题如表4-2所示。

  表4-2who命令输出常用标题

  标 题  说 明

  USER  用户登录帐号

  LINE  用户登录使用终端

  LOGIN-TIME  用户登录时间

  IDLE  用户空闲时间,即未进行操作的时间

  PID  用户登录shell的进程ID

  FROM  用户网络地址

  -w,-T--mesg,--message,--writable 和-s选项一样,在登录帐号后面显示一个字符来表示用户的信息状态:

  +:允许写信息;

  -:不允许写信息;

  ?:不能找到终端设备。

  --help 在标准输出上显示帮助信息。

  --version 在标准输出上显示版本信息。

  下面介绍who命令的一些基本用法。

  如果需要查看在系统上究竟有哪些用户,可以直接使用who命令。
  [例17] 查看登录到系统的用户情况

  $ who

  root tty1 Mar 17 13:49

  foxy tty2 Mar 17 13:49

  root tty3 Mar 17 13:49

  bbs ttyp0 Mar 17 13:49 (river.net)

  可以看到,现在系统一共有四个用户。第一列是登录用户的帐号;第二列是登录所使用的终端;第三列是登录时间;第四列是用户从什么地方登录的网络地址,这里是域名。

  一般来说,这样就可以了解登录用户的大致情况了。但有时上面的显示不是那么直观,因为没有标题说明,不容易看懂,这时就需要使用-H选项了。

  [例18] 查看登录用户的详细情况,键入:

  $ who -uH

  显示如下:

  USER LINE LOGIN-TIME IDLE FROM

  root tty1 Mar 17 13:49 .

  foxy tty2 Mar 17 13:49 00:01

  root tty3 Mar 17 13:49 00:01

  bbs ttyp0 Mar 17 13:49 00:01 (river.net)

  这样一目了然。其中-u选项指定显示用户空闲时间,所以可以看到多了一项IDLE。第一个root用户的IDLE项是一个“.”,这就说明该用户在前1秒仍然是活动的,而其他用户后面都有一个时间,称为空闲时间。

  最后来看看使用“who am i”格式命令的结果:

  233.river.net!root tty1 Mar 17 13:49

  可见只显示出了运行该who命令的用户情况,当然这时候不存在空闲时间。

  who命令应用起来非常简单,可以比较准确地掌握用户的情况,所以使用非常广泛。

[NextPage]

  w命令

  该命令也用于显示登录到系统的用户情况,但是与who不同的是,w命令功能更加强大,它不但可以显示有谁登录到系统,还可以显示出这些用户当前正在进行的工作,并且统计数据相对who命令来说更加详细和科学,可以认为w命令就是who命令的一个增强版。

  w命令的显示项目按以下顺序排列:当前时间,系统启动到现在的时间,登录用户的数目,系统在最近1秒、5秒和15秒的平均负载。然后是每个用户的各项数据,项目显示顺序如下:登录帐号、终端名称、远程主机名、登录时间、空闲时间、JCPU、PCPU、当前正在运行进程的命令