00:01
好,我们来介绍下一个命令,那下一个命令呢是top top是display Linux process动态查看当前系统的状态的这样一个命令,那它包含可以查看到CPU、内存等一些系统的主要信息,那么经常可能在网上看到很多网友在问说,诶,我的系统高负载,那怎么办呢?其实就是通过这个top命令来查,那我直接在我的远程Linux中呢,输入top命令啊,那大家可以看到呢,当前top命令显示出了很多东西啊,同时你会发现它是一个动态显示的一个过程,那类似我们Windows的这个任务管理器。那它不同的区域的含义是不一样的,那首先从上到下我们依次来看一下啊,最上边的话显示了当前的系统时间,然后紧接着是开了啊,启动了多少天多少小时,当前的这个系统的用户数,登录的用户数是多少?呃,它有一个比较重要的值的话,就是这个average啊average的话代表了当前系统的一个忙碌的状态,那这三个值啊,以逗号作为分割哈,这三个值呢,分别代表了一分钟前,五分钟前和15分钟前系统的一个负载状态,那我们可以看到当前系统的负载状态还是比较低的,不是很高哈,所以哦,它连接的时候啊,说明这服务器呢,它不是很繁忙,所以我们连接上来也是非常的连接上来,但是你会发现,如有的用户连经常连接失败,或者是连接断线。
01:42
那很有可能就是你的负载过高,那我们可以通过top这个命令来查看到过去一段时间的这个系统的状态。好,这是第一行,那第二行呢,我们可以看到啊,是task当前一共有多少个进程啊,当前这个系统一共有多少个进进程,那有几个在运行中,有几个在这个sleep睡眠状态,有几个是停止状态,有几个是这个僵尸状态,那如果这个僵尸状态是一或者更多的非零的话,那我们就需要注意了哈,这个代表这个系统有一些进程没有回收,那我们需要主动的找到这个将状态的进程,并把它Q掉啊就是删除掉。那第三行的话是CPU啊,啊其他的值呢,代表了一些CPU的一些啊更精准的一些信息,那这些信息呢,我已经罗列在了这里,比如说它包含了这个us,就是这个user啊,啊就是用户空间啊这个。
02:48
SY呢代表system啊代代表啊系统状,呃系统系统态的一个状态,那这个不同的值呢,我们就啊去一一介绍,那第四行的话是内存的一些状态,那么可以看到当前一共是多少内存,多少是赋予了多少使用中的catch啊占了多少这呃最后一行呢是swap啊,Swap代表系统的一个交换分区,那当这个内存不够用的时候呢?啊系统超级系统会在磁盘上开辟一个分区啊,用于数据的交换,那这个就是swap。
03:30
这是swap的一个状态,其实当前swap用的不是太多,因为当前内存是足够的大的,好,那紧接着我们看下边这个区域哈,那下边这个区域我们按列来看,那第一列的话就是啊PID啊,PID也是这个程序的一个进程号,第二列呢,是这个啊,这个进程启动的user,那紧接着我们可以看这一列是CPU内存啊,这里只介绍到这个,呃,程序这个。
04:01
Top的一些核心的一些啊,列的含义哈,那这些其他的一些列什么意思呢?我可以在这个讲义中可以看到,那还有这个就是它的启动时间和这个command,比如说它的一个进程名,那这些呢,就是主要top这个命令的一些啊,主要的啊参数啊。和参数的解释,那我们可以根据自己的情况,那呃,以我个人为例的话,我经常是啊看,比如说我想看这个系统啊,超系统启动多少天,那我就看这个纸对吧?那我看一下当前的系统状态是否繁忙,那我就看这个load average,如果当前系统是非常繁忙的话,那我就来继续往下看,是哪里繁忙啊,然后是哪个进程繁忙啊,为什么繁忙,它是CPU占了多少,内存占了多少,繁忙的原因是什么?那我们可以在这里一目了然的看到,而且它是一个动态刷新的一个过程,那这是top命令,那top命令呢,怎么退出呢?
05:07
我们可以按CTRL加C或者是输入小写的Q退出都可以哈,CTRL加C或小写的Q都可以退出,就是退出这个top命令,那我再次输入命令。然后按Q同样也是可以退出的哈,那这是查看当前系统的一个负载状态,那其实在Linux上呢,查看一个系统负载状态的话,它有多种完成方式,那还有一个命令呢,就是这个命令,那命令的话也是来查看这个系统的一个状态,但是我们可以发现这个命令输入完以后呢,它会显示出啊当前系统所有的一些进程状态,但是和top相比的话,Top是动态刷新的,而是一次性执行出来的啊,一次性执行出来的,那每一列什么含义呢?这里边有一些解释哈,那我个人可能主要会看这个CMD啊,就是当前的这个啊,进程的名字,启动的时间和它的这个PID是多少,那通常比如说我要查看这个机器是否有跑了N几,我就。
06:21
可以用PF-EF来查看一下当前有没有NEX这个进程,那EF是什么意思呢?这里有解释哈,我就不做过多的解释。那这里可能有人有的同学可能会问啊,啊,那Linux提供了两种命令,一个是top,一个是,那我们分别用在什么场景呢?那通常呢呢啊,这个命令是一个静态的,当我们要查看每某个进程存不存在的时候呢,我个人习惯可能会是来用这个呃来查看,那如果要是查看动态的信息,就是没有目标的查看的话,一般说是top,但是这里边需要大家注意一点,大家可以看到这个top命令,我们输入完这个top命令,当前这个top命令在不断的刷新的时候呢,这个top命令它也是占CPU,可看到刚刚可以看到刷新上来了,它也是占CPU的,所以呢,当我们系统非常繁忙的时候啊,非常繁忙的时候,不建议输入这个top命令,那我可以用这个up啊up time这个命令up time呢,只显示了这个top命令最关键的上面的一行信息。
07:34
那我们可以看到这这个load average就代表了这个系统繁忙状态,如果它是非常繁忙的话,那我们就可以用来查看这个进程是哪个进程。啊,比较繁忙啊,AUX可以看到这个CPU内存,那找到这个繁忙的这个进程以后呢,将它杀掉,所以这两个命令呢,可以用在不同的场景,特别是这个命令,我们通常跟这个shell来结合使用,那我个人比较少使用这个top哈,这个大家啊可以啊看自己的情况来使用不同的命令。
08:17
但是通常在面试的时候呢,我也会问top命令和命令在应用场景上有什么区别,那我觉得大家只要答出了这个,呃呢,是一个静态的命令,它查看当前的系统状态呢,是一个静态显示出,那top命令呢,是一个动态刷新的一个过程,那当系统繁忙的时候呢,我们建议更多的建议使用命令,而非top命令来减轻的系统的一个压力,那这是和top命令,那这里还有一个比较啊,重要的知识点的话,就是这个nice值啊,Nice值值是做什么呢?它是来调整这个系统,因为我们可以看到系统有很多的进程,那其实不同的进程的话,它是有一个优先级别的,那这个优先级别如何来识别呢?就是通过这个nice值,但是呃,这里也建议啊,如果大家不是非常对这个东西不是非常了解的话啊,不建议轻易的来调整这个nice。
09:18
值,那这是但是但是呢,这个nice值呢,又是一个很关键的一个啊,进进程的一个啊指标或者是一个附加的属性啊,大概是这样,那这是啊查看系统负载的两个命令的使用方法,那好,这节课呢就介绍到这里。好,谢谢观看,如果你喜欢这个视频,也欢迎在视频的下方点赞收藏、分享和评论,那你所需要到的课程讲义课程表会在视频的下方,敬请查收。
我来说两句