외부 모니터를 연결한 경우에만 Udev 알림

외부 모니터를 연결한 경우에만 Udev 알림

사용자가 외부 모니터를 연결하는 경우(예: 커넥터가 연결된 경우)에만 내 애플리케이션에 알림을 보내고 싶습니다.

내 명령 출력 udevadm info -a -p /sys/class/drm/card1-VGA-2:

  looking at device '/devices/pci0000:00/0000:00:02.0/drm/card1/card1-VGA-2':
    KERNEL=="card1-VGA-2"
    SUBSYSTEM=="drm"
    DRIVER==""
    ATTR{edid}==""
    ATTR{dpms}=="On"
    ATTR{enabled}=="enabled"
    ATTR{status}=="connected"

  looking at parent device '/devices/pci0000:00/0000:00:02.0/drm/card1':
    KERNELS=="card1"
    SUBSYSTEMS=="drm"
    DRIVERS==""
    ATTRS{gt_RP1_freq_mhz}=="650"
    ATTRS{gt_min_freq_mhz}=="650"
    ATTRS{gt_RPn_freq_mhz}=="650"
    ATTRS{gt_RP0_freq_mhz}=="1300"
    ATTRS{gt_cur_freq_mhz}=="650"
    ATTRS{gt_max_freq_mhz}=="1300"

  looking at parent device '/devices/pci0000:00/0000:00:02.0':
    KERNELS=="0000:00:02.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="i915"
    ATTRS{irq}=="48"
    ATTRS{subsystem_vendor}=="0x17aa"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x030000"
    ATTRS{driver_override}=="(null)"
    ATTRS{consistent_dma_mask_bits}=="40"
    ATTRS{dma_mask_bits}=="40"
    ATTRS{local_cpus}=="00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,0000000f"
    ATTRS{device}=="0x0126"
    ATTRS{enable}=="1"
    ATTRS{msi_bus}==""
    ATTRS{local_cpulist}=="0-3"
    ATTRS{vendor}=="0x8086"
    ATTRS{subsystem_device}=="0x21d3"
    ATTRS{boot_vga}=="1"
    ATTRS{numa_node}=="-1"
    ATTRS{d3cold_allowed}=="1"

looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

내 udev 규칙이 다음인 경우:

KERNEL=="card1", SUBSYSTEM=="drm", ATTR{status}=="connected", ACTION=="change",  ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/smidla/.Xauthority", RUN+="/home/smidla/test.sh"

아무 일도 일어나지 않지만 부품을 떼어내면 ATTR{status}=="connected"외부 test.sh모니터를 꽂고 뽑을 때의 성능이 나옵니다.
그러나 모니터를 연결하는 경우에만 알림이 필요합니다. 내 하드웨어에서 이러한 작업으로 인해 시스템 속도가 몇 초 정도 느려지기 때문에 사용 xrandr하거나 읽을 수 없습니다 . /sys/class/drm/card1-VGA-2/status이 문제를 어떻게 해결할 수 있나요?

관련 정보