Dual Monitor X11

wzzle

Cadet 4th Year
Registriert
Apr. 2011
Beiträge
79
Hallo liebe Community,

ich habe mir über die Feiertage endlich ein Herz gefasst und wollte auf Linux Mint 12 (Mate) umsteigen. Nun ist es leider so, dass ich seit Tagen versuche mein "Monitorsetup" zum Laufen zu bekommen. Das Ganze sieht wie folgt aus, ich habe einen 23" LCD mit 2048x1152 und einen 24" mit 1920x1080 (beide per DVI). Mein Fernseher ist per HDMI ebenfalls am Rechner, der kommt aber eher selten zum Einsatz und sollte nicht weiter beachtet werden. GPU ist ATI HD5870.

Mein Ziel ist/war es den 24" LCD als primären Monitor zu verwenden und den Desktop auf den 23" LCD zu erweitern. Will ich das Ganze genau so einstellen (die beiden LCDs an und nebeneinander, den TV aus) bekomme ich die Fehlermeldung, dass das nicht möglich ist, da die maximale virtuelle Desktopgröße 2048x2048 ist.

Nach endlos vielen Stunden Googlen und Forenlesen habe ich einige Lösungsansätze ausprobiert (xrandr, aticonfig, Editieren der /etc/X11/xorg.conf) nix davon hat mir wirklich helfen können, vielmehr hab ich mir die Einstellungen soweit zerschossen, dass ich bisher schon 2 Neuinstallationen hinter mir hab.

Viele der Dokus, Forenbeiträge etc. die ich bisher zum Thema gefunden hab, sind schon recht alt oder behandeln mein Problem nur teilweise. Vielleicht hab ich hier ja etwas mehr Glück, da ich mitterweile echt verzweifelt bin, die Erfahrungen der letzten Tage waren sehr ernüchternd was Linux Mint angeht und haben mich leider eher Win7 schätzen gelehrt als Linux Mint. Ich hätte nie gedacht, dass das Betreiben mehrerer Monitore mit Linux Mint 12 so ein riesiges Problem darstellt.
 
Du verwendest den ATI fglrx Treiber oder den Open Source Treiber? Die Display Einstellungen sind ein bisschen problematisch, da man in den Settings rumspielen muss. Es ist jedoch kein wirkliches "Problem".

Du möchtest den Bildschirm regulär erweitern oder einen zweiten, unabhängigen Bildschirm mit eigener Taskleiste und ohne die Möglichkeit die Fenster zwischen den Anwendungen zu verschieben (Xinerama)? Letzteres ist, soweit mir bekannt, mit Gnome3 ohne weiteres nicht möglich. Gnome2 funktioniert damit jedoch tadellos.

Eine Allgemeine Einführung findest du z.B. auf wiki.ubuntuusers.de (http://wiki.ubuntuusers.de/dualview). Die xorg.conf muss zu diesem Zweck "komplett" per Hand bearbeitet werden - das erhöht die Lesbarkeit.

Zum Vorgang empfehle ich dir Konfiguration als "Zwei unabhängige Desktops" mit anschließender Aktivierung von Xinerama.

Für fglrx kannst du den initialen Befehl "sudo aticonfig --initial=dual-head --screen-layout=right " verwenden, wenn der zweite Bildschirm rechts vom Primärbildschirm erscheinen soll. Weitere Informationen entnimmst du der Wiki. Grundlegend wird für jeden Monitor der jeweilige Monitor, Display und die verwendete Grafikkarte eingerichtet (logischer Aufbau: Grafikkartenanschluss -> Monitor -> verwendet Display vom Typ). Durch diese weise lassen sich n-Monitore, auf m-Displays mit o-Grafikkarten und p Grafikkatenanschlüssen konfigurieren (von allen beliebig viele). Im Bereich ServerLayout wird dann der visuelle Zusammenhang (welcher Monitor ist wo zu den anderen) definiert.

Um Anwendungen zwischen den Monitoren verschieben zu können, musst du noch das Flag Option "Xinerama" "true" an den jeweiligen Monitor anhängen. Das kannst du per Befehl oder Menü auch über fglrx machen.

Folgend meine xorg.conf für eine ATI 4850, einem TV und einem LCD als primären Monitor mit fglrx als Treiber. Die Monitore laufen unabhängig voneinander d.h. Anwendungen können nicht untereinander verschoben werden, dafür verfügt jedes Display über eine eigene "Taskleiste". Mit der Option "Xinerama" geht Gnome2 in den "regulären" Extended Modus, wie man ihn unter Windows kennt. Mir persönlich ist eine extra Startleiste für den TV viel wichtiger als die Möglichkeit Fenster untereinander zu verschieben.

Code:
Section "ServerLayout"
	Identifier     "aticonfig Layout"
	Screen      0  "ScreenMain" 0 0
	Screen      1  "ScreenTV" LeftOf "ScreenMain"
EndSection

Section "Module"
EndSection

Section "Monitor"
	Identifier   "MonitorMain"
	Option	    "VendorName" "Samsung"
	Option	    "ModelName" "SyncMaster 226cw"
	Option	    "DPMS" "true"
	Option	    "PreferredMode" "1680x1050"
EndSection

Section "Monitor"
	Identifier   "MonitorTV"
	Option	    "VendorName" "LG"
	Option	    "ModelName" "RZ32"
	Option	    "DPMS" "true"
	Option	    "PreferredMode" "1360x768"
EndSection

Section "Device"
	Identifier  "AMD4850-1"
	Driver      "fglrx"
	BusID       "PCI:1:0:0"
	Screen	    0
EndSection

Section "Device"
	Identifier  "AMD4850-2"
	Driver      "fglrx"
	BusID       "PCI:1:0:0"
	Screen      1
EndSection

Section "Screen"
	Identifier "ScreenMain"
	Device     "AMD4850-1"
	Monitor    "MonitorMain"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Depth     24
		Modes  "1680x1050"
	EndSubSection
EndSection

Section "Screen"
	Identifier "ScreenTV"
	Device     "AMD4850-2"
	Monitor    "MonitorTV"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Depth     24
		Modes  "1360x768" 
	EndSubSection
EndSection

Verwendest du ebenfalls fglrx, so musst du Grundlegend nur die jeweiligen Identifier an deine Umgebung anpassen (theoretisch kannst du sie auch lassen), die jeweiligen Auflösungen korrigieren, unter Device u.U. die korrekte BUS ID für deine Grafikkarte einstellen (darüber können beliebig viele GPUs verwendet werden), die ScreenID festlegen und im ServerLayout die jeweilige Displayausrichtung festlegen (RightOf, LeftOf, ... Angaben sind auch in Pixel möglich).
Verwendest du einen anderen Treiber, musst du primär fglrx auf den verwendeten Treiber, wie z.B. radeon, umändern und u.U. einige kleinere anderen Änderungen - wenn es notwendig sein sollte - vornehmen.
 
Zuletzt bearbeitet:
Wow danke für die ausführliche Hilfe zu so später Stunde, werde mich morgen (eher heute) direkt mal ransetzen und meinen Erfolg dann hier posten.

Ja ich nutze fglrx und würde den Bildschirm gern einfach nur erweitern, also ohne extra Taskleiste.
Beim Editieren der xorg.conf kam es mir jedoch hin- und wieder so vor als ob die Änderungen darin keine Auswirkungen haben. Reicht es die Datei einfach nur zu editieren oder muss nach dem Editieren immer "aticonfig --initial --input=/etc/X11/xorg.conf" ausgeführt werden?
Sowas in der Richtung hab ich irgendwo in einem Forum gelesen.
 
Nein, das darfst du sogar nicht machen. Der Befehl "--initial" sorgt für eine Neuanlegung der xorg.conf mit Standardwerten. Sämtliche Einstellungen werden in der xorg.conf vorgenommen. Wenn man erstmal eine gut laufende Konfiguration hat läuft es problemlos. Wenn man noch weiß, was man getan hat, kann man sie auch relativ einfach erweitern ;-). Ich bin da auch Tage gesessen, bis alles gut gepasst hat - ich hab aber auch mit zwei Grafikkarten rumgespielt (Trick: Konfiguration ähnlich, bei Device wird entsprechende BUS ID vergeben - das wars).

Ich würde dir sogar abraten, weitere Einstellungen betreffend der Monitore (Auflösung ändern, Bildschirm hinzufügen, ...) im Catalyst Control Center vorzunehmen. Die fuscht dir nur deine xorg.conf durcheinander. Im CCC würde ich jedoch VSync (Verzerrungsfreier Modus oder so heißt das) aktivieren. Ansonsten hast du bei Videos u.U. enormes Tearing mit fglrx. Außerdem würde ich den Videoplayer auf xv stellen. Aber das schlimmste wurde letztes Jahr mit den Treibern gefixt, wie es scheint.
 
Super, danke für die vielen Tipps. Der Link in deinem ersten Post scheint auch sehr hilfreich. Wie gesagt werde mich morgen/nachher nochmal dransetzen.
Ergänzung ()

Huhu,

nach einigem Rumprobieren hab ich das Ganze erstmal ganz grob so wie ich das wollte zum Laufen gebracht. Vieles in der xorg.conf bleibt mir allerdings weiterhin völlig schleierhaft.

Ende vom Lied war heute erstmal, dass ich nach dem Einstellen von vsync via CCC (einfach nur den Haken gesetzt) keinen Sound mehr im gesamten Betriebssystem bekomme. Nach Reboot, Treiber De- und Neuinstallation etc. hab ich für heute erstmal aufgegeben. :(
 
Zuletzt bearbeitet:
Der X Server hat nichts mit der Soundausgabe zu tun. Deine Grafikkarte, solange du den Sound nicht über den HDMI Ausgang ausgibst, ebenfalls nicht. Dein Problem liegt also an anderer Stelle.

Als "Soundmodul" verwendest du vermutlich Pulse Audio oder ALSA. Gnome verwendet im Standard Pulse Audio. Die GUI ist auch mit Pulse Audio verbunden d.h. die Soundeinstellungen über die "Taskleiste" greift auf diesen Server zu. Sind dort Soundkarten vorhanden (bzw. werden diese via lspci angezeigt?)? Ist die Lautstärke dort eingestellt?

Meiner Erfahrung nach, ist die Soundeinstellung von Gnome ein bisschen buggy oder ich verstehe die Zusammenhänge nicht komplett. Schau mal im Repository nach dem ALSA Mixer und installier diesen. Dieser hilft mir oft, wenn ich das Mikrofon aktivieren will.
 
Dass X Server, bzw. CCC nix mit meinem Sound zutun hat war mir bewusst. Darum war ich gestern auch sehr erstaunt.
Als Soundmodul wird ALSA benutzt, genau.

Liegt im Übrigen nicht an Hardware o.ä., da im Win7 alles wie gehabt läuft (die Boxen sind also an ;) )
 
Tjoa ... das einzigste mal als ich keinen Sound mehr in Linux hatte war ich am Ende mit meinem Latein und ... hab es neu installiert ^^. Erstell am besten einen eigenen Beitrag zu diesem Thema. Dann kann dir vlt. jemand helfen, der sich mit Soundproblemen auskennt.

Wenn du die xorg.conf nach deinen wünschen erstellt hast, würde ich sie mir kopieren. Du kannst sie dann bei Bedarf wieder einspielen. Ach und noch etwas: die Änderungen in der xorg.conf werden erst nach dem Neustart des X Servers wirksam. Dies kannst du mit einem Neustart des OS, STRG+ALT+Backspace oder ALT+DRUCK+K (genauer: ALT+SysRqKey+K) erreichen.
 
Seltsam ist, dass ich beim Einloggen mit anderen Nutzern (root, Guest-Session) Sound bekomme. Hab nun aber alles doppelt und dreifach gecheckt und alles stimmt überein, nix mute, alle Lautstärken sind voll aufgedreht etc.
Auch der ALSA Mixer hat nix geholfen.

Werde einfach mal neuinstallieren und die xorg.conf vorher sichern.

Vielen Dank jedenfalls für die Hilfe. Neben einigen Unklarheiten hätte ich allerdings noch eine Sache die mir einfach nicht in den Kopf geht.

Mich irritiert es extrem, dass ich in der xorg.conf nirgends eine Art ID des Anschluss (an der Graka) zum zugehörigen Monitor angeben muss, also z.B. DVi1, DV2, HDMI.

Bedeutet das, dass der erste Monitor den ich in der xorg.conf definiere immer am ersten Anschluss der Graka "vermutet" wird, der Zweite am zweiten etc.?

Mein Problem war nämlich, dass Panel, Desktopsymbole etc. immer auf dem linken statt dem rechten Monitor angezeigt wurden und das auch durch ein Option "Primary" "True" auf dem rechten Monitor nicht behoben wurde.

Im Endeffekt hab ich einfach ganz rustikal die DVI-Stecker an der Graka vertauscht und die betreffenden Sektionen in der xorg.conf getauscht.
 
Zuletzt bearbeitet:
Tut mir leid, lese dein Beitrag erst jetzt. Nein ganz so ist es nicht. Im ServerLayout wird festgelegt "Screen 0 "ScreenMain" 0 0" -> Screen 0 d.h. der erste Bildschirm. Der Eintrag Screen im ServerLayout besagt also den primären Monitor und die Anordnung der anderen Monitore zueinander.

Der Eintrag Screen unter Device gibt die Nummer des Head d.h. Adapters auf dem jeweiligen Gerät an. Screen 0 ist der Adapter 1, Screen 1 der Adapter 2 etc.
 
Zurück
Oben