私のシステムには、3枚のグラフィックカード、1枚のradeonと2枚のnvidiaが含まれています。
マルチシートセットアップを構成しようとしていますが、グラフィックカードの「デバイス名」が安定しておらず、起動ごとに変わります。
例
ブート1
Radeonカード/sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card1
Nvidia1カード/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card0
Nvidia2カード/sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2
ブート2
Radeonカード/sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card0
Nvidia1カード/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card1
Nvidia2カード/sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2
等...
デバイスのシートへの割り当てはこれらのデバイス名に基づいているため、この問題により、マルチシート構成が不安定になります(loginctlを使用します)。もう1つの実際の問題は、これにより、カーネルレベルとXorgレベルの両方でグラフィックカードのコネクタ名が変更されるため(つまり、VGA-1がVGA-2になるなど)、xorg.confを介してモニター設定を行うことも、「 video = "カーネルオプション。EDIDなしで古いcrtモニターを強制的に有効にするためにセットアップで必要です。
この "card0" "card1" ..が非決定的であるのは正常ですか、それはバグまたは構成可能なもの(udevまたはそのようなもの)ですか?
[〜#〜]編集[〜#〜]:
ユーザー@dirktがコメントで述べたように、systemdレベルでは非決定的であり、実際にはマルチシート構成自体は問題ありません。私の主な問題は、出力名の信頼性の低さです。 「video = VGA-1:e」を指定して出力を強制的に有効にするために、カーネルレベルでそれらが必要です。そして、xorgレベルでOption "Monitor-VGA-1" "Monitor-x"
を使用する必要があります。
問題を修正できませんでしたが、出力名の回避策を見つけました。
カーネルブートオプションで、3つのVGAコネクタの両方をアクティブにします。
video=VGA-1:e video=VGA-2:e video=VGA-3:e
xorg.conf
のデバイスセクションで、すべての可能な出力のモニターオプションを定義しますが、関係のないものは単に無視されます。
Option "Monitor-VGA-1" "my-monitor"
Option "Monitor-VGA-2" "my-monitor"
Option "Monitor-VGA-3" "my-monitor"
これはハックですが、私の主な問題を解決します。
私はより良い、よりクリーンな解決策に興味があるので、今でもこの答えを受け入れません。