[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

benutzte Shells und shell-Einstellungen unter X11R6



Hallo,

wenn ich unter X11R6 aus ~/.xsession Programme
starten lasse, haben diese eine andere Umgebung,
als wenn ich welche aus einer bash in xterm
manuell starte.  Aufgefallen ist mir, dass PATH
anders eingestellt ist und damit leider anders,
als ich es möchte.  Weißt du, wo ich dazu Infos
finden kann, wo und wie die Shell gestartet wird,
die ~/.xsession ausführt und welche Scripts diese
Shell beim Starten ausführt?  Vielleicht liegt
darin dieser Unterschied der Umgebungen begründet,
dass nicht die richtigen Scripts beim starten
dieser Shell ausgeführt werden.  Ich hätte nämlich
gerne das private bin-Verzeichnis in PATH mit drin
stehen, falls eines funktionsfähig existiert.  Die
Definition dafür steht in /etc/profile, sollte
also von einigen Login-Shells ausgeführt werden:

# setze PATH für root und nicht-root user
if [ "`id -u`" -eq 0 ]
then
    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"
else
    PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"
fi
# set PATH so it includes user's private bin directory if it exists and
# is useable
if [ -d "${HOME}/bin" -a -r "${HOME}/bin" -a -x "${HOME}/bin" ]
then
    PATH="${HOME}/bin${PATH:+:}${PATH}"
fi
export PATH


Also wird scheinbar /etc/profile von der shell,
die ~/.xsession ausführt, nicht vorher ausgeführt.

Vielleicht ließe sich daran etwas ändern.

Mir ist nicht klar, warum die Shell, die beim
Einloggen in X11R6 gestartet wird, um die
X11R6-Scripte auszuführen, nicht als Login-Shell
gestartet wird, denn sie ist ja wohl die richtige
Login-Shell, wenn man sich über xdm einloggt.  Die
nachfolgend gestarteten Shells in xterms erben
deshalb auch nicht die Definitionen einer
Login-Shell, und nicht die Definitionen einer
interaktiven Shell, sondern nur die Definitionen
einer nicht-interaktiven Shell zum Ausführen von
Scripten.  Den Sinn davon kenne ich nicht und ich
finde das auch sehr störend und
Ressourcenverschwendend.  Als Behelfslösung für
die interaktiven Shells habe ich die Shells in
xterms explizit als login-shells starten lassen.
Die müssen dadurch jede einzelne für sich alle
login Scripten und Interaktiv-Scripten ausführen,
anstatt sie die Informationen einfach von der
eigentlichen Login-Shell übernähmen, falls das so
klappen könnte.  Die exportierten
Umgebungsvariablen könnten jedenfalls übernommen
werden und auch die exportierten Shell-Funktionen.

Wie ist das richtig in X11R6 vorgesehen und wie
stellt man es passend ein?  Oder warum wird diese
Login-Shell von xdm nicht ohnehin standardmäßig
als Login-Shell gestartet?

Man könnte vielleicht die Option bei ~/.xsession
im Pseudokommentar der ersten Zeile angeben, aber
das gilt dann nur für den einen Benutzer, dem
diese ~/.xsession gehört und ist vermutlich nicht
so vorgesehen.  Das wäre nicht das, was ich will.
Gibt es Sicherheitsüberlegungen, die dazu führten,
dass diese Shells nicht als Login-Shell gestartet
werden?


Alles Gute
Helmut H. Franke

-- 
http://www.worte-des-lebens.net/Vaterworte/vaterworte.html
http://www.lorber-verlag.de/  http://firethegrid.org/
http://www.anastasia-de.com/Megre_Buecher/Megre_Buecher.htm
http://itc.napier.ac.uk/e-Petition/bundestag/
Avatar Chat Systeme:  http://www.amiculi.net  http://pgm.amoris.org
Servamus vitam terramque istam, quas amans pater noster ipse dedit nobis!



Reply to: