web-dev-qa-db-ja.com

Linuxで複数のビデオカードを使用するにはどうすればよいですか?

Fedora 12をインストールしました。

Windowsで4つのモニターを実行するために使用していた2つのATIカードがあります。繰り返し発生する問題は、それらをLinuxで検出することです。私の二次カードだけがLinuxで拾われました。ディスプレイを管理すると、そのカードに接続されている2つのモニターが検出されます。

2枚目のカードを検出するために必要な具体的な手順は何ですか?おそらくsystem-config-xfreeというツールがあります。持っていません、yumはそれを見つけることができません。

また、xorg.confファイルの編集やその効果に関係があると聞いています。カードの「バスID」を見つける方法や、水平リフレッシュレートを検索する方法などまったくわかりません。

これらの値を見つけるための適切な方法を知っていれば、おそらくドキュメントに従ってファイルを編集しても問題はないでしょう。

誰かがlinuxを2回インストールし、毎回生成するxorg.confを(毎回異なるカードで)保存し、2つを手動でマージすることも提案しました。それはハンマーでハエを殺すようなものですが、将来これを何度も何度もやるときには、2倍の時間をかけなくてもいいのはいいことです。

ありがとう

14
JoshRibs

カードの「バスID」を見つけるのは簡単です。実行するだけです。

lspci | grep VGA

結果は次のようになります。

01:08.0 VGA compatible controller: Number 9 Computer Company Revolution 4 (rev 02)

次に、「01:08.0」がバスIDです。カードが2枚ある場合、そのような2行になります。

次に、ルートとしてテキストエディタを使用して/etc/X11/xorg.confファイルを開きます。 2つのDeviceセクションを含むように編集します。デバイスセクションの例:

Section "Device"
        Identifier  "My video card 1"
        Driver      "ATI"
        BusID       "PCI:1:8:0"
EndSection

識別子は、ビデオカードを識別するための任意のテキストです。xorg.confファイルの後のセクションで必要になります。ドライバーは次のいずれかです。

apm, ATI, chips, cirrus, cyrix, fbdev, glide, glint, i128, i740, imstt, intel, mga, neomagic, nv, openchrome, r128, radeon, rendition, savage,  s3virge,  siliconmotion, sis, sisusb, sunbw2, suncg14, suncg3, suncg6, sunffb, sunleo, suntcx, tdfx, trident, tseng, vesa, vmware, voodoo, wsfb, xgi, xgixp

ビデオカードにあるチップセットのタイプのように見えるものを1つ選択してください(lspci | grep VGAの文字列が役立ちます)。そして、あなたがすでに知っているBusID。そのようなセクションを2つ作成します。

2つのビデオカードで2つのモニターを構成する方法を説明します。構成ファイルがどのように機能するかを理解したら、それを4つのモニターに拡張できるはずです。

次に、2つの「モニター」セクションを作成します。このようなもので十分です:

Section "Monitor"
   Identifier  "My monitor 1"
   HorizSync   30-94
   VertRefresh 48-85
EndSection

Identifierもここで選択したものです。モニターの取扱説明書で水平同期と垂直リフレッシュレートを確認して、他の2つの必須パラメーターを確認してください。

次に、次のように2つの「Screen」セクションを作成します。

Section "Screen"
   Identifier  "My screen 1"
   Device      "My video card 1"
   Monitor     "My monitor 1"
   DefaultDepth    24
   SubSection "Display"
       Depth       24
       Modes       "1600x1200"
   EndSubSection
EndSection

前のセクションで作成した識別子を使用する場合、24は希望の色深度です。モードでは、希望の解像度をそのモニターに設定します。

最後に、ServerLayoutセクションを次のように編集します。

Section "ServerLayout"
    Identifier  "Default Layout"
    Screen  0   "My screen 1"
    Screen  1   "My screen 2" RightOf "My screen 1"
    InputDevice "My keyboard"
    InputDevice "Configured Mouse"
EndSection

それのほとんどはすでにそこにあります、あなたが追加する必要があるのはこの行です:

Screen  1   "My screen 2" RightOf "My screen 1"

以前に定義した画面の識別子をどこに置くか。

次に、Xサーバーを再起動すると動作します。 /var/log/Xorg.0.logまたは同様のログファイルでエラーが確認されない場合。そのようなファイルを作成する方法を読みたい場合は、マニュアルにあるはずです:

man xorg.conf

システムにない場合は、「man xorg.conf」をGoogle検索すると多くのリソースが表示されます。

これはあなたが読むのにも興味深いはずです: http://www.ghacks.net/2009/02/04/get-to-know-linux-understanding-xorgconf/

これはGentoo用ですが、xorg.confファイルを書く方法の多くの有用な例を示しています: http://en.gentoo-wiki.com/wiki/X.Org/Dual_Monitors/ATI

13
miernik