# Xinerama einrichten

## LunX

Hallo,

ich war grade dabei ein kleines HowTo für gentoo-wiki zu schreiben doch mir viel dann doch sehr schnell auf das das Thema viel größer ist als cih dachte. Deshalb wollte ich hier mein Wissen nieder schreiben in der erwartung das ihr verbesserungs oder vorschläge habt bzw den Artikel einfach erweitern könnt. Vorschläge usw also einfach dazu schreiben und ich füge das dann hinzu (werdet natürlich namendlich erwähnt).

Im Artikel:

- Grafikkarte mit VGA und DVI Ausgang mit xinerama oder zwei getrennten Desktops

Was fehlt:

- AGP und PCI Grafikkarte?

- TV-Out?

- weitere möglichkeiten das Bild aufzuteilen.

Fangen wir also an als erst muesst ihr eure xorg.conf sichern

```
# cp /etc/X11/xorg.conf /etc/X11/xorg.conf.back

# nano /etc/X11/xorg.conf
```

Als erstes muessen wir einen Monitor hinzufügen:

```

Section         "Monitor"

        Identifier      "Monitor[0]" #TFT

        HorizSync       30 - 80

        VertRefresh     56-76

        EndSection

Section         "Monitor"

        Identifier      "Monitor[1]" #CRT

        HorizSync       30 - 80

        VertRefresh     60

        EndSection

```

Danach brauchen wir einen zweiten Device:

```

Section         "Device"

        Identifier      "Dev[0]"

        Driver          "nvidia"

        Option          "RenderAccel"           "True"

        Option          "EnablePageFlip"        "True"

        Option          "AllowGLXWithComposite" "true"

        Option          "AGPFastWrite"          "True"

        Option          "AGPMode"               "8"

        Option          "NoLogo"                "on"

        BusID           "PCI:2:0:0"

        Screen 0

        EndSection

Section         "Device"

        Identifier      "Dev[1]"

        Driver          "nvidia"

        Option         "RenderAccel"           "True"

        Option         "EnablePageFlip"        "True"

        Option         "AllowGLXWithComposite" "true"

        Option         "AGPFastWrite"          "True"

        Option         "AGPMode"               "8"

        Option         "NoLogo"                "on"

        Option         "ConnectedMonitor"      "Monitor[1]"

        BusID           "PCI:2:0:0"

        Screen 1

        EndSection

```

Dann noch nen zweiten Screen:

```

Section         "Screen"

        Identifier      "Screen[0]"

        Device          "Dev[0]"

        Monitor         "Monitor[0]"

        DefaultDepth    24

        Subsection      "Display"

                        Depth           24

                        Modes           "1280x1024"

                        ViewPort        0 0

        EndSubsection

        EndSection

Section         "Screen"

        Identifier      "Screen[1]"

        Device          "Dev[1]"

        Monitor         "Monitor[1]"

        DefaultDepth    24

        Subsection      "Display"

        Depth           24

        Modes           "1024x768"

        ViewPort        0 0

        EndSubsection

        EndSection

```

Und zum Ende noch das ServerLayout anpassen:

```

Section         "ServerLayout"

        Identifier      "Layout[0]"

        Screen  0       "Screen[0]"

        Screen  1       "Screen[1]"     LeftOf          "Screen[0]" # LeftOf,RightOf

        Option          "Xinerama"      "off" # on,off

        InputDevice     "Mouse[0]"      "CorePointer"

        InputDevice     "Kbd[0]"        "CoreKeyboard"

        EndSection

```

X-Server neustarten und fertig.

Um Programme nun auf einem bestimmten Monitor zu starten müsst ihr diesen Befehl benutzen:

```
DISPLAY:0.x gmplayer
```

wobei x durch 0 oder 1 zu ersetzen ist.

So das wars ich hoffe ihr könnt mir helfen dieses kleine How-To zu erweitern!

Gruß

Lunx

----------

## Blood_Seeker

Hallo alle zusammen.

Es empfihlt sich noch das USEFLAG "xinerama" in die make.conf zu schreiben.

MfG

  blood_seeker

----------

## caraboides

1. Ist es o auch einfach moeglich ein Fenster mit der Maus auf ein anderes zu schieben?

2. Ich habe eine NVIDIA 6800 Ultra, da sind ja zwei ausgänge dran also tifft auf mich das HOWTO zu?

3. Wenn ich jetzt z.B. ut2004 starte kann ich dann auf dem Zweiten Mon noch arbeiten?

4. Kann man das auch so weit aufbohren (zeite Tastuatur und Maus) das zwei leite an einem Rechner arbeiten?

Danke Für die Hilfe

----------

## CampinoDesign

Wenn du deine xorg entsprechend konfigurierst kannst du auf zwei xservern arbeiten (über zwei serverlayouts), Linux ist ja Multiuser fähig. Tastatur und Maus müssten über USB angeschlossen werden. Ich denke grundsätzlich ist das möglich  :Smile: 

// Lars

----------

## firefly

nicht ganz..

da leider im kernel der keyboard-treiber nicht unterscheiden kann von welchen keyboard die taste kommt, kann mann an einem Rechner keine 2 Keyboards voneinander unabhängig betreiben und Xorg ist soweit ich das weis auch (noch)nicht dafür ausgelegt.

Es gibt aber ein patchset der das ermöglichen soll(Ruby).

gruß

firefly

----------

## dreadhead

Ich denke viel wichter als die Erstellung der xorg.conf ist die Einrichtung des restlichen Systems.

Zum Beispiel:

- wird es sehr problematisch Xinerama oder Twinview auf 2 Monitoren zu verwenden die nicht die selbe Auflösung haben. (Dead Areas)

- gibt es Probleme bei einigen Programmen wie xine die dann das Bild in die Breite ziehen.

----------

## LunX

Ich habe es auch schonmal soweit übertrieben das ich zwei Tastaturen am PC hatte (mit dem Ruby Patch) aber wirklich gebraucht habe ich es nicht und ich konnte nie aktuelle Versionen vom Kernel oder von xorg nutzen worauf hin ich dann wieder alles umgebaut habe. Sollte man seinen Desktop auf 2 Fenster aufteilen dann sollte man wirklich zwei gleichgroße Monitore mit der selben Auflösung haben denn bei mir hat der eine Moni eine 1280x1024 und der andere 1024x768 und auf dem kleineren ist dann halt nur die hälfte des Bildes zu sehen. Deswegen habe ich auf beiden Monitoren jeweils eine Fluxbox am laufen auf denen ich ohne Probleme mit der Maus hin und her switchen kann nur man kann keine Fenster von der einen auf die andere Box schieben.

mplayer stellt auf beiden Monitoren Filme kalr dar.

wenn ich in ut2004 wärend des Spielens ESC drücke kann ich mit der Maus das Bild verlassen und am anderen Monitor weiterarbeiten.

Gibt es evtl. eine Seite wo alle möglichkeiten beschrieben sind auf Englisch solls mir auch recht sein.

gruß

Lunx

----------

## muckelzwerg

Hallo,

ich hab ein bissl Schwierigkeiten mit dem wechseln zwischen den Displays.

Hatte bereits mal gepostet und wurde hierhin verwiesen.

Mir geht es darum JEDERZEIT zwischen den beiden Screens wechseln zu können

ohne eine zweite Tastatur oder Maus anzuschließen.

Wenn ich eine DualX layout verwende bekomme ich ja eine vergrößerte Arbeitsfläche.

Wenn ich nun ein programm laufen lasse, das die Maus beeinflusst, dann kann ich 

nicht mehr auf die "rechte Seite" des Desktrops rüberfahren.

Gibt es dafür eine Lösung ?

Das einzige, was mir einfällt wäre zwei xserver laufen zu lassen und dann

über "Strg+Alt"Nummer" umzuschalten.

Würde das gehen ?

Axo und eine ganz simple Frage noch, wie kann ich "xinit" oder "X" die .conf angeben

mit der gestartet werden soll ?

thx

  --  --  muckelzwerg

----------

## LunX

Klar kannst du mit strg+alt+FX zwischen den Monitoren hin und her wechseln aber dann läuft jeweils nur einer gleichzeitig.

----------

## muckelzwerg

Hm, das ist natürlich äußerst unpraktisch  :Wink: 

Dann hätte ich noch ne andere Idee, vielleicht geht das.

Wie kann ich denn zwei Tastaturen auf die beiden Screens verteilen ?

Also jedem jeweils eine zuordnen ?

Muss ich dafür zwei Serverlayouts bauen ?

  --  --  muckelzwerg

----------

## LunX

dazu musst du deinen Kernel und xorg patchen da der Kernel nicht standard mäßig die Keyboards trennt. Mit verschieden Layouts bekommste da nichts hin. Damit ist dann aber das Problem verbunden das du nicht immer den Aktuellsten Kernel und Xorg betreiben kannst. Solltest mal nach dem Ruby Patch suchen.

----------

## muckelzwerg

Langsam, ich will keine zwei Tastaturen getrennt verwenden.

Geklont reicht erstmal völlig.

Ich möchte gern alle Tastaturen und Mäuse auf beiden Screens haben.

Die Idee ist, eine Tastatur über ein USB Y-Kabel doppelt anzuschließen,

und dem X als zwei Geräte zu verkaufen.

Dann hätte man eine geklonte Tastatur.

Dann rbauch ich nur noch nen Schalter der das USB-Kable umschaltet.

Sollte doch eigentlich klappen ?

Das einzige was mir grad etwas sorgen macht ist die frage ob ich exakt die gleich etastaru

an zwei usbs anklemmen und im xorg deffinieren kann.

  --  --  muckelzwerg

----------

## LunX

nö^^

also wenn du eine zweite Tastatur anschließt wird die einfach mit der anderen übereinander gelegt. Das merkst du indem du z.B die Num-Taste drückst dann geht die Num-Leuchte bei beiden Tastaturen an oder aus.

----------

## muckelzwerg

Ok, das gehörte eigentlich nicht mehr hierher.

Deswegen ...futsch.

  --  --  muckelzwerg

----------

## frary

Hmm, ich habe die Einstellungen aus dem ersten Posting übernommen. Mein erster screen funktioniert auch soweit, aber der zweite Monitor bekommt kein Signal.

Wenn ich beide devices auf 3:0:0 stelle, startet der Xserver nicht. wenn ich das zweite device anders einstelle

( 0:0:0, 3:0:1 ) ist dort kein Signal.

Brauche ich außer den Einstellungen in der xorg.conf und den Treibern noch was?

Xorg mit xinerama oder ähnliches?

Gruß

T

----------

## 76062563

Gibt es eine Möglichkeit Programmen beim Start zu sagen auf welchem Bildschirm sie dargestellt werden sollen?

----------

## LunX

Mit

```
DISPLAY=:0.x licq
```

 kannst du ein Programm geziehlt auf einem Monitor starten.

Um herrauszufinden welcher Screen welche Nummer besitzt musst du eine Konsole auf dem Monitor öffnen und

```
xdpyinfo | grep 'name of display' | tr -d 'name of display' | tr -d : | cut -d'.' -f2
```

ausführen. Falls du mehrere xserver am laufen hasst kannst du den Aktuellen xserver automatisch ermitteln:

```
DISPLAY=:$(xdpyinfo | grep 'name of display' | tr -d 'name of display' | tr -d : | cut -d'.' -f1)
```

So hoffe das hilft dir weiter.

Gruß

Lunx

----------

## x1jmp

Ich habe hier relativ problemlos zwei Monitore an zwei Grafikkarten am laufen.

Der eine läuft mit 1600x1200 und der andere mit 800x600 da die Grafikkart nur 2 MB hat.

Es gibt zwar einen toten Bereich, aber der wird auch nie genutzt, da die Programme beim automatischen Vergrößern sich immer nur auf einen Bildschirm ausbreiten.

Auch das Anzeigen der Programme auf einem bestimmten Desktop funktioniert problemlos, das Programm wird immer auf dem Monitor gestartet, auf dem sich auch der Mauszeiger gerade befindet.

Die einzigen Probleme bei mir sind 

1. die zweite Grafikkarte, wäre schön eine angemessene Auflösung zu benutzen, außerdem ist der vesa-Treiber so langsam, dass dort nicht einmal ein emerge laufen kann ohne die Geschwindigkeit herunterzuziehen.

2. Wie schon beschrieben ist man bei bei Spielen oder anderen Vollbildanwendungen im Programm gefangen und kann den anderen Monitor lediglich anschauen.

    Komischerweise ist dieser lästige Mausfokus nur bei nativen Programmen, wine/cedega sind da viel "freier".

----------

## dreadhead

Hi.

Mit irgendwelchen Programmen funktioniert es mittlerweile bei mir auch recht gut. Die einzigen Probleme die ich noch hab sind, dass xine oder mplayer das bild in die Breite ziehen oder sich bei Vollbild über beide Monitore erstrecken. Das hängt davon ab wie ich mit dem USE-Flag xinerama rumspiele. Eine funktionierende Konfiguration hab ich dazu noch nicht gefunden.

----------

## platinumviper

 *dreadhead wrote:*   

> Die einzigen Probleme die ich noch hab sind, dass xine oder mplayer das bild in die Breite ziehen oder sich bei Vollbild über beide Monitore erstrecken. Das hängt davon ab wie ich mit dem USE-Flag xinerama rumspiele.

 

Lass xinerama weg, dann beschränkt sich Vollbild auf einen Monitor, ist zum Ansehen von Filmen, PDFs usw angenehmer.  Zu den Verzerrungen: Gib in der xorg.conf die Display-Größe an (in mm, beide Monitore zusammen), Beispiel für zwei 19" Monitore:

```
Section "Monitor"

    Identifier  "Twinview"

    DisplaySize 760 315

EndSection
```

platinumviper

----------

## flammenflitzer

Ich mache das im Moment so

```
#!/bin/sh

# TV Ausgabe auf TV mit mplayer und Auswahl des Film

Xdialog --fselect  "" 100 200 \

2> /tmp/tvout.$$

eingabe=$(cat /tmp/tvout.$$)

DISPLAY=:0.1 mplayer -fs "$eingabe"
```

Ist aber unbefriedigend. Wie kann ich das machen, daß gmplayer auf dem TFT gestartet, das Bild aber auf TV ausgegeben wird? Geht das?

----------

## LunX

ich hatte mal vor einiger Zeit in den Einstellungen von xine so etwas gefunden. Aber ob das so funktioniert wie du dir das wünscht weis ich nicht. Erstell dir doch ein Script das du dann als Alias laufen lässt so dass du vom Script nichts mehr mitbekommst.

----------

## flammenflitzer

Mir geht es darum, daß ich; wenn ich irgendeine andere Aktion am PC ausführe; mplayer am PC nicht mehr steuern kann, da er ja durch das script auf dem zweiten x-server läuft.

----------

