CD가 CD 메커니즘에 물리적으로 삽입되었는지 최대한 빨리 감지하려면 어떻게 해야 합니까? CD가 자동으로 마운트되지만 때로는 20초가 걸릴 때도 있습니다. 이때 CD가 삽입되었다는 것을 알 수 있습니다... 사전에 알리지 않은 것 같습니다.
CD를 넣은 지 1초 만에 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"