Linux下高效的运用 top 指令ITeye - 超凡娱乐

Linux下高效的运用 top 指令ITeye

2019年02月24日11时40分37秒 | 作者: 运珧 | 标签: 运用,体系,运转 | 浏览: 549

对桌面用户来说,监督体系资源运用是一项重要的作业。经过这项作业,咱们能够找到体系瓶颈地点,针对性的进行体系优化,辨认内存走漏等。问题是,咱们应该用什么软件,以及假如针对咱们的需求运用它。

在很多备选的监测东西中,大都人运用“top”(procps 包的一部分)。Top 供给了简直能够说是一切的咱们所需求的体系资源运用监测,就在这一个软件中。本文中的一切信息都是根据运转在 Linux 2.6.x 内核上的版别号为3.2.5的 procps 包。

在这儿,咱们假定 procps 现已装置并运转在你的 Linux 体系中。这儿无需你对 top 的运用经历,但假如你测验去用一下,将更有利。

下面是一些应战:

A.交互仍是批处理形式?
默许状况下,Top 被调用时运用交互形式。在此形式下,Top 无限期运转,并能够经过按键从头界说 Top 的运转方法。可是,有时你需求对 Top 的输出进行后续处理,但这在此形式下难以实现。解决方法?运用批处理形式。

$ top -b

你将取得相似下面的输出:

top - 15:22:45 up  4:19,  5 users,  load average: 0.00, 0.03, 0.00
Tasks:  60 total,   1 running,  59 sleeping,   0 stopped,   0 zombie
Cpu(s):  3.8% us,  2.9% sy,  0.0% ni, 89.6% id,  3.3% wa,  0.4% hi,  0.0% si
Mem:    515896k total,   495572k used,    20324k free,    13936k buffers
Swap:   909676k total,        4k used,   909672k free,   377608k cached
PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  1 root      16   0  1544  476  404 S  0.0  0.1   0:01.35 init
  2 root      34  19     0    0    0 S  0.0  0.0   0:00.02 ksoftirqd/0
  3 root      10  -5     0    0    0 S  0.0  0.0   0:00.11 events/0 哈,等等,它是不断重复运转的,同交互形式相同。不必忧虑,你能够运用 -n 约束重复数量。所以,假如你期望取得一次性成果,键入:

$ top -b -n 1 这一形式的实在优势在于你能够很简略的与 at 或 cron 指令结合。它们的结合,使得 Top 能够在特守时刻对资源运用状况进行快照。例如,运用 at ,咱们能够设定 top 在一分钟之后运转。

$ cat ./test.at
TERM=linux top -b -n 1 /tmp/top-report.txt
$ at -f ./test.at now+1minutes 仔细的读者或许会问“在创立新任务时,为什么我需求在调用 Top 之前设置环境变量 TERM?”。答案是,Top 运转时需求此变量,但“at”在守时调用时并不会保存它。同上面那样简略的设置能够保证 Top 正常运转。

B.怎么监控拟定进程?
有时,咱们只对几个进程感兴趣,或许仅仅悉数进程中的4个或5个。例如,假如你想要监测进程标识(PID)为4360和4358的进程,你需求键入:

$ top -p 4360,4358 或

$ top -p 4360 -p 4358 看起来很简略,只需求运用 -p 列出一切需求的 PID,并运用逗号距离或简略的屡次运用 -p即可。
另一种或许是监测具有特定用户标识(UID)的进程。应对此需求,你能够运用 -u 或 -U 选项。假定用户“johndoe”的 UID 为500,键入:

$ top -u johndoe OR

$ top -u 500 或

$ top -U johndoe 结论是,你既能够纯运用用户名,也可运用数字 UID。“-u,-U?这两者不同?”是的。同大都其它 GNU 东西相同,选项是大小写灵敏的。-U 意味着 Top 将会查找有用的、实在的、被保存的以及文件体系的 UID 进行匹配,而 -u 仅匹配有用的用户id。要知道,每一个 *nix 进程在运转时都是用有用用户标识(effective UID),而其中有些并不同等实在用户标识。大都状况是,对相似文件体系权限或操作体系功用这项的有用用户标识感兴趣的人将会查看它,而不是 UID。
不同于 -p 仅用于指令行选项,-U 和 -u 都能够在交互形式中运用。同你猜想的相同,键入‘U’或‘u’能够根据用户名过滤进程。相同的规矩仍然适用,‘u’为有用用户标识,‘U’为 实在/有用/保存/文件体系用户名。你将被要求键入用户名或数字 UID。

 

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表超凡娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章