Forum: PC Hard- und Software X11 ohne Display Manager starten?


von Bauform B. (bauformb)


Lesenswert?

Guten Morgen!

Früher konnte man sich als User auf der Console anmelden und X11 mit 
xinit oder startx starten. Man brauchte keinen Display Manager. Das 
funktioniert bei Debian seit einigen Jahren nicht mehr so einfach. Als 
Notlösung benutze ich ein eigenes xinit. Gibt es eigentlich noch eine 
"offizielle" Methode?

Das ist für einen Rechner ohne Monitor gedacht. Normalerweise braucht 
der keine grafische Oberfläche, aber jeder billige Switch oder Router 
kann nur per Browser mit JavaScript konfiguriert werden :(

von Norbert (der_norbert)


Lesenswert?

Bauform B. schrieb:
> Das ist für einen Rechner ohne Monitor gedacht.

Dann mach' die im Repo enthaltene MaschineX drauf, damit kann man dann…

Bauform B. schrieb:
> per Browser mit JavaScript konfiguriert

von Daniel A. (daniel-a)


Lesenswert?

Bauform B. schrieb:
> Früher konnte man sich als User auf der Console anmelden und X11 mit
> xinit oder startx starten.
...
> Gibt es eigentlich noch eine "offizielle" Methode?

Bei Verwendung eines seat managers (logind auf Systemd systemen, elogind 
auf nicht-systemd Systemen, und/oder seatd (kann zusammen oder statt 
*logind genutzt werden. Für seatd braucht Xorg aber womöglich einen 
patch)), sollte das eigentlich weiterhin funktionieren.

Bauform B. schrieb:
> Das ist für einen Rechner ohne Monitor gedacht.

Also headless. Das sollte eigentlich auch ohne Seat Manager gehen, der 
ist nur zuständig dafür Zugriff auf Sachen wie die die drm card node / 
KMS master zu vergeben, womit man die Bildschirmauflösung usw. 
kontrollieren kann. (und das gibt es  noch nicht)
Der User sollte aber zugriff auf /dev/dri/renderD* haben, für Sachen die 
die GPU nutzen wollen, aber kein KMS brauchen.
Xorg bräuchte dafür aber einen headless Treiber, oder einen, der als 
solches verwendet werden kann. Mit dem modesetting Treiber geht das 
momentan nicht, wobei, es ist nicht allzu schwer, den Treiber etwas zu 
patchen, und daraus einen Headless Treiber zu machen. Der Treiber 
erstellt nämlich einen  grossen BO, für den Screen, auf den gezeichnet 
wird, und die Outputs geben dann einen teil davon auf den Monitoren aus, 
vereinfacht ausgedrückt (Normalerweise ein KMS dumb BO von einer card 
node, müsste man einfach durch einen GEM BO ersetzen). Das mit den 
Outputs ist teil von KMS und müsste man einfach entfernen, der Rest geht 
alles auch mit einer render node.
(Ich musste mich mal damit auseinander setzen, als ich ein Gerät hatte, 
mit einer render + card node (GPU), ohne Outputs / KMS unterstützung, 
und eine card node für ein Panel mit einem Output, die keine GPU Sachen 
konnte. Da wurde dann aber in Mesa ein hack dafür eingebaut, nennt sich 
KMSRO, das importiert die KMS dumb buffer im Hintergrund einfach bei 
einer render node usw., dann ist es, als ob man mit der KMS only node 
gpu rendering zeug machen könnte).

Irgendwie scheint aber nie jemand Lust zu haben, Xorg zu patchen. 
Mittlerweile gibt es noch VKMS, damit kann man virtuelle drm card nodes 
mit virtuellen Outputs erzeugen. Ich weiss zwar nicht, ob das schon 
zusammen mit mesa KMSRO geht / ob man da die glamour GPU acceleration 
von Xorg kriegt.

Ist zwar alles etwas witzlos, wenn man das Bild eh nirgends sehen kann. 
Da machen dann VNC Server usw. mehr sinn.
Lies eventuell man https://wiki.archlinux.org/title/Headless durch.

> Normalerweise braucht
> der keine grafische Oberfläche, aber jeder billige Switch oder Router
> kann nur per Browser mit JavaScript konfiguriert werden :(

Ernsthaft, dafür brauchst du das? Das tönt als wolltest du per jump host 
auf nen Router zugreifen. Mach einfach SSH und Port Forwarding, und 
öffne die Seite lokal auf deinem Rechner im Browser, so wie jeder andere 
normale Mench auch. Was auch ginge wäre X11 forwarding per ssh (ssh -X 
oder ssh -Y), da brauchst du auch kein startx usw. höchstens der Agent 
sollte installiert sein. Da drüber müsste auch z.B. Xephyr gehen, wenn 
du nen ganzen Desktop starten willst.

Der Vollständigkeit halber noch, bei wayland gibt es waypipe fürs 
forwarding. Aber keine Ahnung, wie genau das geht.

von Richie (mikro123)


Lesenswert?

Bauform B. schrieb:
> Guten Morgen!
>
> Früher konnte man sich als User auf der Console anmelden und X11 mit
> xinit oder startx starten. Man brauchte keinen Display Manager. Das
> funktioniert bei Debian seit einigen Jahren nicht mehr so einfach. Als
> Notlösung benutze ich ein eigenes xinit. Gibt es eigentlich noch eine
> "offizielle" Methode?
>
> Das ist für einen Rechner ohne Monitor gedacht. Normalerweise braucht
> der keine grafische Oberfläche, aber jeder billige Switch oder Router
> kann nur per Browser mit JavaScript konfiguriert werden :(


Lass Dich mal nicht beirren.
Natürlich geht das auch mit Debian.
Ich betreibe selber ein paar "Kiosk"-Systeme auf Debian 13 (Trixie) in 
Minimalkonfiguration und mit autologin, startx und ohne desktop 
environment.

Du musst halt mit einer Debian Minimalkonfiguration anfangen und dann 
nur die benötigten Pakete dazu installieren.
Ist am Anfang ein bisschen Rumprobiererei, aber das funktioniert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.