我正在戴尔XPS13 9343上运行Ubuntu18.04.2LTS,并且似乎患有内核错误(引用:https://www.spinics.net/lists/linux-media/msg135812.html),这导致了现在media0
- media255
在dev
下被占用的问题,从而导致了以下问题(media: could not get a free minor
):
dmesg | tail -13
[ 5068.870529] uvcvideo: Found UVC 1.00 device Integrated_Webcam_HD (0c45:670c)
[ 5068.911713] uvcvideo 2-5:1.0: Entity type for entity Extension 4 was not initialized!
[ 5068.911716] uvcvideo 2-5:1.0: Entity type for entity Extension 3 was not initialized!
[ 5068.911717] uvcvideo 2-5:1.0: Entity type for entity Processing 2 was not initialized!
[ 5068.911719] uvcvideo 2-5:1.0: Entity type for entity Camera 1 was not initialized!
[ 5068.911722] media: could not get a free minor
[ 5069.249598] usb 2-5: USB disconnect, device number 56
[ 5069.556176] usb 2-5: new high-speed USB device number 57 using xhci_hcd
[ 5069.767923] usb 2-5: New USB device found, idVendor=0c45, idProduct=670c
[ 5069.767929] usb 2-5: New USB device strings: Mfr=2, Product=1, SerialNumber=0
[ 5069.767934] usb 2-5: Product: Integrated_Webcam_HD
[ 5069.767938] usb 2-5: Manufacturer: CN09GTFM7248753ABDZMA00
[ 5069.779009] uvcvideo: Found UVC 1.00 device Integrated_Webcam_HD (0c45:670c)
虽然这个bug已经修复,但它似乎还没有移植到我的LTS版本(参考:https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1836654,entry media: uvcvideo: Fix driver reference counting
)。
不过,我现在的问题是:
1)如何以适当的方式手动(最好是从终端)清除这些媒体控制器设备(设备控制器节点)?
2)一般说来,我如何才能找出/dev下的哪些项是不活动/过时的,并清除这些项?
其他信息:
在/sys/devices/pci0000:00/0000:00:14.0/usb2
下,它一直试图添加,但之后删除了一个2-5
目录。
在/sys/dev/char
下,现在有两种类型的断链接:
lrwxrwxrwx 1 root root 0 Aug 15 09:52 13:256 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/input/input42/event256
lrwxrwxrwx 1 root root 0 Aug 15 09:52 13:257 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/input/input43/event257
............
lrwxrwxrwx 1 root root 0 Aug 15 09:52 13:495 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/input/input281/event495
lrwxrwxrwx 1 root root 0 Aug 15 09:52 13:496 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/input/input282/event496
lrwxrwxrwx 1 root root 0 Aug 15 09:52 241:0 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/media0
lrwxrwxrwx 1 root root 0 Aug 15 09:52 241:1 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/media1
lrwxrwxrwx 1 root root 0 Aug 15 09:52 241:10 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/media10
............
lrwxrwxrwx 1 root root 0 Aug 15 09:52 241:98 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/media98
lrwxrwxrwx 1 root root 0 Aug 15 09:52 241:99 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/media99
然后还有/dev/char
和/dev/input
需要考虑(?)
发布于 2019-08-15 13:45:04
1)如何以适当的方式手动(最好是从终端)清除这些媒体控制器设备(设备控制器节点)?
您可以在/dev/中删除所需的所有内容,但在下一次重新启动时,将重新创建所有内容。基本上,这就是Linux如何摆脱一个尽可能通用的系统:这些/dev/条目是根据系统的需要动态创建的,因此您可以取出硬盘并将其放到另一台计算机中.接下来,为该系统创建重新引导/dev/。工作完美,除了第三方司机,在其他系统没有第三方划分。
2)一般说来,我如何才能找出/dev下的哪些项是不活动/过时的,并清除这些项?
/dev/是根据作为设备所需的包创建的,所以应该需要所有的东西(虽然我不能告诉您/dev/中的条目是为了什么目的而需要的)。
理论上,包应该有有限数量的/dev/条目。当uvcvideo
有一个创建大量/dev/条目的bug时,除非您考虑删除uvcvideo
选项,否则我们无法对它做很多事情。问题不在/dev/ ..。这就是臭虫的作用。修复uvcvideo
是应该做的事情。
您可以手动删除/dev/条目,但每次重新启动都需要1次。用剧本来做这件事。我会犹豫一下给你建议。它很可能会破坏一些东西。此外:我希望系统在引导期间(在清理之前)开始抛出错误。
https://askubuntu.com/questions/1165869
复制相似问题