Archiv der Kategorie: X-Server

Als sudo/root grafische Oberfläche auf anderen Benutzerkonten

Wechselt man mit „sudo -s -u klaus“ in den Benutzeraccount „klaus“, bekommt man beim Aufruf des Befehls „screen“ die Fehlermeldung „Cannot open your terminal ‚/dev/pts/0‘ – please check“ zu sehen.

Ein einfacher Workaround besteht darin, vor „screen“ das Programm „script“ aufzurufen, dass die Pseudoterminals mit passenden rechten neu einrichtet. „script“ zeichnet normalerweise die aktuelle Sitzung auf, aber da dies nicht nötig ist, genügt es das Programm mit dem Argument „/dev/null“ aufzurufen: „script /dev/null“. Nun funktioniert auch „screen“.

X Error: BadDevice, invalid or uninitialized input device

Folgende Fehlermeldung der Konsole beim Start von Programmen:

 X Error: BadDevice, invalid or uninitialized input device 168 
  Major opcode:  148 
  Minor opcode:  3 
  Resource id:  0x0 
  Failed to open device 

wird behoben durch Modifikation der xorg.conf in /etc/X11:
Die nachstehenden Zeilen müssen wie angegeben auskommentiert werden (zur Sicherheit bitte immer eine Kopie der xorg.conf anlegen):

# Section "InputDevice"
#  Driver        "wacom"
#  Identifier    "stylus"
#  Option        "Device"        "/dev/wacom"          # Change to
#                                                      # /dev/input/event
#                                                      # for USB
#  Option        "Type"          "stylus"
#  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
#EndSection

#Section "InputDevice"
#  Driver        "wacom"
#  Identifier    "eraser"
#  Option        "Device"        "/dev/wacom"          # Change to
#                                                      # /dev/input/event
#                                                      # for USB
#  Option        "Type"          "eraser"
#  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
#EndSection

#Section "InputDevice"
#  Driver        "wacom"
#  Identifier    "cursor"
#  Option        "Device"        "/dev/wacom"          # Change to
#                                                      # /dev/input/event
#                                                      # for USB
#  Option        "Type"          "cursor"
#  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
#EndSection


Section "ServerLayout"
        Identifier      "Default Layout"
        Screen          "Default Screen"
        InputDevice     "Generic Keyboard"
        InputDevice     "Configured Mouse"
#       InputDevice     "stylus" "SendCoreEvents"
#       InputDevice     "cursor" "SendCoreEvents"
#       InputDevice     "eraser" "SendCoreEvents"
EndSection

X-Display umleiten

Arbeiten an einem Terminal (alter PC)
Terminal: altpc$ xhost +neuerpc neuerpc ist entweder dessen Name oder IP des neuen PCs; wenn 192.168.5.2 die IP des neuen PCs ist, geben wir ein: altpc$ xhost +192.168.5.2

Dieser Befehl weist den Xserver auf alterpc an, auch Anforderungen von neuerpc zu bearbeiten.(Da es sich hier um eine potentielle Sicherheitslücke handelt, sollte der Befehl nach Abbruch der Verbindung wieder rückgängig gemacht werden – mit xhost – wird der Xserver angewiesen, keine externen Anforderungen mehr anzunehmen).

Nun loggt man sich über ssh auf dem anderen Rechner ein: altpc$ ssh user@neuerpc

Nachdem der Passworteingabe gibt man auf der Konsole von neuerpc diesen Befehl ein: neuerpc$ export DISPLAY=192.168.5.1:0.0

Statt 192.168.5.1 gibt man natürlich die IP des alten PCs ein. Damit hat man dem neuen PC mitgeteilt, dass er Ausgaben an den alten PC schicken soll.

Start von z.B. OpenOffice: neuerpc$ soffice

Sollte es wider Erwarten nicht funktionieren, kann es daran liegen, dass auf dem Xserver die Displayumleitung aus Sicherheitsgründen defaultmäßig gesperrt ist. Diese Sperre kann man ausser Kraft setzen, wenn man X wie folgt startet: alterpc$ startx -listen_tcp

Verbindung zum X-Server für root erlauben

Root darf normaler weise nicht auf die X-Oberflächen zugreifen. Um dies zu ändern sind folgende Schritte nötig:

  • Der User, dem die X-Session gehört muss root für Zugriffe vom gleichen Rechner aus freischalten:
    • temporär: xhost local:root eingeben
    • permanent: export XAUTHORITY=/home/petri/.Xauthority in die Datei „/root/.bashrc“ oder „/etc/profile“ eintragen.
    • root kann sich die X-Authority auch holen: xauth -f /root/.Xauthority merge /home/petri/.Xauthority
  • Als root die Variable Display setzen: export DISPLAY=:0.0

X-Server

  • X-Server starten: /etc/init.d/kdm start
  • X-Server stoppen: /etc/init.d/kdm stop
  • X-Server neu starten: /etc/init.d/kdm restart

Wird anstatt KDM (KDE-Display Manager) GDM (Gnome-Display-Manager) verwendet, so muss „kdm“ durch „gdm“ ersetzt werden.