标签: udev

当 Linux 驱动器字母用完时会发生什么?

让\xe2\x80\x99s 说我有 50 个 USB 闪存驱动器。

\n

我想他们一定会/dev/sda/dev/sdz。之后会发生什么/dev/sdz

\n

linux filesystems udev mount devices

36
推荐指数
1
解决办法
5032
查看次数

sdX 和 vdX 的区别

当我使用 Ubuntu 和 CentOS 时,我看到/dev/sda/dev/vda. 所以我无法理解上述两者之间有什么不同?

virtual-machine udev

35
推荐指数
3
解决办法
2万
查看次数

如何将 USB 驱动程序分配给设备

这个问题有两个方面:

首先,您如何手动从 USB 设备上分离驱动程序并连接不同的驱动程序?例如,我有一个连接时自动使用 USB 存储驱动程序的设备。

USB视图输出

Vendor Id: xxxx
Product Id: xxxx
...
    Number of Interfaces: 2
    Interface Number: 0
        Name: usb-storage
        Number of Endpoints: 2
        ...
    Interface Number: 1
        Name: (none)
        Number of Endpoints: 2
        ...
Run Code Online (Sandbox Code Playgroud)

我不想使用 USB 存储驱动程序,因此在我的应用程序中,我使用该libusb库来分离 USB 存储驱动程序,然后声明该接口。然后,我可以在我的 USB 设备和我的主机 Linux 系统上运行的应用程序之间发送数据。

如何在应用程序之外手动分离驱动程序?


其次,如何自动分配驱动程序以附加到设备插件上?我目前有一个 udev 规则设置来自动设置设备权限:

SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", MODE="0666"
Run Code Online (Sandbox Code Playgroud)

我可以使用 udev 规则为 USB 设备上的特定接口分配驱动程序吗?例如,如果我希望在接口 0 上自动使用 usbnet 模块而不是 usb-storage,这在 udev 中可能吗?

drivers kernel usb udev kernel-modules

34
推荐指数
1
解决办法
5万
查看次数

我应该在哪个日志中检查 udev 错误?

我编写了一个udev规则,每次安装/卸载我的设备时都会运行该规则。

但是,在调试此类规则时,我应该在哪个 Linux (Debian) 错误日志中查看?

linux logs debian udev

33
推荐指数
2
解决办法
5万
查看次数

/etc/udev/rules.d/ vs /lib/udev/rules.d/ - 使用哪个,为什么?

Arch wiki建议创建一个文件/etc/udev/rules.d/来修复我的 Steam 控制器问题。这有效!但是,我注意到这个文件夹中除了我刚刚创建的规则之外没有其他规则。此外,我见过的所有其他来源都说要将 udev 规则放在 中/lib/udev/rules.d/,并且该文件夹中还有很多其他 udev 规则。为什么看似相同的东西有两个文件夹,我应该使用哪个?

udev etc

28
推荐指数
1
解决办法
9478
查看次数

如何调试 udev 规则(在 /etc/udev/rules.d/... 中)

我正在创建一个新的基本规则

/etc/udev/rules.d/10-myrule.rules
Run Code Online (Sandbox Code Playgroud)

包含:

KERNEL!="sdb*", GOTO="auto_mount_end"
ACTION=="add", RUN+="/usr/bin/mount /dev/sdb1 /media"
LABEL="auto_mount_end"
Run Code Online (Sandbox Code Playgroud)

我保存、重新启动并插入了一张 SD 卡(由 识别/dev/sdb1,我看到它dmesg),但没有任何反应。当我手动执行时mount /dev/sdb1 /media,它可以工作。

如何对这样的udev规则进行故障排除/调试?

注意:我使用的是 ArchLinux,但在任何发行版上都应该是一样的?

arch-linux udev mount

26
推荐指数
2
解决办法
6万
查看次数

/dev 和 /sys 之间的区别

devfssysfs到底有什么区别?两者似乎都维护着一个附加到系统的硬件列表。那么为什么甚至需要 2 个单独的 fs 呢?据我所知,/sys维护了一些“原始”设备列表(如“ser0”)。Udev 作用于这些设备,获取各种信息并应用各种规则将它们呈现为可识别的名称,然后映射到/dev(如“相机”)。这是唯一的原因吗?然后我们将/dev fs 中的相应设备(我们不能从/sys fs 执行此操作)挂载到/media fs 中。

我已经阅读了/dev 和 /sys/class 之间的差异?. 但我无法得到 sys fs 部分,它指出

Sysfs 包含设备的层次结构,因为它们连接到计算机

/sys 中的文件不是设备节点文件吗?那么它们是什么类型的文件呢?

linux udev mount devices sysfs

23
推荐指数
1
解决办法
1万
查看次数

Udev-如何找出设备属于哪个子系统?

例如,我有设备 /dev/sdb。我如何找出它的 udev 子系统?

udev

22
推荐指数
3
解决办法
4万
查看次数

如果删除设备文件会发生什么?

我大致了解位于/dev 下的文件。

我知道有两种类型(字符/块),访问这些文件与内核中的驱动程序通信。

我想知道如果我删除一个会发生什么——特别是对于这两种类型的文件。如果我删除一个块设备文件,比如说/dev/sda,这有什么影响——如果有的话——有什么影响?我刚刚卸载了磁盘吗?

同样,如果我删除/dev/mouse/mouse0- 会发生什么?鼠标停止工作了吗?它会自动替换自己吗?

我什至可以删除这些文件吗?如果我设置了虚拟机,我会尝试一下。

linux udev devices block-device linux-kernel

21
推荐指数
2
解决办法
5009
查看次数

什么是“/dev/sda0”?这是一个标准的东西吗?

在试图理解另一个问题时,我遇到了/dev/sda0被提及的情况。

\n

我在 Linux 方面有一些经验,并且习惯了这种方案,其中sda, sdb, \xe2\x80\xa6 是设备sda1, , sda2, \xe2\x80\xa6 , sdb1, sdb2, \xe2\x80\xa6 是分区(每个分区都在各自的设备)。在这个方案中sda0, sdb0, \xe2\x80\xa6 不会出现。我不记得sda0曾经见过。

\n

仍然sda0出现在 U&L SE超级用户和其他地方。在它出现的地方,它几乎总是第一个分区,即我希望在sda1我习惯的方案中出现的分区。

\n

另一方面,在 Debian 10 中,我可以看到major,minor数字8,1for sda18,2forsda2等。因此,如果有人问我sda0可能是什么,我会说8,0哪个已经分配给了sda。这个推理sda0相当于sda整个设备。我猜这些数字是 Linux 特有的,在非 Linux Unix(类似)操作系统中它们可能会有所不同,因此推理可能不适用于那里。

\n

在互联网上我发现很少有sda0 …

partition udev devices history block-device

21
推荐指数
3
解决办法
4452
查看次数