Ich möchte X11 auf einem Raspberry Pi (als Server ohne angeschlossenes Display, OS Raspbian) ausprobieren und über VNC darauf zugreifen.
Ich mag LXDE nicht sehr, deshalb möchte ich zu einem anderen Fenstermanager wechseln. Ich habe viele Dinge ausprobiert, aber LXDE startet immer.
Folgende Pakete sind installiert:
sudo aptitude install x-window-system xfce4 xfce4-themes x11vnc icewm fluxbox gnome tightvncserver
Ich führe den Server mit folgendem Befehl aus:
vncserver -geometry 800x600 :0
Wenn ich mit RealVNC eine Verbindung zum Raspberry Pi herstelle, komme ich zum LXDE-Desktop.
Was ich bisher versucht habe:
Ich lief sudo update-alternatives --config x-window-manager
und änderte es von Openbox zuxfwm4
$ update-alternatives --config x-window-manager
Es gibt 5 Auswahlm¦glichkeiten f¦r die Alternative x-window-manager (welche /usr/bin/x-window-manager bereitstellen).
Auswahl Pfad Priorit¦t Status
------------------------------------------------------------
0 /usr/bin/openbox 90 Auto-Modus
1 /usr/bin/icewm 50 manueller Modus
2 /usr/bin/metacity 60 manueller Modus
3 /usr/bin/openbox 90 manueller Modus
4 /usr/bin/startfluxbox 50 manueller Modus
* 5 /usr/bin/xfwm4 60 manueller Modus
Ich habe bearbeitet /etc/X11/default-display-manager
und verändert es aus /usr/sbin/lightdm
zu /usr/bin/icewm
.
Nach einem Systemneustart habe ich den vncserver erneut ausgeführt und komme wieder zu LXDE.
Ich sehe openbox und lxsession in der Prozessliste:
$ ps aux | grep lx
daniel 3604 0.0 0.3 12904 1516 pts/0 Sl 01:39 0:00 /usr/bin/lxsession -s LXDE -e LXDE
daniel 3614 0.1 1.3 15268 6160 pts/0 S 01:39 0:00 openbox --config-file /rasdata/profiles/daniel/.config/openbox/lxde-rc.xml
daniel 3616 0.6 2.2 113392 10060 pts/0 S 01:39 0:02 lxpanel --profile LXDE
daniel 3632 0.0 1.0 26352 4680 pts/0 Sl 01:39 0:00 /usr/lib/arm-linux-gnueabihf/lxpolkit
daniel 3684 0.0 0.1 3836 816 pts/0 S+ 01:46 0:00 grep lx
Ich bin mir derzeit nicht sicher, welchen Fenstermanager ich haben möchte. Ich werde alles versuchen und herausfinden, was mir am besten gefällt. Im Moment versuche ich einen Weg zu finden, es irgendwie weg von LXDE zu ändern.
Ich mochte KDE sehr, aber es scheint nicht in Raspbian enthalten zu sein. Das Paket konnte nicht in Eignung gefunden werden.
Antworten:
X11 befindet sich bereits auf Ihrem Computer
X11 sollte bereits auf Ihrem System installiert sein. Grundsätzlich verwenden es alle Linux-Distributionen. LXDE läuft auf Xorg. Wayland wird zur beliebten Alternative zu X Windows, ist aber immer noch fehlerhaft. Ich würde warten, um dorthin zu wechseln. Ich sage also, dass Sie bereits X11 verwenden. Wenn nicht, wäre ich äußerst verwirrt.
Sie möchten einen neuen Windows-Manager installieren, wie es LXDE ist. Aufklärung und Openbox sind gute Alternativen, die leicht sind. KDE ist mein Favorit, aber es ist etwas schwerer. Mit dem Rasp pi würde ich allerdings leicht bleiben. Wenn Sie es nicht an einen Monitor anschließen möchten, empfehle ich ein kopfloses System und verwende nur die Option -X mit ssh.
Installieren eines neuen Windows Managers
Installieren Sie den neuen Windows-Manager und bearbeiten Sie .xinitrc so, dass der richtige Manager gestartet wird.
Wenn Sie beispielsweise KDE verwenden möchten, installieren Sie KDE (
#apt-get install kde
oder#apt-get install kdebase
, was für einen Pi besser ist, aber etwas mehr Einrichtung erfordert) und ändern Sie dann Ihre .xinitrc-Datei. Sie werden sehenexec startlxde
, auf welche geändert werden mussexec startkde
Der Befehl exec ändert sich entsprechend Ihrer Präferenz für Windows Manager.
SSHing in dein pi
Wenn Sie nun in Ihr Pi sshing und ein Programm grafisch ausführen möchten, müssen Sie dies tun
Dies funktioniert weiterhin, wenn Sie ein Headless-System ohne Windows Manager verwenden. Dies ist auch viel schneller als die Verwendung von vnc. Wenn Sie Ihren Pi nicht an einen Monitor anschließen, tun Sie dies grundsätzlich.
quelle
!#bin/bash [new line] icewm-session
), wird sie ignoriert. (3) Ich führe es in VNC aus, da es wirklich ärgerlich war, dass jedes Fenster in meiner Windows-Taskleiste enthalten war, als ich SSH mit X-Weiterleitung verwendete. Ich möchte nur einen Linux-Desktop mit geöffneten Programmen haben, der von meinen Windows-Programmen getrennt ist.Die Antwort ist einfacher als erwartet. Einfach installieren
xrdp
und ich kann eine vollständige Linux-Desktop-Umgebung auf meinem Windows-Computer genießen, ohne dass 20 X-Windows herumfließen.Es ist auch wichtig, den Unterschied zwischen "Window Manager", "Session Manager" und "Display Manager" zu kennen. Leider hat niemand erklärt, dass ich wahrscheinlich falsche Begriffe verwendet habe, und ich bin sehr verwirrt darüber, daher weiß ich nicht, welche dieser drei Dinge ich ändern muss, um eine "neue GUI" zu erhalten.
quelle
Ich nehme an, es ist etwas spät, aber falls sich jemand anderes mit dem gleichen Problem befasst, ist hier was los.
Der Grund, warum Sie dadurch verwirrt sind, ist, dass die auf dem VNC-Server ausgeführte Sitzung und die auf dem lokalen Desktop ausgeführte Sitzung nicht miteinander verknüpft sein müssen. Tatsächlich werden sie nur in Beziehung gesetzt, wenn Sie tatsächlich eine lokale GUI ausführen und diese dann speziell bereitstellen (die Server Vino (für Gnome), krfb (für KDE) und x11vnc stellen standardmäßig lokale Sitzungen bereit). Es hört sich so an, als würde die lokale Benutzeroberfläche nicht ausgeführt, sodass alle Änderungen, die Sie normalerweise vornehmen würden, nichts bewirken, da sie nie gestartet werden.
Wenn Sie einen VNC-Server außerhalb der lokalen GUI ausführen, wird möglicherweise standardmäßig derselbe Fenstermanager wie die lokale GUI verwendet. Es wird alles tun, wofür es in der Datei ~ / .vnc / xstartup konfiguriert ist (die beim ersten Start des Servers in Ihr Home-Verzeichnis kopiert wird). Wenn diese Datei anweist, eine weitere Kopie der lokal definierten GUI auszuführen, wird dies der Fall sein. Wenn diese Datei anweist, stattdessen eine andere GUI auszuführen, wird dies ausgeführt. Wenn Sie also den von vncserver ausgeführten Fenstermanager ändern möchten, müssen Sie diese Datei ändern oder das Skript oder den Link ändern, auf den diese Datei verweist.
quelle