Ubuntu如何检测硬件?

安装新硬件后,用户需要执行常见的操作吗?在安装Ubuntu期间,除了生成/etc/fstab文件之外,是否会进行一些与硬件相关的调整,用户在更换任何设备(如主板、显卡或其他设备)时需要执行的操作?对于我来说,Ubuntu中的硬件检测方法并不清楚。我能读到哪些信息?

目前我没有真正的问题,但我想知道发生问题时应该做什么。

(PS:你明白我的意思吗? :-) 我不是以英语为母语的人,这是我的第一次经历,请指出我的错误 :-)

2个回答

正如Marius所说:硬件在启动时被内核检测到,或者如果是"可插拔"的(USB等)则稍后检测到。当硬件被识别出来时,相关的内核模块(驱动程序)将被加载,并且在大多数情况下,用户空间将通过dbus/udev得到通知以确定如何处理该硬件;udev具有一组规则,用于指定对特定类型的硬件执行何种操作。例如:"如果检测到的硬件是USB打印机,则将其添加到打印服务器(CUPS)"就是这样一条规则的示例,它看起来类似于以下内容:
# Low-level USB device add trigger
ACTION=="add", SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="07", ATTR{bInterfaceSubClass}=="01", RUN+="udev-configure-printer add %p"
# usblp device add trigger (needed when usblp is already loaded)
ACTION=="add", KERNEL=="lp*", RUN+="udev-configure-printer add %p"

以上是 /lib/udev/rules.d/70-printers.rules 的一部分(至少在10.10上),它还包括一个规则,用于在您拔下打印机时从CUPS中移除该打印机。
顺便说一下:USB类别7是USB打印机
在某些情况下,您可能需要更改一些配置文件,但这将被视为错误或必要的解决方法(某些硬件无法或难以检测)。

通常情况下,不需要。Ubuntu会在启动时或者硬件插入时自动检测计算机的硬件。