X: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Dongiovanni (Diskussion | Beiträge)
konfiguration überarbeiten (erste änderungen)
Dongiovanni (Diskussion | Beiträge)
einiges aktualisiert
Zeile 60: Zeile 60:
Eine komplette Konfigurationsdatei ''xorg.conf'' ist nicht mehr notwendig. Dadurch muss nur noch eine Datei in ''/etc/X11/xorg.conf.d/'' angelegt werden, die die gewünschten Einträge enthält. Um die Übersichtlichkeit zu verbessern, sollte für unterschiedliche Einstellungen eigene Dateien angelegt haben, beispielsweise für die Monitorkonfiguration und die Tastatureinstellungen.
Eine komplette Konfigurationsdatei ''xorg.conf'' ist nicht mehr notwendig. Dadurch muss nur noch eine Datei in ''/etc/X11/xorg.conf.d/'' angelegt werden, die die gewünschten Einträge enthält. Um die Übersichtlichkeit zu verbessern, sollte für unterschiedliche Einstellungen eigene Dateien angelegt haben, beispielsweise für die Monitorkonfiguration und die Tastatureinstellungen.


====Tastaturlayout====
===Tastaturlayout===


Ist die [[evdev|Autoerkennung der Eingabegeräte]] nicht gewünscht oder funktioniert nicht richtig, kann diese deaktiviert werden. Dazu muss zunächst der Tastaturtreiber installiert werden
Ist die [[evdev|Autoerkennung der Eingabegeräte]] nicht gewünscht oder funktioniert nicht richtig, kann diese deaktiviert werden. Dazu muss zunächst der Tastaturtreiber installiert werden
Zeile 90: Zeile 90:
         Option "XkbVariant" "nodeadkeys"
         Option "XkbVariant" "nodeadkeys"
  EndSection
  EndSection
===TCP Port 6000 schließen===
Standardmäßig lauscht X auf dem TCP Port 6000. Um dies zu unterbinden muss die Option ''-nolisten tcp'' in der Datei ''/usr/bin/startx'' zu der Variablen ''defaultserverargs'' hinzugefügt werden.
  defaultserverargs="-nolisten tcp"
Falls X per kdm gestartet wird scheint das ''startx'' script nicht ausgeführt zu werden.
In diesm Fall muss die Option ''-nolisten tcp'' in der Datei ''/opt/kde/share/config/kdm/kdmrc'' zu der Variablen ''ServerCmd'' hinzugefügt werden.
  ServerCmd=/usr/bin/X -br -nolisten tcp
Die -br Option bewirkt das X mit einem schwarzen root-Fenster startet. Weitere Optionen des X Servers findet man auf der man page.
  man Xserver
Nutzt man keinen [[Login-Manager]] um X zu starten und will ''/usr/bin/startx'' nicht verändern, kann man die Option(en) auch als Parameter angeben.
  startx -- -nolisten tcp
Dies ist jedoch nur notwendig, wenn ''startx'' mit weiteren Optionen aufgerufen wird. Werden keine Optionen übergeben, so liest X die Datei ''/etc/X11/xinit/xserverrc'' bzw ''~/.xserverrc''. In der ersteren ist unter Archlinux bereits ''-nolisten tcp'' eingetragen.


==Xorg starten==
==Xorg starten==
Zeile 95: Zeile 111:


===Nach Login manuell ausführen===
===Nach Login manuell ausführen===
startx muss nach dem Login manuell ausgeführt werden
''startx'' muss nach dem Login manuell ausgeführt werden:
  startx
  startx


===Nach Login automatisch ausführen===
===Nach Login automatisch ausführen===
startx wird nach dem Login (auf der 1. Konsole) automatisch ausgeführt. Dazu folgendes am Ende der ~/.bash_profile eintragen:
startx wird nach dem Login (auf der 1. Konsole) automatisch ausgeführt. Dazu folgendes am Ende der ''~/.bash_profile'' eintragen:


  if [ "$(tty)" = "/dev/tty1" ]; then
  if [ "$(tty)" = "/dev/tty1" ]; then
Zeile 129: Zeile 145:


Wobei USER durch den User der X starten soll ersetzt werden muss.
Wobei USER durch den User der X starten soll ersetzt werden muss.
==TCP Port 6000 schließen==
Standardmäßig lauscht Xorg auf dem TCP Port 6000. Um dies zu unterbinden muss die Option "-nolisten tcp" in der Datei
/usr/bin/startx zu der Variablen "defaultserverargs" hinzugefügt werden.
  defaultserverargs="-nolisten tcp"
Falls Xorg per kdm gestartet wird scheint das startx script nicht ausgeführt zu werden.
In diesm Fall muss die Option "-nolisten tcp" in der Datei /opt/kde/share/config/kdm/kdmrc zu der Variablen "ServerCmd" hinzugefügt werden.
  ServerCmd=/usr/bin/X -br -nolisten tcp
Die -br Option bewirkt das X mit einem schwarzen root Fenster startet. Weitere Optionen des X Servers findet man auf der man page.
  $ man Xserver
Nutzt man keinen [[Login-Manager]] um X zu starten und will /usr/bin/startx nicht verändern, kann man die Option(en) auch als Parameter angeben.
  $ startx -- -nolisten tcp
Dies ist jedoch nur notwendig, wenn startx mit weiteren Optionen aufgerufen wird. Werden keine Optionen übergeben, so liest X die Datei /etc/X11/xinit/xserverrc bzw ~/.xserverrc. In der ersteren ist unter Archlinux bereits ''-nolisten tcp'' eingetragen.


==Fehlersuche==
==Fehlersuche==
Bei der Fehlersuche kann es hilfreich sein einen Blick in die Xorg Log Datei zu werfen. Zur besseren Übersicht ist es empfehlenswert nur die Warnungen (WW) und Fehler (EE) anzeigen zu lassen.  
Bei der Fehlersuche kann es hilfreich sein einen Blick in die Xorg Log Datei zu werfen. Zur besseren Übersicht ist es empfehlenswert nur die Warnungen (WW) und Fehler (EE) anzeigen zu lassen.  
  grep -e WW -e EE /var/log/Xorg.0.log
  grep -e WW -e EE /var/log/Xorg.0.log


==Bekannte Probleme==
==Bekannte Probleme==
===X erkennt keine Eingabegeräte===
Falls beim Start von X keine Eingabegeräte wie Maus und Tastatur erkannt werden, muss [[evdev]] funktionsfähig, der HAL Daemon gestartet, sowie ''xf86-input-evdev'' installiert sein. Sollte es dennoch nicht funktionieren, kann die automatische Erkennung auch  [[#Tastaturlayout|deaktiviert]] werden. Dies sollte aber immer die letzte Notlösung bleiben.
Nach dem Deaktivieren der automatischen Erkennung müssen die Eingabegeräte noch konfiguriert werden.
===X kann ACPI nicht laden===
===X kann ACPI nicht laden===
Steht in /var/log/Xorg.0.log
Steht in /var/log/Xorg.0.log
  (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
  (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
so liegt das wahrscheinlich daran, dass kein acpid-Daemon läuft. Diesen durch  
so liegt das wahrscheinlich daran, dass kein acpid-Daemon läuft. Diesen durch  
  pacman -S acpid
  pacman -S acpid
installieren und in das Daemon-Array der ''/etc/rc.conf'' eintragen.
installieren und in das Daemon-Array der ''/etc/rc.conf'' eintragen.


===Strg+Alt+Backspace beendet X nicht===
===Strg+Alt+Backspace beendet X nicht===
Die Tastenkombination Strg+Alt+Backspace zum killen des X-Servers ist (seit Version 1.6.1) standardmäßig deaktiviert.
Die Tastenkombination Strg+Alt+Backspace zum sofortigen beenden von X ist standardmäßig deaktiviert.
Um die Tastenkombination zu aktivieren kann man bei aktivierter [[Evdev|Autoerkennung der Eingabegeräte]] jedoch folgendes in die ''/etc/hal/fdi/policy/10-keymap.fdi'' eintragen.
Um das gewünschte Verhalten zu erhalten, muss
<merge key="input.xkb.options" type="string">terminate:ctrl_alt_bksp</merge>
  Option "XkbOptions" "terminate:ctrl_alt_bksp"
Ist die Autoerkennung deaktiviert, kann man folgendes zur Tastatur-Section in der xorg.conf hinzufügen.
  Option         "XkbOptions" "terminate:ctrl_alt_bksp"
Damit sollte man den X-Server wieder mit Strg+Alt+Backspace killen können.


'''Ab Version 1.8''' kommt X ohne HAL aus. Deshalb funktioniert der Eintrag in der ''/etc/hal/fdi/policy/10-keymap.fdi'' nicht mehr.
in die Konfiguration wie folgt aufgenommen werden:
man kann die Tastenkombination aber weiterhin durch
  Section "InputClass"
  Option         "XkbOptions" "terminate:ctrl_alt_bksp"
    Identifier          "Keyboard Defaults"
aktivieren. Am besten in der empfohlenen Datei für die deutsche Tastaturbelegung.
    MatchIsKeyboard "yes"
( /etc/X11/xorg.conf.d/de.conf )
    Option             "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection


==Siehe auch==
==Siehe auch==
*[[Nvidia|Nvidia-Grafikkartentreiber installieren]]
Grafiktreiber:
*[[ATI|ATI-Grafikkartentreiber installieren]]
* [[ATI]]
*[[Intel|Intel-Grafikkartentreiber installieren]]
* [[Intel]]
 
* [[Nvidia]]
 
*[[Synaptics Touchpad Treiber|Synaptics Touchpad Treiber]]
*[[evdev|Autoerkennung der Eingabegeräte (evdev)]]


Treiber für Eingabegeräte:
* [[Synaptics Touchpad Treiber|Synaptics Touchpad Treiber]]
* [[evdev|Autoerkennung der Eingabegeräte (evdev)]]


*[[Schriftarten]]
Sonstiges:
*[[Login-Manager]]
* [[Schriftarten]]
* [[Login-Manager]]


==Weblinks==
==Weblinks==
*[http://www.x.org Xorg Homepage] {{sprache|en}}
* [http://www.x.org Xorg Homepage] {{sprache|en}}


[[Kategorie: X11]]
[[Kategorie: X11]]

Version vom 5. Oktober 2010, 14:15 Uhr

Das X window system, auch X oder X11 genannt, stellt unter Linux und anderen UNIX-artigen Betriebsystemen die grafische Oberfläche bereit. Die unter Linux wohl am meist genutze Implementierung ist X.org.

Installation

X.org wird mittels

pacman -S xorg

installiert. Diese Paketgruppe enthält die nötigsten Pakete.

Anschließend sollte der Treiber für die Grafikkarte installiert werden. Es stehen folgende zur Verfügung:

xf86-video-apm
xf86-video-ark
xf86-video-ati
xf86-video-chips
xf86-video-cirrus
xf86-video-dummy
xf86-video-fbdev
xf86-video-glint
xf86-video-i128
xf86-video-i740
xf86-video-imstt
xf86-video-intel
xf86-video-mga
xf86-video-neomagic
xf86-video-nv
xf86-video-nouveau
xf86-video-radeonhd
xf86-video-rendition
xf86-video-s3
xf86-video-s3virge
xf86-video-savage
xf86-video-siliconmotion
xf86-video-sis
xf86-video-sisusb
xf86-video-tdfx
xf86-video-trident
xf86-video-tseng
xf86-video-unichrome
xf86-video-v4l
xf86-video-vesa
xf86-video-vga
xf86-video-via
xf86-video-vmware
xf86-video-voodoo

Dieser wird mit

pacman -S xf86-video-<Treiberpaket>

installiert. Der Treiber xf86-video-vesa sollte immer funktionieren, bietet aber nur wenige Funktionen und ist äußerst langsam. Er ist also eher eine Notlösung, falls der eigentliche Treiber nicht funktioniert.

Weitere Informationen zur Installation der Treiber von AMD/ATI, Intel und Nvidia befinden sich in eigenen Beiträgen:

Konfiguration

X.org wird über Dateien in

/etc/X11/xorg.conf.d/

konfiguriert.

Eine komplette Konfigurationsdatei xorg.conf ist nicht mehr notwendig. Dadurch muss nur noch eine Datei in /etc/X11/xorg.conf.d/ angelegt werden, die die gewünschten Einträge enthält. Um die Übersichtlichkeit zu verbessern, sollte für unterschiedliche Einstellungen eigene Dateien angelegt haben, beispielsweise für die Monitorkonfiguration und die Tastatureinstellungen.

Tastaturlayout

Ist die Autoerkennung der Eingabegeräte nicht gewünscht oder funktioniert nicht richtig, kann diese deaktiviert werden. Dazu muss zunächst der Tastaturtreiber installiert werden

pacman -S xf86-input-keyboard

und die xorg.conf editiert werden.

Section "ServerFlags"
   Option "AutoAddDevices" "false"
   Option "AutoEnableDevices" "false"
EndSection

Das Tastaturlayout kann nun in der xorg.conf konfiguriert werden. Dazu müssen in der xorg.conf die Einträge XkbLayout und XkbVariant angepasst werden.

Section "InputDevice"
Identifier     "Keyboard0"
Driver         "keyboard"
Option         "XkbLayout" "de"
Option         "XkbVariant" "nodeadkeys"
EndSection

Ab Xorg Version 1.8 kann dieser auch ohne eine xorg.conf mittels evdev Geräte erkennen. Daher sollte es für die meisten Benutzer ausreichend sein, um ein deutsches Tastaturlayout zu haben, eine Konfigurationsdatei unter etc/X11/xorg.conf.d/de.conf mit folgendem Inhalt anzulegen:

Section "InputClass"
       Identifier "keyboard"
       MatchIsKeyboard "yes"
       Option "XkbLayout" "de"
       Option "XkbVariant" "nodeadkeys"
EndSection

TCP Port 6000 schließen

Standardmäßig lauscht X auf dem TCP Port 6000. Um dies zu unterbinden muss die Option -nolisten tcp in der Datei /usr/bin/startx zu der Variablen defaultserverargs hinzugefügt werden.

 defaultserverargs="-nolisten tcp"

Falls X per kdm gestartet wird scheint das startx script nicht ausgeführt zu werden. In diesm Fall muss die Option -nolisten tcp in der Datei /opt/kde/share/config/kdm/kdmrc zu der Variablen ServerCmd hinzugefügt werden.

 ServerCmd=/usr/bin/X -br -nolisten tcp

Die -br Option bewirkt das X mit einem schwarzen root-Fenster startet. Weitere Optionen des X Servers findet man auf der man page.

 man Xserver

Nutzt man keinen Login-Manager um X zu starten und will /usr/bin/startx nicht verändern, kann man die Option(en) auch als Parameter angeben.

 startx -- -nolisten tcp

Dies ist jedoch nur notwendig, wenn startx mit weiteren Optionen aufgerufen wird. Werden keine Optionen übergeben, so liest X die Datei /etc/X11/xinit/xserverrc bzw ~/.xserverrc. In der ersteren ist unter Archlinux bereits -nolisten tcp eingetragen.

Xorg starten

Gestartet wird der X.org über /usr/bin/startx oder per Login-Manager. Bei der startx-Methode gibt es mehrere Möglichkeiten:

Nach Login manuell ausführen

startx muss nach dem Login manuell ausgeführt werden:

startx

Nach Login automatisch ausführen

startx wird nach dem Login (auf der 1. Konsole) automatisch ausgeführt. Dazu folgendes am Ende der ~/.bash_profile eintragen:

if [ "$(tty)" = "/dev/tty1" ]; then
   startx
fi

Soll der User beim Beenden von X automatisch wieder ausgeloggt werden, kann man noch logout hinzufügen:

if [ "$(tty)" = "/dev/tty1" ]; then
   startx
   logout
fi  

Ohne Login automatisch ausführen

startx wird beim Booten automatisch (ohne Login) ausgeführt. Dazu muss die /etc/inittab folgendermaßen angepasst werden:

aus

id:3:initdefault:
...
x:5:respawn:/usr/X11R6/bin/xdm -nodaemon

wird

id:5:initdefault:
... 
x:5:once:/bin/su USER -l -c "/bin/bash --login -c startx"

Wobei USER durch den User der X starten soll ersetzt werden muss.

Fehlersuche

Bei der Fehlersuche kann es hilfreich sein einen Blick in die Xorg Log Datei zu werfen. Zur besseren Übersicht ist es empfehlenswert nur die Warnungen (WW) und Fehler (EE) anzeigen zu lassen.

grep -e WW -e EE /var/log/Xorg.0.log

Bekannte Probleme

X kann ACPI nicht laden

Steht in /var/log/Xorg.0.log

(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)

so liegt das wahrscheinlich daran, dass kein acpid-Daemon läuft. Diesen durch

pacman -S acpid

installieren und in das Daemon-Array der /etc/rc.conf eintragen.

Strg+Alt+Backspace beendet X nicht

Die Tastenkombination Strg+Alt+Backspace zum sofortigen beenden von X ist standardmäßig deaktiviert. Um das gewünschte Verhalten zu erhalten, muss

Option  "XkbOptions" "terminate:ctrl_alt_bksp"

in die Konfiguration wie folgt aufgenommen werden:

Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard	"yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

Siehe auch

Grafiktreiber:

Treiber für Eingabegeräte:

Sonstiges:

Weblinks