精华内容
下载资源
问答
  • 最近收到一个工作要求,让我完成一个每天一次的Linux服务器巡检工作(服务器的版本为红帽6.4),不可以使用监控软件来操作。在这里,把我的巡检过程和巡检脚本放送给大家做一参考。...cpu占用率2、内存使用率...
    5e81510d561eaa95ca798e9438e35efe.png

    最近收到一个工作要求,让我完成一个每天一次的Linux服务器巡检工作(服务器的版本为红帽6.4),不可以使用监控软件来操作。在这里,把我的巡检过程和巡检脚本放送给大家做一参考。

    首先,巡检内容可以参考下表:

    65c6a1baa5b349495f8ee0f22c7dfe80.png

    Linux服务器应用巡检

    具体的巡检内容在这里做一说明:

    1、 CPU占用率

    检查脚本:top shift+m c

    这里需要记录的参数是?%us,建议稍等几秒看下动态变化再记录。

    7c348b5436da8b5af68ce57accf51a89.png

    cpu占用率

    2、内存使用率

    检查脚本:free-m /free -g

    7e136bfb636b32104cf896a2dc54c208.png

    内存使用率

    这里重点需要看的是swap内存是否被使用了,需要记录的是第二行的第二个,它和总内存量的比值就是内存的使用率。具体使用-m还是-g,就看服务器内存大小了

    3、硬盘使用率

    检查脚本:df

    060dc8d389a0371272b5734276fc4a5f.png

    硬盘使用率

    磁盘使用率看的就是磁盘使用率本身了,这里如果服务器下的应用单独使用了挂载的磁盘,还需要单独查看挂载磁盘的使用率

    4、 I/O空闲

    检查脚本:iostat -xm

    b893ae9fb89c7a1b450c0f3d488b2f2e.png

    I/O空闲

    需要记录的值就是图中红色框住的,?%idle,这个就是I/O空闲 。这里可以使用iostat -xm 1,动态查看多个值了之后取一个比较平均的。

    5、应用运行状况

    查看应用的页面是否正常,用户是否使用正常。

    6、应用服务状态

    检查脚本:./应用服务 status

    查看是否服务状态为running。

    7、应用服务运行日志是否有报错

    检查脚本:cat 应用服务运行日志| grep ERR

    直观查看应用服务运行的日志中是否有报错,这里也可以直接打开查看:

    vim 应用服务运行日志

    然后用“/ERR”查看报错

    8、应用内容记录日志是否有报错

    检查脚本:cat 应用内容记录日志 grep ERR

    9、数据文件大小

    首先,打开应用数据文件所在的目录,然后运行:du -sh *

    这里可以看到此目录下所有文件的大小。

    10、归档文件状态

    这个是我负责的应用的一个特殊功能,可以归档,所有有这个需求,大家可以忽略。

    11、备份执行情况

    在备份目录下查看备份最新的日期是否最近。

    以上内容为日常的数据库巡检全部内容,希望对大家的工作有用!

    展开全文
  • 使用top工具查看到Suse Linux的内存占用很大,可能97%以上,我知道这是Linux的内存使用机制,先将内存整个管理起来,需要的时候在分配给单个进程。但是如果我需要查看系统真实的内存占用应该怎么做 如下显示...

    使用top工具查看到Suse Linux的内存占用率很大,可能97%以上,我知道这是Linux的内存使用机制,先将内存整个管理起来,需要的时候在分配给单个进程。但是如果我需要查看系统真实的内存占用率应该怎么做

     

    如下显示free是显示的当前内存的使用,-m的意思是M字节来显示内容.我们来一起看看.

     $ free -m
             total     used       free    shared    buffers     cached
    Mem:      1002       769        232     0       62        421
    -/+ buffers/cache:        286        715
    Swap:         1153          0       1153

    真实内存占用 = used-buffers-cached = 286

    -----------------

     


    第一部分Mem行:
    total 内存总数: 1002M
    used 已经使用的内存数: 769M
    free 空闲的内存数: 232M
    shared 当前已经废弃不用,总是0
    buffers Buffer 缓存内存数: 62M
    cached Page 缓存内存数:421M

    关系:total(1002M) = used(769M) + free(232M)

    第二部分(-/+ buffers/cache):
    (-buffers/cache) used内存数:286M (指的第一部分Mem行中的used - buffers - cached)
    (+buffers/cache) free内存数: 715M (指的第一部分Mem行中的free + buffers + cached)

    可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。

    第三部分是指交换分区, 我想不讲大家都明白.

    我想大家看了上面,还是很晕.第一部分(Mem)与第二部分(-/+ buffers/cache)的结果中有关used和free为什么这么奇怪.
    其实我们可以从二个方面来解释.
    对操作系统来讲是Mem的参数.buffers/cached 都是属于被使用,所以它认为free只有232.
    对应用程序来讲是(-/+ buffers/cach).buffers/cached 是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。

    所以,以应用来看看,以(-/+ buffers/cache)的free和used为主.所以我们看这个就好了.另外告诉大家一些常识.Linux为了提高磁盘和内存存取效率, Linux做了很多精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路 径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache能有效缩短了 I/O系统调用(比如read,write,getdents)的时间。

    记住内存是拿来用的,不是拿来看的.不象windows, 无论你的真实物理内存有多少,他都要拿硬盘交换文件来读.这也就是windows为什么常常提示虚拟空间不足的原因.你们想想,多无聊,在内存还有大部分的时候,拿出一部分硬盘空间来充当内存.硬盘怎么会快过内存.所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常 swap用很多,可能你就要考虑加物理内存了.这也是linux看内存是否够用的标准哦.






          本文转自crazy_charles 51CTO博客,原文链接:http://blog.51cto.com/douya/1641969,如需转载请自行联系原作者


    展开全文
  • 如何正确查看Linux机器内存使用情况

    千次阅读 2019-06-20 11:54:15
    如何正确查看Linux机器内存使用情况 ...top是个很好用的系统分析工具,可以实时查看进程,cpu使用率,内存使用率等情况,有点像windows下的任务管理器。我以前一直以为top看到的就是真正的内存使用情况,后...

    如何正确查看Linux机器内存使用情况

    背景

    只要工作上涉及到Linux机器,基本上都会有这样一个需求,查看内存使用情况,但是怎么看才正确呢?之前使用的是top命令,一直存在一个误区。

    为什么top命令看内存会有误区?

    top是个很好用的系统分析工具,可以实时查看进程,cpu使用率,内存使用率等情况,有点像windows下的任务管理器。我以前一直以为top看到的就是真正的内存使用情况,后来baidugoogle好久,才发现自己图样。= =|| 
    首先看下top命令后展示出来的内存使用情况,我用自己一台***vps做示范:

    Cpu(s):  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:     73728k total,    70048k used,     3680k free,        0k buffers
    Swap:    16384k total,     4696k used,    11688k free,    64716k cached
    

    可以看到Mem: 73728k total, 70048k used, 3680k free, 0k buffers这一行,就是内存使用情况。一开始我也只看这一行。后来在公司的生产机子上看时,觉得很疑惑,只要是运行了一段时间的机子,内存的 total 和 used 总是非常的接近,free值很少,也就是说“内存使用率”非常高,哪怕我已经把各种服务都关掉了。但是就算这样,服务器也没有任何问题,再次启动 tomcat服务,做一些小的压测,表现的情况也很正常。那么问题就来了:明明内存情况这么紧张,怎么还能运行这么多服务,甚至做压力测试呢?—> 答案其实很简单,这些看起来used很多的内存中,一大部分是缓存,这就要说到Linux的内存管理机制了。

    Linux中的Cache Memory

    什么是Cache Memory(缓存内存):

    当你读写文件的时候,Linux内核为了提高读写性能与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后,Cache Memory也不会自动释放。这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存会很少。 
    其实这缓存内存(Cache Memory)在你需要使用内存的时候会自动释放,所以你不必担心没有内存可用。 
    只有当 free 减去 cached 剩下的这部分内存情况紧张时,才有可能出现应用程序没有足够内存使用的情况。

    所以其实刚才top看到的内存使用情况,有一部分是缓存,那个缓存有多少呢?注意看最后有个mem那行后面有个buffers ,swap那行后面有个cached,这两个就是缓存大小。所以如果要计算应用程序真正使用物理内存的情况,应该是used-cached-buffers才对,所以刚才top看到的物理内存使用情况为70048k-64716k=5332k。所以也才没用多少嘛!

    另外,如果单纯想要看内存使用情况,用free命令其实更直观:

    total       used       free     shared    buffers     cached
    Mem:         73728      70940       2788          0          0      64840
    -/+ buffers/cache:       6100      67628
    Swap:        16384       4500      11884
    

    这些信息的说明大致如下: 
    其中第一行用全局角度描述系统使用的内存状况: 
    total——总物理内存 
    used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存 
    free——完全未被使用的内存 
    shared——应用程序共享内存 
    buffers——缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加) 
    cached——缓存,用于已打开的文件 
    注意-/+ buffers/cache: 6100 67628这行。 
    前个值表示-buffers/cache—–>不包括缓存,应用程序物理内存使用情况,即 -buffers/cache=used-buffers-cached ,所以此时应用程序才用了6100k内存 。 
    后个值表示+buffers/cache—–>所有可供应用程序使用的内存大小,free加上缓存值,即+buffers/cache=free+buffers+cached ,所以此时还有67628k 内存可供程序使用。 
    另外,free命令也可以使用”-m” 参数,这样显示的内存信息是用MB算,而不是KB,大内存情况下,这样更直观。

    free -m
    -----------
                 total       used       free     shared    buffers     cached
    Mem:            72         69          2          0          0         63
    -/+ buffers/cache:          5         66
    Swap:           16          4         11
    

    总结

     
    使用top命令或者free命令看到的内存使用率used中,包含了缓存,如果要查看应用程序真正的内存使用情况,应该是used-cached-buffers ,或者直接看free命令结果的-/+ buffers/cache行信息。 https://www.cnblogs.com/insane-Mr-Li/p/10930811.html
    展开全文
  • 使用top工具查看到Suse Linux的内存占用很大,可能97%以上,我知道这是Linux的内存使用机制,先将内存整个管理起来,需要的时候在分配给单个进程。但是如果我需要查看系统真实的内存占用应该怎么做 如下...

    使用top工具查看到Suse Linux的内存占用率很大,可能97%以上,我知道这是Linux的内存使用机制,先将内存整个管理起来,需要的时候在分配给单个进程。但是如果我需要查看系统真实的内存占用率应该怎么做

     

    如下显示free是显示的当前内存的使用,-m的意思是M字节来显示内容.我们来一起看看.

    $ free -m
                 total       used       free     shared    buffers     cached
    Mem:         1002        769        232          0         62        421
    -/+ buffers/cache:        286        715
    Swap:         1153          0       1153

    ---------------------------

    真实内存占用 = used-buffers-cached = 286

    -----------------

     


    第一部分Mem行:
    total 内存总数: 1002M
    used 已经使用的内存数: 769M
    free 空闲的内存数: 232M
    shared 当前已经废弃不用,总是0
    buffers Buffer 缓存内存数: 62M
    cached Page 缓存内存数:421M

    关系:total(1002M) = used(769M) + free(232M)

    第二部分(-/+ buffers/cache):
    (-buffers/cache) used内存数:286M (指的第一部分Mem行中的used - buffers - cached)
    (+buffers/cache) free内存数: 715M (指的第一部分Mem行中的free + buffers + cached)

    可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。

    第三部分是指交换分区, 我想不讲大家都明白.

    我想大家看了上面,还是很晕.第一部分(Mem)与第二部分(-/+ buffers/cache)的结果中有关used和free为什么这么奇怪.
    其实我们可以从二个方面来解释.
    对操作系统来讲是Mem的参数.buffers/cached 都是属于被使用,所以它认为free只有232.
    对应用程序来讲是(-/+ buffers/cach).buffers/cached 是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。

    所以,以应用来看看,以(-/+ buffers/cache)的free和used为主.所以我们看这个就好了.另外告诉大家一些常识.Linux为了提高磁盘和内存存取效率, Linux做了很多精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路 径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache能有效缩短了 I/O系统调用(比如read,write,getdents)的时间。

    记住内存是拿来用的,不是拿来看的.不象windows, 无论你的真实物理内存有多少,他都要拿硬盘交换文件来读.这也就是windows为什么常常提示虚拟空间不足的原因.你们想想,多无聊,在内存还有大部分的时候,拿出一部分硬盘空间来充当内存.硬盘怎么会快过内存.所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常 swap用很多,可能你就要考虑加物理内存了.这也是linux看内存是否够用的标准哦.

    posted on 2017-03-24 10:34 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/ruiy/p/6610166.html

    展开全文
  • 原文链接 如何正确查看Linux机器内存使用情况背景只要工作上涉及到Linux机器,基本上都会有这样一个...top是个很好用的系统分析工具,可以实时查看进程,cpu使用率,内存使用率等情况,有点像windows下的任务管理器...
  • 使用top工具查看到Suse Linux的内存占用很大,可能97%以上,我知道这是Linux的内存使用机制,先将内存整个管理起来,需要的时候在分配给单个进程。但是如果我需要查看系统真实的内存占用应该怎么做 如下显示...
  • 我吓了一跳,这台服务器上的应用现在负载很小啊,怎么利用会很高呢。先用ZABBIX了下,内存剩余空间还是很大的,还有117G的空余啊。然后又登陆到服务器上用再下: [oracle@dsj-sjk1 ~]$ top top - 11:41:03 up...
  • Linux 下使用Sigar 获取CPU 使用率

    千次阅读 2015-06-12 17:13:59
    常用的命令有top, mpstat, iostat等,在终端下可以很方便的监视各个性能参数(比如cpu,内存,磁盘等), 但是要在代码中获取这些数据, 用命令就显得不太方便了,不过感兴趣的同学可以去看看源码是怎么实现的.这里介绍一个...
  • Linux内存占用过高排查过程

    千次阅读 2020-03-23 10:57:57
    一朋友找我说,他们一个项目的服务器内存占用太高了,让我帮忙怎么回事。我正好不是太忙就帮他了下,并记录如下。 1 查看服务器状态 他的服务器是阿里云的ECS,系统是 CentOS Linux release 7.5.1804 ...
  • 看看大牛是怎么面对高并发的?想知道BATJ大厂是怎么设计高可用架构的?这里有可参考的实践案例,干货满满,或许能对你有所启发。 Redis常用的数据类型 Redis的五种常用的数据类型分别是:String、Hash、List、Set...
  • 最近收到一个工作要求,让我完成一个每天一次的Linux服务器巡检工作(服务器的版本为红帽6.4),不可以使用监控软件来操作。在这里,把我的巡检过程和巡检脚本放送给大家做一参考。...cpu占用率2、内存使用率...
  • Oracle 9i & 10g编程艺术:深入数据库体系结构(09年度畅销榜TOP50)(08年度畅销榜TOP50) 基本信息 原书名: Expert Oracle Database Architecture 9i and 10g Programming Techniques and Solutions 原出版社: ...
  • 流量高峰期,服务器CPU使用率过高报警,你登录Linux上去top完之后,却不知道怎么进一步定位,到底是系统CPU资源太少,还是程序并发部分写的有问题? 系统并没有跑什么吃内存的程序,但是敲完free命令之后,却发现...
  • 面经集合

    2020-05-23 16:49:50
    查看CPU使用率、内存使用率、磁盘使用率 top vmstat sar free df 查看进程 top ps pgrep 查看端口 lsof -i:端口号 netstat -tunlp |grep 端口号 netstat - atulnp 2、操作系统进程间的通信 原文链接 进程间常见的...
  • 对于运维工程师,我认为性能优化是很重要的一项工作,比如服务器CPU使用率过高,top命令之后怎么快速定位问题,又比如系统没有跑什么占用内存的程序,但是用free一内存已经不多了,应该怎么处理,或者一大早起来...

空空如也

空空如也

1 2
收藏数 37
精华内容 14
关键字:

top怎么看内存使用率