Linux查看硬件信息

先来个常用的命令集合

1
2
3
4
5
[root@i-1d1eb16b capinfo]# cat /etc/redhat-release | xargs echo '版本 ' && dmidecode -s system-product-name | xargs echo '是否虚拟化 ' && cat /proc/cpuinfo |grep "processor"|wc -l | xargs echo 'cpu核数' && cat /proc/meminfo | grep MemTotal | awk '{print $2/1024/1024}' |xargs echo '内存总量(GB)'
版本 Red Hat Enterprise Linux Server release 7.2 (Maipo)
是否虚拟化 KVM
cpu核数 8
内存总量(GB) 15.5

系统

1
2
3
4
5
6
7
8
# uname -a               # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备(yum install pciutils)
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量

资源

1
2
3
4
5
6
7
# free -m                # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载

磁盘和分区

1
2
3
4
5
# mount | column -t      # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况

网络

1
2
3
4
5
6
# ifconfig               # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息

进程

1
2
# ps -ef                 # 查看所有进程
# top # 实时显示进程状态

用户

1
2
3
4
5
6
# w                      # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务

服务

1
2
# chkconfig --list       # 列出所有系统服务
# chkconfig --list | grep on # 列出所有启动的系统服务

程序

1
# rpm -qa                # 查看所有安装的软件包

查看网卡型号

1
# lspci | grep Ethernet

查看内存和cpu最直接最常用的命令

1
2
# free
# cat /proc/cpuinfo

查看硬盘信息(查看硬盘型号和硬盘序列号)

1
# df -h

修改系统ulimit

1
vi  /etc/security/limits.conf  ##这个是重启后生效 ,现在立刻生效的话 ulimit -n  65535

查看网络连接数

1
2
3
4
# netstat -an |wc -l
# netstat -an |grep xx |wc -l 查看某个/特定ip的连接数
# netstat -an |grep TIME_WAIT|wc -l 查看连接数等待time_wait状态连接数
# netstat -an |grep ESTABLISHED |wc -l 查看建立稳定连接数量

查看不同状态的连接数数量

1
# netstat -an | awk '/^tcp/ {++y[$NF]} END {for(w in y) print w, y[w]}'

[root@i-3f83907a ~]$ netstat -an | awk ‘/^tcp/ {++y[$NF]} END {for(w in y) print w, y[w]}’
LAST_ACK 7
LISTEN 23
CLOSE_WAIT 78
ESTABLISHED 1202
FIN_WAIT1 4
FIN_WAIT2 10
CLOSING 2
TIME_WAIT 28

查看每个ip跟服务器建立的连接数

1
# netstat -nat|awk '{print$5}'|awk -F : '{print$1}'|sort|uniq -c|sort -rn

[capinfo@i-3f83907a ~]$ netstat -nat|awk ‘{print$5}’|awk -F : ‘{print$1}’|sort|uniq -c|sort -rn
320 10.195.173.29
312 10.195.173.36
304 10.195.173.40
77 172.18.36.16
17 127.0.0.1
13 172.18.31.100
12 0.0.0.0

(PS:正则解析:显示第5列,-F : 以:分割,显示列,sort 排序,uniq -c统计排序过程中的重复行,sort -rn 按纯数字进行逆序排序)

查看每个ip建立的ESTABLISHED/TIME_OUT状态的连接数

Donate comment here