Linuxでコンソールが表示されるモニターを指定する方法はありますか?
詳細:
2枚のビデオカードを備えた3台のモニターをセットアップしています。コンピューターを起動すると、BIOSがPCIグラフィックカード(小さなモニターを搭載)に表示されます。 Linuxを起動すると、コンソールが同じモニターに表示されます。コンソール出力を別のモニターに表示する方法はありますか? vesafbフレームバッファを使用しています。
BIOSでデフォルトのビデオカードを変更する方法がわかりません。
ここで探しているオプションはfbcon=map:n
ここで、n
は、目的のビデオ出力用にfbデバイスに割り当てられた番号です。
Documentation/fb/fbcon.txt はそれについて説明し、con2fbmap
実行時に変更するためのユーティリティとして。
どのコンソールでどのコンソールを実行するか(フレームバッファー@/dev/fb x
)を変更する場合は、このような80行のCプログラムをダウンロードして、そのようなものを指定できます。
wget https://raw.githubusercontent.com/kunguz/pi3b/master/con2fb.c
gcc con2fb.c -o con2fb.out
それをダウンロードしてコンパイルした後、最も簡単な使用法はSudo ./con2fb.out /dev/fb[frame buffer number, starting at 0] /dev/tty[console number, starting at 1]
です。
これにより、指定された端末が指定されたモニター(フレームバッファー)に「ロック」されるため、モニターに割り当てられている端末に切り替えようとすると、現在のディスプレイで切り替えるのではなく、その端末にフォーカスが移ります。
ただし、フレームバッファ!=物理モニターであることを忘れないでください。個別のttyをオンにする各モニターは、個別のグラフィックカードに接続する必要があります(個別のフレームバッファー)。
また、注意しないとカーネルがクラッシュする可能性があるため、プログラムをだまそうとしないように注意してください。 ;)