• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] Umgebungsvariable nicht sichtbar /etc/profile

maxpade

Newbie
Hallo zusammen,

ich möchte eine Umgebungsvariable für alle User setzen z.B.

set HA=/usr/bin
export HA


soweit ich weiß macht man das für ALLE eben in der /etc/profile
Nachdem ich das getan habe und mich erneut eingeloggt habe (root) ist die Variable nicht abrufbar mit echo $HA

was mach ich falsch, bzw. wie gehe ich richtig vor?

Danke vielmals!!!
 
OP
M

maxpade

Newbie
hallo,

das hatte ich ebenso probiert.
die Umgebungsvariable ist ebenfalls nicht abrufbar....
(zur Infor die /etc/profile.local hat nur diese zwei Zeilen)
 
Wird die /etc/profile.local in der /etc/profile gesourced?
Code:
grep profile.local /etc/profile
Welche Shell benutzt du?

Wie testest du das Ganze?
In einer Loginshell? - In einer interaktiven Shell?
Also: In der Konsole? - In einem X-Terminal?
 
OP
M

maxpade

Newbie
Hallo,

ich benutze die /bin/bash

ich habe in der /etc/profile eingetragen:

if test -f /etc/profile.local then;
source /etc/profile.local
fi

in der profile.local steht drin (zur Probe):

set HA=/usr/bin
export HA

Testen tue ich unter beiden consolen mit:

echo $HA


doch beides ohne gewolltes Ergebnis: ....


danke für die Hilfe!!
 

oc2pus

Ultimate Guru
Code:
test -z "$PROFILEREAD" && . /etc/profile

d.h. es wird nur dann die /etc/profile gelesen wenn diese Umgebungsvariable gesetzt ist.
prüfe das mit echo $PROFILEREAD in einer Konsole.
 
OP
M

maxpade

Newbie
leider immer noch nichts :? hmmm....
wenn ich einen fehler in den scripten hätte, so würde ich ja einen fehler bekommen, doch nein..???
 
b3ll3roph0n schrieb:
Code:
HA="/usr/bin";
export HA;
in /etc/profile.local (falls nicht vorhanden anlegen)
Ohne das "set".

Mit set kannst du das Verhalten (die Einstellungen) der Bash zur Laufzeit verändern - dient also zum Setzen bash-interner Variablen.
Das Setzen einer Umgebungsvariable geschieht mit dem export-Befehl.

=> man bash
 
Oben