Отключенный монитор по-прежнему отображается как подключенный

Что я сделал:

  1. Подключите монитор через HDMI. Выходной сигнал xrandr выглядит так, как ожидалось:

     Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767 eDP1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 310mm x 170mm 1920x1080 60.01*+ 1400x1050 59.98 1600x900 60.00 1280x1024 60.02 1280x960 60.00 1368x768 60.00 1280x720 60.00 1024x768 60.00 1024x576 60.00 960x540 60.00 800x600 60.32 56.25 864x486 60.00 640x480 59.94 720x405 60.00 640x360 60.00 DP1 disconnected (normal left inverted right x axis y axis) DP2 disconnected (normal left inverted right x axis y axis) HDMI1 disconnected (normal left inverted right x axis y axis) HDMI2 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 530mm x 300mm 1920x1080 60.00*+ 50.00 59.94 1680x1050 59.88 1600x900 60.00 1280x1024 75.02 60.02 1440x900 59.90 1280x800 59.91 1152x864 75.00 1280x720 60.00 50.00 59.94 1024x768 75.03 70.07 60.00 832x624 74.55 800x600 72.19 75.00 60.32 56.25 720x576 50.00 720x480 60.00 59.94 640x480 75.00 72.81 66.67 60.00 59.94 720x400 70.08 VIRTUAL1 disconnected (normal left inverted right x axis y axis) 

    В файле /sys/class/drm/card0-HDMI-A-2/status , который соответствует подключенному монитору, содержится слово, connected (как и ожидалось).

  2. Затем я отсоединяю кабель HDMI. Когда я проверяю /sys/class/drm/card0-HDMI-A-2/status он все еще содержит connected .

  3. Когда я теперь запускаю xrandr он как-то сбрасывает мою настройку, и файл обновляется, чтобы отразить правильный статус, а именно disconnected .

Мой вопрос: как я могу исправить это поведение, чтобы файловая система / sys правильно отображала состояние, как только кабель отсоединен? И мне не нужно вызывать xrandr для инициирования обновления.

Альтернативный вопрос: что делает xrandr , что вызывает обновление файловой системы / sys? Таким образом, я мог бы написать небольшой скрипт, который периодически вызывает обновление.

Во время этого я также посмотрел на udevadm monitor :

  monitor will print the received events for: UDEV - the event which udev sends out after rule processing KERNEL - the kernel uevent KERNEL[7260.824844] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm) UDEV [7260.825690] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm) KERNEL[7280.130646] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm) UDEV [7280.138375] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm) 

Первые две строки появились сразу после подключения кабеля HDMI к компьютеру, однако последние две строки появились только при xrandr команды xrandr упомянутой в шаге 3.

Если это какая-то помощь, это моя версия ядра:

 Linux archy 4.8.13-1-ARCH #1 SMP PREEMPT Fri Dec 9 07:24:34 CET 2016 x86_64 GNU/Linux 

  • Силовое разрешение экрана в Lubuntu
  • Как настроить функцию масштабирования xrandr для переключения на следующее или предыдущее разрешение в предопределенном списке?
  • Дисплей на ноутбуке не работает, если сначала подключить его к монитору
  • Переход между двумя xsessions очень медленный, если подключен внешний монитор
  • Как я могу поменять свои два экрана слева направо?
  • Запуск сценария для настройки конфигурации монитора
  • Как изменить настройку по умолчанию, принятую xrandr при подключении внешнего монитора?
  • Как настроить сенсорный экран x11 на рабочем столе Linux?
  • Многочисленные дисплеи xrandr, отображающие разные области одного и того же виртуального экрана
  • выполнение сценария оболочки из запуска, медленное завершение / завершение сценария
  • Сценарий внешнего монитора стал ненадежным
  • Linux и Unix - лучшая ОС в мире.