切断されたモニターはまだ接続されていると報告されます。

切断されたモニターはまだ接続されていると報告されます。

私がしたこと:

  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)

最初の2行はHDMIケーブルをコンピュータに接続した直後に表示されますが、最後の2行は手順3で説明したxrandrコマンドを実行したときにのみ表示されます。

役に立つなら、私のカーネルバージョンは次のようになります。

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

ベストアンサー1

おすすめ記事