Einmaliges Ausführen des Skripts, wenn X initialisiert wird

Einmaliges Ausführen des Skripts, wenn X initialisiert wird
  1. Wo soll ich ein Bash-Skript ablegen, wenn ich möchte, dass es einmalig beim Start von X als Teil des Systemstarts ausgeführt wird? Beispiel: Ich möchte VPN auf meinem Rechner als Root-Benutzer starten, sobald X gestartet ist.

  2. Wird die Initialisierung von X (in meinem Fall beispielsweise GDM) oder die Anmeldung eines Benutzers über einen DM (Desktop Manager) als Anmelde-Shell betrachtet?

  3. Außerdem möchte ich Programme ausführen, solange ich mit X angemeldet bin. Beispielsweise möchte ich Dropbox ausführen, solange ich mit Gnome angemeldet bin.

Antwort1

Alles, was Sie ausführen möchten, wenn sich ein Benutzer bei einer X-Sitzung anmeldet, müssen Sie in die Datei .xinitrcoder .xsessionim Verzeichnis des Benutzers einfügen $HOME.

Auf dieser Seite gibt es eine ziemlich gute Erklärung:

http://fluxbox.sourceforge.net/docbook/en/html/app-setup.html

Antwort2

Du solltest sie einfügen .xinitrc. Das hier ist meines:

#!/bin/zsh
#Map Capslock to ESC
setxkbmap -option caps:escape &
#Wallpaper
feh --bg-scale /mnt/data/Dropbox/pic/character/samurai.png
#turn off beep sound
xset -b
#mouse speed
xset m 1/5
#keyboard repeat speed
xset r rate 200 30
#font
xset +fp /usr/share/fonts/local
xset fp rehash
#urxvtd daemon
urxvtd -q -f -o &
#Disable touchpad tapping and scrolling when typing
syndaemon -t -i 2 &
#Hide cursor
unclutter -keystroke &
#Redshift - change your screen temp to reduce eyestrain
redshift &
# Dropbox
dropboxd &
#dwm status
while true
do
  xsetroot -name "nXqd"
    sleep 20s
done &
#Window manager
exec dwm

verwandte Informationen