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

Re: bash liest weder .profile noch .bash_profile ein



Andreas Pakulat <apaku@gmx.de> writes:

>On 08.Nov 2004 - 23:30:26, Helmut Waitzmann wrote:
>> Andreas Pakulat <apaku@gmx.de> writes:

[Im folgenden Zitat bezog ich mich darauf, dass Du die Kommandos, die
beim Sitzungsstart nur einmal ausgeführt werden sollen, in
"$HOME"/.xsession und in "$HOME"/.profile schreiben kannst, weil sie so
sowohl beim X11-Zugang als auch beim textorientierten Zugang genau einmal
ausgeführt werden.]

>> Das stimmt in diesem Fall natürlich.  Was die Sache ärgerlich macht, ist,
>> dass das z.B. für die Distribution "Fedora Core release 1" bereits nicht
>> mehr stimmt:  Dort finden sich in '/etc/X11/gdm/Sessions' die
>> Shellscripte 'GNOME' und 'KDE', die nichts tun, als ein
>> 
>>    exec /etc/X11/xdm/Xsession gnome
>> 
>> bzw.
>> 
>>    exec /etc/X11/xdm/Xsession kde

[... zu starten.]

Denn der Witz ist, wie ich mit den Ausschnitten aus Fedoras
/etc/X11/xdm/Xsession gezeigt habe, dass bei Fedora Core release 1 *auch
beim Zugang über X11* eine der Dateien "$HOME"/.bash_profile,
"$HOME"/.profile oder "$HOME"/.login (je nachdem, welches "$SHELL" man
verwendet) abgearbeitet wird, einfach, weil "$SHELL" als
nicht-interaktives Login-Shell gestartet wird.

Damit hat man verloren, wenn man seine Account-Initialisierungskommandos
sowohl in einer dieser Login-Shell-Startup-Dateien (für den
Text-orientierten Zugang), als auch in "$HOME"/.xsession eingetragen hat:
Denn dann werden sie *zweimal* ausgeführt, wenn man beim Login-Chooser
das "Default System Session" (d.h. "$HOME"/.xsession) ausgewählt hat.

>Aber auch Fedora Core wird jawohl $HOME/.xsession einlesen

Ja, wenn man beim Login-Chooser keines der Session-Managers, sondern
"Default System Session" auswählt.

Insofern wäre das passende Vorgehen bei Fedora Core release 1, dass der
Benutzer seine Initialisierungs-Kommandos *nur* in die
Login-Shell-Startup-Dateien, nicht auch noch in "$HOME"/.xsession,
reinschreibt.  Dann werden sie, egal ob der grafische oder der
Text-Zugang genutzt wird, genau einmal abgearbeitet, und der Nutzer muss
seinen Zugang an nur *einer* Stelle konfigurieren.

>> Allerdings ist shell-unabhängiges Quoting ziemlich schwierig.
>
>Grade da ist aber wieder etwas was Debian gerne moechte, naemlich ein
>#!/bin/sh 
>
>und demzufolge Shellunabhaengigkeit erreichen...

Hier bin ich mir nicht sicher, was Du mit "Shellunabhängigkeit" meinst:

Meinst Du

   Der Benutzer kann sich sein Login-Shell auswählen und
   konfigurieren, und der grafische Zugang macht mit diesem vom Benutzer
   gewählten Shell eine ordentliche Initialisierung, egal, welches Shell der
   Benutzer sich ausgesucht hat.

?  Oder meinst Du

   Der Benutzer soll sich daran gewöhnen, für die Konfiguration seines
   Accounts im Falle des grafischen Logins nur seine Datei
   "$HOME"/.profile zur Konfiguration zu verwenden.  X11 hat mit keinem
   anderen Shell als /bin/sh etwas zu tun, denn es ignoriert die
   Umgebungsvariable SHELL und nimmt immer /bin/sh, ist also davon, was
   der Benutzer als Login-Shell gewählt hat, unabhängig, bürdet ihm aber
   damit auf, (falls er nicht /bin/sh oder bash als Login-Shell gewählt
   hat), zwei Login-Shells konfigurieren zu müssen.

?

Ich ziehe hier Fedoras Vorgehensweise vor:  Mein Account konfiguriere ich
in der Startup-Datei meines Login-"$SHELL"s.  Dann wird die Konfiguration
immer verwendet, egal, ob ein Text-orientierter oder grafischer Zugang
beim Login verwendet wird.
-- 
Wenn Sie mir E-Mail schreiben, stellen |  When writing me e-mail, please
Sie bitte vor meine E-Mail-Adresse     |  precede my e-mail address with
meinen Vor- und Nachnamen, etwa so:    |  my full name, like
Helmut Waitzmann <xxx@example.net>, (Helmut Waitzmann) xxx@example.net



Reply to: