linux下查看硬件信息的命令一览,供大家学习参考。
1、查看平台
[root@master ~]# arch
i686
[root@master ~]# uname -m
i686
查看系统版本
[root@master ~]# more /etc/redhat-release
centos release 5.6 (Final)
[root@master ~]# lsb_release -a
LSB Version: :core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.6 (Final)
Release: 5.6
Codename: Final
查看32还是64位的
[root@master ~]# file /sbin/init
/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
2、查看网卡信息
lspci | grep -i ether
02:01.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
3、查看CPU
查看物理CPU的个数
[root@hwb-e2-matapm yh]# cat /proc/cpuinfo | grep "physical id" | sort -u | wc -l
2
查看逻辑CPU的个数
[root@hwb-e2-matapm yh]# cat /proc/cpuinfo | grep "processor" | wc -l
8
查看核数
[root@hwb-e2-matapm yh]# cat /proc/cpuinfo | grep "cores" | uniq
cpu cores : 4
正常来说:逻辑cpu的个数等于物理cpu的个数乘以核数,如果不相等,表示你的CPU支持超线程
4、查看硬盘
大概换算: 1GB = 1000MB ; 1MB=1000KB ;1 KB=1000B (字节) 1B = 8
[root@master ~]# fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2610 20860402+ 8e Linux LVM
可以看出硬盘21.4G,有255个磁面,63个柱头,2610个磁柱,每个磁柱的容量约为:8.22528M
如果要查看一个硬盘是否完全划分,很容易看下边的start end是否达到了总的磁柱量,若达到则划分完毕
在使用fdisk对磁盘进行分区时候,可以用t来改变分区类型,用L可以看到支持的分区类型
进入fdisk /dev/sda后可以直接按a然后来指定哪个分区是启动分区,
在对一个新的硬盘分区之后,需要partprobe一下来载入分区表
然后需要格式化,通过mkfs 补全一下可以看到
mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat 支持格式化的集中分区类型
通过df可以查看硬盘容量包括inode的容量
[root@master ~]# df -i
Filesystem Inodes IUsed IFree IUse% mounted on
/dev/mapper/VolGroup00-LogVol00
5059200 123388 4935812 3% /
/dev/sda1 26104 35 26069 1% /boot
tmpfs 36924 1 36923 1% /dev/shm
/dev/hdc 0 0 0 - /mnt
/dev/hdc 0 0 0 - /var/www/html/centos
每个分区最前边的那个位置叫做超级块,后边的依次是Inode表,然后是block
显示超级块的数据 (超级快描述和维护文件系统的状态)
tune2fs -l /dev/sda1 = dumpe2fs -h /dev/sda1
[root@hwb-e2-matapm yh]# tune2fs -l /dev/sda1
tune2fs 1.35 (28-Feb-2004)
Filesystem volume name: /1
Last mounted on: <not available>
Filesystem UUID: 01d38341-e312-4d6d-bcbe-572f189ad92b
Filesystem magic number: 0xEF53 (用来识别档案系统为ext2/ext3)的签名
Filesystem revision #: 1 (dynamic) (V2格式支援动态inode大小现在一般都为1)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file (开启档案系统功能,has_journal表示系统必须是ext3或者ext4)
Default mount options: (none)
Filesystem state: clean (表示数据一致)
Errors behavior: continue (表示继续正常运作, remount-ro表示冲洗你挂载为只读模式,panic表示及时当掉的系统)
Filesystem OS type: Linux (建立档案系统的作业系统)
Inode count: 786432 (档案系统的总inode数目)
Block count: 1572354 (档案系统的总区块数目)
Reserved block count: 78617
Free blocks: 1169326 (空闲块)
Free inodes: 766699 (空闲节点)
First block: 0 (superblock的区块编数)
Block size: 4096 (块大小4KB )
Fragment size: 4096 (ext2,ext3,ext4都不支援fragment因此和区块大小一般都一样)
Reserved GDT blocks: 383
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 16384
Inode blocks per group: 512
Filesystem created: Fri Mar 14 00:28:52 2008 (档案系统建立时间)
Last mount time: Tue Oct 18 09:24:22 2011 (上次挂载时间)
Last write time: Tue Oct 18 09:24:22 2011 (上次改变内容时间)
Mount count: 19
Maximum mount count: -1
Last checked: Fri Mar 14 00:28:52 2008
Check interval: 0 (<none>)
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 0da2600b-45c8-4650-bbcb-34e6cabb7a10
Journal backup: inode blocks
-------------------------------------------------------------
iostat -x 1 3
avg-cpu: %user %nice %system %iowait %steal %idle
0.74 1.96 6.00 1.99 0.00 89.31
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda 1.01 22.60 4.14 2.89 116.99 203.98 45.67 0.47 67.04 6.79 4.77
sda1 0.91 22.60 4.13 2.89 116.85 203.96 45.68 0.47 67.07 6.79 4.77
sda2 0.09 0.00 0.00 0.00 0.11 0.02 46.98 0.00 11.18 8.50 0.00
如果%util接近100%说明I/O请求过多,I/O瓶颈
如果idle小于70%,I/O压力就比较大可以结合vmstat的b参数和wa参数来判断
svcm(I/O服务时间)应该小于await(等待时间)
avgqu-sz可以作为衡量I/O负荷的指标,是按照单位时间来计算出来的平均值,所以不能反映瞬间I/O洪水
5、查找PCI设置
[root@hwb-e2-matapm yh]# lspci | grep -i ether
07:04.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5715 Gigabit Ethernet (rev a3)
07:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5715 Gigabit Ethernet (rev a3)
09:04.0 Ethernet controller: Broadcom Corporation NetXtreme 5715S Gigabit Ethernet (rev a3)
09:04.1 Ethernet controller: Broadcom Corporation NetXtreme 5715S Gigabit Ethernet (rev a
6、全部硬件信息
dmidecode PS:输出信息太多包含BIOS,主板太多反而很杂乱让人眼花缭乱的感觉
7、负载
uptime 的loadaverage
如果每个CPU(按照逻辑CPU个数计算)当前活动进程数不大于3,则系统性能良好
不大于4表示可以接收
大于5则表示严重要查找是什么引起了CPU的负载高....
vmstat也是个很好的命令,正常的比较好理解,主要是 in: 每秒的中断数,包括时钟中断 cs:每秒的环境(上下文)切换次数
备注:本文内容参考了构建高可用linux服务器。