Zur�ck | Inhalt | Inhalt von Kapitel 6 | Top | Weiter |
Zur�ck | Inhalt | X-Session �ber ssh starten? | Top | Weiter |
X-Session �ber ssh starten?
Mit entsprechend konfiguriertem ssh ist es sehr einfach, �bers Netz eine X-Session auf einem anderen Rechner zu starten. Die relevanten Einstellungen sind:
�X11Forwarding yes� in der /etc/ssh/sshd_config des Zielrechners (auf dem man sich einloggt).
�ForwardX11 yes� in der /etc/ssh/ssh_config auf dem Ausgangsrechner (auf dem der X-Server l�uft).
Wenn X-Forwarding funktioniert, braucht man sich nur aus einem xterm oder �hnlichem mit ssh einloggen und hat automatisch ein korrekt gesetztes DISPLAY. Das n�chste X-Programm, dass man auf dem entfernten Rechner startet, schickt die Ausgabe dann zum X-Server auf dem Ausgangsrechner. Das X-Protokoll l�uft dabei verschl�sselt �ber die ssh-Verbindung. Dies hat drei Vorteile:
Die Verbindung ist verschl�sselt.
Der X-Server wei� nichts davon, dass die Daten in Wirklichkeit �bers Netz kommen. Man braucht also die in X11 vorhandenen Zugriffskontrollmechanismen nicht konfigurieren.
Der X-Server braucht keine TCP/IP-Anbindung. Und nur ein nicht vorhandener Netzwerkdienst ist sicher. Siehe .
Zur�ck | Inhalt | X-Session �ber telnet starten? | Top | Weiter |
X-Session �ber telnet starten?
Der klassische Weg �bers Netz eine X-Session zu starten:
Irgendwie auf dem entfernten Rechner einloggen (telnet, rexec, rsh, cronjob, CGI-Script)
Umgebungsvariable DISPLAY korrekt setzen. Im einfachsten Fall:
export DISPLAY=rechner.mit.dem.x.server:0
Die Zugriffskontrolle des X-Servers einstellen. Im einfachsten Fall:
xhost +entfernter.rechner.mit.dem.program
Zugriffskontrolle anhand von IP-Adressen ist zum einen relativ leicht zu umgehen. Zum anderen schaltet man damit ohne Unterschied alle Benutzer eines Rechners frei. Und dann geht sowohl telnet als auch X11 unverschl�sselt �bers Netz.
Zur�ck | Inhalt | Zugriffskontrolle eines X-Servers mit xauth | Top | Weiter |
Zugriffskontrolle eines X-Servers mit xauth
In der Datei $HOME/.Xauthority des Benutzers, der den X-Server gestartet hat, finden sich mehrere �MIT-MAGIC-COOKIE�. Kann ein X-Client ein passendes Cookie vorweisen, erh�lt er Zugriff. Zur �bergabe gibt es zwei M�glichkeiten:
Hat der Client Zugriff auf die andere $HOME/.Xauthority �bers Dateisystem (nfs, smbfs, oder zwei Benutzer am selben Rechner), dann braucht man nur die Variable XAUTHORITY umsetzen.
Ansonsten hilft nur der ausf�hrliche Weg.
Liste der Kekse ansehen, passenden aussuchen.
xauth list
Passenden Keks exportieren.
xauth extract austauschdatei rechner.mit.dem.x.server:0
Die Austauschdatei irgendwie zum anderen Rechner transportieren.
Den gew�hlten Keks importieren.
xauth merge austauschdatei
Mit ssh (bzw. rsh) kann man das alles auch in einer Zeile machen.
xauth nlist rechnername:0 | ssh user@remotehost xauth nmerge -
Zur�ck | Inhalt | X-Session �ber su starten? | Top | Weiter |
X-Session �ber su starten?
Dieser Fall l�sst sich grunds�tzlich mit den oben angef�hrten Mechanismen l�sen. Es gibt aber drei komfortable Sonderf�lle.
root hat an sich immer Zugriff auf $HOME/.Xauthority. Umsetzen von XAUTHORITY reicht also v�llig. Das geht allerdings nicht, wenn $HOME �ber NFS gemountet ist, und die Option no_root_squash auf dem Fileserver nicht gesetzt ist.
pam_xauth
Dieses PAM-Modul erledigt die Keks�bergabe automatisch. Wird bei Red Hat seit Version 7 mitgeliefert.
sux
Ein Wrapper um su.
Zur�ck | Inhalt | Mehrere X-Server auf dem selben Rechner? | Top | Weiter |
Mehrere X-Server auf dem selben Rechner?
Zur�ck | Inhalt | Was ist so gef�hrlich an . oder :: im PATH? | Top | Weiter |
Was ist so gef�hrlich an �.� oder �::� im PATH?
Wenn in einem Verzeichnis mehrere Leute Schreibrechte haben, wie zum Beispiel in /tmp/, lassen sich so trojanische Pferde unterjubeln. Das mag auf einem Einzelplatzrechner weit hergeholt klingen, aber schlechte Angewohnheiten wird man nur schwer wieder los. Der richtige Weg ein Programm im aktuellen Verzeichnis aufzurufen, sieht so aus:
./program
Ausf�hrliche Beschreibung:
Zur�ck | Inhalt | Wie kann ich Umgebungsvariablen definieren? | Top | Weiter |
Wie kann ich Umgebungsvariablen definieren?
export VARIABLE=Wert
VARIABLE=Wert export VARIABLE
setenv VARIABLE Wert
Welche Shell man verwendet, sagt einem echo $SHELL oder echo $BASH_VERSION.
Keine Leerzeichen vor und nach dem Gleichheitszeichen
Keine Gleichheitszeichen bei setenv
Wenn Wert Leerzeichen enth�lt, sollte man Wert mit doppelten Anf�hrungszeichen umgeben:
export VARIABLE="In space, no one can hear you fart."
Wenn Wert "h�rtere" Sonderzeichen wie etwa "$" enth�lt, helfen einfache Anf�hrungszeichen:
export VARIABLE='Go directly to jail. Do not pass Go, do not collect $200.'
Zur�ck | Inhalt | Wie kann ich mit einem Skript die Umgebungsvariablen der laufenden Shell �ndern? | Top | Weiter |
Wie kann ich mit einem Skript die Umgebungsvariablen der laufenden Shell �ndern?
Wenn man ein Shell-Skripts auf die �bliche Art startet, wird dazu ein eigener Prozess erzeugt. Umgebungsvariablen werden dabei vom Elternprozess an den Kindprozess vererbt (man kann das mit env auch verhindern). Es gibt aber keine M�glichkeit in der Umkehrrichtung Variablen zu setzen.
Um durch ein Skript Umgebungsvariablen einer laufenden Shell zu �ndern, muss man es statt dessen �ein-sourcen�:
source Datei
oder
. Datei
Zur�ck | Inhalt | Kopieren und Einf�gen (Zwischenablage unter X11)? | Top | Weiter |
Kopieren und Einf�gen (Zwischenablage unter X11)?
X11 kennt zwei Arten der Zwischenablage.
Kopiert wird durch Ausw�hlen mit der linken Maustaste. Doppelklick markiert wortweise, Dreifach-Klick zeilenweise. Man kann stattdessen auch einfach mit gedr�ckter Maustaste �ber die Auswahl ziehen.
Eingef�gt wird durch Dr�cken der mittleren Maustaste (bei einer Zweitastenmaus durch gleichzeitiges Dr�cken linker und rechte Maustaste).
Einige Textmodus-Programme (vim, links, mc) beherrschen unter X11 (also innerhalb eines xterm oder �hnlichem) eine eigene Maussteuerung. Ein Klick mit der linken Maustaste versetzt dann etwa den Cursor oder springt einen Hyperlink an. Die Funktionalit�t der Primary Selection erreicht man in dem Fall durch Festhalten der Hochstelltaste (englische Beschriftung ist Shift) w�hrend des Mausklicks.
Kopiert wird in zwei Schritten:
Auswahl der zu kopierenden Daten mit Maus oder Tastatur.
Ausl�sen des Kopierkommandos, durch den Men�punkt Bearbeiten → Kopieren, oder der Tastenkombination Strg+C.
Eingef�gt wird mit Bearbeiten → Einf�gen, oder der Tastenkombination Strg+V.
Die englischen Bezeichnungen sind Edit → Copy bzw. Edit → Paste und Ctrl statt Strg. Antike Software (etwa Netscape 4.x) verwendet statt dessen auch Alt.
Zur�ck | Inhalt | Screenshots in X11, KDE, Gnome? | Top | Weiter |
Screenshots in X11, KDE, Gnome?
xwd, Teil von X11 selbst
import, Teil von
, File → Acquire → Screen Shot …
, ist unter KDE meist schon unter ALT+Druck bzw. STRG+Druck vorkonfiguriert
Au�erdem xwpick, xgrab, xv, xdmp
Zur�ck | Inhalt | Screenshots im Framebuffer? | Top | Weiter |
Screenshots im Framebuffer?
Es ist zwar m�glich, /dev/fb0 direkt auszulesen, aber von den vielen Speicherformaten werden nur die wenigsten von ImageMagick unterst�tzt. Ohne ein spezielles Konversionsprogramm geht es im allgemeinen nicht.
Zur�ck | Inhalt | Screenshots im Textmodus? | Top | Weiter |
Screenshots im Textmodus?
Damit kann man im reinen Textmodus die Maus zum Selektieren und Kopieren von Text verwenden.
Der Inhalt virtueller Konsolen kann auch direkt ausgelesen werden.
Mit der Tastenkombination �C-a H� wird das Logging eingeschaltet, dabei werden auch s�mtliche Terminalsteuerzeichen aufgezeichnet. Diese lassen sich mit colcrt rausfiltern.
Zur�ck | Inhalt | Ende dieser Seite | Top | Weiter |