方法一:查询eth对应驱动的话方法更简单:
root@uitnode2 ~ 0 # ls -l
/sys/class/net/eth0/device/driver/module
lrwxrwxrwx 1 root
root 0 Nov 17 20:28 /sys/class/net/eth0/device/driver/module ->
../../../../module/e1000
root@uitnode2 ~ 0 # readlink -f
/sys/class/net/eth0/device/driver/module
/sys/module/e1000
sysfs虚拟文件系统下有很多链接,
/sys/class/net/eth0 是一个目录,底下有一个device是符号链接,会指向 /sys/devices/
下的一个真实设备,它所指向的目录下又有一个 driver 指向 /sys/module/
下一个模块名,那就是所使用的驱动程序名。
不过sysfs在最近一系列内核中变化很大,我看到的是2.6.26.2内核,在旧版内核上不一定都有。
root@uitnode2
~ 0 # uname -a
Linux uitnode2.uit 2.6.26 #2 SMP Tue Sep 2
02:06:17 HKT 2008 x86_64 x86_64 x86_64 GNU/Linux
方法二: dmesg
大法
最全面的要属dmesg了,基本上启动时每个设备的初始化信息都会记录在里面,所以,看这个就可以了。
另外就是
cat
/proc/cpuinfo 这是看cpu的详细信息
cat /proc/meminfo
这是看内存的详细信息
不过,仍然达不到cpuz那么详细的程度,不过cpuz是专门干这个的,应该是从bios中获得的信息(或者根据cpu的型号事先统计出来的信息),只要将cpuz移植到linux,应该也具有这种能力了
方法三:ethtool
执行
# ethtool -p
eth0
时,eth0对应的网口的灯就会闪烁,你可以分别调用ethtool判断eth1,eth2对应的网口;
注意要在不插网线的时候进行,否则看不出来是否因ethtool引起的闪烁;
这个方法是在
"Redhat Magzine" (红帽杂志)上看到的;管理多网口服务器的一个有效的方法;
参考资料:
1、文章: http://www.douban.com/group/topic/4385501/
原文:http://www.cnblogs.com/AloneSword/p/3552843.html