Linux中工作管理与系统资源查看详解

系统 Linux 系统运维
Linux中的工作管理,简而言之就是把工作放在后台运行的行为。在windows中,我们经常也会针对各种工作做出管理,常用的将工作放在后台的方式就是最小化某个应用程序。那么为什么要对工作进行管理呢?在windows中这很好理解,我们要对其他工作进行操作时,一般只有将当前工作界面最小化才能方便处理其他工作。同样的,在Linux中,比如我们执行cp命令复制一个很大的文件时,如果不是将其置于后台执行,就只能等到复制完成才能对其他工作进行处理。

Part One 工作管理

工作管理指的是在单个登录终端同时管理多个工作的行为。Linux中的工作管理,简而言之就是把工作放在后台运行的行为。在windows中,我们经常也会针对各种工作做出管理,常用的将工作放在后台的方式就是最小化某个应用程序。那么为什么要对工作进行管理呢?在windows中这很好理解,我们要对其他工作进行操作时,一般只有将当前工作界面最小化才能方便处理其他工作。同样的,在Linux中,比如我们执行cp命令复制一个很大的文件时,如果不是将其置于后台执行,就只能等到复制完成才能对其他工作进行处理。

在具体讲工作管理之前,我们首先应注意到这样几个事项:

  1. 当前终端只能管理当前终端的工作,无法管理其他终端的工作。
  2. 放入后台的命令要能持续运行一段时间,这样才能捕捉和操作这个工作。例如,如果我们将ls命令放入后台,而我们知道ls在回车后就已经结束了,此时放入后台的意义就不存在了。
  3. 放入后台的命令不能与前台有交互或者需要前台的输入,否则其在后台只能暂停,无法运行。例如,top命令需要与前台交互,vi/vim命令是对文档进行编辑,需要用户输入,此类命令在后台处于暂停状态而不能在后台运行。

具体方法:

(1)把进程放入后台

  • 在命令后接&符,用于把命令放入后台执行,例如find /-name a & 查找系统下名字为a的文件。

 

 

 

  • 执行命令后ctrl+z,将命令在后台暂停。最常见的比如top命令,执行top后,在交互命令中按ctrl+z,就将top放在后台暂停了。

(2)查看后台工作

  • 命令:jobs [-l]
  • 选项 -l:用于显示工作的进程号

 

 

 

 

如图,用jobs命令可以查看前面暂停在后台的top命令,加上-l选项后显示其进程号。在图中,“+”号表示的是最近放入后台的工作,也是默认恢复的***个工作,“-”号表示的是倒数第二个放入后台的工作。

(3)将后台暂停的工作恢复到前台执行

  • 命令:fg %工作号
  • 参数:%工作号:工作号是jobs命令输出信息***列的值,不是进程号,前面加上%号用于区别二者,%可省略。

 

 

 

 

如上图所示,执行命令fg %1后,工作号为1的后台工作将恢复到前台执行,如果不加参数,fg命令默认恢复带“+”号的工作。

(4)将后台暂停的工作恢复到后台执行

  • 命令:bg %工作号

后台恢复执行的命令,是不能与前台有交互的,否则无法恢复到后台执行。

(5)后台命令脱离终端执行

当我们需要将后台命令脱离终端执行时,可以使用nohup命令,命令格式为nohup [命令]&。

Part Two 系统资源查看

系统资源查看用于查看系统各种资源的使用情况。通过查看系统资源,可以了解系统当前资源使用情况,从而监视系统当前健康状态。

(1)vmstat命令监控系统资源

  • 格式:vmstat [刷新延时][刷新次数]。如vmstat 1 3表示每隔1s刷新1次,共刷新三次。

 

 

 

 

重点关注输出信息:

  • procs:进程信息字段
    • -r:等待运行的进程数,值越大,系统越繁忙。
    • -b:不可被唤醒的进程数,值越大,系统越繁忙。
  • memory:内存信息字段
    • -swpd:虚拟内存使用情况,单位KB。
    • -free:空闲内存容量,单位KB。
    • -buff:
    • -cache:
  • swap:交换分区信息字段
    • -si:从磁盘中交换到内存中数据的大小,单位KB。
    • so:从内存中交换到磁盘中数据的大小,单位KB。数值越大,系统交换越频繁,性能越差。
  • io:磁盘读写信息字段
    • -bi:从块设备读入数据的大小,单位是快。
    • -bo:写到块设备的数据大小,单位时块。数值越大,系统IO越繁忙。
  • system:系统信息字段
    • -in:每秒被中断的进程次数。
    • -cs:每秒进行的事件切换次数。
  • cpu:
    • -us:非内核进程消耗cpu运算时间的百分比。
    • -sy:内核进程消耗cpu运算时间的百分比。
    • -id:空闲cou的百分比。
    • -wa:等待I/O所消耗的cpu百分比。
    • -st:被虚拟机所盗用的cpu占比。

(2)dmesg开机时内核检测信息

  • 格式:dmesg。由于内核信息过多,常与grep结合使用,如dmesg | grep CPU查看CPU信息。

 

 

 

 

(3)free命令查看内存使用状态

  • 格式:free[-b|-k|-m|-g]
  • 选项:
    • -b:以字节为单位显示。
    • -k:以KB为单位显示,默认。
    • -m:以MB为单位显示。
    • -g:以GB为单位显示。

 

 

 

 

输出信息:***行:total是内存总数,used为已使用内存,free为空闲内存,shared为多个进程共享内存,buffres是缓冲内存,cached是缓存内存。第二行:-/buffers/cache的内存数,相当于底一行的used-buffers-cached。+/buffers/cache的内存数,相当于***行的free+buffers+cached。第三行:total是swap的总数,used是已使用的swap数,free是空闲的swap数。

(4)查看CPU信息

  • 命令:cat /proc/cpuinfo

 

 

 

 

(5)uptime命令显示系统的启动时间和平均负载,即top命令的***行,在w命令中也可以看到。

 

 

 

 

(6)查看系统与内核相关信息

  • 命令格式:uname[-a|-r|-s]
  • 选项:
    • -a:查看系统所有相关信息。
    • -r:查看内核版本。
    • -s:查看内核名称。

 

 

 

 

(7)判断系统当前位数

  • 命令:file /bin/ls

 

 

 

 

通过查看ls命令判断操作系统的位数。

(8)查询当前Linux系统的发行版本

  • 命令:lsb_release -a

 

责任编辑:庞桂玉 来源: 嵌入式Linux中文站
相关推荐

2009-09-28 10:34:32

LR监控Linux系统资源Linux

2009-09-21 09:51:19

LoadRunnerLinux系统监控Linux

2016-11-15 15:23:27

2009-06-16 09:18:26

Linux系统管理系统资源

2014-12-23 09:43:33

linux监控工具

2010-04-23 12:35:17

2009-10-21 12:42:20

Linux系统资源操作系统

2010-11-01 17:14:20

DB2命令行

2011-08-18 15:37:02

Oracle资源管理分配计划SQL优化

2024-06-12 11:26:04

2012-04-24 16:23:28

Win7

2013-04-12 09:39:01

Top监控系统

2009-08-17 15:55:32

ASP.NET缓存

2009-02-18 08:40:24

Windows系统资源解决方法

2011-08-10 10:24:55

系统资源统资源不足

2011-08-10 11:12:03

2013-01-14 16:00:29

Linux系统

2024-10-23 16:17:03

2010-03-01 08:58:23

Windows 7系统资源

2009-03-05 09:43:32

Linux系统进程管理命令
点赞
收藏

51CTO技术栈公众号