要想详细了解你的Linux系统,为系统评估和性能调化提供准确的信息,那么,你会经常用到这几组命令。
一. 系统信息
1. 查看内核版本、编译主机、编译器版本和编译时间的信息
cat /proc/version
2. 查看bootloader启动内核的参数
cat /proc/cmdline
3. 查看内核版本和CPU架构等信息
uname -a
4. 查看当前时间、系统运行时间、用户数量和负载信息
uptime
5. 查看系统进程、内存使用、交换内存、磁盘IO读写、系统中断及上下文切换和CPU使用率的动态信息。如果你bi/bo/wa比较大,说明你的磁盘IO极可能是性能的瓶颈。
vmstat 1
二. CPU信息
6. CPU的每个核的信息,比如主频、硬件商、cache大小和BogoMIPS等信息
cat /proc/cpuinfo
三. 内存信息
7. 内存的综合信息。不要惊讶于Linux系统总是所剩内存不多,free列第二行才是实际剩余内存,大量的cache/buffer是为了提高系统访问磁盘的速度。
free
8. 详细内存信息。包括dirty和slab等内存信息。
cat /proc/meminfo
四. 磁盘信息
9. 当前挂载的文件系统信息,包括fs类型和挂载点等信息
mount -l
10. 当前磁盘信息,比如分区和大小
fdisk -l
11. 当前文件系统信息,包括使用百分比和挂载点
df -h
12. 当前挂载的文件系统信息缓存文件
cat /etc/mtab
13. 挂载文件系统的配置文件
cat /etc/fstab
五. 进程信息
14. 系统的限制信息
ulimit -a
15. ten processes catch most CPU resource
ps aux | sort -k 3 -r | head -11
16. ten processes catch most Memory resource
ps aux | sort -k 4 -r | head -11
六. 其它信息
17. current modules and referenced counter
lsmod
18. top综合信息,按数字1可以查看每个核的CPU使用率
top
19. all process info,可以跟ps aux对比下
ps -ef
20. 系统启动日志,直接执行dmesg也可
cat /var/log/dmesg
查看以上信息的shell脚本如下所示。如果你感觉用这个脚本获取的系统信息不错,欢迎贴出来分享:)关于网络的命令更为丰富,在此暂不涉及。本文在此同步: http://blog.csdn.net/r_luo/article/details/10769257 。转载请注明出处和链接:http://blog.chinaunix.net/uid-16459552-id-3877787.html 。
-
#!/bin/sh
-
-
LOG_FILE=linux_system_info_$(date +%Y%m%d%H%M).log
-
COND=1
-
touch ${LOG_FILE}
-
-
printex()
-
{
-
echo " [root@luojianh ]# $1"
-
}
-
-
while [ $COND -eq 1 ];
-
do
-
echo " *** System information ***"
-
printex "cat /proc/version"
-
cat /proc/version
-
printex "cat /proc/cmdline"
-
cat /proc/cmdline
-
printex "uname -a"
-
uname -a
-
printex "uptime"
-
uptime
-
echo " ## summary info"
-
printex "vmstat 1 10"
-
vmstat 1 10
-
echo ""
-
-
echo " *** CPU information ***"
-
CORES=$(grep processor /proc/cpuinfo | wc -l)
-
CPU_TYPE=$(uname -m)
-
echo " TITLE: CPU type: ${CPU_TYPE}, cores: ${CORES}"
-
printex "cat /proc/cpuinfo"
-
cat /proc/cpuinfo
-
echo ""
-
-
echo " *** Memory information ***"
-
printex "free"
-
free
-
printex "cat /proc/meminfo"
-
cat /proc/meminfo
-
echo ""
-
-
echo " *** Disk/Flash information ***"
-
printex "mount -l #current mount info"
-
mount -l
-
printex "fdisk -l #current disk info"
-
fdisk -l
-
printex "df -h #current fs info with using rate"
-
df -h
-
printex "cat /etc/mtab"
-
cat /etc/mtab
-
printex "cat /etc/fstab"
-
cat /etc/fstab
-
echo ""
-
-
echo " *** Processes/Threads information ***"
-
echo " ## limited info"
-
printex "ulimit -a"
-
ulimit -a
-
echo " ## ten processes catch most CPU resource"
-
printex "ps aux | sort -k 3 -r | head -11"
-
ps aux | sort -k 3 -r | head -11
-
echo " ## ten processes catch most Memory resource"
-
printex "ps aux | sort -k 4 -r | head -11"
-
ps aux | sort -k 4 -r | head -11
-
echo ""
-
-
echo " *** Lardge information ***"
-
printex "lsmod #current modules and referenced counter"
-
lsmod
-
printex "top -d 1 -n 1"
-
top -d 1 -n 1
-
echo " ## all process info"
-
ps -ef
-
printex "cat /var/log/dmesg"
-
cat /var/log/dmesg
-
echo ""
-
-
COND=0
-
done >> ${LOG_FILE}
-
-
unix2dos ${LOG_FILE}
阅读(1151) | 评论(0) | 转发(0) |