查看系统内存linux(linux系统查看硬盘命令)
其实查看系统内存linux的问题并不复杂,但是又很多的朋友都不太了解linux系统查看硬盘命令,因此呢,今天小编就来为大家分享查看系统内存linux的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
linux查看系统内存大小
在Linux下查看内存我们一般用free命令:
[root@scs-2 tmp]# free
total used free shared buffers cached
Mem: 3266180 3250004 16176 0 110652 2668236
-/+ buffers/cache: 471116 2795064
Swap: 2048276 80160 1968116
下面是对这些数值的解释:
total:总计物理内存的大小。
used:已使用多大。
free:可用有多少。
Shared:多个进程共享的内存总额。
Buffers/cached:磁盘缓存的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第四行就不多解释了。
区别:第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别。这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached都是属于被使用,所以他的可用内存是16176KB,已用内存是3250004KB,其中包括,内核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如上例:
2795064=16176+110652+2668236
接下来解释什么时候内存会被交换,以及按什么方交换。当可用内存少于额定值的时候,就会开会进行交换。
如何看额定值:
cat/proc/meminfo
linux内存占用过高怎么办
检查应用程序,优化系统配置。
1、检查应用程序:使用系统监控工具,如top或htop,查看当前系统中占用内存最多的进程,发现某个应用程序占用过多的内存,可以尝试重启该应用程序或者更新到最新版本,以解决存在的内存泄漏问题。
2、优化系统配置:对于同时运行多个进程的情况,可以调整进程的优先级,减少不必要的后台进程,或者使用更轻量级的替代方案来运行某些应用程序。
linux lsmod命令详解
linux系统下lsmod命令是什么呢?下面是lsmod命令的具体内容:
1、lsmod命令简介:
lsmod全称是listmodules,是一个小程序,用来显示文件、proc/modules的信息,也就是显示当前内核模块装载的模块。
2、语法:
lsmod
3、补充说明:
执行lsmod指令,会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。
4、其它常见信息查看方法:
查看CPU信息: cat/proc/cpuinfo
查看板卡信息:cat/proc/pci
查看PCI信息: lspci
比如 lspci|grep Ethernet查看网卡型号
查看内存信息:cat/proc/meminfo
查看USB设备: cat/proc/bus/usb/devices
查看键盘和鼠标:cat/proc/bus/input/devices
查看系统硬盘信息和使用情况:fdisk disk- l df
查看各设备的中断请求(IRQ): cat/proc/interrupts
查看系统体系结构:uname-a
dmidecode查看硬件信息,包括bios、cpu、内存等信息
dmesg| more查看硬件信息
对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
Cpuinfo主机CPU信息
Dma主机DMA通道信息
Filesystems文件系统信息
Interrupts主机中断信息
Ioprots主机I/O端口号信息
Meninfo主机内存信息
Version Linux内存版本信息(编译内核的编译器版本)
举例:
[root@LinServ-1~]# lsmod
Module Size Used by
ipv6 272801 15
xfrm_nalgo 13381 1 ipv6
crypto_api 12609 1 xfrm_nalgo
ip_conntrack_ftp 11569 0
xt_limit 6721 2
xt_state 6209 2
ip_conntrack 53665 2 ip_conntrack_ftp,xt_state
nfnetlink 10713 1 ip_conntrack
第1列:表示模块的名称。
第2列:表示模块的大小。
第3列:表示依赖模块的个数。
第4列:表示依赖模块的内容。
通常在使用lsmod命令时,都会采用类似lsmod|grep-i ext3这样的命令来查询当前系统是否加载了某些模块。
通常会配合grep来查看指定模块是否已经加载,若没有加载,先确认模块是否已经安装,安装完成后可以用modprobe来加载。