m-d-ley
Anmeldungsdatum: 22. Juli 2020
Beiträge: Zähle...
|
Hallo, ich bin neu hier und habe gleich schon eine Fragestellung: Ich habe für mein Problem bis jetzt noch keine richtige Lösung gefunden.
Erst mal mein ist Zustand: Ubuntu 18.04 in meinem Kellerrechner, auf dem unter anderem Webserver, FTP, Smarthome etc. läuft. Die GUI brauche ich nur um mein Kodi (Mediacenter) Im Haus via HDMI over IP zu verteilen. Mein Vorhaben: Nun habe ich mir noch eine 19" TFT Konsole (Monitor, Tastatur, Maus) zugelegt, welche als reine Debug Konsole dienen soll. Also soll wie gewohnt über HDMI die GUI laufen und zusätzlich eine reine Konsole ohne GUI über die Rackkonsole. Die Eingabegeräte wie Maus und Tastatur werden auch nur für die Konsole benötigt und nicht für die GUI. Habt ihr da einen Praktikablen Lösungsansatz? Vielen Dank und Liebe Grüße
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Wenn du wirklich die Kernel TTYs für dein Debug Interface nutzen willst, hast du schon auf Kernel Ebene ein ganz grundsätzliches konzeptionelles Problem: Es gibt nur ein aktives zur gleichen Zeit, und der X Server nimmt nunmal einen kompletten TTY für sich in Anspruch. Mag sein dass es irgendwelche exotischen Kernel Parameter hierfür gibt, aber da kommst du wirklich in eine sehr skurrile Ecke. Wenn du dir irgend etwas grafisches auf Basis des X Servers aufsetzen willst gibt es da durchaus Möglichkeiten, aber es wird auch nicht weniger exotisch. Der X Server ist dafür nicht wirklich ausgelegt und unterstützt einen echten Multi-Session Betrieb nur dann, wenn du für die weiteren Sessions nicht nur eigene Eingabegeräte, sondern auch eine komplett separate GPU hast. Die Konfiguration ist aufwändig, aber zumindest mit LightDM durchaus vorgesehen und umsetzbar. Der X Server hat inzwischen eine Konfigurationsoption bekommen um bestimmte Monitore gezielt komplett zu ignorieren, sodass sie nicht einmal für RandR sichtbar sind - was das mindeste sein wird, was du dafür machen musst. Allerdings sieht alles andere nicht gerade danach aus, als ob es so wie du es gerne hättest überhaupt möglich wäre.
Als Debug Interface wird üblicherweise ein serielles Interface als klassisches Terminal verwendet. Das sind komplett separate TTYs die via Kernel Parameter auch explizit als Debug Output vom Kernel genutzt werden können, damit du darüber auch die ganz frühen Meldungen beim Bootvorgang auslesen kannst. Da kann man aber eben nicht so einfach mal eben einen Satz Eingabegeräte mit Monitor dranhängen...
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
Danke erstmal für deine umfangreiche Antwort. Also ich denke das wäre alles für meine Zwecke oversized. Der Hauptgrund für diese Rackkonsole war eigentlich, wenn der Rechner mal nicht hochkommt ihn nicht immer ins Wohnzimmer zum Fernseher zu schleppen.
Also wäre die beste und einfachste Lösung wahrscheinlich den Monitor in der selben X Session laufen zu lassen als Monitorerweiterung, und das Mediacenter wie gehabt auf HDMI laufen lassen. Dafür wäre dann super, wenn beim Starten des X Servers auf dem HDMI Desktop automatisch das Mediacenter startet und auf dem VGA Automatisch das Terminal. Das müsste doch eigentlich zu realisieren sein oder? Im BIOS würde ich tatsächlich die Onboard Grafikkarte als Primär einrichten, damit ich den Bootvorgang, das Grubmenü etc. von dort aus bedienen kann.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
m-d-ley schrieb: Das müsste doch eigentlich zu realisieren sein oder?
Wenn du den Start des Mediacenters über eigene Startskripte erledigst und nicht direkt durch den Display Manager, gibt es dafür sogar eine "relativ" einfache Möglichkeit: Separate X Screens. Die im Display Manager konfigurierte Desktopumgebung wird auf beiden gestartet und für Maus & Tastatur verhält es sich wie ein erweiterter Desktop, doch für die Programmfenster ist es eine unüberwindbare Barriere: Jedes Programm das auf einem sekundären X Screen gestartet werden soll, muss explizit über die DISPLAY Umgebungsvariable darauf hingewiesen werden. Das gilt in der Regel dummerweise auch für das eingeblendete Startmenü. Auf welchem Bildschirm sich ein Programm maximiert ist bei einer herkömmlichen Bildschirmkonfiguration leider Sache des Programms selbst. Manchmal gibt es da noch ein paar Hebel beim Window Manager, aber das ist auch extrem selten (Compiz konnte das noch über ein Plugin, ist aber schon lange tot).
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
Der Start des Mediacenters passiert bei mir über eine .desktop Datei im Home Ordner des Benutzers. Wie ich dies anders lösen kann weiss ich nicht wirklich. So habe ich wahrscheinlich das Problem, dass ich den Autostart nicht explizit einem Xscreen zuordnen kann richtig? Wenn ich im Nvidia Control Panel Xscreen 1 anlege und den 2. Monitor mit Xscreen 1 verknüpfe bleibt dieser schwarz. Anders sieht es aus wenn ich einfach über die GUI Einstellungen Monitore verketten auswähle. Erstellt die GUI dann den 2. Xscreen oder ist das was völlig anderes? Puhh fragen über fragen....
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Ich würde dafür gar keine GUI zur Hand nehmen sondern es von Hand konfigurieren. Die Wahrscheinlichkeit, dass er dir bei so einer Konfiguration irgend etwas falsches in die Konfigurationsdatei generiert ist relativ hoch.
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
OK jetzt bin ich wohl mit meinem Latein am Ende. Welche Datei muss ich dabei wie konfigurieren? Am schönsten wäre es, wenn ich dann auch noch die Sachen verstehe, die ich dort eintrage und mache. Ich merke bei sowas immer, dass ich schon noch ein ziemlicher Unix Anfänger bin, obwohl das System schon mehr als 4 Jahre durchgehend läuft.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
xorg.conf, die Datei hat eine eigene Manpage. Früher war es nötig absolut alles in der Datei zu konfigurieren, sodass du reichlich Beispielmaterial dazu finden solltest. Die Struktur ist recht einfach und selbsterklärend. Speziell im Zusammenhang mit Xinerama solltest du viel finden, diese Erweiterung wurde früher genutzt um einen erweiterten Desktop mithilfe von mehreren X Screens zu realisieren.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
Was für eine Grafikkarte hast du denn? Ich habe mir schon mal für Intel-IGPs (Stichwort "ZaphodHeads" in der Manpage des "intel" Treibers) und nvidia-GPUs (mit dem proprietären Treiber) xorg-Konfigurationdateien für zwei getrennte X-Screens erarbeitet.
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
seahawk1986 schrieb: Was für eine Grafikkarte hast du denn? Ich habe mir schon mal für Intel-IGPs (Stichwort "ZaphodHeads" in der Manpage des "intel" Treibers) und nvidia-GPUs (mit dem proprietären Treiber) xorg-Konfigurationdateien für zwei getrennte X-Screens erarbeitet.
Also verbaut ist eine GeForce GT760 und halt der Onboard Intel Chipsatz.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
Für den proprietären nvidia-Treiber könnte das z.B. so aussehen - die Option für CustomEDID ist drin, damit der X-Server auch so konfiguriert wird, wenn die Monitore gerade nicht angeschlossen sind bzw. ein HDMI-Umschalter auf ein anderes Ausgabegerät eingestellt ist (vgl. z.B. NVIDIA/Tips_and_tricks oder https://nvidia.custhelp.com/app/answers/detail/a_id/3571/~/managing-a-display-edid-on-linux):
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
#InputDevice "Keyboard0" "CoreKeyboard"
#InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "InputClass"
Identifier "exclude eventlircd devices"
MatchTag "eventlircd"
Option "Ignore" "True"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "DEL"
ModelName "DELL U2515H"
Option "DPMS"
Option "ExactModeTimingsDVI" "True"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
Option "NoLogo" "true"
BoardName "GeForce GT 1030"
BusID "PCI:1@0:0:0"
Screen 0
Option "ConnectedMonitor" "DP-0, HDMI-0"
Option "CustomEDID" "DP-0:/etc/X11/edid.DP-0.bin;HDMI-0:/etc/X11/edid.HDMI-0.bin"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "nvidiaXineramaInfoOrder" "DP-0"
Option "UseDisplayDevice" "DP-0"
Option "metamodes" "DP-0: 1920x1080_50 +0+0 {ForceCompositionPipeline=Off, ForceFullCompositionPipeline=Off}"
Option "AllowIndirectGLXProtocol" "off"
Option "TripleBuffer" "on"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
Option "NoLogo" "true"
BoardName "GeForce GT 1030"
BusID "PCI:1@0:0:0"
Screen 1
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "ADI"
ModelName "ADI A715"
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "nvidiaXineramaInfoOrder" "HDMI-0"
#Option "ConnectedMonitor" "HDMI-0"
Option "UseDisplayDevice" "HDMI-0"
#Option "CustomEDID" "HDMI-0:/etc/X11/edid.HDMI-0.bin"
Option "metamodes" "HDMI-0: 1280x1024_60 +0+0 {ForceCompositionPipeline=Off, ForceFullCompositionPipeline=Off}"
Option "AllowIndirectGLXProtocol" "off"
Option "TripleBuffer" "on"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Extensions"
Option "Composite" "Disable"
EndSection
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
So ich habe jetzt mal Zeit gefunden mich mehr damit zu befassen und es folgendermaßen gelöst: Im bios habe ich den VGA Monitor (Rack Konsole) als primären Monitor angelegt. Somit habe ich schonmal den kompletten Bootscreen und das Grub Menü auf der Konsole. Dann habe ich 2 Xscreens in der Xorg.conf eingerichtet, welche mich anfangs sehr geärgert haben. Aber wer die Ausgabe von lspci -nnk richtig interpretiert, versteht auch, dass man bei driver in der Xorg.conf dann nicht Intel eingeben muss sondern i915. Soweit läuft das jetzt so wie ich es gerne hätte. Danke für eure Gedankenanstöße und LG.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
m-d-ley schrieb: Aber wer die Ausgabe von lspci -nnk richtig interpretiert, versteht auch, dass man bei driver in der Xorg.conf dann nicht Intel eingeben muss sondern i915.
Das ist der zu verwendete X Treiber und nicht das Kernel Modul - es gibt keinen X Treiber Namens i915 . Ubuntu sollte standardmäßig den modesetting X Treiber benutzen, da der intel X Treiber bekannt dafür ist von Intel sehr stark vernachlässigt zu werden und sehr oft durch nervige Fehler auffällt.
|
m-d-ley
(Themenstarter)
Anmeldungsdatum: 22. Juli 2020
Beiträge: 9
|
Also kann ich mir die Zeile "Driver i915" sparen? Was bewirkt die Zeile, wenn es diesen X Treiber nicht gibt? Wenn ich Intel eintrage, dann bleibt der Bildschirm schwarz und taucht im system nirgends auf.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
m-d-ley schrieb: Was bewirkt die Zeile, wenn es diesen X Treiber nicht gibt?
Dann sucht sich der X Server auf Grundlage der bestehenden Regeln einen anderen passenden X Treiber, was mit hoher Wahrscheinlichkeit dann der bereits genannte modesetting Universaltreiber ist. m-d-ley schrieb: Wenn ich Intel eintrage, dann bleibt der Bildschirm schwarz und taucht im system nirgends auf.
Wenn du parallel den Nvidia Treiber für die dedizierte GPU nutzt, dann hat dieser auch wichtige Komponenten des X Server ersetzt, die mit dem intel X Treiber inkompatibel sind, wie zB das GLX Modul. Der modesetting Treiber ist nicht zwingend auf diese angewiesen und wird u.a. deshalb auch für Optimus Konfigurationen verwendet, der intel Treiber fliegt dir damit aber um die Ohren.
|