Zugriff auf den X-Server

Selbst root darf nicht einfach einen fremden Desktop als Ausgabemedium missbrauchen: Der X-Server hat eine eigene Zugriffskontrolle. Geregelt wird dies in der versteckten Datei ~/.Xauthority – und da der "User root" die Daten eines jeden Users lesen kann, kann er die des Users einfach mitverwenden. Die einfachste Variante hierzu ist das Setzen der Umgebungsvariablen XAUTHORITY:

export XAUTHORITY=/home/jo/.Xauthority

Damit aber nicht genug: Da root keinen X-Server gestartet hat, reicht diese Erlaubnis nicht – denn unser Programm kann diese erst nutzen, wenn es auch weiß, dass ein fremdes Display verwendet werden soll. Auch hier hilft das Setzen einer Variablen:

export DISPLAY=:0.0

Bevor das nun beschriebene zusammengefügt wird, hier ein kleiner Test, der die nötige Basis veranschaulicht – und funktionieren sollte:

jo@planet ~$ su -
 Password:
 root@planet:~# export XAUTHORITY=/home/jo/.Xauthority
 root@planet:~# export DISPLAY=:0.0
 root@planet:~# root-tail /var/log/messages

Beenden kann man root-tail in diesem Fall mit der Tastenkombination [Strg+C].

Puzzle

Da nun als root vor dem Start von root-tail noch zwei Variablen gesetzt werden müssen, kann dies nicht mehr mit einem einfachen Aufruf geschehen. Ein kleines Skript schafft hier Abhilfe – allerdings muss dann nicht mehr root-tail, sondern das ganze Skript über super gestartet werden (auch die Variablen muss root setzen, gelten sie doch für ihn). Am Besten legen Sie eine Datei /usr/local/sbin/root-tail.username mit folgendem Inhalt an:

#!/bin/sh
 export XAUTHORITY=/home/username/.Xauthority
 export DISPLAY=:0.0
 /usr/X11R6/bin/root-tail /var/log/messages

Da Skripte, die über Tools wie super aufgerufen werden, leicht durch Modifikationen missbraucht werden können, sollte die Datei nur für root les- und schreibbar sein (ansonsten könnte jeder, der die Datei ändern und über super starten kann, darin beliebige Programme durch einfaches Hinzufügen starten lassen!). Daher als root tippen:

chown root.root /usr/local/sbin/root-tail.username
 chmod 700 /usr/local/sbin/root-tail.username

Anschließend noch die Konfigurationsdatei super.tab anpassen:

root-tail /usr/local/sbin/root-tail.username jo

Und fortan erscheint /var/log/messages auf dem User-Desktop nach Eingabe von super root-tail.

Zugegeben, der Aufwand ist bedingt durch die User-Rechte und den Zugriff auf den X-Server zunächst beträchtlich – aber hat man das einmal verstanden und eingesetzt, so ist es einfach: super gibt beliebige Programme für einen oder mehrere User frei, und ein Skript erlaubt die grafische Ausgabe. Diese Vorgehensweise lässt sich auf zahllose Programme übertragen, so z. B. auch auf den Lieblings-Datei-Manager, den man sich somit ein zweites Mal – aber mit Root-Rechten – ins Startmenü setzen kann. Dieser startet dann ganz ohne zusätzliche Passwortabfrage. Und das ist doch allerhand Aufwand wert.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • out of the box
    Jedes Linux-System schreibt Log-Dateien. Doch wer guckt sich diese schon regelmäßig an? root-tail und tailbeep helfen dabei, wichtige Ereignisse nicht zu verpassen.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Ein noch recht unbekanntes Schmuckstück im Land der Linux-Desktops ist Sapphire – ein kleiner und theme-fähiger Window Manager.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Und unser in den letzten beiden Ausgaben vorgestellter Window Maker hat Nützliches im Handgepäck – auch für andere Window-Manager.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Nach drei Ausflügen in die Welt der GNOME wird es nun Zeit für einen Blick über den Tellerrand - schließlich hat Linux mehr zu bieten als den Anzug von der Stange.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Nachdem sich hier nun verschiedene Window-Manager vorstellten, ist es an der Zeit, diese um ein für viele wichtiges Feature zu ergänzen: Desktop-Icons.
Kommentare

Infos zur Publikation

LU 06/2015: Shell-Tools

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Grammatikprüfung in LibreOffice nachrüsten
Grammatikprüfung in LibreOffice nachrüsten
Tim Schürmann, 24.04.2015 19:36, 0 Kommentare

LibreOffice kommt zwar mit einer deutschen Rechtschreibprüfung und einem guten Thesaurus, eine Grammatikprüfung fehlt jedoch. In ältere 32-Bit-Versionen ...

Aktuelle Fragen

Konsole / Terminal in Linux Mint 17.1 deutsch
Dirk Resag, 09.05.2015 23:39, 12 Antworten
Hallo an die Community, ich habe vor kurzem ein älteres Notebook, Amilo A1650G, 1GB Arbeitsspe...
Admin Probleme mit Q4os
Thomas Weiss, 30.03.2015 20:27, 6 Antworten
Hallo Leute, ich habe zwei Fragen zu Q4os. Die Installation auf meinem Dell Latitude D600 verl...
eeepc 1005HA externer sound Ausgang geht nicht
Dieter Drewanz, 18.03.2015 15:00, 1 Antworten
Hallo LC, nach dem Update () funktioniert unter KDE der externe Soundausgang an der Klinkenbuc...
AceCad DigiMemo A 402
Dr. Ulrich Andree, 15.03.2015 17:38, 2 Antworten
Moin zusammen, ich habe mir den elektronischen Notizblock "AceCad DigiMemo A 402" zugelegt und m...
Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...