如何尽快检测到 CD 已物理插入 CD 机械装置中? CD 会自动安装,但有时需要 20 秒 - 就在那时我才知道 CD 已插入......似乎没有事先通知我。
插入 CD 一秒钟后我就会很高兴地知道它确实在那里(我不在乎它是否安装)。
我尝试blkid /dev/sr0
在插入 CD 时返回特殊值。但是这会阻塞,直到安装 CD 为止。
然后我尝试了ioctl之类的这里但它返回 CDS_NO_DISC,然后在安装 CD 后仅返回 CDS_DISC_OK(20 秒后)
/sys /proc 或 CD 插入的地方是否有某些文件?
我使用的是嵌入式 Linux..但我认为这并不重要 - 我正在运行内核 4.1.18
更新:
我们已经使用 udev 规则进行安装..但是触发此 udev 比检查安装的 CD 稍微快一点(快 2-3 秒,但仍然超过 10-15 秒)..这是规则:
KERNEL=="sr*", ACTION=="change", RUN+="/etc/udev/scripts/mount.sh", ENV{UDISKS_PRESENTATION_HIDE}="1", GOTO="automount_end"