linux 设备?linux查看设备树
其实linux 设备的问题并不复杂,但是又很多的朋友都不太了解linux查看设备树,因此呢,今天小编就来为大家分享linux 设备的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
linux系统设备管理器在哪
Linux系统的设备管理器通常位于/dev目录下。/dev目录包含了系统中所有的设备文件,这些文件用于管理系统中的硬件设备,包括磁盘驱动器、网络接口、打印机和其他设备。
您可以使用ls命令查看/dev目录下的内容,例如:
ls/dev
这将显示/dev目录下的所有文件和文件夹。您也可以使用grep命令来搜索/dev目录下的特定设备文件,例如:
ls/dev| grep sda
这将显示/dev目录下名称中包含“sda”的文件,这可能是系统中的硬盘驱动器。
注意,/dev目录中的设备文件是虚拟文件,不是真实的文件。它们是系统内核用于管理设备的接口,可以通过程序访问和操作。
怎样识别Linux中各硬件设备
方法/步骤
1.硬盘每个硬盘表现为一个单独的设备文件。通常只能有2-4个IDE硬盘。这就是/dev/hda,/dev/hdb,/dev/hdc,和/dev/hdd。 SCSI是/dev/sda,/dev/sdb,等等。
2.软驱软驱的名字是复杂的,因此Linux有一个特定的软驱设备类型,能自动检测软驱中软盘的种类。它使用不同的软盘类型试图读取新插入的软盘的第一个扇区,直到找到正确的一个。这自然要求软盘是已经格式化过的。自动设备叫/dev/fd0、/dev/fd1等。
3.scsi设备当一个新的 SCSI主卡被侦测到时, SCSI驱动程序会寻找连接著的设备。请检查系统日志你的设备被正确地侦测到了。新的 SCSI设备会被指定为第一个可用的SCSI设备文件。第一个 SCSI硬盘是/dev/sda,第一个SCSI磁带机是/dev/st0,还有,第一个CD-ROM会是/dev/scd0。
4.网卡Linux的以太型网卡界面通常被称做 eth0、eth1等等。环形卡亦同样地被看待.然而它们被称做 tr0、tr1等等。 ifconfig命令是被用来观看及修改网络界面状态的。Linux的另一特点是网络界面并不会像其他设备一样地被看成是一个在/dev里头的文件。
5.串行设备Linux的串行设备都是被经由/dev/cua*和/dev/ttyS*特殊设备文件来做取用。ttyS*的设备被使用在进来的连接,例如直接地连接终端机。cua*的设备被使用在往外的连接,比如说调制解调器。而每一个实体串口都各有ttyS和cua两个设备文件:要使用哪个适当的设备到你的应用上都由您来决定。
END
注意事项
如果您在/dev内找不到它们时请不要觉得惊讶。当一个以太网卡被侦测到时,它会被指定为第一个可用的接口卡名字,通常为eth0。
Linux系统中列出PCI设备和USB设备的命令详解
lspci
NAME
lspci-列出所有PCI设备 [[ ]]
总览 SYNOPSIS
lspci [ options ] [[ ]]
描述 DESCRIPTION
lspci是一个用来显示系统中所有PCI总线设备或连接到该总线上的所有设备的工具。
为了能使用这个命令所有功能,你需要有 linux 2.1.82或以上版本,支持/proc/bus/pci接口的内核。在旧版本内核中,PCI工具必须使用只有root才能执行的直接硬件访问,而且总是出现竞争状况以及其他问题。
如果你要报告 PCI设备驱动中,或者是 lspci自身的 bugs,请在报告中包含 lspci-vvx的输出。
[[ ]]
选项 OPTIONS
-v
使得 lspci以冗余模式显示所有设备的详细信息。
-vv
使得 lspci以过冗余模式显示更详细的信息(事实上是 PCI设备能给出的所有东西)。这些数据的确切意义没有在此手册页中解释,如果你想知道更多,请参照/usr/include/linux/pci.h或者 PCI规范。
-n
以数字形式显示 PCI生产厂商和设备号,而不是在 PCI ID数据库中查找它们。
-x
以十六进制显示 PCI配置空间(configuration space)的前64个字节映象(标准头部信息)。此参数对调试驱动和 lspci本身很有用。
-xxx
以十六进制显示所有 PCI配置空间的映象。此选项只有 root可用,并且很多 PCI设备在你试图读取配置空间的未定义部分时会崩溃(此操作可能不违反PCI标准,但是它至少非常愚蠢)。
-b
以总线为中心进行查看。显示所有 IRQ号和内存地址,就象 PCI总线上的卡看到的一样,而不是内核看到的内容。
-t
以树形方式显示包含所有总线、桥、设备和它们的连接的图表。
-s [[bus]:][slot][.[func]]
仅显示指定总线、插槽上的设备或设备上的功能块信息。设备地址的任何部分都可以忽略,或以*代替(意味着所有值)。所有数字都是十六进制。例如:0:指的是在0号总线上的所有设备;0指的是在任意总线上0号设备的所有功能块;0.3选择了所有总线上0号设备的第三个功能块;.4则是只列出每一设备上的第四个功能块。
-d [vendor]:[device]
只显示指定生产厂商和设备 ID的设备。这两个 ID都以十六进制表示,可以忽略或者以*代替(意味着所有值)。
-i file
使用 file作为 PCI ID数据库而不是使用默认的/usr/share/hwdata/pci.ids。
-p dir
使用 dir作为包含 PCI总线信息的目录而不是使用默认的目录/proc/bus/pci。
-m
以机器可读的方式转储 PCI设备数据(支持两种模式:普通和冗余),便于脚本解析。
-M
使用总线映射模式,这种模式对总线进行全面地扫描以查明总线上的所有设备,包括配置错误的桥之后的设备。请注意,此操作只应在调试时使用,并可能造成系统崩溃(只在设备有错误的时候,但是不幸的是它们存在),此命令只有 root可以使用。同时,在不直接接触硬件的 PCI访问模式中使用-M参数没有意义,因为显示的结果(排除 lspci中的 bug的影响)与普通的列表模式相同。
--version
显示 lspci的版本。这个选项应当单独使用。
[[ ]]
PCILIB选项 PCILIB OPTIONS
PCI工具使用 PCILIB(一种可移植的库,提供平台独立的函数来访问 PCI配置空间)来和PCI卡交互。下面的选项用来控制库参数,特别是所用访问模式的指定。默认情况下,PCILIB使用第一种可用的访问模式,不会显示任何调试信息。每一个开关选项都列出了一组它所支持的硬件/软件列表。
-P dir
使用 linux 2.1风格的配置,直接访问目录 dir而非/proc/bus/pci目录。(只能在 linux 2.1或以上版本中使用)
-H1
通过 Intel架构 1来实现直接硬件访问。(只能用于 i386及其兼容机)
-H2
通过Intel架构 2来实现直接硬件访问。警告:此模式只能寻址任何总线上的前16个设备,并且在很多情况下相当不可靠。(只能用于 i386及其兼容机)
-S
使用 PCI系统调用访问。(只能用于 Alpha和 Ultra-Sparc上的 Linux)
-F file
从所给的包含 lspci-x命令输出的文件中获取相关信息。这在分析用户提交的错误报告时很有用,因为你可以用任何方式来显示硬件配置信息而无需为了获取更多信息打扰用户。(可用于所有系统)
-G
增加库的调试等级。(可用于所有系统)
例:
a,列出所有PCI设备
代码如下:
[root@localhost zhangy]# lspci-tv#列出所有PCI设备
b,查看网卡型号
代码如下:
[root@localhost zhangy]# lspci|grep-i eth
05:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8039 PCI-E Fast Ethernet Controller(rev 14)
lsusb
lsusb作用:
列出所有usb设备
lsusb语法:
lsusb [参数]
lsusb参数:
-D设备路径不扫描/proc/bus/usb,而以指定的设备路径取代
-p内核路径使用其他USB设备在内核的路径,默认为/proc/bus/usb
-t将USB设备以树状架构输出
-v列出较详细的运行过程
-vv列出完整的运行过程
-V显示版本信息
例:
代码如下:
[root@localhost zhangy]# lsusb #列出所有usb设备