更改生成的/dev/tty设备的数量

Dav*_*fer 5 kernel gentoo tty devices

我正在构建一个基于 Gentoo 的嵌入式 Linux 系统。使用 udev,所有 tty 设备都会通过一个PROGRAM节进行探测,以确定它们是否是调制解调器。

现在系统以 64 启动/dev/tty*。当 udev 探测 tty 设备时,系统内存不足。

如何将生成的 tty 设备数量减少到 4 个?这是操作系统设置还是内核设置?

Mat*_*Mat 2

我不确定设备节点是如何创建的(即导致它们创建的确切事件顺序),但我很确定内核在内部为 63 个设备(/dev/ttyN加上/dev/tty)创建了底层设备,并udev执行使它们在内部可用的工作/dev(除了/dev/tty和由with/dev/tty1创建的)。/etc/init.d/udev-mountmknod

我不认为你可以通过配置限制内核设备的数量。

如果您想限制出现在您的想法中的设备数量,这里有一个解决方法/dev。创建一个/etc/udev/rules.d/99-my-tty-rules.rules文件并在其中放入类似以下内容:

KERNEL=="tty[2-9][0-9]", RUN="/bin/rm /dev/%k", OPTIONS+="ignore_device"
Run Code Online (Sandbox Code Playgroud)

这将删除tty编号为 20 及以上的设备文件。

注意事项

  • 在那里使用rm看起来真的很奇怪,但我找不到一种方法来不首先创建节点
  • 过于热情地使用这些条目可能会导致有趣的问题 - 谨慎使用。