1. linux下如何查看服务器物理内存状况
查看内存使用情况,可以使用命令free败闹-m
其结果大致如下:
Mem:32108306811426012321165
-/+buffers/cache:939222715
Swap:34287126233025
在第一部分Mem行中有如下参数:
*total:内存总数,即32108MB
*used:已经使用的内存数,即30681MB
*free:空闲的内存数:即1426MB
*shared:当前已废弃不用,总是0
*buffersBuffer:缓存内存数,即举枯汪123MB
*cachedPage:缓存内存数,即421MB
其中,内存总数与已经使用内存数和空闲内存数的关系是:
total(32108)=used(30681)+free(1426)
在第二部分内容(-/+buffers/cache)中个参数如下所示:
(-buffers/cache):真正使用的内存数,即9392M,他指的是第一部分的used-buffers-cached
(+buffers/cache):可用的内存数,即22715M,他指的是第一部分的free+buffers+cached
其含义可以理解为:-buffers/cached反映的是被程序实实在在正仔用掉的内存,而+buffers/cached反映的是可以被使用(或者说挪用)的内存总数。
2. Linux系统下如何使用mtrace监测内存
!下面大家还是跟着我们5636网吧联盟的网吧系统栏目一起去看看吧!
Linux系统下的Mtrace工具主要能够检测一些内存分配和泄漏的失败等。使用Mtrace来调试程序有4个基本步骤,还需要用到GNUC函数库里面的一些辅助的函数功能:
1.需要包含头文件,并且在main()函数的最开始包含一个函数调用:mtrace()。由于在main函数的最开头调用了mtrace(),所以这个进程后面的一切分配和释放内存的操作都可以由mtrace来跟踪和分析。
2.定义一个环境变量,用来指示一个文件。该文件用来输出log信息。如:
$exportMALLOC_TRACE=mymemory.log
3.正常运行程序。此时程序中的关于内存分配和释放的操作都可以记录下来。
4.然后用mtrace使用工具来分析log文件。如:
$mtracetestmem$MALLOC_TRACE
这里需要注意的是在很多嵌入式的环境中,并不提供export命令,也没有记录环境变量的文件。唯一的办法就是把环境变量加到应用程序中。在Glibc库中有putenv函数,就是写入环境变量的。
这个其实还是要看Glibc!调用muntrace函数,log文件就生成了。
3. 如何检查linux服务器cpu,内存性能
1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。
其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理CPU
2,查看内存大小:
cat /proc/meminfo |grep MemTotal
3,其他一些可以查看详细linux系统信息的命令和方法:
uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令
head -n 1 /etc/issue # 查看操作系统版本,是数字1不是字母L
cat /proc/cpuinfo # 查看CPU信息的linux系统信息命令
hostname # 查看计算机名的linux系统信息命令
lspci -tv # 列出所有PCI设备
lsusb -tv # 列出所有USB设备的linux系统信息命令
lsmod # 列出加载的内核模块
env # 查看环境变量资源
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
-sh # 查看指定目录的大小
grep MemTotal /proc/meminfo # 查看内存总量
grep MemFree /proc/meminfo # 查看空闲内存量
uptime # 查看系统运行时间、用户数、负载
cat /proc/loadavg # 查看系统负载磁盘和分区
mount | column -t # 查看挂接的分区状态
fdisk -l # 查看所有分区
swapon -s # 查看所有交换分区
hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
dmesg | grep IDE # 查看启动时IDE设备检测状况网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息进程
ps -ef # 查看所有进程
top # 实时显示进程状态用户
w # 查看活动用户
id # 查看指定用户信息
last # 查看用户登录日志
cut -d: -f1 /etc/passwd # 查看系统所有用户
cut -d: -f1 /etc/group # 查看系统所有组
crontab -l # 查看当前用户的计划任务服务
chkconfig –list # 列出所有系统服务
chkconfig –list | grep on # 列出所有启动的系统服务程序
rpm -qa # 查看所有安装的软件包
cat /proc/cpuinfo :查看CPU相关参数的linux系统命令
cat /proc/partitions :查看linux硬盘和分区信息的系统信息命令
cat /proc/meminfo :查看linux系统内存信息的linux系统命令
cat /proc/version :查看版本,类似uname -r
cat /proc/ioports :查看设备io端口
cat /proc/interrupts :查看中断
cat /proc/pci :查看pci设备的信息
cat /proc/swaps :查看所有swap分区的信息
4. Linux下如何检测硬盘和内存(源代码)
linux下硬复盘检测工具smartmontools使用方法
cd/usr/ports/sysutils/smartmontools
make install
1、smartctl -a <device> 检查该设制备是否已经打开SMART技术。
2、smartctl -s on <device> 如果没有打开SMART技术,使用该命令打开SMART技术。
3、smartctl -t short <device> 后台检测硬盘,消耗时间短;
smartctl -t long <device> 后台检测硬盘,消耗时间长;
smartctl -C -t short <device> 前台检测硬盘,消耗时间短;
smartctl -C -t long <device> 前台检测硬盘,消耗时间长。
其实就是利用硬盘SMART的自检程序。
4、smartctl -X <device> 中断后台检测硬盘。
5、smartctl -l selftest <device> 显示硬盘检测日志。
6、smartctl -l error <device> 显示硬盘错误汇总。
5. 濡備綍鏌ョ湅 linux 鍐呭瓨鍧忎簡
鏅閫歅C鍐呭瓨鍧忔帀锛孡inux灏卞畷鏈轰簡
鏈嶅姟鍣ㄥ唴瀛樺潖鎺夛紝鍦↙inux閲岀湅绯荤粺鏃ュ織锛屾垨鏈嶅姟鍣ㄧ洃鎺ц蒋浠舵棩蹇