标签: udev

如何在不重启的情况下重新加载 udev 规则?

应该如何重新加载 udev 规则,以便新创建的规则可以运行?

我正在运行 Arch Linux,但udevstart这里没有命令。

还检查了/etc/rc.d,那里没有 udev 服务。

kernel udev

261
推荐指数
4
解决办法
51万
查看次数

为什么我的以太网接口被称为 enp0s10 而不是 eth0?

当我运行时ifconfig -a,我只得到loenp0s10接口,而不是经典的eth0

enp0s10是什么意思?为什么没有eth0

linux networking udev ethernet

114
推荐指数
4
解决办法
14万
查看次数

如何找到可用的网络接口?

这是关于 linux,但如果有人知道一般的 *nix 方法会很好。

我昨天在插入以太网电缆的情况下启动了一个系统。“NetworkManager”没有安装,所以一旦它启动,我就去寻找以太网接口的名称ifconfig来手动启动一个 DHCP 客户端,但除了lo.

NIC 通过 列出lspci,并加载了适当的内核驱动程序。系统通常使用 wifi,我记得它的接口名称是wlan0. 当我尝试时ifconfig wlan0 upwlan0出现了。但是我能记住的唯一以太网接口名称是eth[N]em[N]- 两者都不起作用。

本文档提到了“可预测的接口名称”,但并没有很好地用简单的术语解释它们可能是什么。它确实引用了一段源代码,这意味着在这种情况下,名称可能是从 PCI 总线和插槽编号推断出来的,这似乎是一个不必要的复杂麻烦。

其他搜索使我相信这可能是由systemd与 一起确定的udev,但是有将近 100 个文件/usr/lib/udev/rules.d并且花了一个小时试图确定在哪里(以及是否)有一个 systemd 配置文件,这似乎也很荒谬。

这也将是不错的肯定知道,他们是可用的,不只是他们怎么可能被命名为,如果是这样,所以我可以排除硬件问题等是不是有一个简单的方法来找到可用的网络接口的名称在Linux上?

linux networking udev devices systemd

100
推荐指数
4
解决办法
37万
查看次数

为什么网络接口不像其他设备那样在 /dev 中?

我很好奇,但为什么 /dev 中没有网络接口?是否还有其他类型的设备未表示为 /dev 下的节点?

udev devices

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

插入外部显示器时自动应用 RandR 配置的工具

有没有一种工具可以让人们:

  • 记住每个显示器的当前 RandR 配置(位置、方向、分辨率等),
  • 插入显示器后立即自动应用最后一次已知的良好配置,而无需使用小程序或 xrandr(1)?

这些配置必须在每个用户、每个显示器的基础上应用。

如果野外没有这样的工具,我想自己拼一个,但据我所知,没有办法判断是否插入了显示器。我是否必须使用 xrandr -q 进行轮询偶尔弄清楚输出是连接还是断开,还是有更有效的方法来做到这一点?可以调整 udev 来做到这一点吗?

linux xorg udev xrandr

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

如何检测显示器何时插入或拔出?

是否有任何当我插上或缩小外部监视器到我的笔记本电脑的DisplayPort的所触发的事件?ACPID 和 UDEV 根本没有反应。

我在英特尔芯片上使用板载图形。是一个类似的讨论,已经有几年了。

我不想使用轮询,但我需要一些配置,根据显示器是否连接自动设置显示设置。

udev acpi multi-monitor monitors

56
推荐指数
4
解决办法
7万
查看次数

如何在 USB 设备插件上运行自定义脚本?

在当前的 Linux 发行版(如 Debian/CentOS/Fedora)下,在 USB 设备插件上自动执行自定义脚本的最先进方法是什么?

例如,如果您想根据 UUID(或设备 ID 等)自动挂载/复制某些文件/卸载 USB 大容量存储设备。

usb udev uuid

47
推荐指数
2
解决办法
10万
查看次数

如何在插入 USB 设备时执行 shellscript

我想在我的 Linux 机器上插入设备时执行脚本。例如,xinput在鼠标或某个驱动器上的备份脚本上运行。

我看过很多关于这方面的文章,最近一次是这里这里。但我就是无法让它工作。

下面是一些试图获得至少某种响应的简单示例。

/etc/udev/rules.d/test.rules

#KERNEL=="sd*", ATTRS{vendor}=="*", ATTRS{model}=="*", ATTRS{serial}=="*", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=="add", "SUBSYSTEM=="usb", ATTRS{model}=="My Book 1140    ", ATTRS{serial}=="0841752394756103457194857249", RUN+="/usr/local/bin/test.sh"
#ACTION=="add", "SUBSYSTEM=="usb", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=={add}, RUN+="/usr/local/bin/test.sh"
KERNEL=="sd*", RUN+="/usr/local/bin/test.sh"
KERNEL=="*", RUN+="/usr/local/bin/test.sh"
Run Code Online (Sandbox Code Playgroud)

/usr/local/bin/test.sh

#!/usr/bin/env bash
echo touched >> /var/log/test.log

if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]
then
    echo ${DEVICE} >> /var/log/test.log
fi
Run Code Online (Sandbox Code Playgroud)

规则文件夹由监视inotify并应立即激活。我不断地重新插入我的键盘、鼠标、平板电脑、记忆棒和 USB 驱动器,但没有。没有触及日志文件。

现在,至少知道某些事情正在起作用的最简单方法是什么?使用有效的方法比使用无效的方法更容易。

linux bash ubuntu udev

40
推荐指数
3
解决办法
7万
查看次数

/dev 和 /sys/class 之间的区别?

设备表示 in/dev和 one in 有/sys/class什么区别?

一个比另一个更受欢迎吗?是否有一个提供而另一个不提供的东西?

linux udev devices sysfs

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

为什么有些 Linux 发行版仍然有 /dev/ttyS0、ttyS1 等,即使较新的计算机没有这样的串行端口?

许多新的膝上型计算机和台式计算机没有 9 针/25 针串行端口。为什么许多 Linux 发行版仍然包含/dev/ttyS0,dev/ttyS1设备文件?

由于udev可以动态地创建设备文件,为什么/dev/ttyS0/dev/ttyS1还是静态创建?每次我开机,/dev/ttyS0/dev/ttyS1在那里。

顺便说一句:我正在使用 Debian 7.0。

linux udev serial-port

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